From c67f52b0060a3d3339a0c62850e919c152d3a669 Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期五, 21 六月 2024 10:00:31 +0800
Subject: [PATCH] 完成人员考评接口对接

---
 src/components/do/b3-personnel-evaluation/employee-mutual-evaluation.vue |  117 +++++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 70 insertions(+), 47 deletions(-)

diff --git a/src/components/do/b3-personnel-evaluation/employee-mutual-evaluation.vue b/src/components/do/b3-personnel-evaluation/employee-mutual-evaluation.vue
index 83a64bc..ae836ea 100644
--- a/src/components/do/b3-personnel-evaluation/employee-mutual-evaluation.vue
+++ b/src/components/do/b3-personnel-evaluation/employee-mutual-evaluation.vue
@@ -1,9 +1,9 @@
 <template>
   <div class="table-item">
-    <p style="text-align: center;margin-bottom: 10px;">{{ laboratory.label }} {{ Number(month.split('-')[1]) }} 鏈堜唤鍛樺伐浜掕瘎鎵撳垎琛�</p>
+    <p style="text-align: center;margin-bottom: 10px;">{{ entity.departLims }} {{ Number(entity.month.split('-')[1]) }} 鏈堜唤鍛樺伐浜掕瘎鎵撳垎琛�</p>
     <el-table
     :data="tableData"
-    style="width: 100%" height="calc(100% - 20px)">
+    style="width: 100%" height="calc(100% - 20px)" v-loading="loading">
       <el-table-column
         type="index"
         label="搴忓彿"
@@ -15,21 +15,21 @@
         <el-table-column label="鍙婃椂瀹屾垚">
           <el-table-column label="20" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="20" v-model="scope.row.radio0">{{ '' }}</el-radio>
+              <el-radio :label="20" v-model="scope.row.seasonable" @input="m=>handleChange(m,scope.row,'seasonable')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
         <el-table-column label="鍌績瀹屾垚">
           <el-table-column label="15" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="15" v-model="scope.row.radio0">{{ '' }}</el-radio>
+              <el-radio :label="15" v-model="scope.row.seasonable" @input="m=>handleChange(m,scope.row,'seasonable')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
         <el-table-column label="寤舵湡杈冮暱">
           <el-table-column label="10" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="10" v-model="scope.row.radio0">{{ '' }}</el-radio>
+              <el-radio :label="10" v-model="scope.row.seasonable" @input="m=>handleChange(m,scope.row,'seasonable')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
@@ -38,21 +38,21 @@
         <el-table-column label="鍏ㄦ湀鏃犻敊">
           <el-table-column label="20" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="20" v-model="scope.row.radio1">{{ '' }}</el-radio>
+              <el-radio :label="20" v-model="scope.row.exact" @input="m=>handleChange(m,scope.row,'exact')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
         <el-table-column label="鍋舵湁澶辫">
           <el-table-column label="15" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="15" v-model="scope.row.radio1">{{ '' }}</el-radio>
+              <el-radio :label="15" v-model="scope.row.exact" @input="m=>handleChange(m,scope.row,'exact')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
         <el-table-column label="棰戠箒閿欒">
           <el-table-column label="10" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="10" v-model="scope.row.radio1">{{ '' }}</el-radio>
+              <el-radio :label="10" v-model="scope.row.exact" @input="m=>handleChange(m,scope.row,'exact')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
@@ -61,105 +61,105 @@
         <el-table-column label="鎿嶄綔鐔熺粌">
           <el-table-column label="20" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="20" v-model="scope.row.radio2">{{ '' }}</el-radio>
+              <el-radio :label="20" v-model="scope.row.skill" @input="m=>handleChange(m,scope.row,'skill')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
         <el-table-column label="鎿嶄綔鍩烘湰鐔熺粌">
           <el-table-column label="15" width="120px">
             <template slot-scope="scope">
-              <el-radio :label="15" v-model="scope.row.radio2">{{ '' }}</el-radio>
+              <el-radio :label="15" v-model="scope.row.skill" @input="m=>handleChange(m,scope.row,'skill')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
         <el-table-column label="闇�瑕佹寚瀵�">
           <el-table-column label="12" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="12" v-model="scope.row.radio2">{{ '' }}</el-radio>
+              <el-radio :label="12" v-model="scope.row.skill" @input="m=>handleChange(m,scope.row,'skill')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
       </el-table-column>
       <el-table-column label="璁惧缁存姢">
         <el-table-column label="鑷缁存姢">
-          <el-table-column label="10" width="90px"">
+          <el-table-column label="10" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="10" v-model="scope.row.radio3">{{ '' }}</el-radio>
+              <el-radio :label="10" v-model="scope.row.preserve" @input="m=>handleChange(m,scope.row,'preserve')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
         <el-table-column label="鑳界淮鎶�">
-          <el-table-column label="5" width="80px"">
+          <el-table-column label="5" width="80px">
             <template slot-scope="scope">
-              <el-radio :label="5" v-model="scope.row.radio3">{{ '' }}</el-radio>
+              <el-radio :label="5" v-model="scope.row.preserve" @input="m=>handleChange(m,scope.row,'preserve')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
         <el-table-column label="鏃犳剰璇�">
-          <el-table-column label="2" width="80px"">
+          <el-table-column label="2" width="80px">
             <template slot-scope="scope">
-              <el-radio :label="2" v-model="scope.row.radio3">{{ '' }}</el-radio>
+              <el-radio :label="2" v-model="scope.row.preserve" @input="m=>handleChange(m,scope.row,'preserve')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
       </el-table-column>
       <el-table-column label="閬电珷瀹堢邯">
         <el-table-column label="鑷閬靛畧" >
-          <el-table-column label="10" width="90px"">
+          <el-table-column label="10" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="10" v-model="scope.row.radio4">{{ '' }}</el-radio>
+              <el-radio :label="10" v-model="scope.row.discipline" @input="m=>handleChange(m,scope.row,'discipline')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
         <el-table-column label="琚姩閬靛畧">
-          <el-table-column label="7" width="90px"">
+          <el-table-column label="7" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="7" v-model="scope.row.radio4">{{ '' }}</el-radio>
+              <el-radio :label="7" v-model="scope.row.discipline" @input="m=>handleChange(m,scope.row,'discipline')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
         <el-table-column label="缁忓父杩濈邯">
-          <el-table-column label="5" width="90px"">
+          <el-table-column label="5" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="5" v-model="scope.row.radio4">{{ '' }}</el-radio>
+              <el-radio :label="5" v-model="scope.row.discipline" @input="m=>handleChange(m,scope.row,'discipline')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
       </el-table-column>
       <el-table-column label="鍥㈢粨鍗忎綔">
         <el-table-column label="鍥㈢粨鍗忎綔">
-          <el-table-column label="10" width="90px"">
+          <el-table-column label="10" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="10" v-model="scope.row.radio5">{{ '' }}</el-radio>
+              <el-radio :label="10" v-model="scope.row.solidarity" @input="m=>handleChange(m,scope.row,'solidarity')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
         <el-table-column label="鍩烘湰铻嶆唇">
-          <el-table-column label="8" width="90px"">
+          <el-table-column label="8" width="90px">
             <template slot-scope="scope">
-              <el-radio :label="8" v-model="scope.row.radio5">{{ '' }}</el-radio>
+              <el-radio :label="8" v-model="scope.row.solidarity" @input="m=>handleChange(m,scope.row,'solidarity')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
       </el-table-column>
       <el-table-column label="5S-3瀹�">
         <el-table-column label="鍖呭共鍖烘暣娲�">
-          <el-table-column label="10" width="110px"">
+          <el-table-column label="10" width="110px">
             <template slot-scope="scope">
-              <el-radio :label="10" v-model="scope.row.radio6">{{ '' }}</el-radio>
+              <el-radio :label="10" v-model="scope.row.tidy" @input="m=>handleChange(m,scope.row,'tidy')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
         <el-table-column label="瀛樺湪涓嶆竻娲佺偣">
-          <el-table-column label="7" width="130px"">
+          <el-table-column label="7" width="130px">
             <template slot-scope="scope">
-              <el-radio :label="7" v-model="scope.row.radio6">{{ '' }}</el-radio>
+              <el-radio :label="7" v-model="scope.row.tidy" @input="m=>handleChange(m,scope.row,'tidy')">{{ '' }}</el-radio>
             </template>
           </el-table-column>
         </el-table-column>
       </el-table-column>
-      <el-table-column label="寰楀垎">
-        <el-table-column label="100" width="70px"">
+      <el-table-column label="寰楀垎" fixed="right">
+        <el-table-column label="100" width="70px" prop="total">
         </el-table-column>
       </el-table-column>
     </el-table>
@@ -169,23 +169,46 @@
 <script>
 export default {
   props:{
-    month:String,
-    laboratory:Object
+    entity:Object,
   },
   data(){
     return{
-      tableData:[
-        {
-          radio0:0,
-          radio1:0,
-          radio2:0,
-          radio3:0,
-          radio4:0,
-          radio5:0,
-          radio6:0,
-        }
-      ],
-      radio:20
+      tableData:[],
+      loading:false,
+    }
+  },
+  created(){
+    this.refreshTable()
+  },
+  methods:{
+    handleChange(value,row,prop){
+      row[prop] = Number(value)
+      this.$axios.post(this.$api.evaluate.writeEvaluateGroup, {
+        ...row
+        },{
+          headers: {
+            'Content-Type': 'application/json'
+          },
+          noQs:true
+        }).then(res => {
+          row.total = res.data
+        })
+    },
+    refreshTable(){
+      this.loading = true
+      this.$axios.post(this.$api.evaluate.getEvaluateGroup, {
+          ...this.$parent.entity,
+        },{
+          headers: {
+            'Content-Type': 'application/json'
+          }
+        }).then(res => {
+          this.loading = false
+          this.tableData = res.data
+        })
+    },
+    refresh(){
+      this.refreshTable()
     }
   }
 }

--
Gitblit v1.9.3