| | |
| | | <template> |
| | | <j-modal :title="title" :width="1200" :visible="visible" :confirmLoading="confirmLoading" switchFullscreen centered |
| | | @ok="handleOk" @cancel="handleCancel" cancelText="关闭"> |
| | | @ok="handleOk" @cancel="handleCancel" cancelText="关闭" |
| | | :okButtonProps="{ class:{'jee-hidden': disableSubmit} }"> |
| | | <a-spin :spinning="spinning"> |
| | | <a-form-model ref="form" :model="model" :rules="validatorRules" :labelCol="labelCol" :wrapperCol="wrapperCol"> |
| | | <a-row> |
| | | <a-col :span="8"> |
| | | <a-form-model-item label="规范编码"> |
| | | <a-input placeholder="规范编码自动生成" v-model="model.standardCode" disabled/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <j-form-container :disabled="disableSubmit"> |
| | | <a-form-model ref="form" :model="model" :rules="validatorRules" :labelCol="labelCol" :wrapperCol="wrapperCol" |
| | | slot="detail"> |
| | | <a-row> |
| | | <a-col :span="8"> |
| | | <a-form-model-item label="规范编码"> |
| | | <a-input placeholder="规范编码自动生成" v-model="model.standardCode" disabled/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | |
| | | <a-col :span="8"> |
| | | <a-form-model-item prop="standardName" label="规范名称"> |
| | | <a-input placeholder="请输入规范名称" v-model="model.standardName"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | <a-col :span="8"> |
| | | <a-form-model-item prop="standardName" label="规范名称"> |
| | | <a-input placeholder="请输入规范名称" v-model="model.standardName"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | |
| | | <a-col :span="8"> |
| | | <a-form-model-item prop="equipmentId" label="统一编码"> |
| | | <lx-search-equipment-select placeholder="请输入统一编码或名称搜索" v-model="model.equipmentId" :disabled="!editable"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | </a-row> |
| | | <a-col :span="8"> |
| | | <a-form-model-item prop="equipmentId" label="统一编码"> |
| | | <lx-search-equipment-select placeholder="请输入统一编码或名称搜索" v-model="model.equipmentId" |
| | | :disabled="!editable"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | </a-row> |
| | | |
| | | <a-row> |
| | | <a-col :span="8" v-for="item in checkList" :key="item.key"> |
| | | <a-form-model-item :label="item.label"> |
| | | <j-dict-select-tag @change="handleCheckListChange($event,item.key)" dict-code="yn" type="radio" |
| | | :disabled="checkList.filter(i=>i.key!=item.key).every(i=>i.value=='0')" |
| | | v-model="model[item.key]"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | </a-row> |
| | | <a-row> |
| | | <a-col :span="8" v-for="item in checkList" :key="item.key"> |
| | | <a-form-model-item :label="item.label"> |
| | | <j-dict-select-tag @change="handleCheckListChange($event,item.key)" dict-code="yn" type="radio" |
| | | v-model="model[item.key]"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | </a-row> |
| | | |
| | | <a-row> |
| | | <a-col :span="24"> |
| | | <a-form-model-item :labelCol="{span:2}" :wrapperCol="{span:21}" label="备注"> |
| | | <a-textarea placeholder="请输入备注" v-model="model.remark"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | </a-row> |
| | | </a-form-model> |
| | | <a-row> |
| | | <a-col :span="24"> |
| | | <a-form-model-item :labelCol="{span:2}" :wrapperCol="{span:21}" label="备注"> |
| | | <a-textarea placeholder="请输入备注" v-model="model.remark"/> |
| | | </a-form-model-item> |
| | | </a-col> |
| | | </a-row> |
| | | </a-form-model> |
| | | </j-form-container> |
| | | |
| | | <a-tabs :activeKey="activeTabKey" @change="handleTabChange"> |
| | | <a-tab-pane tab="安全装置检查" :key="1" v-if="+model.hasSafetyEquipmentCheck"> |
| | | <j-vxe-table ref="editableDetailTable1" rowNumber rowSelection bordered alwaysEdit toolbar |
| | | :toolbarConfig="detail.toolbarConfig" keep-source |
| | | :toolbarConfig="detail.toolbarConfig" keep-source :disabled="disableSubmit" |
| | | :height="300" :dataSource="detail.safetyEquipmentCheckList" :columns="detail.columns"> |
| | | </j-vxe-table> |
| | | </a-tab-pane> |
| | | |
| | | <a-tab-pane tab="设备精度检查" :key="2" v-if="+model.hasPrecisionCheck" forceRender> |
| | | <j-vxe-table ref="editableDetailTable2" rowNumber rowSelection bordered alwaysEdit toolbar |
| | | :toolbarConfig="detail.toolbarConfig" keep-source |
| | | :height="300" :dataSource="detail.precisionCheckList" :columns="detail.precisionCheckColumns"> |
| | | :toolbarConfig="detail.toolbarConfig" keep-source :disabled="disableSubmit" |
| | | :height="300" :dataSource="detail.precisionCheckList" |
| | | :columns="detail.precisionCheckColumns"> |
| | | </j-vxe-table> |
| | | </a-tab-pane> |
| | | |
| | | <a-tab-pane tab="其他检查" :key="3" v-if="+model.hasOtherCheck" forceRender> |
| | | <j-vxe-table ref="editableDetailTable3" rowNumber rowSelection bordered alwaysEdit toolbar |
| | | :toolbarConfig="detail.toolbarConfig" keep-source |
| | | :toolbarConfig="detail.toolbarConfig" keep-source :disabled="disableSubmit" |
| | | :height="300" :dataSource="detail.otherCheckList" :columns="detail.columns"> |
| | | </j-vxe-table> |
| | | </a-tab-pane> |
| | |
| | | }, |
| | | spinning: false, |
| | | confirmLoading: false, |
| | | disableSubmit: false, |
| | | editable: true, |
| | | validatorRules: { |
| | | standardName: [{ required: true, message: '请输入规范名称', trigger: 'change' }], |
| | |
| | | order: 3 |
| | | } |
| | | ], |
| | | hasCheckedCheckList: [], |
| | | activeTabKey: 1, |
| | | upgradeFlag: false, |
| | | detail: { |
| | |
| | | */ |
| | | edit(record, upgradeFlag = false) { |
| | | this.upgradeFlag = upgradeFlag |
| | | console.log('upgradeFlag', this.upgradeFlag) |
| | | this.detail.safetyEquipmentCheckList = this.detail.precisionCheckList = this.detail.otherCheckList = [] |
| | | this.model = Object.assign({}, record) |
| | | this.hasCheckedCheckList = [] |
| | |
| | | } |
| | | }, |
| | | |
| | | /** |
| | | * 获取检查明细 |
| | | * @param standardId 规范编号 |
| | | */ |
| | | loadDetail(standardId) { |
| | | this.spinning = true |
| | | getAction(this.url.detail, { standardId }) |
| | |
| | | }, |
| | | |
| | | async handleOk() { |
| | | console.log('tis', this.hasCheckedCheckList) |
| | | if (this.hasCheckedCheckList.findIndex(item => item.value === '1') < 0) { |
| | | this.$notification.warning({ |
| | | message: '消息', |
| | | description: '至少选择一项检查' |
| | | }) |
| | | return |
| | | } |
| | | |
| | | // 先校验当前tab下的表格 |
| | | let errMap = await this.$refs['editableDetailTable' + this.activeTabKey].validateTable() |
| | | if (errMap) return false |