From e85f0e74d21e49b9c68474bc4d19f5eceacf1a46 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期一, 20 十月 2025 08:40:04 +0800
Subject: [PATCH] 对接
---
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 207 +++++++++++++++++++++++++++++++++------------------
1 files changed, 134 insertions(+), 73 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index 3bb606d..a802c01 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -20,7 +20,10 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import java.text.SimpleDateFormat;
+import java.time.LocalDate;
import java.util.ArrayList;
+import java.util.Calendar;
import java.util.Date;
import java.util.List;
@@ -49,13 +52,24 @@
private TagService tagService;
@Autowired
private TagMapper tagMapper;
+ @Autowired
+ private OrderDetlPakoutServiceImpl orderDetlPakoutService;
+ @Autowired
+ private OrderPakoutServiceImpl orderPakoutService;
+ @Autowired
+ private OrderPakinServiceImpl orderPakinService;
@Override
@Transactional
public void pakinOrderCreate(OpenOrderPakinParam param) {
+ OrderPakin orderPakin = orderPakinService.selectByNo(param.getOrderNo());
Order order = orderService.selectByNo(param.getOrderNo());
- if (!Cools.isEmpty(order)) {
- throw new CoolException(param.getOrderNo() + "鍗曟嵁宸插瓨鍦紝璇峰嬁閲嶅鎻愪氦");
+ if (!Cools.isEmpty(orderPakin)) {
+ if (orderPakin.getSettle() > 1L) {
+ throw new CoolException(param.getOrderNo() + "鍗曟嵁宸插瓨鍦紝璇峰嬁閲嶅鎻愪氦");
+ }
+ orderPakinService.remove(orderPakin.getId());
+ orderService.remove(order.getId());
}
DocType docType = docTypeService.selectOrAdd(param.getOrderType(), Boolean.TRUE);
Date now = new Date();
@@ -95,8 +109,10 @@
9527L, // 淇敼浜哄憳
now, // 淇敼鏃堕棿
null, // 澶囨敞
- 1
+ 1,
+ null
);
+
if (!orderService.insert(order)) {
throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
}
@@ -105,6 +121,8 @@
List<DetlDto> orderDetails = param.getOrderDetails();
for (DetlDto detail : orderDetails) {
DetlDto dto = new DetlDto(detail.getMatnr(), detail.getBatch(), detail.getBrand(), detail.getStandby1(), detail.getStandby2(), detail.getStandby3(), detail.getLineNumber(), detail.getBoxType1(), detail.getBoxType2(), detail.getBoxType3(), detail.getAnfme());
+ dto.setRemark(detail.getRemark());
+ dto.setWeight(detail.getWeight());
if (DetlDto.hasLineNumber(list, dto)) {
DetlDto detlDto = DetlDto.findLineNumber(list, dto.getMatnr(), dto.getBatch(), dto.getBrand(), dto.getStandby1(), dto.getStandby2(), dto.getStandby3(), dto.getLineNumber(), dto.getBoxType1(), dto.getBoxType2(), dto.getBoxType3());
assert detlDto != null;
@@ -123,10 +141,14 @@
orderDetl.setLineNumber(detlDto.getLineNumber());
orderDetl.setBatch(detlDto.getBatch());
orderDetl.setAnfme(detlDto.getAnfme());
+ orderDetl.setWeight(detlDto.getWeight());
orderDetl.setBrand(detlDto.getBrand());
orderDetl.setStandby1(detlDto.getStandby1());
orderDetl.setStandby2(detlDto.getStandby2());
orderDetl.setStandby3(detlDto.getStandby3());
+ orderDetl.setBoxType1(detlDto.getBoxType1());
+ orderDetl.setBoxType2(detlDto.getBoxType2());
+ orderDetl.setBoxType3(detlDto.getBoxType3());
orderDetl.setOrderId(order.getId());
orderDetl.setOrderNo(order.getOrderNo());
orderDetl.setCreateBy(9527L);
@@ -136,6 +158,7 @@
orderDetl.setStatus(1);
orderDetl.setQty(0.0D);
orderDetl.setPakinPakoutStatus(1);
+ orderDetl.setRemark(detlDto.getRemark());
if (!orderDetlService.insert(orderDetl)) {
throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
}
@@ -212,8 +235,12 @@
Order order = orderService.selectByNo(param.getOrderNo());
// 濡傛灉鍗曟嵁涓嶅瓨鍦ㄥ垯娣诲姞锛涘鏋滃崟鎹瓨鍦紝浣滀笟涓棤娉曚慨鏀癸紝鍙嶄箣鍒欎慨鏀瑰崟鎹�
if (!Cools.isEmpty(order)) {
- if (order.getSettle() > 1L) {
- throw new CoolException(param.getOrderNo() + "姝e湪鍑哄簱锛屾棤娉曚慨鏀瑰崟鎹�");
+ OrderPakout orderPakout = orderPakoutService.selectByNo(param.getOrderNo());
+ if (!Cools.isEmpty(orderPakout)) {
+ if (orderPakout.getSettle() > 1L) {
+ throw new CoolException(param.getOrderNo() + "姝e湪鍑哄簱锛屾棤娉曚慨鏀瑰崟鎹�");
+ }
+ orderPakoutService.remove(orderPakout.getId());
}
orderService.remove(order.getId());
}
@@ -231,7 +258,7 @@
null, // 鍒濆绁ㄦ嵁鍙�
null, // 绁ㄦ嵁鍙�
null, // 瀹㈡埛缂栧彿
- null, // 瀹㈡埛
+ param.getCstmrName(), // 瀹㈡埛
null, // 鑱旂郴鏂瑰紡
null, // 鎿嶄綔浜哄憳
null, // 鍚堣閲戦
@@ -255,7 +282,8 @@
9527L, // 淇敼浜哄憳
now, // 淇敼鏃堕棿
null, // 澶囨敞
- 2
+ 2,
+ param.getKpCstmrName()
);
if (!orderService.insert(order)) {
throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
@@ -266,6 +294,8 @@
for (DetlDto detail : orderDetails) {
DetlDto dto = new DetlDto(detail.getMatnr(), detail.getBatch(), detail.getBrand(), detail.getStandby1(), detail.getStandby2(), detail.getStandby3(), detail.getLineNumber(),
detail.getBoxType1(), detail.getBoxType2(), detail.getBoxType3(), detail.getAnfme());
+ dto.setRemark(detail.getRemark());
+ dto.setWeight(detail.getWeight());
if (DetlDto.hasLineNumber(list, dto)) {
DetlDto detlDto = DetlDto.findLineNumber(list, dto.getMatnr(), dto.getBatch(), dto.getBrand(), dto.getStandby1(), dto.getStandby2(), dto.getStandby3(), dto.getLineNumber(),
dto.getBoxType1(), dto.getBoxType2(), dto.getBoxType3());
@@ -285,10 +315,14 @@
orderDetl.setLineNumber(detlDto.getLineNumber());
orderDetl.setBatch(detlDto.getBatch());
orderDetl.setAnfme(detlDto.getAnfme());
+ orderDetl.setWeight(detlDto.getWeight());
orderDetl.setBrand(detlDto.getBrand());
orderDetl.setStandby1(detlDto.getStandby1());
orderDetl.setStandby2(detlDto.getStandby2());
orderDetl.setStandby3(detlDto.getStandby3());
+ orderDetl.setBoxType1(detlDto.getBoxType1());
+ orderDetl.setBoxType2(detlDto.getBoxType2());
+ orderDetl.setBoxType3(detlDto.getBoxType3());
orderDetl.setOrderId(order.getId());
orderDetl.setOrderNo(order.getOrderNo());
orderDetl.setCreateBy(9527L);
@@ -298,6 +332,7 @@
orderDetl.setStatus(1);
orderDetl.setQty(0.0D);
orderDetl.setPakinPakoutStatus(2);
+ orderDetl.setRemark(detlDto.getRemark());
if (!orderDetlService.insert(orderDetl)) {
throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
}
@@ -499,74 +534,74 @@
// 鍒嗙被
Long tagId;
// 涓�绾у垎绫�
- if (!Cools.isEmpty(matParam.getGroupCode()) && !Cools.isEmpty(matParam.getGroupName())) {
- Tag priTag = tagService.selectOne(new EntityWrapper<Tag>().eq("name", matParam.getGroupCode()));
- if (priTag == null) {
- Tag top = tagService.getTop();
- NodeUtils nodeUtils = new NodeUtils();
- nodeUtils.executePath(top.getId());
- priTag = new Tag(
- null, // 缂栧彿
- matParam.getGroupCode(), // 鍚嶇О
- top.getId(), // 鐖剁骇
- top.getName(), // 鐖剁骇鍚嶇О
- nodeUtils.path.toString(), // 鍏宠仈璺緞
- nodeUtils.pathName.toString(), // 鍏宠仈璺緞鍚�
- 0, // 绫诲瀷
- null, // 璐熻矗浜�
- null, // 鍥剧墖
- null, // 绠�瑕佹弿杩�
- null, // 鏁伴噺
- 2, // 绛夌骇
- null, // 鎺掑簭
- 1, // 鐘舵��
- now, // 娣诲姞鏃堕棿
- null, // 娣诲姞浜哄憳
- now, // 淇敼鏃堕棿
- null, // 淇敼浜哄憳
- null // 澶囨敞
- );
- if (tagMapper.insert(priTag) == 0) {
- throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
- }
- }
- // 浜岀骇鍒嗙被
- Tag secTag = tagService.selectByName(matParam.getGroupName(), 3);
- if (secTag == null) {
- NodeUtils nodeUtils = new NodeUtils();
- nodeUtils.executePath(priTag.getId());
- secTag = new Tag(
- null, // 缂栧彿
- matParam.getGroupName(), // 鍚嶇О
- priTag.getId(), // 鐖剁骇
- priTag.getName(), // 鐖剁骇鍚嶇О
- nodeUtils.path.toString(), // 鍏宠仈璺緞
- nodeUtils.pathName.toString(), // 鍏宠仈璺緞鍚�
- 0, // 绫诲瀷
- null, // 璐熻矗浜�
- null, // 鍥剧墖
- null, // 绠�瑕佹弿杩�
- null, // 鏁伴噺
- 3, // 绛夌骇
- null, // 鎺掑簭
- 1, // 鐘舵��
- now, // 娣诲姞鏃堕棿
- null, // 娣诲姞浜哄憳
- now, // 淇敼鏃堕棿
- null, // 淇敼浜哄憳
- null // 澶囨敞
- );
- if (tagMapper.insert(secTag) == 0) {
- throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
- }
- }
- tagId = secTag.getId();
- } else {
- tagId = tagService.getTop().getId();
- }
+// if (!Cools.isEmpty(matParam.getGroupCode()) && !Cools.isEmpty(matParam.getGroupName())) {
+// Tag priTag = tagService.selectOne(new EntityWrapper<Tag>().eq("name", matParam.getGroupCode()));
+// if (priTag == null) {
+// Tag top = tagService.getTop();
+// NodeUtils nodeUtils = new NodeUtils();
+// nodeUtils.executePath(top.getId());
+// priTag = new Tag(
+// null, // 缂栧彿
+// matParam.getGroupCode(), // 鍚嶇О
+// top.getId(), // 鐖剁骇
+// top.getName(), // 鐖剁骇鍚嶇О
+// nodeUtils.path.toString(), // 鍏宠仈璺緞
+// nodeUtils.pathName.toString(), // 鍏宠仈璺緞鍚�
+// 0, // 绫诲瀷
+// null, // 璐熻矗浜�
+// null, // 鍥剧墖
+// null, // 绠�瑕佹弿杩�
+// null, // 鏁伴噺
+// 2, // 绛夌骇
+// null, // 鎺掑簭
+// 1, // 鐘舵��
+// now, // 娣诲姞鏃堕棿
+// null, // 娣诲姞浜哄憳
+// now, // 淇敼鏃堕棿
+// null, // 淇敼浜哄憳
+// null // 澶囨敞
+// );
+// if (tagMapper.insert(priTag) == 0) {
+// throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+// }
+// }
+// // 浜岀骇鍒嗙被
+// Tag secTag = tagService.selectByName(matParam.getGroupName(), 3);
+// if (secTag == null) {
+// NodeUtils nodeUtils = new NodeUtils();
+// nodeUtils.executePath(priTag.getId());
+// secTag = new Tag(
+// null, // 缂栧彿
+// matParam.getGroupName(), // 鍚嶇О
+// priTag.getId(), // 鐖剁骇
+// priTag.getName(), // 鐖剁骇鍚嶇О
+// nodeUtils.path.toString(), // 鍏宠仈璺緞
+// nodeUtils.pathName.toString(), // 鍏宠仈璺緞鍚�
+// 0, // 绫诲瀷
+// null, // 璐熻矗浜�
+// null, // 鍥剧墖
+// null, // 绠�瑕佹弿杩�
+// null, // 鏁伴噺
+// 3, // 绛夌骇
+// null, // 鎺掑簭
+// 1, // 鐘舵��
+// now, // 娣诲姞鏃堕棿
+// null, // 娣诲姞浜哄憳
+// now, // 淇敼鏃堕棿
+// null, // 淇敼浜哄憳
+// null // 澶囨敞
+// );
+// if (tagMapper.insert(secTag) == 0) {
+// throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+// }
+// }
+// tagId = secTag.getId();
+// } else {
+// tagId = tagService.getTop().getId();
+// }
mat.sync(matParam);
- mat.setTagId(tagId);
+ mat.setTagId(Long.parseLong(matParam.getGroupCode()));
mat.setStatus(1);
mat.setCreateTime(now);
mat.setUpdateTime(now);
@@ -585,4 +620,30 @@
}
+ @Override
+ public int syncAnfmeToWeight() {
+ try {
+ SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ Date date = format.parse("2025-06-24 00:00:00");
+ Date date2 = format.parse("2025-06-24 23:59:59");
+ List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>()
+// .ge("appe_time", format.format(date))
+// .le("appe_time", format.format(date2))
+ .eq("weight", -1)
+ );
+
+ int i = 0;
+ for (LocDetl locDetl : locDetls) {
+ // 淇敼搴撳瓨
+// Double anfme = MatUtils.calcAnfmeFromWeight(locDetl.getMatnr(), locDetl.getAnfme());
+ locDetlService.updateAnfme(locDetl.getAnfme(), locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getBatch(), locDetl.getBrand(),
+ locDetl.getStandby1(), locDetl.getStandby2(), locDetl.getStandby3(), locDetl.getBoxType1(), locDetl.getBoxType2(), locDetl.getBoxType3());
+ i++;
+ }
+ return i;
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return 0;
+ }
}
--
Gitblit v1.9.1