From 4b898d43d04242e74157aedafa5e1c7d75d1abcd Mon Sep 17 00:00:00 2001
From: GuLiMmo <2820890765@qq.com>
Date: Fri, 15 Dec 2023 11:40:42 +0800
Subject: [PATCH] 评优任务页面、考核结果页面修改

---
 /dev/null                                      |   11 
 src/views/evaluate/components/addDialog.vue    |  551 ++++++++++++++++++++---------------------
 src/api/assessment/assessmentScore.js          |   13 +
 src/views/assessment/assessmentTask.vue        |    3 
 src/views/assessment/components/taskResult.vue |  202 +++++++++++++--
 5 files changed, 459 insertions(+), 321 deletions(-)

diff --git a/src/api/assessment/assessmentScore.js b/src/api/assessment/assessmentScore.js
new file mode 100644
index 0000000..d2278de
--- /dev/null
+++ b/src/api/assessment/assessmentScore.js
@@ -0,0 +1,13 @@
+import request from '@/axios';
+
+export const getList = (current, size, params) => {
+    return request({
+        url: '/assessment/assessmentScore/list',
+        method: 'get',
+        params: {
+            ...params,
+            current,
+            size,
+        }
+    })
+}
\ No newline at end of file
diff --git a/src/views/assessment/assessmentResults.vue b/src/views/assessment/assessmentResults.vue
deleted file mode 100644
index ea723f1..0000000
--- a/src/views/assessment/assessmentResults.vue
+++ /dev/null
@@ -1,11 +0,0 @@
-<template>
-    <basic-container>
-    </basic-container>
-</template>
-
-<script>
-export default {}
-</script>
-
-<style lang="scss" scoped>
-</style>
\ No newline at end of file
diff --git a/src/views/assessment/assessmentTask.vue b/src/views/assessment/assessmentTask.vue
index 15d01af..3790900 100644
--- a/src/views/assessment/assessmentTask.vue
+++ b/src/views/assessment/assessmentTask.vue
@@ -16,7 +16,7 @@
             导出
           </el-button>
         </template>
-        <template #menu>
+        <template #menu="{row}">
           <el-button type="primary" icon="el-icon-plus" size="small" @click="handleTaskResult(row)">
             考核结果
           </el-button>
@@ -121,6 +121,7 @@
     handleTaskResult(row) {
       this.isResult = false;
       this.resultParams = row
+      this.resultParams.type = this.defaultTaskType
     },
     changeIs(is) {
       this.isResult = is
diff --git a/src/views/assessment/components/taskResult.vue b/src/views/assessment/components/taskResult.vue
index 629faff..f88c77d 100644
--- a/src/views/assessment/components/taskResult.vue
+++ b/src/views/assessment/components/taskResult.vue
@@ -5,13 +5,17 @@
                 <span>考核结果</span>
             </template>
         </el-page-header>
-        <avue-crud ref="crud" v-model="form" v-model:search="search" :option="option" :data="data" v-model:page="page">
+        <avue-crud :option="option" v-model:search="search" v-model:page="page" v-model="form" :table-loading="loading"
+            :data="data" :permission="permissionList" :before-open="beforeOpen" ref="crud" @row-update="rowUpdate"
+            @row-save="rowSave" @row-del="rowDel" @search-change="searchChange" @search-reset="searchReset"
+            @selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
+            @refresh-change="refreshChange" @on-load="onLoad">
         </avue-crud>
     </div>
 </template>
   
 <script>
-
+import { getList } from '@/api/assessment/assessmentScore'
 export default {
     props: {
         params: {
@@ -23,17 +27,12 @@
     },
     data() {
         return {
+            rowData: {},
             form: {},
+            query: {},
             search: {},
-            selectionList: [],
-            data: [
-                {
-                    assessor: '张三',
-                    position: '经理',
-                    weight: 50,
-                    ratingRange: 50,
-                }
-            ],
+            loading: true,
+            data: [],
             option: {
                 height: 'auto',
                 calcHeight: 32,
@@ -41,25 +40,25 @@
                 searchMenuSpan: 6,
                 border: true,
                 index: true,
-                addBtn: true,
+                addBtn: false,
                 viewBtn: true,
                 editBtn: false,
-                delBtn: true,
-                selection: true,
+                delBtn: false,
+                selection: false,
                 dialogClickModal: false,
                 menuWidth: 200,
                 column: [
-                    {
-                        label: "考核编号",
-                        type: 'select',
-                        hide: true,
-                        search: true
-                    },
+                    // {
+                    //     label: "考核编号",
+                    //     type: 'select',
+                    //     hide: true,
+                    //     search: true
+                    // },
                     {
                         label: "被考核人",
-                        prop: "name",
+                        prop: "userName",
                         type: "input",
-                        search: true,
+                        search: true
                     },
                     {
                         label: "工号",
@@ -75,14 +74,14 @@
                         prop: "postName",
                         type: "input",
                     },
-                    {
-                        label: "人员类型",
-                        prop: "personnelType",
-                        type: "input",
-                    },
+                    // {
+                    //     label: "人员类型",
+                    //     prop: "personnelType",
+                    //     type: "input",
+                    // },
                     {
                         label: "考核分",
-                        prop: "ratingRange",
+                        prop: "scoreVal",
                         type: "input",
                     }
                 ]
@@ -95,6 +94,15 @@
         }
     },
     watch: {
+        'params': {
+            handler(val) {
+                this.rowData = val
+                this.query.assessmentTaskId = val.id
+                this.query.type = val.type
+            },
+            deep: true,
+            immediate: true,
+        }
     },
     computed: {
         ids() {
@@ -109,9 +117,143 @@
         back() {
             this.$emit('changeIs', true)
         },
-        sizeChange() { },
-        refreshChange() { },
+        rowSave(row, done, loading) {
+            add(row).then(() => {
+                this.onLoad(this.page);
+                this.$message({
+                    type: "success",
+                    message: "操作成功!"
+                });
+                done();
+            }, error => {
+                loading();
+                window.console.log(error);
+            });
+        },
+        rowUpdate(row, index, done, loading) {
+            update(row).then(() => {
+                this.onLoad(this.page);
+                this.$message({
+                    type: "success",
+                    message: "操作成功!"
+                });
+                done();
+            }, error => {
+                loading();
+                console.log(error);
+            });
+        },
+        rowDel(row) {
+            this.$confirm("确定将选择数据删除?", {
+                confirmButtonText: "确定",
+                cancelButtonText: "取消",
+                type: "warning"
+            })
+                .then(() => {
+                    return remove(row.id);
+                })
+                .then(() => {
+                    this.onLoad(this.page);
+                    this.$message({
+                        type: "success",
+                        message: "操作成功!"
+                    });
+                });
+        },
+        handleDelete() {
+            if (this.selectionList.length === 0) {
+                this.$message.warning("请选择至少一条数据");
+                return;
+            }
+            this.$confirm("确定将选择数据删除?", {
+                confirmButtonText: "确定",
+                cancelButtonText: "取消",
+                type: "warning"
+            })
+                .then(() => {
+                    return remove(this.ids);
+                })
+                .then(() => {
+                    this.onLoad(this.page);
+                    this.$message({
+                        type: "success",
+                        message: "操作成功!"
+                    });
+                    this.$refs.crud.toggleSelection();
+                });
+        },
+        // handleExport() {
+        //     let downloadUrl = `/assessmentTask/assessmentTask/export-assessmentTask?${this.website.tokenHeader}=${getToken()}`;
+        //     const {
+        //     } = this.query;
+        //     let values = {
+        //         ...this.query
+        //     };
+        //     this.$confirm("是否导出数据?", "提示", {
+        //         confirmButtonText: "确定",
+        //         cancelButtonText: "取消",
+        //         type: "warning"
+        //     }).then(() => {
+        //         NProgress.start();
+        //         exportBlob(downloadUrl, values).then(res => {
+        //             downloadXls(res.data, `考核任务表${dateNow()}.xlsx`);
+        //             NProgress.done();
+        //         })
+        //     });
+        // },
+        beforeOpen(done, type) {
+            if (["edit", "view"].includes(type)) {
+                getDetail(this.form.id).then(res => {
+                    this.form = res.data.data;
+                });
+            }
+            done();
+        },
+        searchReset() {
+            this.query = {};
+            this.onLoad(this.page);
+        },
+        searchChange(params, done) {
+            params.type = this.defaultTaskType
+            this.query = params;
+            this.page.currentPage = 1;
+            this.onLoad(this.page, params);
+            done();
+        },
+        selectionChange(list) {
+            this.selectionList = list;
+        },
+        selectionClear() {
+            this.selectionList = [];
+            this.$refs.crud.toggleSelection();
+        },
+        currentChange(currentPage) {
+            this.page.currentPage = currentPage;
+        },
+        sizeChange(pageSize) {
+            this.page.pageSize = pageSize;
+        },
+        refreshChange() {
+            this.onLoad(this.page, this.query);
+        },
         onLoad(page, params = {}) {
+            this.loading = true;
+
+            const {
+            } = this.query;
+
+            let values = {
+                ...this.query,
+                ...params
+            };
+
+            getList(page.currentPage, page.pageSize, values).then(res => {
+                const data = res.data.data;
+                this.page.total = data.total;
+                this.data = data.records;
+                this.loading = false;
+                this.selectionClear();
+            });
         }
     },
     mounted() {
diff --git a/src/views/evaluate/components/addDialog.vue b/src/views/evaluate/components/addDialog.vue
index 6b46619..c257588 100644
--- a/src/views/evaluate/components/addDialog.vue
+++ b/src/views/evaluate/components/addDialog.vue
@@ -1,92 +1,60 @@
 <template>
-  <el-dialog v-model="params.visible" :title="params.title" width="60%" destroyOnClose>
-    <div class="content">
-      <el-form :model="addForm" label-width="130px" :rules="rules" ref="addFormRef">
-        <el-form-item label="任务名称:" prop="taskName">
-          <el-input v-model="addForm.taskName" placeholder="请输入任务名称"></el-input>
-        </el-form-item>
-        <el-form-item label="任务类别:" prop="taskType">
-          <el-input v-model="addForm.taskType" placeholder="请输入任务类别"></el-input>
-        </el-form-item>
-        <el-form-item label="认定标准描述:" prop="remark">
-          <el-input v-model="addForm.remark" placeholder="请输入任务名称"></el-input>
-        </el-form-item>
-        <!-- <el-form-item label="评优类型:" prop="type">
-          <el-select disabled v-model="addForm.type" placeholder="请选择评优类型" style="width: 100%;">
-            <el-option label="个人评优" value="0" />
-            <el-option label="部门评优" value="1" />
-          </el-select>
-        </el-form-item>-->
-        <el-form-item label="候选部门:" prop="candidateNum">
-          <el-select
-            v-model="selectGroup"
-            value-key="deptId"
-            multiple
-            style="width: 100%;"
-            placeholder="请选择候选部门"
-          >
-            <el-option
-              v-for="dept in depts"
-              :key="dept.deptId"
-              :label="dept.deptName"
-              :value="dept"
-            ></el-option>
-          </el-select>
-          <div class="select-list" v-for="content in selectGroup" :key="content.deptId">
-            <span>{{content.deptName}}:</span>
-            <el-form-item label="候选人数:" prop="deptnumber" class="select-num">
-              <el-input
-                type="number"
-                :min="1"
-                :max="10"
-                v-model="addForm.deptnumber"
-                placeholder="请输入"
-              ></el-input>
-            </el-form-item>
-            <el-form-item label="参选人:" class="select-item">
-              <el-select v-model="content.users" value-key="id" multiple>
-                <el-option
-                  v-for="employee in content.employees"
-                  :key="employee.id"
-                  :label="employee.name"
-                  :value="employee"
-                ></el-option>
-              </el-select>
-            </el-form-item>
-          </div>
-        </el-form-item>
-        <el-form-item label="候选人截止日期:" prop="candidateCutoffTime">
-          <el-date-picker
-            v-model="addForm.candidateCutoffTime"
-            type="datetime"
-            placeholder="请选择截止时间"
-            format="YYYY-MM-DD HH:mm:ss"
-            valueFormat="YYYY-MM-DD HH:mm:ss"
-            style="width: 100%;"
-          />
-        </el-form-item>
-        <el-form-item label="评优数量:" prop="evaluateNum">
-          <el-input v-model="addForm.evaluateNum" placeholder="请输入评优数量"></el-input>
-        </el-form-item>
-        <el-form-item label="评优截止日期:" prop="evaluateCutoffTime">
-          <el-date-picker
-            v-model="addForm.evaluateCutoffTime"
-            type="datetime"
-            placeholder="请选择截止时间"
-            format="YYYY-MM-DD HH:mm:ss"
-            valueFormat="YYYY-MM-DD HH:mm:ss"
-            style="width: 100%;"
-          />
-        </el-form-item>
-      </el-form>
-    </div>
-    <template #footer>
-      <span class="dialog-footer">
-        <el-button @click="params.visible = false">取消</el-button>
-        <el-button type="primary" @click="params.isEdit ? handleEdit() : handleSubmit()">确认</el-button>
-      </span>
-    </template>
-  </el-dialog>
+    <el-dialog v-model="params.visible" :title="params.title" width="60%" destroyOnClose>
+        <div class="content">
+            <el-form :model="addForm" label-width="130px" :rules="rules" ref="addFormRef">
+                <el-form-item label="任务名称:" prop="taskName">
+                    <el-input v-model="addForm.taskName" placeholder="请输入任务名称"></el-input>
+                </el-form-item>
+                <el-form-item label="任务类别:" prop="taskType">
+                    <el-input v-model="addForm.taskType" placeholder="请输入任务类别"></el-input>
+                </el-form-item>
+                <el-form-item label="认定标准描述:" prop="remark">
+                    <el-input v-model="addForm.remark" placeholder="请输入任务名称"></el-input>
+                </el-form-item>
+                <!-- <el-form-item label="评优类型:" prop="type">
+                    <el-select disabled v-model="addForm.type" placeholder="请选择评优类型" style="width: 100%;">
+                        <el-option label="个人评优" value="0" />
+                        <el-option label="部门评优" value="1" />
+                    </el-select>
+                </el-form-item> -->
+                <el-form-item label="候选部门:" prop="candidateNum">
+                    <el-select v-model="selectGroup" value-key="deptId" multiple style="width: 100%;" placeholder="请选择候选部门">
+                        <el-option v-for="dept in depts" :key="dept.deptId" :label="dept.deptName"
+                            :value="dept"></el-option>
+                    </el-select>
+                    <div class="select-list">
+                        <el-form-item v-for="content in selectGroup" :key="content.deptId" :label="content.deptName"
+                            class="select-item">
+                            <el-input-number min="1" :max="content.employees.length" v-model="content.val"
+                                controls-position="right" placeholder="请输入候选人数量" class="select-num"></el-input-number>
+                            <el-select v-model="content.users" value-key="id" multiple placeholder="请输入候选人">
+                                <el-option v-for="employee in content.employees" :key="employee.id" :label="employee.name"
+                                    :value="employee"></el-option>
+                            </el-select>
+                        </el-form-item>
+                    </div>
+                </el-form-item>
+                <el-form-item label="候选人截止日期:" prop="candidateCutoffTime">
+                    <el-date-picker v-model="addForm.candidateCutoffTime" type="datetime" placeholder="请选择截止时间"
+                        format="YYYY-MM-DD HH:mm:ss" valueFormat="YYYY-MM-DD HH:mm:ss" style="width: 100%;" />
+                </el-form-item>
+                <el-form-item label="评优数量:" prop="evaluateNum">
+                    <el-input-number min="1" :max="maxEvaluateNum" v-model="addForm.evaluateNum" controls-position="right"
+                        :placeholder="`请输入评优数量(最多不可大于${maxEvaluateNum}人)`" class="evaluateNum-input"></el-input-number>
+                </el-form-item>
+                <el-form-item label="评优截止日期:" prop="evaluateCutoffTime">
+                    <el-date-picker v-model="addForm.evaluateCutoffTime" type="datetime" placeholder="请选择截止时间"
+                        format="YYYY-MM-DD HH:mm:ss" valueFormat="YYYY-MM-DD HH:mm:ss" style="width: 100%;" />
+                </el-form-item>
+            </el-form>
+        </div>
+        <template #footer>
+            <span class="dialog-footer">
+                <el-button @click="params.visible = false">取消</el-button>
+                <el-button type="primary" @click="params.isEdit ? handleEdit() : handleSubmit()">确认</el-button>
+            </span>
+        </template>
+    </el-dialog>
 </template>
 
 <script>
@@ -97,211 +65,236 @@
 import _ from 'lodash';
 
 export default {
-  props: {
-    params: {
-      type: Object,
-      default: () => {
+    props: {
+        params: {
+            type: Object,
+            default: () => {
+                return {
+                    visible: false,
+                    title: '新增',
+                    isEdit: false,
+                    type: 0,
+                    addForm: {},
+                };
+            },
+        },
+    },
+    data() {
         return {
-          visible: false,
-          title: '新增',
-          isEdit: false,
-          type: 0,
-          addForm: {},
+            depts: [],
+            selectGroup: [],
+            addForm: {
+                id: '',
+                tenantId: '',
+                taskName: '',
+                taskType: '',
+                remark: '',
+                type: '',
+                candidateNum: [],
+                candidateCutoffTime: '',
+                candidateState: '',
+                evaluateNum: '',
+                evaluateCutoffTime: '',
+                evaluateState: '',
+                createUser: '',
+                createDept: '',
+                createTime: '',
+                updateUser: '',
+                updateTime: '',
+                status: '',
+                isDeleted: '',
+            },
+            rules: {
+                taskName: [
+                    { required: true, message: '请输入任务名称', trigger: 'blur' }
+                ],
+                taskType: [
+                    { required: true, message: '请输入任务类别', trigger: 'blur' }
+                ],
+                remark: [
+                    { required: true, message: '请输入认定标准描述', trigger: 'blur' }
+                ],
+                type: [
+                    { required: true, message: '请选择评优类型', trigger: 'blur' }
+                ],
+                candidateNum: [
+                    { required: true, message: '请选择候选人截止日期', trigger: 'click' }
+                ],
+                candidateCutoffTime: [
+                    { required: true, message: '请选择候选人截止日期', trigger: 'click' },
+                ],
+                evaluateNum: [
+                    { required: true, message: '请输入评优数量', trigger: 'click' }
+                ],
+                evaluateCutoffTime: [
+                    { required: true, message: '请选择评优截止时间', trigger: 'click' },
+                ],
+            },
+            maxEvaluateNum: 0,
         };
-      },
     },
-  },
-  data() {
-    return {
-      depts: [],
-      selectGroup: [],
-      addForm: {
-        id: '',
-        tenantId: '',
-        taskName: '',
-        taskType: '',
-        remark: '',
-        type: '',
-        candidateNum: [],
-        candidateCutoffTime: '',
-        candidateState: '',
-        evaluateNum: '',
-        evaluateCutoffTime: '',
-        evaluateState: '',
-        createUser: '',
-        createDept: '',
-        createTime: '',
-        updateUser: '',
-        updateTime: '',
-        status: '',
-        isDeleted: '',
-      },
-      rules: {
-        taskName: [{ required: true, message: '请输入任务名称', trigger: 'blur' }],
-        taskType: [{ required: true, message: '请输入任务类别', trigger: 'blur' }],
-        remark: [{ required: true, message: '请输入认定标准描述', trigger: 'blur' }],
-        type: [{ required: true, message: '请选择评优类型', trigger: 'blur' }],
-        candidateNum: [{ required: true, message: '请选择候选人截止日期', trigger: 'click' }],
-        candidateCutoffTime: [
-          { required: true, message: '请选择候选人截止日期', trigger: 'click' },
-        ],
-        evaluateNum: [{ required: true, message: 'Please input Activity name', trigger: 'click' }],
-        evaluateCutoffTime: [
-          { required: true, message: 'Please input Activity name', trigger: 'click' },
-        ],
-      },
-    };
-  },
-  watch: {
-    'params.visible': {
-      handler(val) {
-        val && this.initData(website.tenantId);
-        this.addForm.type = this.params.type + '';
-        if (this.params.isEdit) {
-          this.addForm = this.params.addForm;
-          this.addForm.type = this.params.type + '';
-        }
-      },
-      deep: true,
-      immediate: true,
+    watch: {
+        'params.visible': {
+            handler(val) {
+                val && this.initData(website.tenantId);
+                this.addForm.type = this.params.type + '';
+                if (this.params.isEdit) {
+                    this.addForm = this.params.addForm;
+                    this.addForm.type = this.params.type + '';
+                }
+            },
+            deep: true,
+            immediate: true,
+        },
+        // 拦截candidateNum
+        selectGroup: {
+            handler(val) {
+                this.addForm.candidateNum = [];
+                this.maxEvaluateNum = 0;
+                val.forEach(item => {
+                    const users = [];
+                    item.users.forEach(user => {
+                        users.push({
+                            id: user.id,
+                            name: user.name,
+                        });
+                    });
+                    this.maxEvaluateNum += (item.val * 1);
+                    console.log(item.val);
+                    this.addForm.candidateNum.push({
+                        deptId: item.deptId,
+                        deptName: item.deptName,
+                        val: item.val,
+                        users,
+                    });
+                });
+            },
+            deep: true,
+        },
     },
-    // 拦截candidateNum
-    selectGroup: {
-      handler(val) {
-        this.addForm.candidateNum = [];
-        val.forEach(item => {
-          const users = [];
-          item.users.forEach(user => {
-            users.push({
-              id: user.id,
-              name: user.name,
+    methods: {
+        handleSubmit() {
+            this.$refs.addFormRef.validate(valid => {
+                add(this.addForm).then(
+                    () => {
+                        this.$message({
+                            type: 'success',
+                            message: '操作成功!',
+                        });
+                        this.refreshTable();
+                    },
+                    () => {
+                        this.$message({
+                            type: 'error',
+                            message: '操作失败!',
+                        });
+                    }
+                );
             });
-          });
-          this.addForm.candidateNum.push({
-            deptId: item.deptId,
-            deptName: item.deptName,
-            val: item.users.length,
-            users,
-          });
-        });
-      },
-      deep: true,
-    },
-  },
-  methods: {
-    handleSubmit() {
-      this.$refs.addFormRef.validate(valid => {
-        add(this.addForm).then(
-          () => {
-            this.$message({
-              type: 'success',
-              message: '操作成功!',
+        },
+        handleEdit() {
+            this.$refs.addFormRef.validate(valid => {
+                update(this.addForm).then(
+                    () => {
+                        this.$message({
+                            type: 'success',
+                            message: '操作成功!',
+                        });
+                        this.refreshTable();
+                    },
+                    error => {
+                        this.$message({
+                            type: 'error',
+                            message: error,
+                        });
+                    }
+                );
             });
-            this.refreshTable();
-          },
-          () => {
-            this.$message({
-              type: 'error',
-              message: '操作失败!',
+        },
+        refreshTable() {
+            this.$emit('refreshTable', {
+                pageSize: 10,
+                currentPage: 1,
+                total: 0,
             });
-          }
-        );
-      });
-    },
-    handleEdit() {
-      this.$refs.addFormRef.validate(valid => {
-        update(this.addForm).then(
-          () => {
-            this.$message({
-              type: 'success',
-              message: '操作成功!',
+            this.params.visible = false;
+        },
+        initData(tenantId) {
+            // 读取部门列表
+            getDeptTree(tenantId)
+                .then(res => {
+                    const result = _.cloneDeep(res.data.data);
+                    let deptList = [];
+                    result.forEach(item => {
+                        deptList.push(item);
+                        if (item.children) {
+                            deptList = result.concat(item.children);
+                            delete item.children;
+                        }
+                    });
+                    return deptList;
+                })
+                .then(deptList => {
+                    const depts_list = _.cloneDeep(deptList);
+                    this.depts = [];
+                    depts_list.forEach(dept => {
+                        getList(1, 99999, {}, dept.id).then(employeeRes => {
+                            const { records } = employeeRes.data.data;
+                            this.depts.push({
+                                deptId: dept.id,
+                                deptName: dept.title,
+                                users: [],
+                                employees: records,
+                            });
+                            this.setDefaultValue(this.depts);
+                        });
+                    });
+                });
+        },
+        setDefaultValue(depts) {
+            const params = _.cloneDeep(this.params.addForm.candidateNum);
+            params.forEach(item => {
+                const value = depts.find(dept => item.deptId === dept.deptId);
+                item.employees = value?.employees || [];
             });
-            this.refreshTable();
-          },
-          error => {
-            this.$message({
-              type: 'error',
-              message: error,
-            });
-          }
-        );
-      });
+            this.selectGroup = params;
+        },
     },
-    refreshTable() {
-      this.$emit('refreshTable', {
-        pageSize: 10,
-        currentPage: 1,
-        total: 0,
-      });
-      this.params.visible = false;
-    },
-    initData(tenantId) {
-      // 读取部门列表
-      getDeptTree(tenantId)
-        .then(res => {
-          const result = _.cloneDeep(res.data.data);
-          let deptList = [];
-          result.forEach(item => {
-            deptList.push(item);
-            if (item.children) {
-              deptList = result.concat(item.children);
-              delete item.children;
-            }
-          });
-          return deptList;
-        })
-        .then(deptList => {
-          const depts_list = _.cloneDeep(deptList);
-          this.depts = [];
-          depts_list.forEach(dept => {
-            getList(1, 99999, {}, dept.id).then(employeeRes => {
-              const { records } = employeeRes.data.data;
-              this.depts.push({
-                deptId: dept.id,
-                deptName: dept.title,
-                users: [],
-                employees: records,
-              });
-              this.setDefaultValue(this.depts);
-            });
-          });
-        });
-    },
-    setDefaultValue(depts) {
-      const params = _.cloneDeep(this.params.addForm.candidateNum);
-      params.forEach(item => {
-        const value = depts.find(dept => item.deptId === dept.deptId);
-        item.employees = value?.employees || [];
-      });
-      this.selectGroup = params;
-    },
-  },
-  mounted() {},
+    mounted() { },
 };
 </script>
 
 <style lang="scss" scoped>
 .content {
-  height: 40%;
-  overflow: auto;
-}
-.select-list {
-  width: 100%;
-  display: flex;
-  align-items: center;
-  justify-content: center;
-  margin-top: 15px;
-  span {
-    width: 80px;
-  }
-  .select-num {
-    width: 250px;
-  }
-  .select-item {
-    flex: 1;
-    .el-select {
-      width: 100%;
+    max-height: 400px;
+    overflow: auto;
+
+    .select-list {
+        width: 100%;
+
+        .select-item {
+            width: 100%;
+            margin-top: 15px;
+            display: flex;
+
+            .select-num {
+                flex: 2;
+            }
+
+            .el-select {
+                flex: 5;
+                margin-left: 10px;
+            }
+        }
     }
-  }
+
+    .evaluateNum-input {
+        width: 100%;
+        :deep() {
+            .el-input__inner {
+                text-align: left;
+            }
+        }
+    }
 }
 </style>
\ No newline at end of file

--
Gitblit v1.9.3