소스 검색

📦 按要求增加工服处审核分级

快乐的梦鱼 1 개월 전
부모
커밋
fc3654753d

+ 45 - 1
src/api/collect/AssessmentContent.ts

@@ -424,6 +424,14 @@ export class SelfAssessmentDetail extends DataModel<SelfAssessmentDetail> {
       districtPoints: { clientSide: 'number', serverSide: 'number' },
       province: { clientSide: 'number', serverSide: 'number' },
       provincePoints: { clientSide: 'number', serverSide: 'number' },
+      districtSt: { clientSide: 'number', serverSide: 'number' },
+      districtStPoints: { clientSide: 'number', serverSide: 'number' },
+      districtNd: { clientSide: 'number', serverSide: 'number' },
+      districtNdPoints: { clientSide: 'number', serverSide: 'number' },
+      districtRd: { clientSide: 'number', serverSide: 'number' },
+      districtRdPoints: { clientSide: 'number', serverSide: 'number' },
+      districtTh: { clientSide: 'number', serverSide: 'number' },
+      districtThPoints: { clientSide: 'number', serverSide: 'number' },
       level: { clientSide: 'number', serverSide: 'string' },
       content: {
         customToClientFn: (value) => {
@@ -526,6 +534,22 @@ export class SelfAssessmentDetail extends DataModel<SelfAssessmentDetail> {
   province = null as number|null;
   /** 省文化和旅游厅评分 */
   provincePoints = 0 as number;
+  /** 项目负责人意见: 0=未审核,1=优秀,2=合格,3=不合格,4=丧失传承能力,5=取消资格 */
+  districtSt = null as number|null;
+  /** 项目负责人评分 */
+  districtStPoints = 0 as number;
+  /** 部门主任意见: 0=未审核,1=优秀,2=合格,3=不合格,4=丧失传承能力,5=取消资格 */
+  districtNd = null as number|null;
+  /** 部门主任评分 */
+  districtNdPoints = 0 as number;
+  /** 分管领导意见: 0=未审核,1=优秀,2=合格,3=不合格,4=丧失传承能力,5=取消资格 */
+  districtRd = null as number|null;
+  /** 分管领导评分 */
+  districtRdPoints = 0 as number;
+  /** 工服处意见: 0=未审核,1=优秀,2=合格,3=不合格,4=丧失传承能力,5=取消资格 */
+  districtTh = null as number|null;
+  /** 工服处评分 */
+  districtThPoints = 0 as number;
   createtime = '' as string;
   updatetime = '' as string;
   deletetime = '' as string|null;
@@ -645,7 +669,7 @@ export interface AgreementReviewPayload {
 export interface IchCheckReviewPayload {
   /** 自查表 ID */
   id: number;
-  /** 项目保护单位意见: 1=优秀,2=合格,3=不合格,4=丧失传承能力,5=取消资格 */
+  /** 项目保护单位意见: 0=未审核,1=优秀,2=合格,3=不合格,4=丧失传承能力,5=取消资格 */
   ichUnit?: number;
   unitPoints?: number;
   /** 县(区)文旅部门审核意见,取值同 ichUnit */
@@ -657,6 +681,18 @@ export interface IchCheckReviewPayload {
   /** 省文化和旅游厅意见,取值同 ichUnit */
   province?: number;
   provincePoints?: number;
+  /** 项目负责人意见,取值同 ichUnit */
+  districtSt?: number;
+  districtStPoints?: number;
+  /** 部门主任意见,取值同 ichUnit */
+  districtNd?: number;
+  districtNdPoints?: number;
+  /** 分管领导意见,取值同 ichUnit */
+  districtRd?: number;
+  districtRdPoints?: number;
+  /** 工服处意见,取值同 ichUnit */
+  districtTh?: number;
+  districtThPoints?: number;
   /** 0=草稿,1=已自评,2=项目保护单位审核完成,3=县(区)文旅部门审核完成,4=设区市文旅部门/省非遗中心审核完成,5=省文化和旅游厅审核完成 */
   progress: number;
   /** 退回状态: 0=无,1=自评阶段退回,2=项目保护单位退回,3=县(区)文旅部门退回,4=设区市文旅部门/省非遗中心退回,5=省文化和旅游厅退回 */
@@ -977,6 +1013,14 @@ export class AssessmentContentApi extends AppServerRequestModule<DataModel> {
       district_points: payload.districtPoints,
       province: payload.province,
       province_points: payload.provincePoints,
+      district_st: payload.districtSt,
+      district_st_points: payload.districtStPoints,
+      district_nd: payload.districtNd,
+      district_nd_points: payload.districtNdPoints,
+      district_rd: payload.districtRd,
+      district_rd_points: payload.districtRdPoints,
+      district_th: payload.districtTh,
+      district_th_points: payload.districtThPoints,
       progress: payload.progress,
       reject_type: payload.rejectType || 0,
       reject_reason: payload.rejectReason,

+ 11 - 9
src/pages/collect/assessment/argeement-sign-review.vue

@@ -63,7 +63,7 @@
               <a-form v-else layout="vertical" size="middle">
                 <div class="flex flex-col md:flex-row lg:flex-row w-full gap-3">
                   <div class="flex flex-col flex-1">
-                    <a-form-item required :label="`审核通过:${reviewLevelLabel}`">
+                    <a-form-item required :label="isNoProgressChange ? `提交意见:${reviewLevelLabel}` : `审核通过:${reviewLevelLabel}`">
                       <a-button
                         block
                         type="primary"
@@ -71,11 +71,11 @@
                         :disabled="!canSubmitReview"
                         @click="submitReview"
                       >
-                        通过审核
+                        {{ isNoProgressChange ? '提交意见' : '通过审核' }}
                       </a-button>
                     </a-form-item>
                   </div>
-                  <div class="flex flex-col flex-1">
+                  <div v-if="!isNoProgressChange || reviewProgressInfo?.canReject" class="flex flex-col flex-1">
                     <a-form-item required label="不通过回退:回退原因">
                       <a-textarea
                         v-model:value="rejectReason"
@@ -148,7 +148,7 @@ const rejectLoading = ref(false);
 const rejectReason = ref<string | null>(null);
 
 const currentProgress = computed(() => currentAgreement.value?.progress ?? 0);
-const { reviewProgressInfo, canSubmitReview, reviewLevelLabel, progressHint, isEndLevel, isProtectUnit } = useReview(currentProgress);
+const { reviewProgressInfo, canSubmitReview, reviewLevelLabel, progressHint, isEndLevel, isProtectUnit, isNoProgressChange, canRejectOnly } = useReview(currentProgress);
 
 const loader = useSimpleDataLoader(async () => {
   const id = queryFormId.value;
@@ -188,11 +188,13 @@ async function submitReview() {
   try {
     submitLoading.value = true;
     await AssessmentContentApi.saveAgreement(d as AgreementDetail);
-    await AssessmentContentApi.reviewAgreement({
-      id: d.id,
-      progress: reviewProgressInfo.value.target,
-    });
-    message.success('审核通过');
+    if (!reviewProgressInfo.value?.noProgressChange) {
+      await AssessmentContentApi.reviewAgreement({
+        id: d.id,
+        progress: reviewProgressInfo.value.target,
+      });
+    }
+    message.success(reviewProgressInfo.value?.noProgressChange ? '意见提交成功' : '审核通过');
     loader.load();
   } catch (e) {
     Modal.error({ title: '审核提交失败', content: formatErr(e) });

+ 15 - 3
src/pages/collect/assessment/components/SelfAssessmentResultBlock.vue

@@ -3,7 +3,15 @@
     <a-typography-title :level="4">各级审核意见</a-typography-title>
     <div v-for="sec in sections" :key="sec.key" class="mb-6">
       <a-typography-text strong>{{ sec.title }}</a-typography-text>
-      <a-tag v-if="currentForm.rejectType === sec.rejectTypeValue" color="red" class="ml-2!">被退回</a-tag>
+      <a-tag 
+        v-if="currentForm.rejectType === sec.rejectTypeValue"
+        :title="currentForm.rejectReason"
+        color="red"
+        class="ml-2!"
+      >
+        被退回
+        <span v-if="currentForm.rejectReason" class="ml-2 max-w-100 truncate">原因:{{ currentForm.rejectReason }}</span>
+      </a-tag>
       <a-space class="mt-2 ml-2" wrap>
         <a-radio-group
           :value="currentForm[sec.opinionField]"
@@ -38,8 +46,8 @@
 <script setup lang="ts">
 import type { SelfAssessmentDetail } from '@/api/collect/AssessmentContent';
 
-type OpinionField = 'ichUnit' | 'county' | 'district' | 'province';
-type PointsField = 'unitPoints' | 'countyPoints' | 'districtPoints' | 'provincePoints';
+type OpinionField = 'ichUnit' | 'county' | 'district' | 'province' | 'districtSt' | 'districtNd' | 'districtRd' | 'districtTh';
+type PointsField = 'unitPoints' | 'countyPoints' | 'districtPoints' | 'provincePoints' | 'districtStPoints' | 'districtNdPoints' | 'districtRdPoints' | 'districtThPoints';
 
 const props = withDefaults(defineProps<{
   currentForm: SelfAssessmentDetail;
@@ -60,6 +68,10 @@ const sections: { key: string; title: string; opinionField: OpinionField; points
   { key: 'ichUnit', title: '1. 项目保护单位意见', opinionField: 'ichUnit', pointsField: 'unitPoints', rejectTypeValue: 2 },
   { key: 'county', title: '2. 县(区)文旅部门审核意见', opinionField: 'county', pointsField: 'countyPoints', rejectTypeValue: 3 },
   { key: 'district', title: '3. 设区市文旅部门、省非遗中心审核意见', opinionField: 'district', pointsField: 'districtPoints', rejectTypeValue: 4 },
+  { key: 'districtSt', title: '3-1. 项目负责人意见', opinionField: 'districtSt', pointsField: 'districtStPoints', rejectTypeValue: -1 },
+  { key: 'districtNd', title: '3-2. 部门主任意见', opinionField: 'districtNd', pointsField: 'districtNdPoints', rejectTypeValue: -1 },
+  { key: 'districtRd', title: '3-3. 分管领导意见', opinionField: 'districtRd', pointsField: 'districtRdPoints', rejectTypeValue: -1 },
+  { key: 'districtTh', title: '3-4. 工服处意见', opinionField: 'districtTh', pointsField: 'districtThPoints', rejectTypeValue: 4 },
   { key: 'province', title: '4. 省文化和旅游厅意见', opinionField: 'province', pointsField: 'provincePoints', rejectTypeValue: 5 },
 ];
 

+ 44 - 4
src/pages/collect/assessment/composeables/GroupData.ts

@@ -3,6 +3,10 @@ export const GROUP_PROVINCE = 11;
 export const GROUP_DISTRICT_CENTER = 10;
 export const GROUP_DISTRICT = 5;
 export const GROUP_PROTECT_UNIT = 9;
+export const GROUP_DISTRICT_ST = 12;
+export const GROUP_DISTRICT_ND = 13;
+export const GROUP_DISTRICT_RD = 14;
+export const GROUP_DISTRICT_TH = 15;
 
 /** 
  * 用户组 → 本环节提交后的 progress 
@@ -37,20 +41,44 @@ export const GROUP_TO_REVIEW_PROGRESS = {
     minSource: 2
   }, // 县(区)文旅部门
   [GROUP_DISTRICT_CENTER]: {
-    target: 4, 
+    target: 4,
     rejectTarget: 4,
     minSource: 3,
   },// 设区市文旅部门、省非遗中心
+  [GROUP_DISTRICT_ST]: {
+    target: 0,
+    rejectTarget: 0,
+    minSource: 3,
+    noProgressChange: true,
+  },// 项目负责人(不修改进度,等待工服处终审)
+  [GROUP_DISTRICT_ND]: {
+    target: 0,
+    rejectTarget: 0,
+    minSource: 3,
+    noProgressChange: true,
+  },// 部门主任(不修改进度,等待工服处终审)
+  [GROUP_DISTRICT_RD]: {
+    target: 0,
+    rejectTarget: 4,
+    minSource: 3,
+    noProgressChange: true,
+    canReject: true,
+  },// 分管领导(不修改进度,可退回)
+  [GROUP_DISTRICT_TH]: {
+    target: 4,
+    rejectTarget: 4,
+    minSource: 3,
+  },// 工服处(终审,修改进度为4)
   [GROUP_PROVINCE]: {
-    target: 5, 
+    target: 5,
     rejectTarget: 5,
     minSource: 4,
   },// 省文化和旅游厅
-} as Record<number, { 
+} as Record<number, {
   /**
    * 当前级别审核完成后的 progress
    */
-  target: number, 
+  target: number,
   /**
    * 当前级别可审核状态
    */
@@ -59,6 +87,14 @@ export const GROUP_TO_REVIEW_PROGRESS = {
    * 当前级别回退状态
    */
   rejectTarget: number,
+  /**
+   * 是否不修改进度(子角色审核,等待终审)
+   */
+  noProgressChange?: boolean,
+  /**
+   * 是否可退回(即使 noProgressChange 为 true)
+   */
+  canReject?: boolean,
 }>;
 
 export const SUBMITED_PROGRESS = 1;
@@ -69,6 +105,10 @@ export const GROUP_LABELS: Record<number, string> = {
   [GROUP_PROTECT_UNIT]: '项目保护单位',
   [GROUP_DISTRICT]: '县(区)文旅部门',
   [GROUP_DISTRICT_CENTER]: '设区市文旅部门、省非遗中心',
+  [GROUP_DISTRICT_ST]: '项目负责人',
+  [GROUP_DISTRICT_ND]: '部门主任',
+  [GROUP_DISTRICT_RD]: '分管领导',
+  [GROUP_DISTRICT_TH]: '工服处',
   [GROUP_PROVINCE]: '省文化和旅游厅',
 };
 export const PROGRESS_SUBMIT_LABELS: Record<number, string> = {

+ 26 - 3
src/pages/collect/assessment/composeables/Review.ts

@@ -1,5 +1,5 @@
 import { computed, type ComputedRef } from "vue";
-import { GROUP_LABELS, GROUP_PROTECT_UNIT, GROUP_TO_REVIEW_PROGRESS, SUBMITED_PROGRESS, GROUP_PROVINCE, GROUP_DISTRICT_CENTER, GROUP_DISTRICT } from "./GroupData";
+import { GROUP_LABELS, GROUP_PROTECT_UNIT, GROUP_TO_REVIEW_PROGRESS, SUBMITED_PROGRESS, GROUP_PROVINCE, GROUP_DISTRICT_CENTER, GROUP_DISTRICT, GROUP_DISTRICT_ST, GROUP_DISTRICT_ND, GROUP_DISTRICT_RD, GROUP_DISTRICT_TH } from "./GroupData";
 import { useAuthStore } from "@/stores/auth";
 
 export function useReview(sourceProgress?: ComputedRef<number>) {
@@ -34,19 +34,25 @@ export function useReview(sourceProgress?: ComputedRef<number>) {
     const info = reviewProgressInfo.value;
     if (!info || !sourceProgress)
       return false;
+    if (info.noProgressChange) {
+      return sourceProgress.value >= info.minSource;
+    }
     return sourceProgress.value >= info.minSource //上一阶段已完成
       && sourceProgress.value < info.target;// 当前审核阶段未完成
   });
 
   /**
    * 是否可以审核
-   * @param sourceProgress 
-   * @returns 
+   * @param sourceProgress
+   * @returns
    */
   const canReview = (sourceProgress: number) => {
     const info = reviewProgressInfo.value;
     if (!info)
       return false;
+    if (info.noProgressChange) {
+      return sourceProgress >= info.minSource;
+    }
     return sourceProgress >= info.minSource //上一阶段已完成
       && sourceProgress < info.target;// 当前审核阶段未完成
   };
@@ -85,6 +91,21 @@ export function useReview(sourceProgress?: ComputedRef<number>) {
     return `${roleText}。`;
   });
 
+  /**
+   * 当前角色是否不修改进度(子角色审核)
+   */
+  const isNoProgressChange = computed(() => {
+    return !!reviewProgressInfo.value?.noProgressChange;
+  });
+
+  /**
+   * 当前角色是否仅可退回(不可通过审核)
+   */
+  const canRejectOnly = computed(() => {
+    const info = reviewProgressInfo.value;
+    return !!info?.noProgressChange && !info?.canReject;
+  });
+
   return {
     reviewProgressInfo,
     canReview,
@@ -95,5 +116,7 @@ export function useReview(sourceProgress?: ComputedRef<number>) {
     progressHint,
     isEndLevel,
     isProtectUnit,
+    isNoProgressChange,
+    canRejectOnly,
   };
 }

+ 74 - 27
src/pages/collect/assessment/evaluation-form-review.vue

@@ -51,6 +51,13 @@
                 message="当前账号用户组无权在此环节审核"
               />
               <a-alert
+                v-else-if="alreadySubmitted"
+                type="success"
+                show-icon
+                class="mb-4"
+                message="当前角色已提交意见,无需重复提交"
+              />
+              <a-alert
                 v-else-if="currentForm.rejectType > 0"
                 type="warning"
                 show-icon
@@ -60,7 +67,7 @@
               <a-form v-else layout="vertical" size="middle">
                 <div class="flex flex-col md:flex-row lg:flex-row w-full gap-3">
                   <div class="flex flex-col flex-1">
-                    <a-form-item required :label="`审核通过:${reviewLevelLabel}`">
+                    <a-form-item required :label="isNoProgressChange ? `提交意见:${reviewLevelLabel}` : `审核通过:${reviewLevelLabel}`">
                       <a-select
                         v-model:value="reviewOpinion"
                         allow-clear
@@ -74,11 +81,11 @@
                         :min="0"
                         :max="100"
                         class="w-full"
-                        placeholder="可选"
+                        placeholder="请填写分数"
                       />
                     </a-form-item>
                   </div>
-                  <div class="flex flex-col flex-1">
+                  <div v-if="!isNoProgressChange || reviewProgressInfo?.canReject" class="flex flex-col flex-1">
                     <a-form-item required label="不通过回退:回退原因">
                       <a-textarea
                         v-model:value="rejectReason"
@@ -100,10 +107,10 @@
                       :disabled="!canSubmitReview"
                       @click="submitReview"
                     >
-                      通过审核
+                      {{ isNoProgressChange ? '提交意见' : '通过审核' }}
                     </a-button>
                   </div>
-                  <div class="flex flex-col flex-1">
+                  <div v-if="!isNoProgressChange || reviewProgressInfo?.canReject" class="flex flex-col flex-1">
                     <a-button
                       block
                       danger
@@ -140,7 +147,7 @@ import SelfAssessmentFormDisplay from './components/SelfAssessmentFormDisplay.vu
 import { useSimpleDataLoader } from '@/composeables/useSimpleDataLoader';
 import { useAuthStore } from '@/stores/auth';
 import { useMemorizeVar } from '@/composeables/useMemorizeVar';
-import { GROUP_TO_REVIEW_PROGRESS, PROGRESS_SUBMIT_LABELS } from './composeables/GroupData.ts';
+import { GROUP_TO_REVIEW_PROGRESS, GROUP_DISTRICT_ST, GROUP_DISTRICT_ND, GROUP_DISTRICT_RD, GROUP_DISTRICT_TH, PROGRESS_SUBMIT_LABELS } from './composeables/GroupData.ts';
 import { isInMiniProgram } from '@/composeables/MiniProgramIng.ts';
 import { useReview } from './composeables/Review.ts';
 
@@ -179,6 +186,7 @@ const reviewPoints = ref<number | null>(null);
 const rejectReason = ref<string | null>(null);
 
 const opinionSelectOptions = [
+  { label: '请选择', value: 0 },
   { label: '优秀', value: 1 },
   { label: '合格', value: 2 },
   { label: '不合格', value: 3 },
@@ -187,7 +195,22 @@ const opinionSelectOptions = [
 ];
 
 const currentProgress = computed(() => currentForm.value?.progress ?? 0);
-const { reviewProgressInfo, canSubmitReview, reviewLevelLabel, progressHint } = useReview(currentProgress);
+const { reviewProgressInfo, canSubmitReview, reviewLevelLabel, progressHint, isNoProgressChange } = useReview(currentProgress);
+
+const currentUserGroupId = computed(() => {
+  const groups = currentUserGroups.value;
+  return groups.find((g) => GROUP_TO_REVIEW_PROGRESS[g.id])?.id ?? 0;
+});
+
+/** 当前子角色是否已提交过意见(不可重复提交) */
+const alreadySubmitted = computed(() => {
+  const f = currentForm.value;
+  if (!f) return false;
+  const gid = currentUserGroupId.value;
+  if (gid === GROUP_DISTRICT_ST) return (f.districtSt ?? 0) > 0;
+  if (gid === GROUP_DISTRICT_ND) return (f.districtNd ?? 0) > 0;
+  return false;
+});
 
 function levelTitleFromForm(f: SelfAssessmentDetail) {
   if (f.level === 23) return '国家级';
@@ -213,21 +236,36 @@ async function loadCheckItems(f: SelfAssessmentDetail) {
 }
 
 function applyPrefillFromDetail(f: SelfAssessmentDetail) {
-  const t = reviewProgressInfo.value.target;
+  const gid = currentUserGroupId.value;
   if (!canSubmitReview.value)
     return;
-  if (t === 2) {
-    reviewOpinion.value = f.ichUnit ?? null;
-    reviewPoints.value = f.unitPoints || null;
-  } else if (t === 3) {
-    reviewOpinion.value = f.county ?? null;
-    reviewPoints.value = f.countyPoints || null;
-  } else if (t === 4) {
-    reviewOpinion.value = f.district ?? null;
-    reviewPoints.value = f.districtPoints || null;
-  } else if (t === 5) {
-    reviewOpinion.value = f.province ?? null;
-    reviewPoints.value = f.provincePoints || null;
+  if (gid === GROUP_DISTRICT_ST) {
+    reviewOpinion.value = f.districtSt ?? null;
+    reviewPoints.value = f.districtStPoints || null;
+  } else if (gid === GROUP_DISTRICT_ND) {
+    reviewOpinion.value = f.districtNd ?? null;
+    reviewPoints.value = f.districtNdPoints || null;
+  } else if (gid === GROUP_DISTRICT_RD) {
+    reviewOpinion.value = f.districtRd ?? null;
+    reviewPoints.value = f.districtRdPoints || null;
+  } else if (gid === GROUP_DISTRICT_TH) {
+    reviewOpinion.value = f.districtTh ?? null;
+    reviewPoints.value = f.districtThPoints || null;
+  } else {
+    const t = reviewProgressInfo.value.target;
+    if (t === 2) {
+      reviewOpinion.value = f.ichUnit ?? null;
+      reviewPoints.value = f.unitPoints || null;
+    } else if (t === 3) {
+      reviewOpinion.value = f.county ?? null;
+      reviewPoints.value = f.countyPoints || null;
+    } else if (t === 4) {
+      reviewOpinion.value = f.district ?? null;
+      reviewPoints.value = f.districtPoints || null;
+    } else if (t === 5) {
+      reviewOpinion.value = f.province ?? null;
+      reviewPoints.value = f.provincePoints || null;
+    }
   }
 }
 
@@ -305,7 +343,7 @@ async function submitReview() {
     message.warning('当前账号用户组无权提交审核');
     return;
   }
-  if (reviewOpinion.value == null) {
+  if (reviewOpinion.value == null || reviewOpinion.value === 0) {
     message.warning('请选择审核意见');
     return;
   }
@@ -313,21 +351,30 @@ async function submitReview() {
     message.warning('请输入审核评分');
     return;
   }
-  const t = reviewProgressInfo.value.target;
-  const base = { id: f.id, progress: t };
+  const gid = currentUserGroupId.value;
   const points = reviewPoints.value;
   const op = reviewOpinion.value;
+  const noProgressChange = isNoProgressChange.value;
+  const base = { id: f.id, progress: noProgressChange ? f.progress : reviewProgressInfo.value.target };
   try {
     submitLoading.value = true;
-    if (t === 2)
+    if (gid === GROUP_DISTRICT_ST)
+      await AssessmentContentApi.reviewSelfAssessment({ ...base, districtSt: op, districtStPoints: points });
+    else if (gid === GROUP_DISTRICT_ND)
+      await AssessmentContentApi.reviewSelfAssessment({ ...base, districtNd: op, districtNdPoints: points });
+    else if (gid === GROUP_DISTRICT_RD)
+      await AssessmentContentApi.reviewSelfAssessment({ ...base, districtRd: op, districtRdPoints: points });
+    else if (gid === GROUP_DISTRICT_TH)
+      await AssessmentContentApi.reviewSelfAssessment({ ...base, districtTh: op, districtThPoints: points });
+    else if (base.progress === 2)
       await AssessmentContentApi.reviewSelfAssessment({ ...base, ichUnit: op, unitPoints: points });
-    else if (t === 3)
+    else if (base.progress === 3)
       await AssessmentContentApi.reviewSelfAssessment({ ...base, county: op, countyPoints: points });
-    else if (t === 4)
+    else if (base.progress === 4)
       await AssessmentContentApi.reviewSelfAssessment({ ...base, district: op, districtPoints: points });
     else
       await AssessmentContentApi.reviewSelfAssessment({ ...base, province: op, provincePoints: points });
-    message.success('审核提交成功');
+    message.success(noProgressChange ? '意见提交成功' : '审核提交成功');
     loader.load();
   } catch (e) {
     Modal.error({ title: '审核提交失败', content: formatErr(e) });