GuLiMmo
2023-12-21 709cac10fe255036f786e2fa76a0290343deb6b6
src/views/evaluate/components/addDialog.vue
@@ -1,5 +1,5 @@
<template>
    <el-dialog v-model="params.visible" :title="params.title" width="60%" destroy-on-close>
    <el-dialog v-model="params.visible" :rules="rules" :title="params.title" width="60%" destroy-on-close>
        <div class="content">
            <el-form :model="addForm" label-width="130px" :rules="rules" ref="addFormRef">
                <el-form-item label="任务名称:" prop="taskName">
@@ -19,7 +19,8 @@
                </el-form-item> -->
                <el-form-item :label="params.type ? '评定部门:' : '候选部门:'" 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.employees.length === 0 ? (dept.deptName + '(当前部门下员工人数为0)') : dept.deptName"
                        <el-option v-for="dept in depts" :key="dept.deptId"
                            :label="dept.employees.length === 0 ? (dept.deptName + '(当前部门下员工人数为0)') : dept.deptName"
                            :value="dept" :disabled="dept.employees.length === 0"></el-option>
                    </el-select>
                    <div class="select-list">
@@ -55,7 +56,7 @@
        <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>
                <el-button type="primary" @click="submitOrEdit">确认</el-button>
            </span>
        </template>
    </el-dialog>
@@ -122,7 +123,7 @@
                    { required: true, message: '请选择评优类型', trigger: 'blur' }
                ],
                candidateNum: [
                    { required: true, message: '请选择候选人截止日期', trigger: 'click' }
                    { required: true, message: '请选择候选人', trigger: 'click' }
                ],
                candidateCutoffTime: [
                    { required: true, message: '请选择候选人截止日期', trigger: 'click' },
@@ -181,6 +182,15 @@
        },
    },
    methods: {
        submitOrEdit() {
            const { candidateNum } = this.addForm
            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 {
                this.params.isEdit ? this.handleEdit() : this.handleSubmit()
            }
        },
        handleSubmit() {
            this.$refs.addFormRef.validate(valid => {
                add(this.addForm).then(
@@ -236,7 +246,7 @@
                        deptList.push(item);
                        if (item.children) {
                            item.children.forEach(ic => {
                                ic.title = item.title +'/'+ ic.title;
                                ic.title = item.title + '/' + ic.title;
                            })
                            deptList = deptList.concat(item.children);
                            delete item.children;