From e7452088703222b8e74b64058cb0ef09020d2200 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Tue, 19 May 2026 15:34:12 +0800 Subject: [PATCH 1/2] =?UTF-8?q?feat(wms):=20=E6=B7=BB=E5=8A=A0=E5=8E=86?= =?UTF-8?q?=E5=8F=B2=E9=92=A2=E5=8D=B7=E5=BE=85=E5=AE=8C=E6=88=90=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增查询历史钢卷待完成操作列表接口 - 在后端服务中添加按创建时间和扫描时间倒序排序 - 实现用户名到昵称的映射显示功能 - 创建新的stale.vue页面展示历史钢卷操作列表 - 添加完成和取消历史钢卷操作的功能按钮 - 集成字典标签显示操作类型和状态信息 --- klp-ui/src/api/wms/pendingAction.js | 9 ++ klp-ui/src/views/wms/todo/stale.vue | 85 +++++++++++++++++++ .../impl/WmsCoilPendingActionServiceImpl.java | 24 ++++++ 3 files changed, 118 insertions(+) create mode 100644 klp-ui/src/views/wms/todo/stale.vue diff --git a/klp-ui/src/api/wms/pendingAction.js b/klp-ui/src/api/wms/pendingAction.js index bd07b494..dd706eca 100644 --- a/klp-ui/src/api/wms/pendingAction.js +++ b/klp-ui/src/api/wms/pendingAction.js @@ -149,6 +149,15 @@ export function exportPendingAction(query) { }) } +// 查询历史钢卷待完成操作列表(dataType=0 & actionStatus != 2) +export function listStalePendingAction(query) { + return request({ + url: '/wms/coilPendingAction/staleList', + method: 'get', + params: query + }) +} + /** * 还原被删除的钢卷 */ diff --git a/klp-ui/src/views/wms/todo/stale.vue b/klp-ui/src/views/wms/todo/stale.vue new file mode 100644 index 00000000..a427b3c9 --- /dev/null +++ b/klp-ui/src/views/wms/todo/stale.vue @@ -0,0 +1,85 @@ + + + diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsCoilPendingActionServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsCoilPendingActionServiceImpl.java index e5c36445..a58e1c2c 100644 --- a/klp-wms/src/main/java/com/klp/service/impl/WmsCoilPendingActionServiceImpl.java +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsCoilPendingActionServiceImpl.java @@ -177,7 +177,31 @@ public class WmsCoilPendingActionServiceImpl implements IWmsCoilPendingActionSer QueryWrapper lqw = Wrappers.query(); lqw.ne("wcpa.action_status", 2); lqw.eq("wcpa.del_flag", 0); + lqw.orderByDesc("wcpa.create_time"); + lqw.orderByDesc("wcpa.scan_time"); Page result = baseMapper.selectStaleActionVoPagePlus(pageQuery.build(), lqw); + List records = result.getRecords(); + if (records != null && !records.isEmpty()) { + Set userNames = records.stream() + .flatMap(v -> java.util.stream.Stream.of(v.getCreateBy(), v.getOperatorName())) + .filter(StringUtils::isNotBlank) + .collect(Collectors.toSet()); + if (!userNames.isEmpty()) { + Map nickMap = userService.selectNickNameMapByUserNames(records.stream() + .flatMap(v -> java.util.stream.Stream.of(v.getCreateBy(), v.getOperatorName())) + .filter(StringUtils::isNotBlank) + .distinct() + .collect(Collectors.toList())); + records.forEach(item -> { + if (StringUtils.isNotBlank(item.getCreateBy())) { + item.setCreateByName(nickMap.getOrDefault(item.getCreateBy(), item.getCreateBy())); + } + if (StringUtils.isNotBlank(item.getOperatorName())) { + item.setOperatorByName(nickMap.getOrDefault(item.getOperatorName(), item.getOperatorName())); + } + }); + } + } return TableDataInfo.build(result); } From 4575b6f3425aa05b13d0e61b2eefd767949d2cf4 Mon Sep 17 00:00:00 2001 From: Joshi <3040996759@qq.com> Date: Tue, 19 May 2026 15:37:53 +0800 Subject: [PATCH 2/2] =?UTF-8?q?feat(wms):=20=E6=B7=BB=E5=8A=A0=E9=92=A2?= =?UTF-8?q?=E5=8D=B7=E6=93=8D=E4=BD=9C=E8=AE=B0=E5=BD=95=E5=AE=8C=E6=88=90?= =?UTF-8?q?=E5=9B=9E=E8=B0=83=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在批量或单个更新后统一处理返回结果 - 添加 actionId 验证逻辑以确保操作记录存在 - 集成 coilPendingActionService.completeAction 接口调用 - 实现更新成功后的操作记录状态同步 - 优化方法结构以支持操作完成后的后续处理 --- .../klp/service/impl/WmsMaterialCoilServiceImpl.java | 12 ++++++++++-- 1 file changed, 10 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 db48d116..2fa05f60 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 @@ -1344,17 +1344,25 @@ public class WmsMaterialCoilServiceImpl implements IWmsMaterialCoilService { @Override @Transactional(rollbackFor = Exception.class) public String updateByBo(WmsMaterialCoilBo bo, String qrcodeStepType) { + String result; // 判断是否批量更新 if (bo.getNewCoils() != null && !bo.getNewCoils().isEmpty()) { // 批量更新逻辑(分卷/合卷) - return updateByBatch(bo); // 分卷返回逗号分隔的ID,合卷返回单个ID + result = updateByBatch(bo); // 分卷返回逗号分隔的ID,合卷返回单个ID } else { // 单个更新逻辑,需要coilId if (bo.getCoilId() == null) { throw new RuntimeException("钢卷ID不能为空"); } - return updateBySingle(bo, qrcodeStepType); // 返回新钢卷ID字符串 + result = updateBySingle(bo, qrcodeStepType); // 返回新钢卷ID字符串 } + + // 如果有关联的操作记录ID,调用完成接口 + if (bo.getActionId() != null && bo.getActionId() > 0) { + coilPendingActionService.completeAction(bo.getActionId(), result); + } + + return result; } /**