From 36cf6c5a265d3300a286e2aff6058b82bca8227e Mon Sep 17 00:00:00 2001
From: GuLiMmo <2820890765@qq.com>
Date: Mon, 25 Dec 2023 10:29:43 +0800
Subject: [PATCH] 评优页面更新

---
 src/views/evaluate/components/viewEvaluateDetail.vue |   59 +++++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 45 insertions(+), 14 deletions(-)

diff --git a/src/views/evaluate/components/viewEvaluateDetail.vue b/src/views/evaluate/components/viewEvaluateDetail.vue
index 9905eaa..d0657b2 100644
--- a/src/views/evaluate/components/viewEvaluateDetail.vue
+++ b/src/views/evaluate/components/viewEvaluateDetail.vue
@@ -1,5 +1,5 @@
 <template>
-    <el-dialog title="信息预览" v-model="params.visible" width="50%">
+    <el-dialog title="信息预览" v-model="params.visible" width="70%">
         <div class="descriptions">
             <div class="descriptions-item" v-for="item in taskDateil" :key="item.prop" :style="{ width: item.width }">
                 <div class="label">{{ item.title }}</div>
@@ -106,27 +106,27 @@
             column: [
                 {
                     label: '评优项目',
-                    prop: '',
+                    prop: 'evaluateTaskName',
                     type: 'input',
                 },
-                {
-                    label: '名称',
-                    prop: '',
-                    type: 'input',
-                },
+                // {
+                //     label: '任务类别',
+                //     prop: '',
+                //     type: 'input',
+                // },
                 {
                     label: '候选人',
-                    prop: '',
+                    prop: 'userName',
                     type: 'input',
                 },
                 {
                     label: '部门',
-                    prop: '',
+                    prop: 'deptName',
                     type: 'input'
                 },
                 {
                     label: '票数',
-                    prop: '',
+                    prop: 'voteNum',
                     type: 'input'
                 }
             ]
@@ -151,10 +151,11 @@
 }
 
 const getFinallyList = () => {
+    const { id, evaluateNum } = props.params.data
     const params = {
-        evaluateTaskId: props.params.data.id,
-        current: page.current,
-        size: page.size
+        evaluateTaskId: id,
+        current: 1,
+        size: evaluateNum
     }
     return getFinallyResult(params).then(res => {
         return res.data.data.records
@@ -163,19 +164,48 @@
 
 const initData = async () => {
     const data = props.params.data
+    const status = {
+        0: '未开始',
+        1: '进行中',
+        2: '已完成'
+    }
+
     for (const item of taskDateil) {
         item.value = data[item.prop] || '暂未完善'
+
+        if (['candidateState', 'evaluateState'].includes(item.prop)) {
+            item.value = status[item.value]
+        }
 
         if (item.prop === 'candidateResult') {
             const res = await candidateList()
             if (res.length == 0) {
                 item.value = '暂无候选人'
+            } else {
+                const candidates = {}
+                const candidateStrArr = []
+                const { candidateNum } = data
+                candidateNum.forEach(candidate => {
+                    res.forEach(r => {
+                        const value = candidate.users.find(user => user.id === r.userId)
+                        if (value) {
+                            if (candidates[candidate.deptName] === void 0) {
+                                candidates[candidate.deptName] = []
+                            }
+                            candidates[candidate.deptName].push(value.name)
+                        }
+                    })
+                })
+                Object.keys(candidates).forEach(key => { candidateStrArr.push(`${key}(${candidates[key].length}人):${candidates[key].join('、')}`) })
+                item.value = candidateStrArr.join('\n')
+                console.log(candidateStrArr.join('\n'));
             }
         }
 
         if (item.prop === 'finallyResult') {
             const res = await getFinallyList()
             item.data = res
+            console.log(item.data);
         }
     }
 
@@ -220,9 +250,10 @@
             background-color: aliceblue;
             border-right: 1px solid #eeeded;
         }
-
         .value {
+            white-space: pre-line;
         }
+
         .table {
             padding: 10px;
             width: calc(100% - 20px);

--
Gitblit v1.9.3