<template>
|
<a-card
|
:bordered=true
|
>
|
<a-spin :spinning='confirmLoading'>
|
<a-form
|
:form="form"
|
>
|
<a-row>
|
<a-col
|
:span='12'
|
>
|
<a-form-item
|
label='故障现象'
|
:labelCol='labelCol'
|
:wrapperCol='wrapperCol'
|
>
|
<a-textarea
|
allow-clear
|
placeholder='请输入故障现象'
|
v-decorator="['repairOrderFaultAnalysisUda1', validatorRules.repairOrderFaultAnalysisUda1]"
|
:disabled="isEdit"
|
></a-textarea>
|
</a-form-item>
|
</a-col>
|
<a-col :span='12'>
|
<a-form-item
|
label='故障检查'
|
:labelCol='labelCol'
|
:wrapperCol='wrapperCol'
|
>
|
<a-textarea
|
placeholder='请输入故障检查'
|
v-decorator="['faultCause', validatorRules.faultCause]"
|
:disabled="isEdit"
|
></a-textarea>
|
</a-form-item>
|
</a-col>
|
</a-row>
|
<a-row>
|
<a-col :span='12'>
|
<a-form-item
|
label='故障维修'
|
:labelCol='labelCol'
|
:wrapperCol='wrapperCol'
|
>
|
<a-textarea
|
placeholder='请输入故障维修'
|
v-decorator="['maintenanceMeasures', validatorRules.maintenanceMeasures]"
|
:disabled="isEdit"
|
></a-textarea>
|
</a-form-item>
|
</a-col>
|
<a-col :span='12'>
|
<a-form-item
|
label='故障预防'
|
:labelCol='labelCol'
|
:wrapperCol='wrapperCol'
|
>
|
<a-textarea
|
v-decorator="['suggestion', validatorRules.suggestion]"
|
placeholder='请输入故障预防'
|
:disabled="isEdit"
|
></a-textarea>
|
</a-form-item>
|
</a-col>
|
</a-row>
|
<a-button
|
:style="{marginRight: '8px'}"
|
@click='handleEdit2()'
|
:disabled="buttonStatus"
|
:loading='confirmLoading'
|
>
|
编辑
|
</a-button>
|
|
<a-button
|
@click='handleOk()'
|
type='primary'
|
:loading='confirmLoading'
|
:disabled="buttonStatus"
|
>保存
|
</a-button>
|
</a-form>
|
</a-spin>
|
</a-card>
|
</template>
|
<script>
|
import pick from 'lodash.pick'
|
import { postAction, requestPut } from '@/api/manage'
|
import { duplicateCheck } from '@/api/api'
|
import { getAction } from '../../../../../api/manage'
|
export default {
|
name: 'RepairOrderFaultAnalysisList',
|
components: { },
|
props: {
|
repairOrder:{
|
type: Object,
|
default:{},
|
}
|
},
|
watch:{
|
'repairOrder.id':{
|
immediate: true,
|
handler(val) {
|
this.form.resetFields();
|
if(this.repairOrder.id!==undefined&&this.repairOrder.status==='3'){
|
this.isEdit = false;
|
}else{
|
this.loadData(val);
|
}
|
if(this.repairOrder.status!=='3'){
|
this.buttonStatus = true;
|
}
|
}
|
}
|
},
|
data() {
|
return {
|
description: '维修工单管理页面',
|
confirmLoading:false,
|
model:{},
|
form: this.$form.createForm(this),
|
url: {
|
add:'/eam/repairOrderFaultAnalysis/add',
|
edit: '/eam/repairOrderFaultAnalysis/edit',
|
getInfo:'/eam/repairOrderFaultAnalysis/list',
|
},
|
dictOptions: {},
|
isEdit:false,
|
validatorRules: {
|
faultCause: {
|
rules: [
|
{ required: true, message: '请输入故障检查!' },
|
{ min: 2, max: 1000, message: '长度在 2 到 1000 个字符', trigger: 'blur' },
|
]
|
},
|
repairOrderFaultAnalysisUda1: {
|
rules: [
|
{ required: true, message: '请输入故障现象!' },
|
]
|
},
|
suggestion:{
|
rules: [
|
{ required: true, message: '请输入故障预防!' },
|
{ min: 2, max: 1000, message: '长度在 2 到 1000 个字符', trigger: 'blur' },
|
]
|
},
|
maintenanceMeasures:{
|
rules: [
|
{ required: true, message: '请输入故障维修!' },
|
{ min: 2, max: 1000, message: '长度在 2 到 1000 个字符', trigger: 'blur' },
|
]
|
},
|
},
|
labelCol: {
|
xs: { span: 24 },
|
sm: { span: 5 }
|
},
|
wrapperCol: {
|
xs: { span: 24 },
|
sm: { span: 16 }
|
},
|
buttonStatus:false
|
}
|
},
|
methods: {
|
handleOk() {
|
const that = this;
|
// 触发表单验证
|
this.form.validateFields((err, values) => {
|
if (!err) {
|
that.confirmLoading = true;
|
let formData = Object.assign(this.model, values);
|
let obj;
|
formData.repairOrderId = this.repairOrder.id;
|
if (!this.model.id) {
|
obj = postAction(this.url.add, formData);
|
} else {
|
obj = requestPut(this.url.edit, formData, { id: this.model.id });
|
}
|
obj.then((res) => {
|
if (res.success) {
|
that.$message.success(res.message);
|
that.isEdit = true;
|
} else {
|
that.$message.warning(res.message);
|
}
|
}).finally(() => {
|
that.loadData(that.repairOrder.id);
|
that.confirmLoading = false;
|
})
|
}
|
})
|
},
|
loadData(repairOrderId){
|
let that = this;
|
getAction(that.url.getInfo,{repairOrderId:repairOrderId}).then(res=>{
|
if(res.success){
|
if(res.result.records.length!==0){
|
that.isEdit=true;
|
that.form.setFieldsValue(pick(res.result.records[0], 'faultCause','repairOrderFaultAnalysisUda1', 'faultTypeId', 'suggestion', 'maintenanceMeasures','id'))
|
that.model = Object.assign({}, res.result.records[0]);
|
}else if(this.repairOrder.status==='3'){
|
that.isEdit=false;
|
}else{
|
that.isEdit=true;
|
}
|
}
|
})
|
},
|
handleEdit2(){
|
this.isEdit=false;
|
}
|
},
|
|
}
|
</script>
|
<style scoped>
|
@import '~@assets/less/common.less';
|
</style>
|