Kaynağa Gözat

📦 按要求增加自查评估表的审核页保存意见回传分数

快乐的梦鱼 1 ay önce
ebeveyn
işleme
a7b4448313

+ 33 - 20
src/pages/collect/assessment/evaluation-form-review.vue

@@ -508,14 +508,19 @@ async function saveReasions() {
     return;
   }
   
+  const gid = currentUserGroupId.value;
+  const myField = reviewFields.value[gid];
   const reasons = {} as Record<number, string>;
   for (const { gid, def } of displayFieldDefs.value) {
     reasons[gid] = reviewFields.value[gid].reason || '';
   }
 
+  const {base} = collectPoints(f as SelfAssessmentDetail, myField);
+
   try {
     submitLoading.value = true;
     await AssessmentContentApi.reviewSelfAssessment({
+      ...base,
       id: f.id,
       progress: f.progress,
       reasons,
@@ -579,26 +584,8 @@ async function submitReject() {
   }
 }
 
-async function submitReview() {
-  const f = currentForm.value;
-  if (!f?.id) {
-    message.warning('缺少自查表 ID');
-    return;
-  }
-  if (!canSubmitReview.value) {
-    message.warning('当前账号用户组无权提交审核');
-    return;
-  }
-  const gid = currentUserGroupId.value;
-  const myField = reviewFields.value[gid];
-  if (myField?.opinion == null || myField.opinion === 0) {
-    message.warning('请选择审核意见');
-    return;
-  }
-  /* if (myField?.points == null) {
-    message.warning('请输入审核评分');
-    return;
-  } */
+
+function collectPoints(f: SelfAssessmentDetail, myField: ReviewFieldState) {
   const noProgressChange = isNoProgressChange.value;
   const base: Record<string, any> = { id: f.id, progress: noProgressChange ? f.progress : reviewProgressInfo.value.target };
 
@@ -622,6 +609,32 @@ async function submitReview() {
     else { base.province = op; base.provincePoints = points; }
   }
 
+  return {base, noProgressChange};
+}
+
+async function submitReview() {
+  const f = currentForm.value;
+  if (!f?.id) {
+    message.warning('缺少自查表 ID');
+    return;
+  }
+  if (!canSubmitReview.value) {
+    message.warning('当前账号用户组无权提交审核');
+    return;
+  }
+  const gid = currentUserGroupId.value;
+  const myField = reviewFields.value[gid];
+  if (myField?.opinion == null || myField.opinion === 0) {
+    message.warning('请选择审核意见');
+    return;
+  }
+  /* if (myField?.points == null) {
+    message.warning('请输入审核评分');
+    return;
+  } */
+
+  const {base, noProgressChange} = collectPoints(f as SelfAssessmentDetail, myField);
+
   try {
     submitLoading.value = true;
     await AssessmentContentApi.reviewSelfAssessment(base as any);