GuLiMmo
2023-12-15 1797431da64e65041ea1ae5a17a373925a5da313
src/views/evaluate/components/addDialog.vue
@@ -1,5 +1,5 @@
<template>
    <el-dialog v-model="params.visible" :title="params.title" width="60%" destroyOnClose>
    <el-dialog v-model="params.visible" :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">
@@ -25,8 +25,10 @@
                    <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>
                            <span v-if="!params.type">
                                <el-input-number min="0" :max="content.employees.length || 0" v-model="content.val"
                                    controls-position="right" placeholder="请输入候选人数量" class="select-num"></el-input-number>
                            </span>
                            <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>
@@ -39,7 +41,7 @@
                        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"
                    <el-input-number min="0" :max="maxEvaluateNum || 0" v-model="addForm.evaluateNum" controls-position="right"
                        :placeholder="`请输入评优数量(最多不可大于${maxEvaluateNum}人)`" class="evaluateNum-input"></el-input-number>
                </el-form-item>
                <el-form-item label="评优截止日期:" prop="evaluateCutoffTime">
@@ -137,7 +139,8 @@
        'params.visible': {
            handler(val) {
                val && this.initData(website.tenantId);
                this.addForm.type = this.params.type + '';
                this.addForm = this.params.addForm;
                val && (this.addForm.type = this.params.type + '')
                if (this.params.isEdit) {
                    this.addForm = this.params.addForm;
                    this.addForm.type = this.params.type + '';
@@ -160,7 +163,6 @@
                        });
                    });
                    this.maxEvaluateNum += (item.val * 1);
                    console.log(item.val);
                    this.addForm.candidateNum.push({
                        deptId: item.deptId,
                        deptName: item.deptName,
@@ -252,7 +254,7 @@
                });
        },
        setDefaultValue(depts) {
            const params = _.cloneDeep(this.params.addForm.candidateNum);
            const params = _.cloneDeep(this.params.addForm.candidateNum) || []
            params.forEach(item => {
                const value = depts.find(dept => item.deptId === dept.deptId);
                item.employees = value?.employees || [];
@@ -260,7 +262,6 @@
            this.selectGroup = params;
        },
    },
    mounted() { },
};
</script>
@@ -290,6 +291,7 @@
    .evaluateNum-input {
        width: 100%;
        :deep() {
            .el-input__inner {
                text-align: left;