From ac4341ea6b66ae02427d39d35f41d42d78b2eb2e Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期五, 14 二月 2025 10:08:32 +0800 Subject: [PATCH] # --- zy-asrs-admin/src/components/orderDetl/edit.vue | 92 +++++++++++++++++++++++++++++++++++---------- 1 files changed, 71 insertions(+), 21 deletions(-) diff --git a/zy-asrs-admin/src/components/orderDetl/edit.vue b/zy-asrs-admin/src/components/orderDetl/edit.vue index 3e458f4..291aafc 100644 --- a/zy-asrs-admin/src/components/orderDetl/edit.vue +++ b/zy-asrs-admin/src/components/orderDetl/edit.vue @@ -6,6 +6,7 @@ import { logout } from '@/config.js'; import { formatMessage } from '@/utils/localeUtils.js'; import useTableSearch from '@/utils/tableUtils.jsx'; +import { debounce } from 'lodash-es'; const context = getCurrentInstance()?.appContext.config.globalProperties; const router = useRouter(); @@ -15,6 +16,7 @@ let tableData = ref([]); let deleteDetlId = ref([]); let orderId = ref(null); +let isAdd = ref(false); getColumns(); const { @@ -27,7 +29,7 @@ columns: [], }); -state.columns = [ +let defaultColumns = [ { title: '#', dataIndex: '_id', @@ -35,13 +37,13 @@ ellipsis: true, }, { - title: formatMessage('db.man_loc_detl.matnr', '鐗╂枡鍙�'), + title: formatMessage('db.man_loc_detl.matnr', '鍟嗗搧缂栧彿'), dataIndex: 'matnr', width: 140, ellipsis: true, }, { - title: formatMessage('db.man_loc_detl.maktx', '鐗╂枡鍚�'), + title: formatMessage('db.man_loc_detl.maktx', '鍟嗗搧鍚嶇О'), dataIndex: 'maktx', width: 140, ellipsis: true, @@ -60,13 +62,27 @@ ellipsis: true, editable: true, }, - { - title: formatMessage('db.man_loc_detl.memo', '澶囨敞'), - dataIndex: 'memo', - width: 140, - ellipsis: true, - editable: true, - }, + // { + // title: formatMessage('db.man_loc_detl.qty', '宸插畬鎴愭暟閲�'), + // dataIndex: 'qty', + // width: 140, + // ellipsis: true, + // editable: true, + // }, + // { + // title: formatMessage('db.man_loc_detl.workQty', '浣滀笟涓暟閲�'), + // dataIndex: 'workQty', + // width: 140, + // ellipsis: true, + // editable: true, + // }, + // { + // title: formatMessage('db.man_loc_detl.memo', '澶囨敞'), + // dataIndex: 'memo', + // width: 140, + // ellipsis: true, + // editable: true, + // }, ]; const fieldList = []; @@ -76,9 +92,27 @@ fieldType: 1 }) let fieldResult = fieldResp.data; - let tmp = state.columns; + let tmp = defaultColumns; if (fieldResult.code == 200) { let data = fieldResult.data; + + if (!isAdd.value) { + tmp.push({ + title: formatMessage('db.man_loc_detl.qty', '宸插畬鎴愭暟閲�'), + dataIndex: 'qty', + width: 140, + ellipsis: true, + editable: true, + }) + + tmp.push({ + title: formatMessage('db.man_loc_detl.workQty', '浣滀笟涓暟閲�'), + dataIndex: 'workQty', + width: 140, + ellipsis: true, + editable: true, + }) + } data.forEach((item) => { tmp.push({ @@ -91,6 +125,14 @@ }) fieldList.push(item.name); + }) + + tmp.push({ + title: formatMessage('db.man_loc_detl.memo', '澶囨敞'), + dataIndex: 'memo', + width: 140, + ellipsis: true, + editable: true, }) tmp.push({ @@ -113,6 +155,7 @@ const openAddDetl = ref(false); const matChecked = ref([]); const matQueryList = ref(null); +const matFetching = ref(false); const matSelectList = ref([]); const addDetl = () => { openAddDetl.value = true; @@ -128,6 +171,8 @@ maktx: item.data.maktx, batch: '', anfme: 0, + qty: 0, + workQty: 0, memo: '' }; fieldList.forEach((field) => { @@ -147,9 +192,9 @@ matChecked.value = []; } -const handleSearch = val => { +const handleSearch = debounce(val => { matQuery(val); -} +}, 600) const handleSelect = (value, option) => { let flag = true; @@ -177,9 +222,10 @@ matQuery(null); function matQuery(condition) { + matFetching.value = true; post('/api/mat/page', { current: 1, - pageSize: 100, + pageSize: 10, condition: condition }).then((resp) => { let result = resp.data; @@ -187,11 +233,12 @@ result.data.records.forEach((item) => { tmp.push({ value: item.matnr, - label: item.matnr, + label: item.matnr + '_' + item.maktx, data: item }) }) matQueryList.value = tmp; + matFetching.value = false; }) } @@ -217,8 +264,9 @@ } watch(orderId, (newVal, oldVal) => { - if(newVal == undefined || newVal == null) { + if (newVal == undefined || newVal == null) { tableData.value = []; + getColumns() return; } @@ -234,6 +282,8 @@ maktx: item.mat$.maktx, batch: item.batch, anfme: item.anfme, + qty: item.qty, + workQty: item.workQty, memo: item.memo }; fieldList.forEach((field) => { @@ -243,13 +293,14 @@ }) tableData.value = tmp; }) - + }) defineExpose({ tableData, orderId, deleteDetlId, + isAdd, }) </script> @@ -276,9 +327,7 @@ </template> <template v-if="column.editable"> - <div> - <a-input v-model:value="record[column.dataIndex]" /> - </div> + <a-input v-model:value="record[column.dataIndex]" /> </template> </template> </a-table> @@ -287,7 +336,8 @@ @ok="handleAddDetlOk" @cancel="handleAddDetlCancel"> <a-select v-model:value="matChecked" :options="matQueryList" mode="multiple" :placeholder="formatMessage('component.orderDetl.edit.selectMat', '璇烽�夋嫨鐗╂枡')" @search="handleSearch" - @select="handleSelect" @deselect="handleDeselect"></a-select> + :filter-option="false" :not-found-content="matFetching ? undefined : null" @select="handleSelect" + @deselect="handleDeselect"></a-select> </a-modal> </div> </template> -- Gitblit v1.9.1