From dbb3445dc720a8f36b3424e73f2e02a6b0f9deb6 Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期日, 27 四月 2025 11:31:57 +0800 Subject: [PATCH] art: 从沃克项目迁移设备管理代码到航宇 --- src/views/eam/maintenance/EamInspectionOrderList.vue | 396 +++++++++++++++++++++++++++---------------------------- 1 files changed, 194 insertions(+), 202 deletions(-) diff --git a/src/views/eam/maintenance/EamInspectionOrderList.vue b/src/views/eam/maintenance/EamInspectionOrderList.vue index a7000e3..bc708f8 100644 --- a/src/views/eam/maintenance/EamInspectionOrderList.vue +++ b/src/views/eam/maintenance/EamInspectionOrderList.vue @@ -1,39 +1,33 @@ <template> <a-card :bordered="false"> <!-- 鏌ヨ鍖哄煙 --> - <div class="table-page-search-wrapper"> + <div class="table-page-search-wrapper" v-if="isDisplayOperation"> <a-form layout="inline" @keyup.enter.native="searchQuery"> <a-row :gutter="24"> - <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-col :xl="4" :lg="7" :md="8" :sm="24"> <a-form-item label="宸ュ崟鍙�"> <a-input placeholder="璇疯緭鍏ュ伐鍗曞彿" v-model="queryParam.orderNum"></a-input> </a-form-item> </a-col> - <a-col :xl="6" :lg="7" :md="8" :sm="24"> - <a-form-item label="璁惧ID"> - <a-input placeholder="璇疯緭鍏ヨ澶嘔D" v-model="queryParam.equipmentId"></a-input> + <a-col :xl="4" :lg="7" :md="8" :sm="24"> + <a-form-item label="璁惧缂栧彿"> + <lx-search-equipment-select placeholder="璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储" v-model="queryParam.equipmentId"></lx-search-equipment-select> </a-form-item> </a-col> - <template v-if="toggleSearchStatus"> - <a-col :xl="6" :lg="7" :md="8" :sm="24"> - <a-form-item label="鐐规鏃ユ湡"> - <j-date placeholder="璇烽�夋嫨鐐规鏃ユ湡" v-model="queryParam.inspectionDate"></j-date> - </a-form-item> - </a-col> - <a-col :xl="6" :lg="7" :md="8" :sm="24"> - <a-form-item label="鐐规鏃堕棿"> - <j-date placeholder="璇烽�夋嫨鐐规鏃堕棿" v-model="queryParam.operateTime"></j-date> - </a-form-item> - </a-col> - </template> <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="璁″垝鐐规鏃ユ湡"> + <a-range-picker v-model="queryParam.inspectionDateRange" @change="onInspectionDateChange" format="YYYY-MM-DD" value-format="YYYY-MM-DD" /> + </a-form-item> + </a-col> + <a-col :xl="4" :lg="7" :md="8" :sm="24"> + <a-form-item label="鐐规鐘舵��"> + <j-dict-select-tag placeholder="璇烽�夋嫨鐐规鐘舵��" dict-code="inspection_status" v-model="queryParam.inspectionStatus" /> + </a-form-item> + </a-col> + <a-col :xl="4" :lg="7" :md="8" :sm="24"> <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> <a-button type="primary" @click="searchQuery" icon="search">鏌ヨ</a-button> - <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button> - <a @click="handleToggleSearch" style="margin-left: 8px"> - {{ toggleSearchStatus ? '鏀惰捣' : '灞曞紑' }} - <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/> - </a> + <a-button type="info" @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button> </span> </a-col> </a-row> @@ -42,21 +36,30 @@ <!-- 鏌ヨ鍖哄煙-END --> <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> - <div class="table-operator"> - <a-button @click="handleAdd" type="primary" icon="plus">鏂板</a-button> + <div class="table-operator" v-if="isDisplayOperation"> + <a-button @click="handleAdd" type="primary" icon="plus" v-if="isShowAuth('eam:inspection:add')">鏂板</a-button> <a-dropdown v-if="selectedRowKeys.length > 0"> <a-menu slot="overlay"> - <a-menu-item key="1" @click="batchZf(5)"><a-icon type="snippets"/>浣滃簾</a-menu-item> - <a-menu-item key="2" @click="batchLq(2)"><a-icon type="form"/>棰嗗彇</a-menu-item> + <a-menu-item key="1" v-if="isShowAuth('eam:inspection:abolish')" @click="batchZf('ABOLISH')"> + <a-icon type="snippets"/> + 浣滃簾 + </a-menu-item> + <a-menu-item key="2" v-if="isShowAuth('eam:inspection:collect')" @click="batchLq('UNDER_INSPECTION')"> + <a-icon type="form"/> + 棰嗗彇 + </a-menu-item> </a-menu> - <a-button style="margin-left: 8px"> 鎵归噺鎿嶄綔 <a-icon type="down" /></a-button> + <a-button style="margin-left: 8px"> 鎵归噺鎿嶄綔 + <a-icon type="down"/> + </a-button> </a-dropdown> </div> <!-- table鍖哄煙-begin --> <div> - <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;"> - <i class="anticon anticon-info-circle ant-alert-icon"></i> 宸查�夋嫨 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>椤� + <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;" v-if="isDisplayOperation"> + <i class="anticon anticon-info-circle ant-alert-icon"></i> 宸查�夋嫨 <a style="font-weight: 600">{{ + selectedRowKeys.length }}</a>椤� <a style="margin-left: 24px" @click="onClearSelected">娓呯┖</a> </div> @@ -74,44 +77,25 @@ class="j-table-force-nowrap" @change="handleTableChange"> - <template slot="htmlSlot" slot-scope="text"> - <div v-html="text"></div> - </template> - <template slot="imgSlot" slot-scope="text,record"> - <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犲浘鐗�</span> - <img v-else :src="getImgView(text)" :preview="record.id" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/> - </template> - <template slot="fileSlot" slot-scope="text"> - <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犳枃浠�</span> - <a-button - v-else - :ghost="true" - type="primary" - icon="download" - size="small" - @click="downloadFile(text)"> - 涓嬭浇 - </a-button> - </template> - <span slot="action" slot-scope="text, record"> - <a v-if="record.inspectionStatus === '1'" @click="handleEdit(record)">缂栬緫</a> + <a @click="handleEdit(record)" v-if="isShowAuth('eam:inspection:edit') && record.inspectionStatus === 'WAIT_INSPECTION'" >缂栬緫</a> - <a-divider v-if="record.inspectionStatus === '1'" type="vertical" /> + <a-divider type="vertical" v-if="isShowAuth('eam:inspection:edit') && record.inspectionStatus === 'WAIT_INSPECTION'" /> - <a-popconfirm v-if="record.inspectionStatus === '1'" title="纭畾棰嗗彇鍚�?" @confirm="() => handleInspection(record.id)"> + <a-popconfirm title="纭畾棰嗗彇鍚�?" v-if="isShowAuth('eam:inspection:collect') && record.inspectionStatus === 'WAIT_INSPECTION'" + @confirm="() => handleInspection(record.id)"> <a>棰嗗彇</a> </a-popconfirm> - <a-divider v-if="record.inspectionStatus === '1'" type="vertical" /> + <a-divider type="vertical" v-if="isShowAuth('eam:inspection:collect') && record.inspectionStatus === 'WAIT_INSPECTION'" /> <a-dropdown> - <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a> + <a class="ant-dropdown-link">鏇村 <a-icon type="down"/></a> <a-menu slot="overlay"> <a-menu-item> <a @click="handleDetail(record)">璇︽儏</a> </a-menu-item> - <a-menu-item v-if="record.inspectionStatus === '1'" > + <a-menu-item v-if="isShowAuth('eam:inspection:abolish') && record.inspectionStatus === 'WAIT_INSPECTION'"> <a-popconfirm title="纭畾浣滃簾鍚�?" @confirm="() => handleOrReceive(record.id)"> <a>浣滃簾</a> </a-popconfirm> @@ -119,12 +103,12 @@ </a-menu> </a-dropdown> </span> - </a-table> </div> <eam-inspection-order-modal ref="modalForm" @ok="modalFormOk"></eam-inspection-order-modal> - <EamInspectionOrderModalXq ref="modalFormXq" @ok="modalFormOk"></EamInspectionOrderModalXq> + + <inspection-order-handle ref="modalFormXq" :selectShenpiData="selectInspectionOrderXqData"/> </a-card> </template> @@ -134,276 +118,284 @@ import { mixinDevice } from '@/utils/mixin' import { JeecgListMixin } from '@/mixins/JeecgListMixin' import EamInspectionOrderModal from './modules/EamInspectionOrderModal' - import EamInspectionOrderModalXq from './modules/EamInspectionOrderModalXq.vue' import { deleteAction, getAction } from '@api/manage' + import InspectionOrderHandle from '../../flowable/workflow/InspectionOrder/InspectionOrderHandle' + import LxSearchEquipmentSelect from '@views/eam/equipment/modules/LxSearchEquipmentSelect.vue' export default { name: 'EamInspectionOrderList', - mixins:[JeecgListMixin, mixinDevice], + mixins: [JeecgListMixin, mixinDevice], components: { + InspectionOrderHandle, EamInspectionOrderModal, - EamInspectionOrderModalXq + LxSearchEquipmentSelect, }, - data () { + props: { + isDisplayOperation: { + type: Boolean, + default: true + } + }, + data() { return { description: 'eam_inspection_order绠$悊椤甸潰', + disableMixinCreated: true, // 琛ㄥご columns: [ { title: '#', dataIndex: '', - key:'rowIndex', - width:60, - align:"center", - customRender:function (t,r,index) { - return parseInt(index)+1; + key: 'rowIndex', + width: 60, + align: 'center', + customRender: function(t, r, index) { + return parseInt(index) + 1 } }, { - title:'宸ュ崟鍙�', - align:"center", + title: '宸ュ崟鍙�', + align: 'center', dataIndex: 'orderNum' }, { - title:'璁惧缂栧彿', - align:"center", - dataIndex: 'equipmentId_dictText' + title: '璁惧缂栧彿', + align: 'center', + dataIndex: 'equipmentCode' }, { - title:'鏍囧噯缂栫爜', - align:"center", + title: '璁惧鍚嶇О', + align: 'center', + dataIndex: 'equipmentName' + }, + { + title: '鏍囧噯鍚嶇О', + align: 'center', dataIndex: 'standardId_dictText' }, { - title:'鐐规鏃ユ湡', - align:"center", + title: '鐐规鏃ユ湡', + align: 'center', dataIndex: 'inspectionDate', - customRender:function (text) { - return !text?"":(text.length>10?text.substr(0,10):text) + customRender: function(text) { + return !text ? '' : (text.length > 10 ? text.substr(0, 10) : text) } }, { - title:'鐐规杩囨湡鏃堕棿', - align:"center", + title: '鐐规杩囨湡鏃ユ湡', + align: 'center', dataIndex: 'expirationTime', - customRender:function (text) { - return !text?"":(text.length>10?text.substr(0,10):text) + customRender: function(text) { + return !text ? '' : (text.length > 10 ? text.substr(0, 10) : text) } }, { - title:'鍒涘缓鏂瑰紡', - align:"center", + title: '鍒涘缓鏂瑰紡', + align: 'center', dataIndex: 'creationMethod_dictText' }, { - title:'鐐规鐘舵��', - align:"center", + title: '鐐规鐘舵��', + align: 'center', dataIndex: 'inspectionStatus_dictText' }, { - title:'鐐规鏃堕棿', - align:"center", - dataIndex: 'operateTime', - customRender:function (text) { - return !text?"":(text.length>10?text.substr(0,10):text) - } - }, - { - title:'鐐规浜�', - align:"center", + title: '鐐规浜�', + align: 'center', dataIndex: 'operator_dictText' }, { - title:'鐝粍闀跨‘璁�', - align:"center", - dataIndex: 'confirmUser' + title: '鐐规鏃堕棿', + align: 'center', + dataIndex: 'operateTime', }, { - title:'纭鏃堕棿', - align:"center", + title: '鐝粍闀跨‘璁�', + align: 'center', + dataIndex: 'confirmUser_dictText' + }, + { + title: '纭鏃堕棿', + align: 'center', dataIndex: 'confirmTime', - customRender:function (text) { - return !text?"":(text.length>10?text.substr(0,10):text) - } }, { - title: '鎿嶄綔', - dataIndex: 'action', - align:"center", - fixed:"right", - width:147, - scopedSlots: { customRender: 'action' } + title: '纭鎰忚', + align: 'center', + dataIndex: 'confirmComment', } ], url: { - list: "/eam/eamInspectionOrder/list", - cancelInspectionOrder: "/eam/eamInspectionOrder/cancelInspectionOrder", - deleteBatch: "/eam/eamInspectionOrder/deleteBatch", - exportXlsUrl: "/eam/eamInspectionOrder/exportXls", - importExcelUrl: "eam/eamInspectionOrder/importExcel", - receiveInspectionOrder : "eam/eamInspectionOrder/receiveInspectionOrder", - cancelOrReceive: "eam/eamInspectionOrder/cancelOrReceive" + list: '/eam/eamInspectionOrder/list', + cancelInspectionOrder: '/eam/eamInspectionOrder/cancelInspectionOrder', + deleteBatch: '/eam/eamInspectionOrder/deleteBatch', + exportXlsUrl: '/eam/eamInspectionOrder/exportXls', + importExcelUrl: 'eam/eamInspectionOrder/importExcel', + receiveInspectionOrder: 'eam/eamInspectionOrder/receiveInspectionOrder', + cancelOrReceive: 'eam/eamInspectionOrder/cancelOrReceive' }, - dictOptions:{}, - superFieldList:[], + dictOptions: {}, + superFieldList: [], + selectInspectionOrderXqData: {} } }, created() { - this.getSuperFieldList(); + if (!this.isDisplayOperation) { + return + } + const operationColumn = { + title: '鎿嶄綔', + dataIndex: 'action', + align: 'center', + fixed: 'right', + width: 200, + scopedSlots: { customRender: 'action' } + } + this.columns = [...this.columns, operationColumn] + this.loadData(1) }, computed: { - importExcelUrl: function(){ - return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; - }, + importExcelUrl: function() { + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}` + } }, methods: { - initDictConfig(){ - }, - getSuperFieldList(){ - let fieldList=[]; - fieldList.push({type:'string',value:'orderNum',text:'宸ュ崟鍙�',dictCode:''}) - fieldList.push({type:'string',value:'equipmentId',text:'璁惧ID',dictCode:''}) - fieldList.push({type:'string',value:'standardId',text:'鏍囧噯ID',dictCode:''}) - fieldList.push({type:'date',value:'inspectionDate',text:'鐐规鏃ユ湡'}) - fieldList.push({type:'date',value:'operateTime',text:'鐐规鏃堕棿'}) - fieldList.push({type:'string',value:'operator',text:'鐐规浜�',dictCode:''}) - fieldList.push({type:'date',value:'expirationTime',text:'鐐规杩囨湡鏃堕棿'}) - fieldList.push({type:'string',value:'creationMethod',text:'鍒涘缓鏂瑰紡',dictCode:''}) - fieldList.push({type:'string',value:'inspectionStatus',text:'鐐规鐘舵��',dictCode:''}) - fieldList.push({type:'string',value:'confirmUser',text:'璁惧绠$悊鍛樼‘璁�',dictCode:''}) - fieldList.push({type:'date',value:'confirmTime',text:'纭鏃堕棿'}) - fieldList.push({type:'string',value:'remark',text:'澶囨敞',dictCode:''}) - fieldList.push({type:'string',value:'imageFiles',text:'鐓х墖鏂囦欢ids;id浠ラ�楀彿鍒嗛殧',dictCode:''}) - this.superFieldList = fieldList + initDictConfig() { }, //璇︽儏 handleDetail: function(record) { - this.$refs.modalFormXq.edit(record); - this.$refs.modalFormXq.title = "璇︽儏"; - this.$refs.modalFormXq.disableSubmit = true; + this.selectInspectionOrderXqData = Object.assign({}, record) + this.$refs.modalFormXq.visible = true + this.$refs.modalFormXq.title = '璇︽儏' + this.$refs.modalFormXq.disableSubmit = true + this.$refs.modalFormXq.getAllApproveData(record) + this.$refs.modalFormXq.getBasicInformation({ ...record, dataId: record.id }) }, handleInspection(id) { if (!this.url.receiveInspectionOrder) { - this.$message.error("璇疯缃畊rl.receiveInspectionOrder!") + this.$message.error('璇疯缃畊rl.receiveInspectionOrder!') return } - var that = this; + var that = this getAction(that.url.receiveInspectionOrder, { id: id }).then((res) => { if (res.success) { that.$notification.success({ message: '娑堟伅', description: res.message - }); - that.loadData(); + }) + that.loadData() } else { // that.$message.warning(res.message); that.$notification.warning({ message: '娑堟伅', description: res.message - }); + }) } - }); + }) }, - handleOrReceive(id){ + handleOrReceive(id) { if (!this.url.cancelInspectionOrder) { - this.$message.error("璇疯缃畊rl.cancelInspectionOrder!") + this.$message.error('璇疯缃畊rl.cancelInspectionOrder!') return } - var that = this; + var that = this getAction(that.url.cancelInspectionOrder, { id: id }).then((res) => { if (res.success) { that.$notification.success({ message: '娑堟伅', description: res.message - }); - that.loadData(); + }) + that.loadData() } else { // that.$message.warning(res.message); that.$notification.warning({ message: '娑堟伅', description: res.message - }); + }) } - }); + }) }, - batchZf(type){ + batchZf(type) { if (this.selectedRowKeys.length <= 0) { this.$notification.warning({ - message:'娑堟伅', - description:"璇烽�夋嫨涓�鏉¤褰�" - }); + message: '娑堟伅', + description: '璇烽�夋嫨涓�鏉¤褰�' + }) } else { - var ids = ""; + var ids = '' for (var a = 0; a < this.selectedRowKeys.length; a++) { - ids += this.selectedRowKeys[a] + ","; + ids += this.selectedRowKeys[a] + ',' } - var that = this; + var that = this this.$confirm({ - title: "纭浣滃簾", - content: "鏄惁浣滃簾閫変腑鏁版嵁锛屽彧鏈夊緟鐐规鐘舵�佺殑鏁版嵁鎵嶅彲浣滃簾鎴愬姛?", - onOk: function () { - that.loading = true; - getAction(that.url.cancelOrReceive, {ids: ids,type:type}).then((res) => { + title: '纭浣滃簾', + content: '鏄惁浣滃簾閫変腑鏁版嵁锛屽彧鏈夊緟鐐规鐘舵�佺殑鏁版嵁鎵嶅彲浣滃簾鎴愬姛?', + onOk: function() { + that.loading = true + getAction(that.url.cancelOrReceive, { ids: ids, type: type }).then((res) => { if (res.success) { that.$notification.success({ - message:'娑堟伅', - description:res.message - }); - that.loadData(); - that.onClearSelected(); + message: '娑堟伅', + description: res.message + }) + that.loadData() + that.onClearSelected() } else { // that.$message.warning(res.message); that.$notification.warning({ - message:'娑堟伅', - description:res.message - }); + message: '娑堟伅', + description: res.message + }) } }).finally(() => { - that.loading = false; - }); + that.loading = false + }) } - }); + }) } }, - batchLq(type){ + batchLq(type) { if (this.selectedRowKeys.length <= 0) { this.$notification.warning({ - message:'娑堟伅', - description:"璇烽�夋嫨涓�鏉¤褰�" - }); + message: '娑堟伅', + description: '璇烽�夋嫨涓�鏉¤褰�' + }) } else { - var ids = ""; + var ids = '' for (var a = 0; a < this.selectedRowKeys.length; a++) { - ids += this.selectedRowKeys[a] + ","; + ids += this.selectedRowKeys[a] + ',' } - var that = this; + var that = this this.$confirm({ - title: "纭棰嗗彇", - content: "鏄惁棰嗗彇閫変腑鏁版嵁锛屽彧鏈夊緟鐐规鐘舵�佺殑鏁版嵁鎵嶅彲棰嗗彇鎴愬姛?", - onOk: function () { - that.loading = true; - getAction(that.url.cancelOrReceive, {ids: ids,type:type}).then((res) => { + title: '纭棰嗗彇', + content: '鏄惁棰嗗彇閫変腑鏁版嵁锛屽彧鏈夊緟鐐规鐘舵�佺殑鏁版嵁鎵嶅彲棰嗗彇鎴愬姛?', + onOk: function() { + that.loading = true + getAction(that.url.cancelOrReceive, { ids: ids, type: type }).then((res) => { if (res.success) { that.$notification.success({ - message:'娑堟伅', - description:res.message - }); - that.loadData(); - that.onClearSelected(); + message: '娑堟伅', + description: res.message + }) + that.loadData() + that.onClearSelected() } else { // that.$message.warning(res.message); that.$notification.warning({ - message:'娑堟伅', - description:res.message - }); + message: '娑堟伅', + description: res.message + }) } }).finally(() => { - that.loading = false; - }); + that.loading = false + }) } - }); + }) } }, + onInspectionDateChange: function(value, dateString) { + this.queryParam.inspectionDateBegin = dateString[0] + this.queryParam.inspectionDateEnd = dateString[1] + }, } } </script> -- Gitblit v1.9.3