From ae04b97ebcf944137619ab4ee15236c5bb070219 Mon Sep 17 00:00:00 2001 From: Houjie <714924425@qq.com> Date: 星期一, 26 五月 2025 10:32:26 +0800 Subject: [PATCH] 待办/已办 新增 工具报损 盘点流程 --- src/views/flowable/workflow/FlowCompleted.vue | 267 +++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 199 insertions(+), 68 deletions(-) diff --git a/src/views/flowable/workflow/FlowCompleted.vue b/src/views/flowable/workflow/FlowCompleted.vue index 2afd4c8..e592092 100644 --- a/src/views/flowable/workflow/FlowCompleted.vue +++ b/src/views/flowable/workflow/FlowCompleted.vue @@ -10,29 +10,26 @@ <a-form layout="inline" @keyup.enter.native="searchQuery"> <a-row :gutter="24"> <a-col :xl="6" :lg="7" :md="8" :sm="24"> - <a-form-item label="娴佺▼鍚嶇О"> - <a-input placeholder="璇疯緭鍏ユ祦绋嬪悕绉�" v-model="queryParam.deviceNo"></a-input> + <a-form-item label="娴佺▼鍒嗙被"> + <j-dict-select-tag placeholder="璇烽�夋嫨娴佺▼鍒嗙被" v-model="queryParam.category" + dictCode="flow_type"></j-dict-select-tag> </a-form-item> </a-col> - <template v-if="toggleSearchStatus"> - <a-col :xl="6" :lg="7" :md="8" :sm="24"> - <a-form-item label="娴佺▼鍒嗙被"> - <j-dict-select-tag v-model="queryParam.departId" placeholder="璇烽�夋嫨娴佺▼鍒嗙被" dictCode="sys_department,depart_name,depart_id"/> - </a-form-item> - </a-col> - <a-col :xl="10" :lg="11" :md="12" :sm="24"> - <a-form-item label="鎿嶄綔鏃堕棿"> - <j-date :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" placeholder="璇烽�夋嫨寮�濮嬫椂闂�" class="query-group-cust" v-model="queryParam.startTime"></j-date> - <span class="query-group-split-cust"></span> - <j-date :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" placeholder="璇烽�夋嫨缁撴潫鏃堕棿" class="query-group-cust" v-model="queryParam.endTime"></j-date> - </a-form-item> - </a-col> - </template> + <a-col :xl="10" :lg="11" :md="12" :sm="24"> + <a-form-item label="鎿嶄綔鏃堕棿"> + <j-date :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" placeholder="璇烽�夋嫨寮�濮嬫椂闂�" + class="query-group-cust" + v-model="queryParam.startTime"></j-date> + <span class="query-group-split-cust"></span> + <j-date :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" placeholder="璇烽�夋嫨缁撴潫鏃堕棿" + class="query-group-cust" + v-model="queryParam.endTime"></j-date> + </a-form-item> + </a-col> <a-col :xl="6" :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 @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button> </span> </a-col> </a-row> @@ -56,26 +53,6 @@ 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"> - <span v-if="!text" style="font-size: 12px;font-style: italic;">鏃犲浘鐗�</span> - <img v-else :src="getImgView(text)" 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 @click="handelDetial(record,text)">璇︽儏</a> </span> @@ -83,8 +60,23 @@ </a-table> </div> - <FlowNcZpi ref="modalFormApproval" :selectShenpiData="selectShenpiData"></FlowNcZpi> + <AssignFileStreamXq ref="modalFormApproval" :selectShenpiData="selectShenpiData"></AssignFileStreamXq> + <DispatchFileXq ref="modalFormDispatchFileXq" :selectShenpiData="selectDispatchFileXqData"></DispatchFileXq> + + <inspection-order-handle ref="modalFormInspectionOrderXq" :selectShenpiData="selectInspectionOrderXqData" /> + + <week-maintenance-approval-modal ref="weekMaintenanceApprovalModal" :selectShenpiData="selectWeekMaintenanceData" /> + + <repair-order-approval-modal ref="repairOrderApprovalModal" :selectShenpiData="selectRepairOrderData" /> + + <out-bound-order-handle ref="outBoundOrderHandle" :selectShenpiData="selectOutBoundOrderData" /> + <stocktaking-bound-handle ref="stocktakingBoundHandle" :selectShenpiData="selectStocktakingBoundOrderData" + @searchReset="searchReset"></stocktaking-bound-handle> + + + <loss-bound-handle ref="lossBoundHandle" :selectShenpiData="selectLossBoundOrderData" + @searchReset="searchReset"></loss-bound-handle> </a-card> </template> @@ -94,59 +86,79 @@ import { mixinDevice } from '@/utils/mixin' import { JeecgListMixin } from '@/mixins/JeecgListMixin' import JDictSelectTag from '@/components/dict/JDictSelectTag.vue' -import FlowNcZpi from '@views/flowable/workflow/FlowNcZpi.vue' +import AssignFileStreamXq from '@views/flowable/workflow/assignFileStream/AssignFileStreamXq.vue' +import DispatchFileXq from '@views/flowable/workflow/dispatchFile/DispatchFileXq.vue' +import InspectionOrderHandle from './InspectionOrder/InspectionOrderHandle' +import WeekMaintenanceApprovalModal from './weekMaintenance/WeekMaintenanceApprovalModal' +import RepairOrderApprovalModal from './repairOrder/RepairOrderApprovalModal' +import OutBoundOrderHandle from '@views/flowable/workflow/outBoundOrder/OutBoundOrderHandle.vue' +import lossBoundHandle from '@views/flowable/workflow/lossBound/lossBoundHandle.vue' +import stocktakingBoundHandle from '@views/flowable/workflow/stocktakingBound/stocktakingBoundHandle.vue' export default { name: 'NcDeviceCharactersList', - mixins:[JeecgListMixin, mixinDevice], + mixins: [JeecgListMixin, mixinDevice], components: { - FlowNcZpi, + stocktakingBoundHandle, + lossBoundHandle, + DispatchFileXq, + AssignFileStreamXq: AssignFileStreamXq, + RepairOrderApprovalModal, + WeekMaintenanceApprovalModal, + InspectionOrderHandle, JDictSelectTag, + OutBoundOrderHandle }, - data () { + data() { return { - description: '璁惧鐗规畩瀛楃绠$悊椤甸潰', + description: '宸ヤ綔娴�-宸插姙', // 琛ㄥご columns: [ { title: '搴忓彿', dataIndex: '', - key:'rowIndex', - width:200, - align:"center", - customRender:function (t,r,index) { - return parseInt(index)+1; + key: 'rowIndex', + width: 200, + align: 'center', + customRender: function(t, r, index) { + return parseInt(index) + 1 } }, { + title: '娴佺▼鍒嗙被', + align: 'center', + dataIndex: 'category_dictText', + width: 200 + }, + { title: '娴佺▼鍚嶇О', - align: "center", + align: 'center', dataIndex: 'procDefName', - width: 200, + width: 200 }, { title: '娴佺▼涓氬姟绠�瑕佹弿杩�', - align: "center", + align: 'center', dataIndex: 'description', - width:300 + width: 300 }, { title: '娴佺▼鍙戣捣浜哄悕绉�', - align: "center", + align: 'center', dataIndex: 'startUserName', - width: 250, + width: 250 }, { title: '浠诲姟鍚嶇О', - align: "center", + align: 'center', dataIndex: 'taskName', - width:250 + width: 250 }, { title: '鎿嶄綔鏃堕棿', - align: "center", - dataIndex: 'createTime', - width:300 + align: 'center', + dataIndex: 'finishTime', + width: 300 }, { title: '鎿嶄綔', @@ -158,34 +170,63 @@ } ], url: { - list: "/nc/assign/flow/finishedList", + list: '/assign/flow/finishedList' }, - dictOptions:{}, + dictOptions: {}, selectShenpiData: {}, + selectDispatchFileXqData: {}, + selectWeekMaintenanceData: {}, + selectInspectionOrderXqData: {}, + selectRepairOrderData: {}, + selectOutBoundOrderData: {}, + selectLossBoundOrderData: {}, + selectStocktakingBoundOrderData: {} } }, created() { }, computed: { - importExcelUrl: function(){ - return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; - }, + importExcelUrl: function() { + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}` + } }, methods: { handelDetial(item, index) { console.log('鐐瑰嚮浜嗚鎯�') console.log('item----->', item) console.log('index----->', index) - let approcesstype = this.splitAprocessType(item.description) + let approcesstype = this.splitAprocessType(item.category) console.log('approcesstype--->', approcesstype) switch (approcesstype) { - case '鎸囨淳NC鏂囨。鍒拌澶囨祦绋�': + case 'drApproval': this.handDrDetial(item) break + case 'ggApproval': + this.handDispatchFileDetial(item) + break + case 'sbdjApproval': + this.handInspectionOrder(item) + break + case 'WEEK_MAINTENANCE': + this.handleWeekMaintenance(item) + break + case 'eam_repair': + this.handleRepairOrder(item) + break + case 'toolOutStorageApproval': + this.handleToolOutStorageApproval(item) + break + case 'toolsStocktakingBound': + this.handleToolStocktakingApproval(item) + break + case 'toolsLossApproval': + this.handleToolLossApproval(item) + break default: - alert('娌℃壘鍒拌瀹℃壒') + alert('娌℃壘鍒拌娴佺▼') } }, + splitAprocessType(title) { let parts = title.split('锛�') // 娉ㄦ剰鍐掑彿鏄叏瑙掑瓧绗︼紝浣跨敤瀵瑰簲鐨勫瓧杩涜鍒嗗壊 let result = parts[0] @@ -193,9 +234,99 @@ }, handDrDetial(item) { this.selectShenpiData = item + this.selectShenpiData.assignee_dictText = item.todoUsers_dictText + this.selectShenpiData.procInstId = item.procInsId + this.selectShenpiData.title = item.description this.$refs.modalFormApproval.clearTableSource() this.$refs.modalFormApproval.getAllApproveData(item) }, + handDispatchFileDetial(item) { + console.log('item----->', item) + this.selectDispatchFileXqData = item + this.selectDispatchFileXqData.assignee_dictText = item.todoUsers_dictText + this.selectDispatchFileXqData.procInstId = item.procInsId + this.selectDispatchFileXqData.processInstanceId = item.procInsId + this.selectDispatchFileXqData.title = item.description + this.$refs.modalFormDispatchFileXq.clearTableSource() + this.$refs.modalFormDispatchFileXq.getAllApproveData(item) + }, + handleWeekMaintenance(record) { + this.selectWeekMaintenanceData = Object.assign({}, record) + this.$refs.weekMaintenanceApprovalModal.handleDetail(record) + this.$refs.weekMaintenanceApprovalModal.title = '璇︽儏' + this.$refs.weekMaintenanceApprovalModal.disableSubmit = true + }, + + handInspectionOrder(record) { + console.log('record----->', record) + this.selectInspectionOrderXqData = Object.assign({}, record) + const { todoUsers_dictText, procInsId, description, taskName } = this.selectInspectionOrderXqData + this.selectInspectionOrderXqData.assignee_dictText = todoUsers_dictText + this.selectInspectionOrderXqData.procInstId = procInsId + this.selectInspectionOrderXqData.processInstanceId = procInsId + this.selectInspectionOrderXqData.title = description + this.$refs.modalFormInspectionOrderXq.visible = true + this.$refs.modalFormInspectionOrderXq.title = taskName + this.$refs.modalFormInspectionOrderXq.disableSubmit = true + this.$refs.modalFormInspectionOrderXq.getAllApproveData({ + ...record, + procInstId: procInsId, + processInstanceId: procInsId + }) + this.$refs.modalFormInspectionOrderXq.getBasicInformation(record) + }, + + /** + * 鐐瑰嚮璁惧缁翠慨鍒嗙被娴佺▼璇︽儏鏃惰Е鍙� + * @param record + */ + handleRepairOrder(record) { + this.selectRepairOrderData = Object.assign({}, record) + const { procInsId, taskName } = this.selectRepairOrderData + this.$refs.repairOrderApprovalModal.visible = true + this.$refs.repairOrderApprovalModal.disableSubmit = true + this.$refs.repairOrderApprovalModal.title = taskName + this.$refs.modalFormInspectionOrderXq.getAllApproveData({ + ...record, + procInstId: procInsId, + processInstanceId: procInsId + }) + this.$refs.repairOrderApprovalModal.getBasicInformation(record) + }, + + handleToolOutStorageApproval(item) { + this.selectOutBoundOrderData = Object.assign({}, item) + item.procInstId = item.procInsId + item.processInstanceId = item.procInsId + this.selectOutBoundOrderData.assignee_dictText = item.todoUsers_dictText + this.$refs.outBoundOrderHandle.auditVisible = false + this.$refs.outBoundOrderHandle.clearTableSource() + this.$refs.outBoundOrderHandle.getAllApproveData(item) + }, + + handleToolStocktakingApproval(item) { + + this.selectStocktakingBoundOrderData = Object.assign({}, item) + item.procInstId = item.procInsId + item.processInstanceId = item.procInsId + this.selectStocktakingBoundOrderData.assignee_dictText = item.todoUsers_dictText + this.$refs.stocktakingBoundHandle.auditVisible = false + this.$refs.stocktakingBoundHandle.disableSubmit = true + this.$refs.stocktakingBoundHandle.clearTableSource() + this.$refs.stocktakingBoundHandle.getAllApproveData(item) + + }, + handleToolLossApproval(item) { + this.selectLossBoundOrderData = Object.assign({}, item) + item.procInstId = item.procInsId + item.processInstanceId = item.procInsId + this.selectStocktakingBoundOrderData.assignee_dictText = item.todoUsers_dictText + this.$refs.lossBoundHandle.auditVisible = false + this.$refs.lossBoundHandle.disableSubmit = true + this.$refs.lossBoundHandle.clearTableSource() + this.$refs.lossBoundHandle.getAllApproveData(item) + + } } } </script> -- Gitblit v1.9.3