| | |
| | | <el-form-item label="任务名称" prop="taskName"> |
| | | <el-input v-model="form.taskName" placeholder="请输入任务名称"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="评优奖项" prop="awards"> |
| | | <el-input v-model="form.awards" placeholder="请输入评优奖项"></el-input> |
| | | <el-form-item label="评优奖项" prop="evaluateAwards"> |
| | | <el-input v-model="form.evaluateAwards" placeholder="请输入评优奖项"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="认定标准描述" prop="remark"> |
| | | <el-input v-model="form.remark" type="textarea" placeholder="请输入认定标准描述"></el-input> |
| | | <el-form-item label="认定标准描述" prop="identificationStandard"> |
| | | <el-input v-model="form.identificationStandard" type="textarea" placeholder="请输入认定标准描述"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="投票人员" prop="employees"> |
| | | <el-checkbox-group v-model="form.employees"> |
| | | <el-form-item label="投票人员" prop="pollingPersons"> |
| | | <el-checkbox-group v-model="form.pollingPersons"> |
| | | <el-checkbox v-for="item in employeeDict" :key="item.id" :label="item.dictKey"> |
| | | {{ item.dictValue }} |
| | | </el-checkbox> |
| | |
| | | <el-form-item label="投票时间" required> |
| | | <el-form-item class="time-box" prop="candidateCutoffTimeStart"> |
| | | <el-date-picker v-model="form.candidateCutoffTimeStart" type="datetime" placeholder="请选择任务开始时间" |
| | | style="width: 100%;" /> |
| | | value-format="YYYY-MM-DD HH:mm:ss" style="width: 100%;" /> |
| | | </el-form-item> |
| | | <span class="time-span">至</span> |
| | | <el-form-item class="time-box" prop="candidateCutoffTimeEnd"> |
| | | <el-date-picker v-model="form.candidateCutoffTimeEnd" type="datetime" placeholder="请选择任务结束时间" |
| | | style="width: 100%;" /> |
| | | value-format="YYYY-MM-DD HH:mm:ss" style="width: 100%;" /> |
| | | </el-form-item> |
| | | </el-form-item> |
| | | </el-form> |
| | |
| | | |
| | | <script> |
| | | import { getDict } from '@/api/dict' |
| | | import { add } from '@/api/evaluate/evaluateTask' |
| | | import _ from 'lodash'; |
| | | |
| | | export default { |
| | |
| | | return { |
| | | form: { |
| | | taskName: '', |
| | | awards: '', |
| | | remark: '', |
| | | employees: [], |
| | | evaluateAwards: '', |
| | | identificationStandard: '', |
| | | pollingPersons: [], |
| | | candidateCutoffTimeStart: '', |
| | | candidateCutoffTimeEnd: '' |
| | | }, |
| | |
| | | taskName: [ |
| | | { required: true, message: '请输入任务名称', trigger: 'click' }, |
| | | ], |
| | | awards: [ |
| | | evaluateAwards: [ |
| | | { required: true, message: '请输入评优奖项', trigger: 'click' }, |
| | | ], |
| | | remark: [ |
| | | identificationStandard: [ |
| | | { required: true, message: '请输入认定标准', trigger: 'click' }, |
| | | ], |
| | | employees: [ |
| | | pollingPersons: [ |
| | | { required: true, message: '请选择评定人员', trigger: 'click' }, |
| | | ], |
| | | candidateCutoffTimeStart: [ |
| | | { required: true, message: '请选择任务开始时间', trigger: 'click' }, |
| | | { |
| | | validator: (rule, value, callback) => { |
| | | if (value) { |
| | | const startTime = new Date(value).getTime() |
| | | const endTime = new Date(this.form.candidateCutoffTimeEnd).getTime() |
| | | const nowTime = new Date().getTime() |
| | | if (nowTime > startTime) { |
| | | callback(new Error('开始时间不能早于当前时间')) |
| | | } else if (startTime >= endTime) { |
| | | callback(new Error('结束时间不能早于等于开始时间')) |
| | | } else { |
| | | callback() |
| | | } |
| | | } |
| | | }, trigger: 'click' |
| | | } |
| | | ], |
| | | candidateCutoffTimeEnd: [ |
| | | { required: true, message: '请选择任务开始时间', trigger: 'click' }, |
| | | { |
| | | validator: (rule, value, callback) => { |
| | | if (value) { |
| | | const startTime = new Date(this.form.candidateCutoffTimeStart).getTime() |
| | | const endTime = new Date(value).getTime() |
| | | const nowTime = new Date().getTime() |
| | | if (nowTime > endTime) { |
| | | callback(new Error('结束时间不能早于等于当前时间')) |
| | | } else if (startTime >= endTime) { |
| | | callback(new Error('结束时间不能早于等于开始时间')) |
| | | } else { |
| | | callback() |
| | | } |
| | | } |
| | | }, trigger: 'click' |
| | | } |
| | | ] |
| | | }, |
| | | employeeDict: [] |
| | |
| | | }, |
| | | submit() { |
| | | this.$refs.formRef.validate(vaild => { |
| | | console.log(this.form); |
| | | if (!vaild) return |
| | | const data = _.cloneDeep(this.form) |
| | | data.pollingPersons = data.pollingPersons.join(',') |
| | | add(data).then(res => { |
| | | if (res.data.code !== 200) return |
| | | this.params.visible = false |
| | | this.$emit('refreshTable', { currentPage: 1, pageSize: 10 }) |
| | | }) |
| | | }) |
| | | }, |
| | | initDict() { |