| | |
| | | <template> |
| | | <j-modal :title="title" :width="1200" :visible="visible" :confirmLoading="confirmLoading" switchFullscreen |
| | | :mask-closable="false" @ok="handleOk" @cancel="handleCancel" centered cancelText="关闭"> |
| | | <j-modal :title="title" :width="1200" :visible="visible" :confirmLoading="confirmLoading" switchFullscreen centered |
| | | :mask-closable="false" @ok="handleOk" @cancel="handleCancel" cancelText="关闭"> |
| | | |
| | | <a-spin :spinning="spinning"> |
| | | <a-form-model ref="form" :model="model" :rules="validatorRules" :labelCol="labelCol" :wrapperCol="wrapperCol"> |
| | |
| | | <a-col :span="8"> |
| | | <a-form-model-item prop="equipmentId" label="统一编码"> |
| | | <maintenance-equipment-select placeholder="请输入统一编码或名称搜索" v-model="model.equipmentId" |
| | | maintenanceCategory="THIRD_MAINTENANCE" |
| | | @autocompleteForm="autocompleteForm" |
| | | :disabled="!editable"/> |
| | | maintenanceCategory="THIRD_MAINTENANCE" @autocompleteForm="autocompleteForm"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="8"> |
| | |
| | | <a-row> |
| | | <a-col :span="8"> |
| | | <a-form-model-item prop="maintenanceDate" label="保养日期"> |
| | | <a-date-picker placeholder="请选择计划保养日期" v-model="model.maintenanceDate" value-format="YYYY-MM-DD" |
| | | <a-date-picker placeholder="请选择计划保养日期" v-model="model.maintenanceDate" format="YYYY-MM-DD" |
| | | style="width: 100%"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | |
| | | <a-col :span="8"> |
| | | <a-form-model-item prop="maintenancePeriod" label="保养周期"> |
| | | <a-input placeholder="选择设备后自动带出" v-model="model.maintenancePeriod" disabled/> |
| | |
| | | </a-row> |
| | | |
| | | <a-row> |
| | | <a-form-model-item :labelCol="labelColLong" :wrapperCol="wrapperColLong" prop="remark" label="备注"> |
| | | <a-form-model-item :labelCol="labelColLong" :wrapperCol="wrapperColLong" label="备注"> |
| | | <a-textarea placeholder="请输入备注" v-model="model.remark"/> |
| | | </a-form-model-item> |
| | | </a-row> |
| | | |
| | | <a-tabs> |
| | | <a-tabs default-active-key="1"> |
| | | <a-tab-pane key="1" tab="保养项明细"> |
| | | <j-vxe-table ref="editableDetailTable" rowNumber bordered keep-source :height="300" |
| | | :dataSource="detail.dataSource" |
| | | :columns="detail.columns"/> |
| | | <j-vxe-table ref="editableDetailTable" bordered keep-source |
| | | :height="300" :dataSource="detail.dataSource" :columns="detail.columns"/> |
| | | </a-tab-pane> |
| | | </a-tabs> |
| | | </a-form-model> |
| | |
| | | return { |
| | | title: '操作', |
| | | visible: false, |
| | | editable: true, |
| | | model: {}, |
| | | labelCol: { |
| | | xs: { span: 24 }, |
| | |
| | | }, |
| | | confirmLoading: false, |
| | | spinning: false, |
| | | maintenanceOperatorOptions: [], |
| | | validatorRules: { |
| | | equipmentId: [ |
| | | { required: true, message: '请选择设备!', trigger: 'change' } |
| | | { required: true, message: '请输入统一编码或名称搜索' } |
| | | ], |
| | | maintenanceDate: [ |
| | | { required: true, message: '请选择计划保养日期!', trigger: 'change' } |
| | | { required: true, message: '请选择计划保养日期!' } |
| | | ] |
| | | }, |
| | | url: { |
| | | add: '/eam/thirdMaintenanceOrder/add', |
| | | edit: '/eam/thirdMaintenanceOrder/edit', |
| | | standardDetail: '/eam/eamMaintenanceStandardDetail/queryList', |
| | | detail: '/eam/thirdMaintenanceOrderDetail/queryList', |
| | | userSelect: '/eam/user_select/list' |
| | | standardDetail: '/eam/eamMaintenanceStandardDetail/queryList' |
| | | }, |
| | | detail: { |
| | | loading: false, |
| | | dataSource: [], |
| | | columns: [ |
| | | { |
| | |
| | | type: JVXETypes.normal, |
| | | align: 'center' |
| | | } |
| | | ], |
| | | toolbarConfig: { |
| | | // prefix 前缀;suffix 后缀 |
| | | slot: ['prefix', 'suffix'], |
| | | // add 新增按钮;remove 删除按钮;clearSelection 清空选择按钮 |
| | | btn: ['add', 'remove', 'clearSelection'] |
| | | } |
| | | ] |
| | | } |
| | | } |
| | | }, |
| | |
| | | add() { |
| | | //初始化默认值 |
| | | this.model = {} |
| | | this.visible = true |
| | | this.editable = true |
| | | this.detail.dataSource = [] |
| | | }, |
| | | |
| | | edit(record) { |
| | | this.model = Object.assign({}, record) |
| | | this.visible = true |
| | | this.editable = false |
| | | this.detail.dataSource = [] |
| | | this.loadDetail(record.id) |
| | | }, |
| | | |
| | | async handleOk() { |
| | | const that = this |
| | | let errMap = await that.$refs.editableDetailTable.validateTable() |
| | | if (errMap) { |
| | | this.$message.warning('数据校验失败!') |
| | | return |
| | | } |
| | | if (errMap) return |
| | | // 触发表单验证 |
| | | this.$refs.form.validate(valid => { |
| | | if (valid) { |
| | | let tableData = that.$refs.editableDetailTable.getTableData() |
| | | let removeData = that.$refs.editableDetailTable.getDeleteData() |
| | | that.model.tableDetailList = [...tableData] |
| | | that.model.removeDetailList = [...removeData] |
| | | |
| | | that.confirmLoading = true |
| | | let httpurl = '' |
| | | let method = '' |
| | | if (!this.model.id) { |
| | | httpurl += this.url.add |
| | | method = 'post' |
| | | } else { |
| | | httpurl += this.url.edit |
| | | method = 'put' |
| | | } |
| | | httpAction(httpurl, this.model, method).then((res) => { |
| | | if (res.success) { |
| | | that.$message.success(res.message) |
| | | that.$emit('ok') |
| | | that.close() |
| | | } else { |
| | | that.$message.warning(res.message) |
| | | } |
| | | }).finally(() => { |
| | | that.confirmLoading = false |
| | | }) |
| | | that.model.tableDetailList = that.$refs.editableDetailTable.getTableData() |
| | | that.confirmLoading = that.spinning = true |
| | | httpAction(that.url.add, that.model, 'post') |
| | | .then((res) => { |
| | | if (res.success) { |
| | | that.$notification.success({ |
| | | message: '消息', |
| | | description: res.message |
| | | }) |
| | | that.$emit('ok') |
| | | that.close() |
| | | } else { |
| | | that.$notification.warning({ |
| | | message: '消息', |
| | | description: res.message |
| | | }) |
| | | } |
| | | }) |
| | | .finally(() => { |
| | | that.confirmLoading = that.spinning = false |
| | | }) |
| | | } else { |
| | | return false |
| | | } |
| | |
| | | this.$set(this.model, 'maintenancePeriod', selectObj.maintenancePeriod) |
| | | this.$set(this.model, 'standardId', selectObj.id) |
| | | this.$set(this.model, 'equipmentId', selectObj.equipmentId) |
| | | if (!this.model.equipmentId) delete this.model.operator |
| | | if (!this.model.id) { |
| | | this.loadStandardDetail(selectObj.id) |
| | | } |
| | | this.loadMaintenanceOperatorList(this.model.equipmentId) |
| | | this.loadStandardDetail(selectObj.id) |
| | | }, |
| | | |
| | | //加载详情数据 |
| | | loadStandardDetail(standardId) { |
| | | this.detail.dataSource = [] |
| | | if (standardId) { |
| | | this.spinning = true |
| | | getAction(this.url.standardDetail, { standardId: standardId }) |
| | | .then(res => { |
| | | if (res.success) { |
| | | this.detail.dataSource = res.result.map(item => ({ |
| | | itemCode: item.itemCode, |
| | | itemName: item.itemName, |
| | | itemPart: item.itemPart, |
| | | itemDemand: item.itemDemand |
| | | })) |
| | | } |
| | | }) |
| | | .finally(() => { |
| | | this.spinning = false |
| | | }) |
| | | } |
| | | }, |
| | | |
| | | //规范选择变化 |
| | | loadDetail(orderId) { |
| | | if (orderId) { |
| | | getAction(this.url.detail, { orderId: orderId }).then(res => { |
| | | this.spinning = true |
| | | getAction(this.url.standardDetail, { standardId }) |
| | | .then(res => { |
| | | if (res.success) { |
| | | this.detail.dataSource = [...res.result] |
| | | this.detail.dataSource = res.result |
| | | } |
| | | }) |
| | | } |
| | | .finally(() => { |
| | | this.spinning = false |
| | | }) |
| | | }, |
| | | |
| | | handleCancel() { |