From 72816c83d06a9ddffc0e8f279529a7c0184bf4d6 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期四, 17 七月 2025 15:03:18 +0800
Subject: [PATCH] 盘点库存信息修改优化
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java | 61 +++++++++++++++++++++++++++++-
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/CheckOrderItemParams.java | 3 -
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/CheckOrderParams.java | 15 +++++++
rsf-server/src/main/resources/application-dev.yml | 2
4 files changed, 75 insertions(+), 6 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/CheckOrderItemParams.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/CheckOrderItemParams.java
index f17232f..656d21d 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/CheckOrderItemParams.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/CheckOrderItemParams.java
@@ -28,9 +28,6 @@
@ApiModelProperty("鍗曚綅")
private String unit;
- @ApiModelProperty("瀹㈠崟鍙�")
- private String platOrderCode;
-
@ApiModelProperty("瀛楁绱㈠紩")
private String fieldsIndex;
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/CheckOrderParams.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/CheckOrderParams.java
index 6c24ddd..d2d9e86 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/CheckOrderParams.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/params/CheckOrderParams.java
@@ -30,6 +30,21 @@
@ApiModelProperty(value= "鐗╂枡鍚嶇О")
private String maktx;
+ @ApiModelProperty("瀹㈠崟鍙�")
+ private String platOrderCode;
+
+ @ApiModelProperty(value = "骞冲彴鏍囪瘑锛堣鍙凤級")
+ private String platItemId;
+
+ @ApiModelProperty("宸ュ崟鍙�")
+ private String platWorkCode;
+
+ @ApiModelProperty("椤圭洰鍙�")
+ private String projectCode;
+
+ @ApiModelProperty("瀛楁绱㈠紩")
+ private String fieldsIndex;
+
@ApiModelProperty("瑙勬牸")
private String spec;
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java
index b29df72..88ee4ef 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/CheckOrderServiceImpl.java
@@ -42,6 +42,12 @@
private DeviceSiteService deviceSiteService;
@Autowired
private LocItemService locItemService;
+ @Autowired
+ private TaskService taskService;
+ @Autowired
+ private LocServiceImpl locService;
+ @Autowired
+ private TaskItemServiceImpl taskItemService;
/**
* @author Ryan
@@ -261,9 +267,60 @@
if (checkParams.isEmpty()) {
throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒");
}
-
+ for (CheckOrderParams checkParam : checkParams) {
+ if (checkParam.getItems().isEmpty()) {
+ continue;
+ }
+ Map<String, List<CheckOrderItemParams>> listMap = checkParam.getItems().stream()
+ .collect(Collectors.groupingBy(CheckOrderItemParams::getBarcode));
+ listMap.keySet().forEach(key -> {
+ Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getBarcode, key));
+ if (Objects.isNull(loc)) {
+ throw new CoolException("褰撳墠搴撲綅涓嶅瓨鍦紒锛�");
+ }
+ List<CheckOrderItemParams> itemParams = listMap.get(key);
+ CheckOrderItemParams checkItem = itemParams.stream().findFirst().get();
+ Task task = new Task();
+ task.setOrgLoc(loc.getCode())
+ .setTargSite(checkItem.getSiteNo())
+ .setResource(TaskResouceType.TASK_RESOUCE_CHECK_TYPE.val)
+ .setTaskType(TaskType.TASK_TYPE_CHECK_OUT.type)
+ .setTaskStatus(TaskStsType.GENERATE_OUT.id)
+ .setCreateTime(new Date())
+ .setCreateBy(loginUserId)
+ .setBarcode(key);
- return null;
+ if (!taskService.save(task)) {
+ throw new CoolException("鐩樼偣浠诲姟鐢熸垚澶辫触锛侊紒");
+ }
+ List<TaskItem> items = new ArrayList<>();
+ itemParams.forEach(item -> {
+ TaskItem taskItem = new TaskItem();
+ taskItem.setTaskId(task.getId())
+ .setOrderId(checkParam.getOrderId())
+ .setOrderType(OrderType.ORDER_CHECK.type)
+ .setAnfme(item.getAnfme())
+ .setWorkQty(0.0)
+ .setBatch(checkParam.getBatch())
+ .setMaktx(checkParam.getMaktx())
+ .setMatnrCode(checkParam.getMatnrCode())
+ .setPlatOrderCode(checkParam.getPlatOrderCode())
+ .setPlatWorkCode(checkParam.getPlatWorkCode())
+ .setSpec(checkParam.getSpec())
+ .setModel(checkParam.getModel())
+ .setFieldsIndex(checkParam.getFieldsIndex())
+ .setMatnrId(checkParam.getMatnrId())
+ .setCreateBy(loginUserId)
+ .setCreateTime(new Date())
+ .setPlatItemId(checkParam.getPlatItemId());
+ items.add(taskItem);
+ });
+ if (!taskItemService.saveBatch(items)) {
+ throw new CoolException("浠诲姟鏄庣粏淇濆瓨澶辫触锛侊紒");
+ }
+ });
+ }
+ return R.ok();
}
/**
diff --git a/rsf-server/src/main/resources/application-dev.yml b/rsf-server/src/main/resources/application-dev.yml
index 95669f3..cfb08a3 100644
--- a/rsf-server/src/main/resources/application-dev.yml
+++ b/rsf-server/src/main/resources/application-dev.yml
@@ -15,7 +15,7 @@
# url: jdbc:mysql://47.76.147.249:3306/rsf?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
# username: rsf
username: root
- url: jdbc:mysql://127.0.0.1:3306/rsf?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
+ url: jdbc:mysql://192.168.4.151:3306/rsf?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
password: 34821015
type: com.alibaba.druid.pool.DruidDataSource
druid:
--
Gitblit v1.9.1