工单校验

main
liuyiliang 11 months ago
parent 0ffad8c12f
commit db6cd45939
  1. 26
      src/views/smart/workorder.vue
  2. 13
      src/views/smart/workorderDetail.vue

@ -49,7 +49,7 @@
</template> </template>
</avue-crud> </avue-crud>
<el-dialog title="上传处理结果" width="35%" :visible.sync="dialogFormVisible" :before-close="closeDialog"> <el-dialog title="上传处理结果" width="35%" :visible.sync="dialogFormVisible" :before-close="closeDialog">
<el-form :model="dialogForm" ref="dialogForm"> <el-form :model="dialogForm" ref="dialogForm" :rules="dialogFormRules">
<el-form-item label="处理时间" :label-width="formLabelWidth"> <el-form-item label="处理时间" :label-width="formLabelWidth">
<el-col :span="24"> <el-col :span="24">
<el-date-picker v-model="dialogForm.processingTime" type="datetime" placeholder="选择日期时间" size="small" autocomplete="off" style="width: 350px"></el-date-picker> <el-date-picker v-model="dialogForm.processingTime" type="datetime" placeholder="选择日期时间" size="small" autocomplete="off" style="width: 350px"></el-date-picker>
@ -60,7 +60,7 @@
<el-input v-model="dialogForm.description" type="textarea" :autosize="{ minRows: 2, maxRows: 4}" maxlength="400" show-word-limit size="small" autocomplete="off" style="width: 350px"></el-input> <el-input v-model="dialogForm.description" type="textarea" :autosize="{ minRows: 2, maxRows: 4}" maxlength="400" show-word-limit size="small" autocomplete="off" style="width: 350px"></el-input>
</el-col> </el-col>
</el-form-item> </el-form-item>
<el-form-item label="结束时间" :label-width="formLabelWidth"> <el-form-item label="结束时间" :label-width="formLabelWidth" prop="endTime">
<el-col :span="24"> <el-col :span="24">
<el-date-picker v-model="dialogForm.endTime" type="datetime" placeholder="选择日期时间" size="small" autocomplete="off" style="width: 350px"></el-date-picker> <el-date-picker v-model="dialogForm.endTime" type="datetime" placeholder="选择日期时间" size="small" autocomplete="off" style="width: 350px"></el-date-picker>
</el-col> </el-col>
@ -100,6 +100,13 @@
export default { export default {
data() { data() {
var checkEndTime = (rule, value, callback) => {
if (value && this.dialogForm.processingTime && new Date(value) < new Date(this.dialogForm.processingTime)) {
callback(new Error('结束时间不可小于处理时间'));
} else {
callback();
}
};
return { return {
form: {}, form: {},
search:{}, search:{},
@ -372,7 +379,12 @@
processingTime: null processingTime: null
}, },
formLabelWidth: '120px', formLabelWidth: '120px',
processResOptions: [] processResOptions: [],
dialogFormRules: {
endTime: [
{ validator: checkEndTime, trigger: 'blur' }
],
}
}; };
}, },
created() { created() {
@ -613,6 +625,9 @@
}); });
}, },
submitForm() { submitForm() {
debugger
this.$refs['dialogForm'].validate((valid) => {
if (valid) {
this.loading = true; this.loading = true;
var formData = {...this.dialogForm}; var formData = {...this.dialogForm};
update(formData).then(() => { update(formData).then(() => {
@ -628,6 +643,11 @@
this.loading = false; this.loading = false;
this.dialogFormVisible = false; this.dialogFormVisible = false;
}); });
} else {
console.log('error submit!!');
return false;
}
});
} }
} }
}; };

@ -38,6 +38,13 @@
export default { export default {
name: "operationticketDetail", name: "operationticketDetail",
data() { data() {
var checkEndTime = (rule, value, callback) => {
if (value && this.tab1_form.processingTime && new Date(value) < new Date(this.tab1_form.processingTime)) {
callback(new Error('结束时间不可小于处理时间'));
} else {
callback();
}
};
return { return {
frame_class: '', frame_class: '',
type: {}, type: {},
@ -279,7 +286,8 @@
label: "结束时间", label: "结束时间",
prop: "endTime", prop: "endTime",
type: 'datetime', type: 'datetime',
span: 8 span: 8,
rules: [{required: true, validator: checkEndTime, trigger: 'change' }]
}, { }, {
label: "处理结果", label: "处理结果",
prop: "handlingResult", prop: "handlingResult",
@ -333,9 +341,10 @@
methods: { methods: {
handleFormSubmit() { handleFormSubmit() {
const form = this.$refs.tab1_form; const form = this.$refs.tab1_form;
form.validate((valid) => { form.validate((valid,done) => {
if (valid) { if (valid) {
this.submitForm(); this.submitForm();
done()
} else { } else {
this.$message({ this.$message({
type: "warning", type: "warning",

Loading…
Cancel
Save