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 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}') }}
+
+
+
+
+ 完成
+ 取消
+
+
+
+
+
+
+
+
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);
}
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;
}
/**