diff --git a/src/api/gxmu/reviewList/index.ts b/src/api/gxmu/reviewList/index.ts index ced56e7..7d6a347 100644 --- a/src/api/gxmu/reviewList/index.ts +++ b/src/api/gxmu/reviewList/index.ts @@ -1,6 +1,10 @@ import request from '@/utils/request'; import type { ApiResult, PageResult } from '@/api'; -import type { ReviewList, ReviewListParam } from './model'; +import type { + ReviewList, + ReviewListParam, + ReviewPendingSummary +} from './model'; import { MODULES_API_URL } from '@/config/setting'; /** @@ -35,6 +39,19 @@ export async function pageGroupReviewList(params: ReviewListParam) { return Promise.reject(new Error(res.data.message)); } +/** + * 当前用户的待办统计(按模块) + */ +export async function getPendingSummary() { + const res = await request.get>( + MODULES_API_URL + '/gxmu/review-list/pending-summary' + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} + /** * 查询审核列表列表 */ diff --git a/src/api/gxmu/reviewList/model/index.ts b/src/api/gxmu/reviewList/model/index.ts index 52bacbf..ba584aa 100644 --- a/src/api/gxmu/reviewList/model/index.ts +++ b/src/api/gxmu/reviewList/model/index.ts @@ -4,7 +4,7 @@ import type { PageParam } from '@/api'; * 审核列表 */ export interface ReviewList { - // + // id?: number; // 模块 module?: string; @@ -39,6 +39,20 @@ export interface ReviewList { reviewFlowList?: ReviewList[]; } +/** + * 当前用户待办统计(按模块) + */ +export interface ReviewPendingSummary { + // 待办总数 + total: number; + // 按模块分组的待办数 + modules: { + module: string; + moduleName: string; + count: number; + }[]; +} + /** * 审核列表搜索条件 */ @@ -48,4 +62,8 @@ export interface ReviewListParam extends PageParam { keywords?: string; module?: string; pk?: number; + // 状态(0待审核 1通过 2驳回) + status?: number; + // 审批人 + userId?: number; } diff --git a/src/views/gxmu/reviewFlow/components/search.vue b/src/views/gxmu/reviewFlow/components/search.vue deleted file mode 100644 index 82fea9d..0000000 --- a/src/views/gxmu/reviewFlow/components/search.vue +++ /dev/null @@ -1,42 +0,0 @@ - - - - diff --git a/src/views/gxmu/reviewFlow/index.vue b/src/views/gxmu/reviewFlow/index.vue index 55831c5..f9f6bae 100644 --- a/src/views/gxmu/reviewFlow/index.vue +++ b/src/views/gxmu/reviewFlow/index.vue @@ -1,222 +1,317 @@ - + + .rr-head__title { + margin: 0; + font-size: 18px; + font-weight: 600; + } + + .rr-head__sub { + margin: 6px 0 0; + font-size: 12px; + color: rgba(0, 0, 0, 0.45); + max-width: 720px; + line-height: 1.7; + } + + .rr-alert { + margin-bottom: 12px; + } + + .rr-module { + display: flex; + flex-direction: column; + gap: 2px; + } + + .rr-module span { + font-size: 12px; + color: rgba(0, 0, 0, 0.45); + } + + .rr-tag { + align-self: flex-start; + margin-top: 2px; + } + + .rr-chain__head { + display: flex; + align-items: center; + gap: 8px; + margin-bottom: 6px; + } + + .rr-chain__name { + font-size: 12px; + color: rgba(0, 0, 0, 0.45); + } + + .rr-chain__levels { + display: flex; + flex-wrap: wrap; + gap: 6px; + } + + .rr-lv { + display: inline-flex; + align-items: center; + gap: 6px; + padding: 3px 9px; + border-radius: 6px; + background: #f5f7fa; + font-size: 12px; + } + + .rr-lv em { + font-style: normal; + width: 16px; + height: 16px; + border-radius: 50%; + background: #1590ff; + color: #fff; + font-size: 11px; + display: inline-flex; + align-items: center; + justify-content: center; + } + + .rr-lv u { + text-decoration: none; + color: rgba(0, 0, 0, 0.45); + } + + .rr-empty { + font-size: 12px; + color: rgba(0, 0, 0, 0.45); + } + + .rr-dim { + color: rgba(0, 0, 0, 0.25); + cursor: not-allowed; + } + diff --git a/src/views/gxmu/reviewFlowConfig/components/reviewFlowConfigEdit.vue b/src/views/gxmu/reviewFlowConfig/components/reviewFlowConfigEdit.vue deleted file mode 100644 index 4b750f4..0000000 --- a/src/views/gxmu/reviewFlowConfig/components/reviewFlowConfigEdit.vue +++ /dev/null @@ -1,334 +0,0 @@ - - - - diff --git a/src/views/gxmu/reviewFlowConfig/components/search.vue b/src/views/gxmu/reviewFlowConfig/components/search.vue deleted file mode 100644 index 82fea9d..0000000 --- a/src/views/gxmu/reviewFlowConfig/components/search.vue +++ /dev/null @@ -1,42 +0,0 @@ - - - - diff --git a/src/views/gxmu/reviewFlowConfig/index.vue b/src/views/gxmu/reviewFlowConfig/index.vue deleted file mode 100644 index a2d82b1..0000000 --- a/src/views/gxmu/reviewFlowConfig/index.vue +++ /dev/null @@ -1,233 +0,0 @@ - - - - - - - diff --git a/src/views/gxmu/reviewList/components/reviewListEdit.vue b/src/views/gxmu/reviewList/components/reviewListEdit.vue deleted file mode 100644 index 4de53ff..0000000 --- a/src/views/gxmu/reviewList/components/reviewListEdit.vue +++ /dev/null @@ -1,191 +0,0 @@ - - - - diff --git a/src/views/gxmu/reviewList/components/search.vue b/src/views/gxmu/reviewList/components/search.vue index 8c38de0..44d8228 100644 --- a/src/views/gxmu/reviewList/components/search.vue +++ b/src/views/gxmu/reviewList/components/search.vue @@ -1,81 +1,47 @@ + + diff --git a/src/views/gxmu/reviewList/index.vue b/src/views/gxmu/reviewList/index.vue index 2b12815..24652ad 100644 --- a/src/views/gxmu/reviewList/index.vue +++ b/src/views/gxmu/reviewList/index.vue @@ -1,6 +1,80 @@