From d6a7dc745a4d9a9a32a854cfcc97de2cecccf7d0 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期五, 06 六月 2025 08:31:08 +0800
Subject: [PATCH] 123
---
src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java | 83 +++++++++++++++++++++++++++++++++++++----
1 files changed, 74 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java b/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java
index 6a304ed..9fbf7c8 100644
--- a/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java
+++ b/src/main/java/com/zy/nc/task/handler/PlanOrderHandler.java
@@ -1,7 +1,6 @@
package com.zy.nc.task.handler;
import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.core.exception.CoolException;
import com.zy.asrs.entity.InventoryCheckOrder;
@@ -21,9 +20,12 @@
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
import java.util.List;
@Service
@@ -62,17 +64,74 @@
*
* @return
*/
+ @Transactional
public ReturnT<String> start1(List<NccSaleXsfhmxWms> wmsFlag) {
try {
- OpenOrderPakoutParam param = new OpenOrderPakoutParam();
- param.setOrderType("閿�鍞彂璐�");
+ HashMap<String, List<NccSaleXsfhmxWms>> map = new HashMap<>();
+ List<NccSaleXsfhmxWms> fenzu;
+ for (NccSaleXsfhmxWms wms : wmsFlag) {
+ if (map.get(wms.getFhckbm()) == null) {
+ fenzu = new ArrayList<>();
+ fenzu.add(wms);
+ map.put(wms.getFhckbm(), fenzu);
+ } else {
+ fenzu = map.get(wms.getFhckbm());
+ fenzu.add(wms);
+ map.put(wms.getFhckbm(), fenzu);
+ }
+ }
+ int size = 1;
+ for (String key : map.keySet()) {
+ OpenOrderPakoutParam param = new OpenOrderPakoutParam();
+ DetlDto detlDto;
+ List<DetlDto> orderDetails = new ArrayList<>();
+ long i = 1;
+ for (NccSaleXsfhmxWms nccSaleXsfhmxWms : map.get(key)) {
+ param.setOrderType("閿�鍞彂璐�");
+ detlDto = new DetlDto();
+ detlDto.setMatnr(nccSaleXsfhmxWms.getWlbm());
+ detlDto.setAnfme(nccSaleXsfhmxWms.getNnum().doubleValue());
+ detlDto.setWeight(nccSaleXsfhmxWms.getNastnum().doubleValue());
+ detlDto.setStandby1(nccSaleXsfhmxWms.getFhckbm());
+ detlDto.setLineNumber(i);
+ detlDto.setRemark(JSONObject.toJSONString(nccSaleXsfhmxWms));
+ orderDetails.add(detlDto);
+ log.info("NccSaleXsfhmxWms鏁版嵁:{}", JSONObject.toJSON(nccSaleXsfhmxWms));
+ i++;
+ nccSaleXsfhmxWms.setWmsFlag(1);
+ param.setOrderNo(nccSaleXsfhmxWms.getVbillcode() + "-" + size);
+ param.setCstmrName(nccSaleXsfhmxWms.getKhmc());
+ }
+ param.setOrderDetails(orderDetails);
+ openService.pakoutOrderCreate(param);
+ nccSaleXsfhmxWmsService.updateBatchById(map.get(key));
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+ return FAIL.setMsg(e.getMessage());
+ }
+ return SUCCESS;
+ }
+
+ /**
+ * 鍙戣揣
+ *
+ * @return
+ */
+ @Transactional
+ public ReturnT<String> start1In(List<NccSaleXsfhmxWms> wmsFlag) {
+ try {
+ OpenOrderPakinParam param = new OpenOrderPakinParam();
DetlDto detlDto;
List<DetlDto> orderDetails = new ArrayList<>();
long i = 1;
for (NccSaleXsfhmxWms nccSaleXsfhmxWms : wmsFlag) {
+ param.setOrderType("閿�鍞��璐�");
detlDto = new DetlDto();
detlDto.setMatnr(nccSaleXsfhmxWms.getWlbm());
- detlDto.setAnfme(nccSaleXsfhmxWms.getNastnum().doubleValue());
+ detlDto.setAnfme(nccSaleXsfhmxWms.getNnum().doubleValue());
+ detlDto.setStandby1(nccSaleXsfhmxWms.getFhckbm());
detlDto.setLineNumber(i);
detlDto.setRemark(JSONObject.toJSONString(nccSaleXsfhmxWms));
orderDetails.add(detlDto);
@@ -82,7 +141,7 @@
param.setOrderNo(nccSaleXsfhmxWms.getVbillcode());
}
param.setOrderDetails(orderDetails);
- openService.pakoutOrderCreate(param);
+ openService.pakinOrderCreate(param);
nccSaleXsfhmxWmsService.updateBatchById(wmsFlag);
} catch (Exception e) {
e.printStackTrace();
@@ -97,6 +156,7 @@
*
* @return
*/
+ @Transactional
public ReturnT<String> start2In(List<NccScZkmxbWms> wmsFlag) {
try {
OpenOrderPakinParam param = new OpenOrderPakinParam();
@@ -112,6 +172,7 @@
detlDto.setBatch(nccScZkmxbWms.getVbatchcode());
detlDto.setLineNumber(i);
detlDto.setRemark(JSONObject.toJSONString(nccScZkmxbWms));
+ detlDto.setStandby1(nccScZkmxbWms.getRkckbm());
orderDetails.add(detlDto);
i++;
nccScZkmxbWms.setWmsFlag(1);
@@ -133,6 +194,7 @@
*
* @return
*/
+ @Transactional
public ReturnT<String> start2Out(List<NccScZkmxbWms> wmsFlag) {
try {
OpenOrderPakoutParam param = new OpenOrderPakoutParam();
@@ -169,6 +231,7 @@
*
* @return
*/
+ @Transactional
public ReturnT<String> start3(List<NccCgCgdhdWms> wmsFlag) {
try {
OpenOrderPakinParam param = new OpenOrderPakinParam();
@@ -184,6 +247,7 @@
detlDto.setBatch(nccCgCgdhdWms.getVbatchcode());
detlDto.setLineNumber(i);
detlDto.setRemark(JSONObject.toJSONString(nccCgCgdhdWms));
+ detlDto.setStandby1(nccCgCgdhdWms.getCkbm());
orderDetails.add(detlDto);
i++;
nccCgCgdhdWms.setWmsFlag(1);
@@ -206,6 +270,7 @@
*
* @return
*/
+ @Transactional
public ReturnT<String> start4(List<NccCkPddWms> wmsFlag) {
try {
InventoryCheckOrder param = new InventoryCheckOrder();
@@ -216,10 +281,6 @@
if (Cools.isEmpty(mat)) {
throw new CoolException(nccScZkmxbWms.getWlbm() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧");
}
- List<InventoryCheckOrderDetl> checkOrderDetls = inventoryCheckOrderDetlService.selectList(new EntityWrapper<InventoryCheckOrderDetl>().eq("order_no", nccScZkmxbWms.getVbillcode()).eq("matnr", mat.getMatnr()).eq("batch", nccScZkmxbWms.getVbatchcode()));
- if (checkOrderDetls != null && !checkOrderDetls.isEmpty()) {
- //throw new CoolException(nccScZkmxbWms.getWlbm() + "鐩樼偣鍗曠殑鏄庣粏閲嶅浜�");
- }
checkOrderDetl = new InventoryCheckOrderDetl();
checkOrderDetl.setMatnr(nccScZkmxbWms.getWlbm());
checkOrderDetl.setMaktx(mat.getMaktx());
@@ -229,7 +290,10 @@
inventoryCheckOrderDetlService.insert(checkOrderDetl);
nccScZkmxbWms.setWmsFlag(1);
param.setOrderNo(nccScZkmxbWms.getVbillcode());
+ param.setCreateBy(nccScZkmxbWms.getPdrmc());
+
}
+ param.setCreateTime(new Date());
param.setStatus("1");
inventoryCheckOrderService.insert(param);
nccCkPddWmsService.updateBatchById(wmsFlag);
@@ -247,6 +311,7 @@
*
* @return
*/
+ @Transactional
public ReturnT<String> start5(List<NccSaleDbddWms> wmsFlag) {
try {
OpenOrderPakoutParam param = new OpenOrderPakoutParam();
--
Gitblit v1.9.1