From 44aec2bce6c7dd7ca744f5b11fa4df0f0e961a95 Mon Sep 17 00:00:00 2001 From: zhaowei <zhaowei> Date: 星期二, 08 七月 2025 20:47:59 +0800 Subject: [PATCH] 1、保养规范页面保养项明细字段展示名称以及列调整 2、保养规范页面使用标签栏区分点检及二保保养项明细中的保养项分类 --- src/views/eam/equipment/modules/EamEquipmentModal.vue | 2 src/views/flowable/workflow/InspectionOrder/InspectionOrderHandle.vue | 413 ++++++++++++++++++++-------------------- src/views/eam/maintenance/modules/EamInspectionOrderModal.vue | 26 +- src/views/flowable/workflow/FlowTodo.vue | 10 src/views/eam/base/EamMaintenanceStandardList.vue | 50 +++-- src/views/eam/base/modules/EamMaintenanceStandardDetailList.vue | 84 ++++++- 6 files changed, 328 insertions(+), 257 deletions(-) diff --git a/src/views/eam/base/EamMaintenanceStandardList.vue b/src/views/eam/base/EamMaintenanceStandardList.vue index e04390f..5f8eec9 100644 --- a/src/views/eam/base/EamMaintenanceStandardList.vue +++ b/src/views/eam/base/EamMaintenanceStandardList.vue @@ -90,19 +90,10 @@ <a style="margin-left: 24px" @click="onClearSelected">娓呯┖</a> </div> - <a-table - ref="table" - size="middle" - bordered - rowKey="id" - :columns="columns" - :dataSource="dataSource" - :pagination="ipagination" - :loading="loading" - class="j-table-force-nowrap" - :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" - :customRow='clickThenSelect' - @change="handleTableChange"> + <a-table ref="table" size="middle" bordered rowKey="id" :columns="columns" :dataSource="dataSource" + :pagination="ipagination" :loading="loading" class="j-table-force-nowrap" + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" :customRow='clickThenSelect' + @change="handleTableChange"> <span slot="action" slot-scope="text, record"> <a v-if="record.standardStatus === 'START'" @click.stop="handleUpgrade(record)">鍗囩増</a> @@ -125,14 +116,33 @@ </span> </a-table> - <a-tabs defaultActiveKey="1"> - <a-tab-pane tab='淇濆吇鏍囧噯鏄庣粏椤�' key="1"> - <div class="table-operator" style="margin:-16px"> - <eam-maintenance-standard-detail-list ref="standardDetailRef" :standardId="standardId" - :pageSelectionRow="selectionRows[0]"/> - </div> - </a-tab-pane> + <a-tabs defaultActiveKey="1" v-if="selectionRows.length===1"> + <template v-if="selectionRows[0]&&selectionRows[0].maintenanceCategory=='POINT_INSPECTION'"> + <a-tab-pane tab="鏃ョ偣妫�" key="1"> + <eam-maintenance-standard-detail-list :standardId="standardId" :pageSelectionRow="selectionRows[0]" + filterKey="DAY_INSPECTION"/> + </a-tab-pane> + <a-tab-pane tab="鍛ㄧ偣妫�" key="2" forceRender> + <eam-maintenance-standard-detail-list :standardId="standardId" :pageSelectionRow="selectionRows[0]" + filterKey="WEEK_INSPECTION"/> + </a-tab-pane> + </template> + <template v-if="selectionRows[0]&&selectionRows[0].maintenanceCategory=='SECOND_MAINTENANCE'"> + <a-tab-pane tab="鎿嶄綔宸�" key="1"> + <eam-maintenance-standard-detail-list :standardId="standardId" :pageSelectionRow="selectionRows[0]" + filterKey="OPERATOR_MAINTENANCE"/> + </a-tab-pane> + <a-tab-pane tab="缁翠慨宸�" key="2" forceRender> + <eam-maintenance-standard-detail-list :standardId="standardId" :pageSelectionRow="selectionRows[0]" + filterKey="REPAIRER_MAINTENANCE"/> + </a-tab-pane> + </template> + + <a-tab-pane tab="涓変繚" key="1" v-if="selectionRows[0]&&selectionRows[0].maintenanceCategory=='THIRD_MAINTENANCE'"> + <eam-maintenance-standard-detail-list :standardId="standardId" + :pageSelectionRow="selectionRows[0]"/> + </a-tab-pane> </a-tabs> </div> <!-- table鍖哄煙-end --> diff --git a/src/views/eam/base/modules/EamMaintenanceStandardDetailList.vue b/src/views/eam/base/modules/EamMaintenanceStandardDetailList.vue index 214e801..d242efa 100644 --- a/src/views/eam/base/modules/EamMaintenanceStandardDetailList.vue +++ b/src/views/eam/base/modules/EamMaintenanceStandardDetailList.vue @@ -32,6 +32,9 @@ type: Object, default: () => { } + }, + filterKey: { + type: String } }, data() { @@ -39,18 +42,12 @@ description: '淇濆吇鏍囧噯鏄庣粏绠$悊椤甸潰', // 琛ㄥご columns: [], - defaultColumns: [ + inspectionColumns: [ { title: '搴忓彿', align: 'center', dataIndex: 'itemCode', width: 60 - }, - { - title: '閮ㄤ綅', - align: 'center', - dataIndex: 'itemPart', - ellipsis: true }, { title: '淇濆吇椤瑰垎绫�', @@ -71,6 +68,53 @@ ellipsis: true } ], + secondMaintenanceColumns: [ + { + title: '搴忓彿', + align: 'center', + dataIndex: 'itemCode', + width: 60 + }, + { + title: '淇濆吇椤瑰垎绫�', + align: 'center', + dataIndex: 'itemCategory_dictText', + width: 150 + }, + { + title: '淇濆吇椤圭洰', + align: 'center', + dataIndex: 'itemName', + ellipsis: true + } + ], + thirdMaintenanceColumns: [ + { + title: '搴忓彿', + align: 'center', + dataIndex: 'itemCode', + width: 60 + }, + { + title: '淇濆吇閮ㄤ綅', + align: 'center', + dataIndex: 'itemPart', + ellipsis: true + }, + { + title: '淇濆吇鍐呭', + align: 'center', + dataIndex: 'itemName', + ellipsis: true + }, + { + title: '楠屾敹鏍囧噯', + align: 'center', + dataIndex: 'itemDemand', + ellipsis: true + } + ], + disableMixinCreated: true, url: { list: '/eam/eamMaintenanceStandardDetail/list' } @@ -81,28 +125,32 @@ immediate: true, handler(val) { if (val) { - this.loadData(1) + console.log('val---------------------', val) + this.$nextTick(() => this.loadData(1)) } else { this.clearList() } } }, pageSelectionRow: { + immediate: true, handler(val) { - if (val) { - if (val.maintenanceCategory != 'THIRD_MAINTENANCE') this.columns = [...this.defaultColumns.filter(item => item.dataIndex != 'itemPart')] - else this.columns = [...this.defaultColumns.filter(item => item.dataIndex != 'itemCategory_dictText')] + switch (val.maintenanceCategory) { + case 'POINT_INSPECTION': + this.columns = this.inspectionColumns + break + case 'SECOND_MAINTENANCE': + this.columns = this.secondMaintenanceColumns + break + case 'THIRD_MAINTENANCE': + this.columns = this.thirdMaintenanceColumns + break } } } }, - computed: {}, methods: { loadData(arg) { - if (!this.url.list) { - this.$message.error('璇疯缃畊rl.list灞炴��!') - return - } if (this.standardId && this.standardId === '-1') { this.clearList() return @@ -118,11 +166,13 @@ this.dataSource = [] params.standardId = this.standardId this.loading = true + console.log('----------------------', this.filterKey) getAction(this.url.list, params).then((res) => { if (res.success) { // console.log(res) //update-begin---author:zhangyafei Date:20201118 for锛氶�傞厤涓嶅垎椤电殑鏁版嵁鍒楄〃------------ - this.dataSource = res.result.records || res.result + if (this.filterKey) this.dataSource = res.result.records.filter(item => item.itemCategory == this.filterKey) + else this.dataSource = res.result.records if (res.result.total) { this.ipagination.total = res.result.total } else { diff --git a/src/views/eam/equipment/modules/EamEquipmentModal.vue b/src/views/eam/equipment/modules/EamEquipmentModal.vue index 4db5113..a06b114 100644 --- a/src/views/eam/equipment/modules/EamEquipmentModal.vue +++ b/src/views/eam/equipment/modules/EamEquipmentModal.vue @@ -99,7 +99,7 @@ <a-row> <a-col :span="customSpan"> <a-form-model-item label="绯荤粺"> - <a-input placeholder="璇疯緭鍏ョ郴缁�" :disabled="Boolean(+model.operationSystem)" v-model="model.system"/> + <a-input placeholder="璇疯緭鍏ョ郴缁�" :disabled="!Boolean(+model.operationSystem)" v-model="model.system"/> </a-form-model-item> </a-col> <a-col :span="customSpan"> diff --git a/src/views/eam/maintenance/modules/EamInspectionOrderModal.vue b/src/views/eam/maintenance/modules/EamInspectionOrderModal.vue index 1ecc745..84c5ec1 100644 --- a/src/views/eam/maintenance/modules/EamInspectionOrderModal.vue +++ b/src/views/eam/maintenance/modules/EamInspectionOrderModal.vue @@ -128,7 +128,7 @@ { title: '搴忓彿', key: 'itemCode', - type: JVXETypes.inputNumber, + type: JVXETypes.normal, width: 100, align: 'center', disabled: true @@ -156,42 +156,42 @@ type: JVXETypes.normal, width: 60, align: 'center', - fixed: 'left' + disabled: true }, { title: '淇濆吇椤�', key: 'itemName', type: JVXETypes.textarea, align: 'center', - fixed: 'left' + disabled: true }, { title: '淇濆吇瑕佹眰', key: 'itemDemand', type: JVXETypes.textarea, align: 'center', - fixed: 'left' + disabled: true }, { title: '鐐规缁撴灉', key: 'inspectionResult', - type: JVXETypes.slot, - slotName: 'inspectionResult', - align: 'center' + type: JVXETypes.textarea, + align: 'center', + disabled: true }, { title: '寮傚父鎻忚堪', key: 'exceptionDescription', - type: JVXETypes.slot, - slotName: 'exceptionDescription', - align: 'center' + type: JVXETypes.textarea, + align: 'center', + disabled: true }, { title: '寮傚父鏄惁鎶ヤ慨', key: 'reportFlag', - type: JVXETypes.slot, - slotName: 'reportFlag', - align: 'center' + type: JVXETypes.textarea, + align: 'center', + disabled: true } ] } diff --git a/src/views/flowable/workflow/FlowTodo.vue b/src/views/flowable/workflow/FlowTodo.vue index e29eaf4..7d6937e 100644 --- a/src/views/flowable/workflow/FlowTodo.vue +++ b/src/views/flowable/workflow/FlowTodo.vue @@ -90,6 +90,8 @@ <maintenance-standard-approval-modal ref="maintenanceStandardApprovalModal" @modalFormOk="modalFormOk" :selectShenpiData="selectedRowData"/> + + <inspection-order-handle ref="modalFormInspectionOrder" :selectShenpiData="selectedRowData"/> </a-card> </template> @@ -98,11 +100,12 @@ import { JeecgListMixin } from '@/mixins/JeecgListMixin' import { getAction } from '@api/manage' import MaintenanceStandardApprovalModal from './MaintenanceStandard/MaintenanceStandardApprovalModal' + import InspectionOrderHandle from './InspectionOrder/InspectionOrderHandle' export default { name: 'NcDeviceCharactersList', mixins: [JeecgListMixin, mixinDevice], - components: { MaintenanceStandardApprovalModal }, + components: { InspectionOrderHandle, MaintenanceStandardApprovalModal }, data() { return { description: '宸ヤ綔娴�-鎴戠殑寰呭姙', @@ -225,8 +228,11 @@ } }, + /** + * 鐐瑰嚮淇濆吇瑙勮寖鍒嗙被娴佺▼璇︽儏鏃惰Е鍙� + * @param record + */ handleMaintenanceStandard(record) { - console.log('this.$refs.maintenanceStandardApprovalModal.', this.$refs.maintenanceStandardApprovalModal) this.selectedRowData = Object.assign({}, record) this.$refs.maintenanceStandardApprovalModal.visible = true this.$refs.maintenanceStandardApprovalModal.title = '淇濆吇瑙勮寖' diff --git a/src/views/flowable/workflow/InspectionOrder/InspectionOrderHandle.vue b/src/views/flowable/workflow/InspectionOrder/InspectionOrderHandle.vue index 156c30d..b302f37 100644 --- a/src/views/flowable/workflow/InspectionOrder/InspectionOrderHandle.vue +++ b/src/views/flowable/workflow/InspectionOrder/InspectionOrderHandle.vue @@ -1,201 +1,198 @@ <template> - <j-modal - :title="title" - :width="1200" - :visible="visible" - :okButtonProps="{ class:{'jee-hidden': disableSubmit||!hasInspectionDateArrived} }" - @ok="submitForm" - @cancel="handleCancel" - :mask-closable="false" - :confirmLoading="confirmLoading" - switchFullscreen - centered - > + <j-modal :title="title" :width="1200" :visible="visible" + :okButtonProps="{ class:{'jee-hidden': disableSubmit||!hasInspectionDateArrived} }" @ok="submitForm" + @cancel="handleCancel" :mask-closable="false" :confirmLoading="confirmLoading" fullscreen> <a-spin :spinning="spinning"> <a-form-model ref='form' :model='tableRowRecord' :labelCol="labelCol" :wrapperCol="wrapperCol" :rules="validatorRules"> - <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> 鐐规鍩虹淇℃伅</a-divider> + <a-row :gutter="48"> + <a-col :span="8"> + <a-tabs> + <a-tab-pane tab="鍩虹淇℃伅"> + <a-row> + <a-col :span='span'> + <a-form-model-item label="宸ュ崟鍙�"> + <a-input readOnly v-model="tableRowRecord.orderNum"/> + </a-form-model-item> + </a-col> + <a-col :span='span'> + <a-form-model-item label="璁惧缂栧彿"> + <MaintenanceEquipmentSelect v-model="tableRowRecord.equipmentId" + :maintenanceCategory="'POINT_INSPECTION'" + disabled @autocompleteForm="autoCompleteForm"/> + </a-form-model-item> + </a-col> - <a-row> - <a-col :span='span'> - <a-form-model-item label="宸ュ崟鍙�"> - <a-input readOnly v-model="tableRowRecord.orderNum"/> - </a-form-model-item> - </a-col> - <a-col :span='span'> - <a-form-model-item label="璁惧缂栧彿"> - <MaintenanceEquipmentSelect v-model="tableRowRecord.equipmentId" - :maintenanceCategory="'POINT_INSPECTION'" disabled - @autocompleteForm="autoCompleteForm"/> - </a-form-model-item> - </a-col> - <a-col :span='span'> - <a-form-model-item label="鏍囧噯鍚嶇О"> - <a-input readOnly v-model="tableRowRecord.standardName"/> - </a-form-model-item> - </a-col> - </a-row> + </a-row> - <a-row> - <a-col :span='span'> - <a-form-model-item label="鏍囧噯缂栫爜"> - <a-input readOnly v-model="tableRowRecord.standardCode"/> - </a-form-model-item> - </a-col> - <a-col :span='span'> - <a-form-model-item label="鐐规鏃ユ湡"> - <a-input v-model="tableRowRecord.inspectionDate" readOnly/> - </a-form-model-item> - </a-col> - <a-col :span='span'> - <a-form-model-item label="鐐规杩囨湡鏃堕棿"> - <a-input v-model="tableRowRecord.expirationTime" readOnly/> - </a-form-model-item> - </a-col> - </a-row> + <a-row> + <a-col :span='span'> + <a-form-model-item label="瑙勮寖鍚嶇О"> + <a-input readOnly v-model="tableRowRecord.standardName"/> + </a-form-model-item> + </a-col> + <a-col :span='span'> + <a-form-model-item label="瑙勮寖缂栫爜"> + <a-input readOnly v-model="tableRowRecord.standardCode"/> + </a-form-model-item> + </a-col> - <a-row> - <a-col :span='span'> - <a-form-model-item label="淇濆吇鍛ㄦ湡"> - <a-input v-model="tableRowRecord.maintenancePeriod" readOnly/> - </a-form-model-item> + </a-row> + + <a-row> + <a-col :span='span'> + <a-form-model-item label="鐐规鏃ユ湡"> + <a-input v-model="tableRowRecord.inspectionDate" readOnly/> + </a-form-model-item> + </a-col> + <a-col :span='span'> + <a-form-model-item label="鐐规杩囨湡鏃堕棿"> + <a-input v-model="tableRowRecord.expirationTime" readOnly/> + </a-form-model-item> + </a-col> + </a-row> + + <a-row> + <a-col :span='span'> + <a-form-model-item label="淇濆吇鍛ㄦ湡"> + <a-input v-model="tableRowRecord.maintenancePeriod" readOnly/> + </a-form-model-item> + </a-col> + <a-col :span='span'> + <a-form-model-item label="鐐规浜�"> + <a-input v-model="tableRowRecord.operator_dictText" readOnly/> + </a-form-model-item> + </a-col> + </a-row> + + <a-row> + <a-col :span="span*2"> + <a-form-model-item label="澶囨敞" :labelCol="{span:4}" :wrapperCol="{span:20}"> + <a-textarea v-model="tableRowRecord.remark" rows="3" readOnly/> + </a-form-model-item> + </a-col> + </a-row> + </a-tab-pane> + </a-tabs> </a-col> - <a-col :span='span'> - <a-form-model-item label="鐐规浜�"> - <a-input v-model="tableRowRecord.operator_dictText" readOnly/> - </a-form-model-item> - </a-col> - </a-row> - <a-row> - <a-col :span="span*3"> - <a-form-model-item label="澶囨敞" :labelCol="{span:2}" :wrapperCol="{span:21}"> - <a-textarea v-model="tableRowRecord.remark" rows="3" readOnly/> - </a-form-model-item> - </a-col> - </a-row> + <a-col :span="disableSubmit||tableRowRecord.inspectionStatus=='UNDER_INSPECTION'?16:10"> + <a-tabs v-model="activeTabKey"> + <a-tab-pane key="1" tab="鏃ョ偣妫�"> + <j-vxe-table ref="editableDetailTable" :rowNumber="false" rowSelection bordered + alwaysEdit :toolbar="false" keep-source :height="300" :loading="detail.loading" + :dataSource="detail.dataSource" :columns="detail.columns" + @selectRowChange="handleTableSelectRowChange"> + <template v-slot:inspectionResult="props"> + <j-dict-select-tag v-model="props.row.inspectionResult" dictCode="eam_inspection_result" + :disabled="isDisableOperation" placeholder="璇烽�夋嫨鐐规缁撴灉" + @change="handleInspectionResultSelectChange($event,props.row)" + style="width: 100%"/> + </template> - <a-row> - <a-form-model-item prop="imageFilesResult" label="鐐规鍥剧墖" :labelCol="{span:2}" :wrapperCol="{span:21}"> - <lx-upload :returnUrl="false" :isMultiple="true" file-type="image" :number="3" - :disabled="isDisableOperation||!hasInspectionDateArrived" - v-model="tableRowRecord.fileList"/> - </a-form-model-item> - </a-row> + <template v-slot:exceptionDescription="props"> + <a-textarea style="height: 32px" v-model="props.row.exceptionDescription" + :placeholder="props.row.inspectionResult==='2'?'璇疯緭鍏ュ紓甯告弿杩�':''" + :disabled="isDisableOperation||!props.row.inspectionResult||props.row.inspectionResult==='1'"/> + </template> - <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> - 淇濆吇椤逛俊鎭� - </a-divider> + <template v-slot:reportFlag="props"> + <j-dict-select-tag v-model="props.row.reportFlag" + :placeholder="props.row.inspectionResult==='2'?'璇烽�夋嫨寮傚父鏄惁鎶ヤ慨':''" + :disabled="isDisableOperation||!props.row.inspectionResult||props.row.inspectionResult==='1'" + dictCode="yn" style="width: 100%"/> + </template> + </j-vxe-table> + </a-tab-pane> - <a-tabs v-model="activeTabKey"> - <a-tab-pane key="1" tab="淇濆吇椤规槑缁�"> - <j-vxe-table - ref="editableDetailTable" - :rowNumber="false" - :rowSelection="true" - :bordered="true" - :alwaysEdit="true" - :toolbar="false" - keep-source - :height="300" - :loading="detail.loading" - :dataSource="detail.dataSource" - :columns="detail.columns" - @selectRowChange="handleTableSelectRowChange" - > - <template v-slot:inspectionResult="props"> - <j-dict-select-tag v-model="props.row.inspectionResult" dictCode="eam_inspection_result" - :disabled="isDisableOperation" - placeholder="璇烽�夋嫨鐐规缁撴灉" - @change="handleInspectionResultSelectChange($event,props.row)" - style="width: 100%"/> + <a-tab-pane key="2" tab="鍛ㄧ偣妫�"> + <j-vxe-table ref="editableDetailTable" :rowNumber="false" rowSelection bordered + alwaysEdit :toolbar="false" keep-source :height="300" :loading="detail.loading" + :dataSource="detail.weekInspectionList" :columns="detail.columns" + @selectRowChange="handleTableSelectRowChange"> + <template v-slot:inspectionResult="props"> + <j-dict-select-tag v-model="props.row.inspectionResult" dictCode="eam_inspection_result" + :disabled="isDisableOperation" placeholder="璇烽�夋嫨鐐规缁撴灉" + @change="handleInspectionResultSelectChange($event,props.row)" + style="width: 100%"/> + </template> + + <template v-slot:exceptionDescription="props"> + <a-textarea style="height: 32px" v-model="props.row.exceptionDescription" + :placeholder="props.row.inspectionResult==='2'?'璇疯緭鍏ュ紓甯告弿杩�':''" + :disabled="isDisableOperation||!props.row.inspectionResult||props.row.inspectionResult==='1'"/> + </template> + + <template v-slot:reportFlag="props"> + <j-dict-select-tag v-model="props.row.reportFlag" + :placeholder="props.row.inspectionResult==='2'?'璇烽�夋嫨寮傚父鏄惁鎶ヤ慨':''" + :disabled="isDisableOperation||!props.row.inspectionResult||props.row.inspectionResult==='1'" + dictCode="yn" style="width: 100%"/> + </template> + </j-vxe-table> + </a-tab-pane> + + <template v-if="selectShenpiData.procInstId"> + <a-tab-pane key='3' tab='娴佺▼鑺傜偣'> + <a-card :bordered="false"> + <a-timeline> + <a-timeline-item v-for="(item,index) in hitaskDataSource" :key="index"> + <div> + <h3 style="font-weight: bold;">{{item.taskName}}</h3> + <div>澶勭悊浜猴細{{item.assignee_dictText}}</div> + <div v-if="index !==0">澶勭悊鏃堕暱锛歿{item.duration}}</div> + <div v-if="item.name !== '鎻愪氦鐢宠'">澶勭悊绫诲瀷锛歿{item.sequenceFlowName}}</div> + <div v-if="item.description">澶勭悊鎰忚锛歿{item.description}}</div> + </div> + </a-timeline-item> + </a-timeline> + </a-card> + </a-tab-pane> + + <a-tab-pane key='4' tab='娴佺▼鍥�'> + <img :src="imageSrc" width="100%" v-if="imageSrc"/> + </a-tab-pane> </template> - <template v-slot:exceptionDescription="props"> - <a-textarea style="height: 32px" v-model="props.row.exceptionDescription" - :placeholder="props.row.inspectionResult==='2'?'璇疯緭鍏ュ紓甯告弿杩�':''" - :disabled="isDisableOperation||!props.row.inspectionResult||props.row.inspectionResult==='1'"/> - </template> + <a-button + v-if="selectedRowKeys.length>0&&!isDisableOperation&&hasInspectionDateArrived&&activeTabKey==='1'&&activeTabKey==='2'" + slot="tabBarExtraContent" type="primary" + @click="handleSelectAllInspectionResult">鎵归噺鐐规姝e父 + </a-button> + </a-tabs> + </a-col> - <template v-slot:reportFlag="props"> - <j-dict-select-tag v-model="props.row.reportFlag" - :placeholder="props.row.inspectionResult==='2'?'璇烽�夋嫨寮傚父鏄惁鎶ヤ慨':''" - :disabled="isDisableOperation||!props.row.inspectionResult||props.row.inspectionResult==='1'" - dictCode="yn" - style="width: 100%"/> - </template> - </j-vxe-table> - </a-tab-pane> + <a-col v-if="!disableSubmit&&isDisplayConfirm" :span="6"> + <a-tabs> + <a-tab-pane tab="缁翠慨宸ョ‘璁�"> + <a-row> + <a-col :span="24"> + <a-form-model-item prop="confirmDealType" label="澶勭悊绫诲瀷"> + <j-dict-select-tag type='radio' v-model='tableRowRecord.confirmDealType' + dictCode='approved_rejected' + :disabled="disableSubmit||tableRowRecord.inspectionStatus!=='WAIT_CONFIRM'"/> + </a-form-model-item> + </a-col> - <template v-if="selectShenpiData.procInstId"> - <a-tab-pane key='2' tab='娴佺▼鑺傜偣'> - <a-card :bordered="false"> - <a-timeline> - <a-timeline-item v-for="(item,index) in hitaskDataSource" :key="index"> - <div> - <h3 style="font-weight: bold;">{{item.taskName}}</h3> - <div>澶勭悊浜猴細{{item.assignee_dictText}}</div> - <div v-if="index !==0">澶勭悊鏃堕暱锛歿{item.duration}}</div> - <div v-if="item.name !== '鎻愪氦鐢宠'">澶勭悊绫诲瀷锛歿{item.sequenceFlowName}}</div> - <div v-if="item.description">澶勭悊鎰忚锛歿{item.description}}</div> - </div> - </a-timeline-item> - </a-timeline> - </a-card> - </a-tab-pane> - - <a-tab-pane key='3' tab='娴佺▼鍥�'> - <img :src="imageSrc" alt="Fetched Image"/> - </a-tab-pane> - </template> - - <a-button - v-if="selectedRowKeys.length>0&&!isDisableOperation&&hasInspectionDateArrived&&activeTabKey==='1'" - slot="tabBarExtraContent" type="primary" - @click="handleSelectAllInspectionResult">鎵归噺鐐规姝e父 - </a-button> - - <!--<a-dropdown slot="tabBarExtraContent" v-if="selectedRowKeys.length>0">--> - <!--<a-menu slot="overlay">--> - <!--<a-menu-item key="1" @click="handleSelectAllInspectionResult('姝e父')">姝e父</a-menu-item>--> - <!--<a-menu-item key="2" @click="handleSelectAllInspectionResult('寮傚父')">寮傚父</a-menu-item>--> - <!--</a-menu>--> - - <!--<a-button> 鎵归噺閫夋嫨鐐规缁撴灉--> - <!--<a-icon type="down"/>--> - <!--</a-button>--> - <!--</a-dropdown>--> - </a-tabs> - - <template v-if="isDisplayConfirm"> - <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> 绠$悊鍛樼‘璁や俊鎭� - </a-divider> - - <a-row :gutter="24"> - <a-col :span="12"> - <a-form-model-item prop="confirmDealType" label="澶勭悊绫诲瀷"> - <j-dict-select-tag type='radio' v-model='tableRowRecord.confirmDealType' dictCode='approved_rejected' - :disabled="disableSubmit||tableRowRecord.inspectionStatus!=='WAIT_CONFIRM'"/> - </a-form-model-item> - </a-col> - - <a-col :span="12"> - <a-form-model-item prop="confirmComment" label="澶勭悊鎰忚"> - <a-textarea placeholder="璇疯緭鍏ュ鐞嗘剰瑙�" - :disabled="disableSubmit||tableRowRecord.inspectionStatus!=='WAIT_CONFIRM'" - v-model="tableRowRecord.confirmComment"/> - </a-form-model-item> - </a-col> - </a-row> - </template> + <a-col :span="24"> + <a-form-model-item prop="confirmComment" label="澶勭悊鎰忚"> + <a-textarea placeholder="璇疯緭鍏ュ鐞嗘剰瑙�" + :disabled="disableSubmit||tableRowRecord.inspectionStatus!=='WAIT_CONFIRM'" + v-model="tableRowRecord.confirmComment"/> + </a-form-model-item> + </a-col> + </a-row> + </a-tab-pane> + </a-tabs> + </a-col> + </a-row> </a-form-model> </a-spin> </j-modal> </template> <script> - import '@assets/less/TableExpand.less' - import { getAction, deleteAction, postAction, downFile, httpAction } from '@api/manage' + import { getAction, postAction, downFile } from '@api/manage' import MaintenanceEquipmentSelect from '@views/eam/equipment/modules/MaintenanceEquipmentSelect.vue' import { JVXETypes } from '@comp/jeecg/JVxeTable' import moment from 'moment' @@ -210,11 +207,10 @@ }, data() { return { - span: 8, + span: 12, confirmLoading: false, spinning: false, tableRowRecord: {}, - assignFileStream: {}, hitaskDataSource: [], validatorRules: { confirmDealType: [ @@ -227,21 +223,21 @@ imageSrc: null, labelCol: { xs: { span: 24 }, - sm: { span: 6 } + sm: { span: 9 } }, wrapperCol: { xs: { span: 30 }, - sm: { span: 16 } + sm: { span: 15 } }, visible: false, // 琛ㄥご url: { - // queryBomDataById: '/eam/eamInspectionOrder/selectVoById', diagramView: '/assign/flow/diagramView', queryHisTaskList: '/assign/flow/queryHisTaskList', approve: '/eam/eamInspectionOrder/approval', queryById: '/eam/eamInspectionOrder/queryById', - detailList: '/eam/eamInspectionOrderDetail/queryList' + detailList: '/eam/eamInspectionOrderDetail/queryList', + weekInspectionOrderList: '/eam/eamWeekInspectionDetail/queryStandardList' }, detail: { loading: false, @@ -251,7 +247,7 @@ title: '搴忓彿', key: 'itemCode', type: JVXETypes.normal, - width: '5%', + width: 60, align: 'center', fixed: 'left' }, @@ -259,7 +255,6 @@ title: '淇濆吇椤�', key: 'itemName', type: JVXETypes.normal, - width: '15%', align: 'center', fixed: 'left' }, @@ -267,7 +262,6 @@ title: '淇濆吇瑕佹眰', key: 'itemDemand', type: JVXETypes.normal, - width: '15%', align: 'center', fixed: 'left' }, @@ -276,10 +270,9 @@ key: 'inspectionResult', type: JVXETypes.slot, slotName: 'inspectionResult', - width: '15%', align: 'center', validateRules: [ - { required: true, message: '${title}涓嶈兘涓虹┖锛�' } + { required: true, message: '${title}涓嶈兘涓虹┖' } ] }, { @@ -287,7 +280,6 @@ key: 'exceptionDescription', type: JVXETypes.slot, slotName: 'exceptionDescription', - width: '20%', align: 'center', validateRules: [ { handler: this.customValidator } @@ -298,13 +290,13 @@ key: 'reportFlag', type: JVXETypes.slot, slotName: 'reportFlag', - width: '20%', align: 'center', validateRules: [ { handler: this.customValidator } ] } - ] + ], + weekInspectionList: [] }, selectedRowKeys: [], disableSubmit: false, @@ -363,13 +355,11 @@ this.detail.dataSource = [] this.spinning = true const param = { id: record.dataId } - let res = await getAction(this.url.queryById, param); - this.tableRowRecord = Object.assign({}, res.result); - if (this.tableRowRecord.imageFiles) { - let obj = JSON.parse(this.tableRowRecord.imageFiles) - this.tableRowRecord.fileList = [...obj] - } - await this.loadDetail(record.dataId) + let res = await getAction(this.url.queryById, param) + this.tableRowRecord = Object.assign({}, res.result) + this.loadDetail(record.dataId) + console.log('record', record) + this.getWeekInspectionOrderListByApi(this.tableRowRecord.standardId) }, async submitForm() { @@ -390,11 +380,9 @@ flowTaskVo.values = this.selectShenpiData.variables flowTaskVo.confirmDealType = this.tableRowRecord.confirmDealType flowTaskVo.confirmComment = this.tableRowRecord.confirmComment - flowTaskVo.fileList = this.tableRowRecord.fileList flowTaskVo.tableDetailList = this.$refs.editableDetailTable.getTableData() const that = this - console.log('琛ㄥ崟鎻愪氦鏁版嵁', flowTaskVo) - httpAction(this.url.approve, flowTaskVo, 'post') + postAction(this.url.approve, flowTaskVo) .then((res) => { if (res.success) { that.$message.success(res.message) @@ -468,10 +456,14 @@ this.selectedRowKeys = [] this.visible = false }, - //鏍囧噯閫夋嫨鍙樺寲 + + /** + * 鑾峰彇鏃ョ偣妫�鏄庣粏 + * @param orderId + */ loadDetail(orderId) { if (orderId) { - getAction(this.url.detailList, { orderId: orderId }) + getAction(this.url.detailList, { orderId }) .then(res => { if (res.success) { this.detail.dataSource = [...res.result] @@ -482,6 +474,21 @@ }) } }, + + /** + * 鑾峰彇鐐规宸ュ崟涓殑鍛ㄧ偣妫�鍒楄〃 + * @param standardId 瑙勮寖id + */ + getWeekInspectionOrderListByApi(standardId) { + console.log('standardId-------------------------', standardId) + getAction(this.url.weekInspectionOrderList, { standardId, inspectionDate: this.tableRowRecord.inspectionDate }) + .then(res => { + if (res.success) this.detail.weekInspectionList = res.result + }) + .finally(() => { + this.spinning = false + }) + } } } </script> @@ -489,6 +496,4 @@ /deep/ .ant-select-dropdown-menu { text-align: left; } - - @import '~@assets/less/common.less'; </style> \ No newline at end of file -- Gitblit v1.9.3