From 4e32eae9008b56a346f52710d86241890a0ae1a7 Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期四, 27 十一月 2025 19:59:00 +0800
Subject: [PATCH] #库存调整
---
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 65 ++++++++++++++++++++++++++++++++
1 files changed, 65 insertions(+), 0 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 5277f6f..54d49d5 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.core.common.DateUtils;
+import com.core.common.R;
import com.core.common.SnowflakeIdWorker;
import com.core.exception.CoolException;
import com.zy.asrs.entity.*;
@@ -20,6 +21,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -49,6 +51,10 @@
private TagService tagService;
@Autowired
private TagMapper tagMapper;
+ @Autowired
+ private CheckOrderDetlService checkOrderDetlService;
+ @Autowired
+ private CheckOrderService checkOrderService;
@Override
@Transactional
@@ -591,4 +597,63 @@
}
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void adjustmentOrderCreate(OpenAdjustmentOrderParam param) {
+ if(Cools.isEmpty(param.getOrderNo())){
+ String prefix = "";
+ DocType docType = docTypeService.selectById(param.getOrderNo());
+ if(!Cools.isEmpty(docType)){
+ prefix = "Adjust";
+ }
+ param.setOrderNo(prefix + snowflakeIdWorker.nextId());
+ }
+ CheckOrder checkOrder = checkOrderService.selectOne(new EntityWrapper<CheckOrder>().eq("order_no", param.getOrderNo()) );
+ if (checkOrder != null) {
+ throw new CoolException("鍗曟嵁宸插瓨鍦�");
+ }
+ Date now = new Date();
+ checkOrder = new CheckOrder();
+ checkOrder.setOrderNo(param.getOrderNo());
+ checkOrder.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
+ checkOrder.setOrderTime( DateUtils.convert(now));
+ checkOrder.setDocType(param.getOrderType());
+ checkOrder.setSettle(1L);
+ checkOrder.setCreateBy(9527L);
+ checkOrder.setCreateTime(now);
+ checkOrder.setUpdateBy(9527L);
+ checkOrder.setUpdateTime(now);
+ checkOrder.setStatus(1);
+
+ if (!checkOrderService.insert(checkOrder)) {
+ throw new CoolException("淇濆瓨璋冩暣鍗曚富鍗曞け璐�");
+ }
+ for (CheckOrderDetl checkOrderDetl1 : param.getOrderDetails()) {
+ LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>()
+ .eq("matnr", checkOrderDetl1.getMatnr())
+ .eq("loc_no", checkOrderDetl1.getLocNo())
+ .eq("batch", checkOrderDetl1.getBatch())
+ );
+ if (Cools.isEmpty(locDetl)) {
+ throw new CoolException("鏈壘鍒板簱瀛樻槑缁�,璇锋鏌ュ簱瀛�");
+ }
+ CheckOrderDetl checkOrderDetl = new CheckOrderDetl();
+ checkOrderDetl.sync(locDetl);
+ checkOrderDetl.setLocDetlId(locDetl.getId());
+ checkOrderDetl.setOrderId(checkOrder.getId());
+ checkOrderDetl.setOrderNo(checkOrder.getOrderNo());
+ checkOrderDetl.setAnfme(checkOrderDetl1.getAnfme());
+ checkOrderDetl.setDiffQty(checkOrderDetl1.getDiffQty());
+ checkOrderDetl.setWorkQty(checkOrderDetl1.getWorkQty());
+ checkOrderDetl.setStatus(4);
+ checkOrderDetl.setZpallet(locDetl.getZpallet());
+ checkOrderDetl.setCreateTime(now);
+ checkOrderDetl.setUpdateTime(now);
+ if (!checkOrderDetlService.insert(checkOrderDetl)) {
+ throw new CoolException("淇濆瓨璋冩暣鍗曟槑缁嗗け璐�");
+ }
+ }
+
+ }
+
}
--
Gitblit v1.9.1