From 9bd6077599a64a95e0fa5e812d9dc69409bc9405 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Wed, 3 Jun 2026 15:01:16 +0800 Subject: [PATCH 1/2] =?UTF-8?q?feat(wms/report):=20=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E6=8A=A5=E8=A1=A8=E5=AF=BC=E5=87=BA?= =?UTF-8?q?=E5=88=97=E9=85=8D=E7=BD=AE=E7=BC=93=E5=AD=98=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在入库报表页面中新增导出列配置的本地缓存功能,用户自定义的列顺序将被保存至localStorage,避免重复配置。调整前,每次打开自定义导出弹窗均需重新选择列;调整后,自动读取上次保存的配置,提升用户体验。 --- klp-ui/src/views/wms/report/receive.vue | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/klp-ui/src/views/wms/report/receive.vue b/klp-ui/src/views/wms/report/receive.vue index 0b901cd3..fc538522 100644 --- a/klp-ui/src/views/wms/report/receive.vue +++ b/klp-ui/src/views/wms/report/receive.vue @@ -391,12 +391,28 @@ export default { openCustomExport() { getExportColumns().then(res => { this.exportColumns = res.data + // 读缓存:上次保存的列顺序 + const cached = localStorage.getItem('custom-export-columns-coil-report-receive') + if (cached) { + try { + const arr = JSON.parse(cached) + if (Array.isArray(arr) && arr.length) { + this.selectedColumns = [...arr] + this.orderedColumns = [...arr] + this.customExportVisible = true + return + } + } catch (e) { /* ignore */ } + } this.selectedColumns = [] + this.orderedColumns = [] this.customExportVisible = true }) }, // 执行自定义导出(按 orderedColumns 顺序) doCustomExport() { + // 缓存当前配置 + localStorage.setItem('custom-export-columns-coil-report-receive', JSON.stringify(this.orderedColumns)) this.customExportVisible = false this.download('wms/materialCoil/exportCustomOrdered', { coilIds: this.coilIds, From c34fc1e477df33dec24120fd9253b48974c53f72 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Wed, 3 Jun 2026 15:06:25 +0800 Subject: [PATCH 2/2] =?UTF-8?q?fix(wms/coil):=20=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=E6=93=8D=E4=BD=9C=E7=B1=BB=E5=9E=8B=E6=A0=A1=E9=AA=8C=E9=80=BB?= =?UTF-8?q?=E8=BE=91=EF=BC=8C=E5=A2=9E=E5=8A=A0=E5=AF=B9=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?505=E7=9A=84=E6=8E=92=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在钢卷操作校验逻辑中,原代码仅排除了操作类型501(入库)对子卷操作类型的校验。调整后,增加对操作类型505(出库)的排除,确保在入库和出库操作中,子卷的操作类型字段不会因非空而被错误校验,避免因校验不匹配导致的业务异常。 --- .../java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java index 012aeefe..90b56d80 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsMaterialCoilServiceImpl.java @@ -5000,7 +5000,7 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { if (childCoilBo.getActualWarehouseId() != null) { validateActualWarehouseForAssign(childCoilBo.getActualWarehouseId(), null); } - if (pendingAction.getActionType() != 501 && childCoilBo.getActionType() != null) { + if (pendingAction.getActionType() != 501 && pendingAction.getActionType() != 505 && childCoilBo.getActionType() != null) { // 校验子卷净重不超过母卷 if (childCoilBo.getNetWeight() != null && parentCoil.getNetWeight() != null) { if (childCoilBo.getNetWeight().compareTo(parentCoil.getNetWeight()) > 0) { @@ -5136,7 +5136,7 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { .map(WmsMaterialCoil::getCurrentCoilNo) .collect(Collectors.toList()); - if (pendingAction.getActionType() != 501) { + if (pendingAction.getActionType() != 501 && pendingAction.getActionType() != 505) { // 校验所有子卷总重不超过母卷净重 if (parentCoil.getNetWeight() != null) { BigDecimal totalChildWeight = childCoils.stream()