From 679ede97899d73d5a7619091b6ee3b7c881d1627 Mon Sep 17 00:00:00 2001
From: 董国庆 <364620639@qq.com>
Date: 星期六, 28 六月 2025 10:04:27 +0800
Subject: [PATCH] 修改bug

---
 laboratory/src/views/deliveryAssessment/testerWorkerEvaluate/add.vue |   63 +++++++++++++++++++++++++------
 1 files changed, 51 insertions(+), 12 deletions(-)

diff --git a/laboratory/src/views/deliveryAssessment/testerWorkerEvaluate/add.vue b/laboratory/src/views/deliveryAssessment/testerWorkerEvaluate/add.vue
index 48db4f4..1b361f0 100644
--- a/laboratory/src/views/deliveryAssessment/testerWorkerEvaluate/add.vue
+++ b/laboratory/src/views/deliveryAssessment/testerWorkerEvaluate/add.vue
@@ -98,8 +98,8 @@
           <div>工作标准评定</div>
         </div>
       </div>
-      <EvaluateTable :type="2" ref="evaluateTable" />
-      <div class="add-project-footer">
+      <EvaluateTable :type="2" ref="evaluateTable" :isReadonly="!isEdit" :viewJson="resultEvaluateJson" />
+      <div class="add-project-footer" v-if="isEdit">
         <el-button type="primary" @click="submitForm()">保存</el-button>
         <!-- <el-button>存草稿</el-button> -->
       </div>
@@ -120,7 +120,7 @@
 <script>
 import SelectMemberSimple from "@/components/SelectMemberSimple/index.vue";
 import ExperimentalScheduling from "@/views/dataManagement/schemeManagement/components/experimental-scheduling";
-import { getEvaluateChemist, add } from "./service.js";
+import { getEvaluateChemist, add ,getEvaluateDetailById,update} from "./service.js";
 import moment from "moment";
 
 export default {
@@ -135,6 +135,7 @@
       participantsData: [],
       selectedParticipants: [],
       tableData: [],
+      resultEvaluateJson:'',
       isEdit: true, // 是否为编辑模式
       // 状态映射表
       statusTypeMap: {
@@ -151,22 +152,49 @@
       },
     };
   },
-  async created() {
+  activated() {
+    this.participantsData = [];
+    this.selectedParticipants = [];
+    this.tableData = [];
+    // this.isEdit = true; // 是否为编辑模式
+
+    if (this.$route.query.id) {
+      this.isEdit = this.$route.query.type == "view" ? false : true;
+      console.log('this.$route.query.type == "view"',this.$route.query.type == "view")
+      this.editId = this.$route.query.id;
+      this.loadEditData();
+    }
+  },
+  mounted() {
     // const userInfo = JSON.parse(sessionStorage.getItem("userInfo") || "{}");
     // this.userRole = userInfo.roleType || "";
     // 检查是否为编辑模式
     this.participantsData = [];
     this.selectedParticipants = [];
     this.tableData = [];
-    this.isEdit = true; // 是否为编辑模式
+    // this.isEdit = true; // 是否为编辑模式
 
     if (this.$route.query.id) {
-      this.isEdit = this.$route.query.type === "view" ? false : true;
+      this.isEdit = this.$route.query.type == "view" ? false : true;
       this.editId = this.$route.query.id;
-      await this.loadEditData();
+      this.loadEditData();
     }
   },
   methods: {
+    loadEditData(){
+      getEvaluateDetailById({ id: this.editId }).then((res) => { 
+        if(res.experimentDispatch){
+          this.handleSchedulingSubmit([{...res.experimentDispatch}])
+        }
+        if(res.userId){
+          this.selectedParticipants = [{...res,nickName:res.testerName}]
+        }
+        if(res.resultEvaluateJson){
+          this.resultEvaluateJson=res.resultEvaluateJson
+        }
+        
+      });
+    },
     handleSchedulingClose() {
       this.showScheduling = false;
     },
@@ -220,11 +248,12 @@
     getEvaluateValue(score) {
       // 2分 = 良好(1), 1分 = 正确(2), 0分 = 失误(3)
       const scoreMap = {
-        2: 1, // 良好
-        1: 2, // 正确
-        0: 3, // 失误
+        2: 2, // 良好
+        1: 1, // 正确
+        0: 0, // 失误
+        '-3':'-3'
       };
-      return scoreMap[score] || 3; // 默认返回失误
+      return scoreMap[score] || 0; // 默认返回失误
     },
     submitForm() {
       const evaluateTable = this.$refs.evaluateTable;
@@ -233,7 +262,6 @@
         return;
       }
       const activeIndex = evaluateTable.activeIndex;
-
       const evaluateData = {
         evaluateOne: this.getEvaluateValue(activeIndex[0].score),
         evaluateTwo: this.getEvaluateValue(activeIndex[1].score),
@@ -249,6 +277,17 @@
         dispatchId: this.tableData[0]?.id,
         status: 1,
       };
+      if(this.editId){
+        update({...evaluateData,id:this.editId}).then((res) => { 
+          if (res.code == 200) {
+          this.$message.success("编辑成功");
+          this.$router.back();
+        } else {
+          this.$message.error(res.msg || "编辑失败");
+        }
+        });
+        return;
+      }
       add(evaluateData).then((res) => {
         if (res.code == 200) {
           this.$message.success("保存成功");

--
Gitblit v1.7.1