GuLiMmo
2023-12-21 bc430838c9104fbb08845d526dd5639ea54ba0e0
页面更新
1 files modified
24 ■■■■■ changed files
src/views/evaluate/components/addDialog.vue 24 ●●●●● patch | view | raw | blame | history
src/views/evaluate/components/addDialog.vue
@@ -32,6 +32,9 @@
                            </span>
                            <el-select v-model="content.users" value-key="id" multiple
                                :placeholder="params.type ? '请选择评定人' : '请输入候选人'">
                                <div class="allSelected">
                                    <el-checkbox @change="handleEmployeeChange($event, content)">全选</el-checkbox>
                                </div>
                                <el-option v-for="employee in content.employees" :key="employee.id" :label="employee.name"
                                    :value="employee"></el-option>
                            </el-select>
@@ -183,7 +186,7 @@
    methods: {
        submitOrEdit() {
            const { candidateNum } = this.addForm
            const isExist = candidateNum.find(item => item.val === void 0 || item.val === 0)
            const isExist = candidateNum.find(item => item.val === void 0 || item.val === 0 || item.users.length === 0)
            if (isExist) {
                this.$message.warning(`${isExist.deptName}候选人人数不可为空或者0`)
            } else {
@@ -265,7 +268,7 @@
                                deptId: dept.id,
                                deptName: dept.title,
                                users: [],
                                employees: records,
                                employees: records
                            });
                            this.setDefaultValue(this.depts);
                        });
@@ -281,6 +284,18 @@
            })
            this.selectGroup = newParams
        },
        handleEmployeeChange(val, content) {
            if (val) {
                content.employees.forEach(item => {
                    content.users.push({
                        id: item.id,
                        name: item.name
                    })
                })
            } else {
                content.users = []
            }
        }
    },
};
</script>
@@ -319,4 +334,9 @@
        }
    }
}
.allSelected {
    padding: 0 20px;
    border-bottom: 1px solid #dcdcdc;
}
</style>