From 010fe0e7a1b438c22c089a8de655029a497de84d Mon Sep 17 00:00:00 2001 From: cuilei <ray_tsu1@163.com> Date: 星期二, 26 八月 2025 15:06:07 +0800 Subject: [PATCH] 齐套性检查、上下料查询页面 --- src/views/mes/MesProductionWorkOrderListView.vue | 8 + src/views/mes/MesKittingCompletenessCheckList.vue | 104 ++++++++++++-------- src/views/mes/MesMaterialLoadingListView.vue | 150 ++++++++++++++++------------- 3 files changed, 147 insertions(+), 115 deletions(-) diff --git a/src/views/mes/MesKittingCompletenessCheckList.vue b/src/views/mes/MesKittingCompletenessCheckList.vue index 13e891c..d151ac0 100644 --- a/src/views/mes/MesKittingCompletenessCheckList.vue +++ b/src/views/mes/MesKittingCompletenessCheckList.vue @@ -5,36 +5,49 @@ <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="浜х嚎"> + <j-tree-select dict="base_factory,factory_name,id" pid-field="parent_id" + v-model="queryParam.factoryId" style="width: 100%"></j-tree-select> +<!-- <j-search-select-tag placeholder="璇烽�夋嫨浜х嚎" v-model="queryParam.factoryId" dict="base_factory,factory_name,id,del_flag=0"></j-search-select-tag>--> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> <a-form-item label="宸ュ崟鍙�"> - <j-search-select-tag placeholder="璇疯緭鍏ュ伐宸ュ崟鍙�" v-model="queryParam.workOrderId" dict="mes_production_work_order,work_order_code,id"></j-search-select-tag> + <j-search-select-tag placeholder="璇疯緭鍏ュ伐宸ュ崟鍙�" v-model="queryParam.workOrderId" dict="mes_production_work_order,work_order_code,id,del_flag=0 and work_order_status != 'NEW'"></j-search-select-tag> </a-form-item> </a-col> <a-col :xl="6" :lg="7" :md="8" :sm="24"> <a-form-item label="鐗╂枡缂栫爜"> - <j-input dictCode="work_order_status" placeholder="璇疯緭鍏ョ墿鏂欑紪鐮�" v-model="queryParam.materialNumber"></j-input> + <a-input dictCode="work_order_status" placeholder="璇疯緭鍏ョ墿鏂欑紪鐮�" v-model="queryParam.materialNumber"></a-input> </a-form-item> </a-col> - <a-col :xl="6" :lg="7" :md="8" :sm="24"> - <a-form-item label="鐗╂枡鍚嶇О"> - <j-input dictCode="work_order_status" placeholder="璇疯緭鍏ョ墿鏂欏悕绉�" v-model="queryParam.materialName"></j-input> - </a-form-item> - </a-col> - <a-col :xl="6" :lg="7" :md="8" :sm="24"> - <a-form-item label="鏄惁榻愬"> - <a-select - placeholder="璇烽�夋嫨鏄惁榻愬" - v-model="queryParam.checkFlag" - allowClear - > - <a-select-option value="鏄�">鏄�</a-select-option> - <a-select-option value="鍚�">鍚�</a-select-option> - </a-select> - </a-form-item> - </a-col> + <template v-if="toggleSearchStatus"> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鐗╂枡鍚嶇О"> + <a-input dictCode="work_order_status" placeholder="璇疯緭鍏ョ墿鏂欏悕绉�" v-model="queryParam.materialName"></a-input> + </a-form-item> + </a-col> + <a-col :xl="6" :lg="7" :md="8" :sm="24"> + <a-form-item label="鏄惁榻愬"> + <a-select + placeholder="璇烽�夋嫨鏄惁榻愬" + v-model="queryParam.checkFlag" + allowClear + > + <a-select-option value="1">鏄�</a-select-option> + <a-select-option value="0">鍚�</a-select-option> + </a-select> + </a-form-item> + </a-col> + </template> <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-button type="info" @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> </span> </a-col> </a-row> @@ -43,21 +56,21 @@ <!-- 鏌ヨ鍖哄煙-END --> <!-- 鎿嶄綔鎸夐挳鍖哄煙 --> - <div class="table-operator"> - <a-dropdown v-if="selectedRowKeys.length > 0"> - <a-menu slot="overlay"> - <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>鍒犻櫎</a-menu-item> - </a-menu> - <a-button style="margin-left: 8px"> 鎵归噺鎿嶄綔 <a-icon type="down" /></a-button> - </a-dropdown> - </div> +<!-- <div class="table-operator">--> +<!-- <a-dropdown v-if="selectedRowKeys.length > 0">--> +<!-- <a-menu slot="overlay">--> +<!-- <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>鍒犻櫎</a-menu-item>--> +<!-- </a-menu>--> +<!-- <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>椤� - <a style="margin-left: 24px" @click="onClearSelected">娓呯┖</a> - </div> +<!-- <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>椤�--> +<!-- <a style="margin-left: 24px" @click="onClearSelected">娓呯┖</a>--> +<!-- </div>--> <a-table ref="table" @@ -69,7 +82,7 @@ :dataSource="dataSource" :pagination="ipagination" :loading="loading" - :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" + :rowSelection="null" class="j-table-force-nowrap" @change="handleTableChange"> @@ -110,6 +123,10 @@ </a-menu-item> </a-menu> </a-dropdown> + </span> + <span slot="checkFlag" slot-scope="text, record"> + <span v-if="text === '0'" style="color: red">鍚�</span> + <span v-if="text === '1'" style="color: green">鏄�</span> </span> </a-table> @@ -175,16 +192,17 @@ { title:'鏄惁榻愬', align:"center", - dataIndex: 'checkFlag' + dataIndex: 'checkFlag', + scopedSlots: { customRender: 'checkFlag' } }, - { - title: '鎿嶄綔', - dataIndex: 'action', - align:"center", - fixed:"right", - width:147, - scopedSlots: { customRender: 'action' } - } + // { + // title: '鎿嶄綔', + // dataIndex: 'action', + // align:"center", + // fixed:"right", + // width:147, + // scopedSlots: { customRender: 'action' } + // } ], url: { list: "/mes/mesKittingCompletenessCheck/list", diff --git a/src/views/mes/MesMaterialLoadingListView.vue b/src/views/mes/MesMaterialLoadingListView.vue index 8bedb56..11e42b9 100644 --- a/src/views/mes/MesMaterialLoadingListView.vue +++ b/src/views/mes/MesMaterialLoadingListView.vue @@ -1,9 +1,15 @@ <template> - <a-card :bordered="false" title="涓婁笅鏂欐煡璇�"> + <a-card :bordered="false"> <!-- 鏌ヨ鍖哄煙 --> <div class="table-page-search-wrapper"> <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="浜х嚎"> + <j-tree-select placeholder="璇烽�夋嫨浜х嚎" dict="base_factory,factory_name,id" pid-field="parent_id" + v-model="queryParam.factoryId" style="width: 100%"></j-tree-select> + </a-form-item> + </a-col> <a-col :xl="6" :lg="7" :md="8" :sm="24"> <a-form-item label="宸ュ崟鍙�"> <j-search-select-tag placeholder="璇疯緭鍏ュ伐宸ュ崟鍙�" v-model="queryParam.workOrderId" @@ -11,31 +17,38 @@ </a-form-item> </a-col> <a-col :xl="6" :lg="7" :md="8" :sm="24"> - <a-form-item label="璁惧ID"> - <j-input placeholder="璇疯緭鍏ヨ澶嘔D" v-model="queryParam.equipmentId"></j-input> + <a-form-item label="璁惧"> + <j-search-select-tag placeholder="璇烽�夋嫨璁惧" v-model="queryParam.equipmentId" + dict="eam_equipment,equipment_name,id,del_flag=0"></j-search-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-input dictCode="work_order_status" placeholder="璇疯緭鍏ョ墿鏂欑紪鐮�" - v-model="queryParam.materialNumber"></j-input> + <a-input dictCode="work_order_status" placeholder="璇疯緭鍏ョ墿鏂欑紪鐮�" + v-model="queryParam.materialNumber"></a-input> </a-form-item> </a-col> <a-col :xl="6" :lg="7" :md="8" :sm="24"> <a-form-item label="鐗╂枡鍚嶇О"> - <j-input dictCode="work_order_status" placeholder="璇疯緭鍏ョ墿鏂欏悕绉�" - v-model="queryParam.materialName"></j-input> + <a-input dictCode="work_order_status" placeholder="璇疯緭鍏ョ墿鏂欏悕绉�" + v-model="queryParam.materialName"></a-input> </a-form-item> </a-col> <a-col :xl="6" :lg="7" :md="8" :sm="24"> <a-form-item label="鎵规鍙�"> - <j-input placeholder="璇疯緭鍏ユ壒娆″彿" v-model="queryParam.batchNumber"></j-input> + <a-input placeholder="璇疯緭鍏ユ壒娆″彿" v-model="queryParam.batchNumber"></a-input> </a-form-item> </a-col> + </template> <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-button type="info" @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> </span> </a-col> </a-row> @@ -57,6 +70,7 @@ :pagination="ipagination" :loading="loading" :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange,type: 'radio'}" + :customRow="clickSelect" class="j-table-force-nowrap" @change="handleTableChange"> @@ -103,19 +117,16 @@ </div> <a-tabs v-model="activeKey" @change="handleChangeTabs"> <a-tab-pane tab="涓嬫枡" :key="refKeys[0]" :forceRender="true"> - <div style="display: flex; align-items: center; margin-bottom: 10px;"> - </div> - <j-vxe-table - keep-source + <a-table :ref="refKeys[0]" :loading="mesMaterialUnloading.loading" :columns="mesMaterialUnloading.columns" :dataSource="mesMaterialUnloading.dataSource" - :maxHeight="300" - :rowNumber="true" - :rowSelection="true" - :toolbar="false" - /> + :pagination="false" + :scroll="{ y: 300 }" + size="middle" + bordered> + </a-table> </a-tab-pane> </a-tabs> </a-spin> @@ -160,12 +171,12 @@ { title: '宸ュ崟鍙�', align: 'center', - dataIndex: 'workOrderId_dictText' + dataIndex: 'workOrderCode' }, { - title: '璁惧ID', + title: '璁惧', align: 'center', - dataIndex: 'equipmentId' + dataIndex: 'equipmentName' }, { title: '宸ュ簭缂栫爜', @@ -202,58 +213,48 @@ align: 'center', dataIndex: 'remainingQuantity' }, - { - title: '鎿嶄綔', - dataIndex: 'action', - align: 'center', - fixed: 'right', - width: 147, - scopedSlots: { customRender: 'action' } - } + // { + // title: '鎿嶄綔', + // dataIndex: 'action', + // align: 'center', + // fixed: 'right', + // width: 147, + // scopedSlots: { customRender: 'action' } + // } ], mesMaterialUnloading: { loading: false, dataSource: [], columns: [ - // { - // title: '涓婃枡', - // key: 'loadingId', - // type: JVXETypes.input, - // width: '200px', - // placeholder: '璇疯緭鍏�${title}', - // defaultValue: '' - // }, + { + title: '#', + dataIndex: '', + key: 'rowIndex', + width: 60, + align: 'center', + customRender: function(t, r, index) { + return parseInt(index) + 1 + } + }, { title: '鐗╂枡缂栫爜', - key: 'materialNumber', - type: JVXETypes.input, - width: '200px', - placeholder: '璇疯緭鍏�${title}', - defaultValue: '' + align: 'center', + dataIndex: 'materialNumber' }, { title: '鐗╂枡鍚嶇О', - key: 'materialName', - type: JVXETypes.input, - width: '200px', - placeholder: '璇疯緭鍏�${title}', - defaultValue: '' + align: 'center', + dataIndex: 'materialName' }, { title: '鎵规鍙�', - key: 'batchNumber', - type: JVXETypes.input, - width: '200px', - placeholder: '璇疯緭鍏�${title}', - defaultValue: '' + align: 'center', + dataIndex: 'batchNumber' }, { title: '鏁伴噺', - key: 'quantity', - type: JVXETypes.input, - width: '200px', - placeholder: '璇疯緭鍏�${title}', - defaultValue: '' + align: 'center', + dataIndex: 'quantity' } ] }, @@ -280,20 +281,31 @@ methods: { initDictConfig() { }, - async onSelectChange(selectedRowKeys) { - this.mesMaterialUnloading.loading = true - // 鍗曢�夋ā寮忎笅锛宻electedRowKeys 鏄暟缁勶紝浣嗛暱搴︽渶澶氫负1 - console.log('鐐瑰嚮浜�---->',selectedRowKeys[0]) - this.selectedRowKeys = selectedRowKeys - this.mesMaterialUnloading.dataSource=[] - // 鑾峰彇閫変腑琛岀殑瀹屾暣鏁版嵁 - if (selectedRowKeys.length > 0) { - const selectedId = selectedRowKeys[0] // 閫変腑琛岀殑id - const mesMaterialUnloading = await getAction(this.url.queryUnloadingByLoadingId, { 'loadingId': selectedId }) - this.mesMaterialUnloading.dataSource = mesMaterialUnloading.result - this.mesMaterialUnloading.loading = false + onSelectChange(selectedRowKeys, selectionRows) { + this.selectedRowKeys = selectedRowKeys; + this.selectionRows = selectionRows; + this.selectTabData(selectedRowKeys[0]) + }, + clickSelect(record) { + return { + on: { + click: () => { + this.selectedRowKeys = [record.id] + this.selectTabData(record.id) + } + } } }, + selectTabData(id) { + this.mesMaterialUnloading.loading = true + getAction(this.url.queryUnloadingByLoadingId, { 'loadingId': id }).then(res => { + if (res.success) { + this.mesMaterialUnloading.dataSource = res.result + } + }).finally(() => { + this.mesMaterialUnloading.loading = false + }) + }, getSuperFieldList() { let fieldList = [] fieldList.push({ type: 'int', value: 'delFlag', text: '鍒犻櫎鏍囪', dictCode: '' }) diff --git a/src/views/mes/MesProductionWorkOrderListView.vue b/src/views/mes/MesProductionWorkOrderListView.vue index 0f244cd..1ea82c7 100644 --- a/src/views/mes/MesProductionWorkOrderListView.vue +++ b/src/views/mes/MesProductionWorkOrderListView.vue @@ -179,6 +179,10 @@ :scroll="{ y: 300 }" size="middle" bordered> + <span slot="checkFlag" slot-scope="text, record"> + <span v-if="text === '0'" style="color: red">鍚�</span> + <span v-if="text === '1'" style="color: green">鏄�</span> + </span> </a-table> </a-tab-pane> </a-tabs> @@ -502,9 +506,7 @@ title: '鏄惁榻愬', align: 'center', dataIndex: 'checkFlag', - customRender: function(text) { - return text === '0' ? '鍚�' : text === '1' ? '鏄�' : '' - } + scopedSlots: { customRender: 'checkFlag' } } ] }, -- Gitblit v1.9.3