From 27a90e70749f5a569eda2c225d7b319b3c2d77a5 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期一, 15 十二月 2025 11:41:03 +0800
Subject: [PATCH] 订单拆分生成系统编号逻辑调整
---
inspect-server/src/main/java/com/ruoyi/inspect/aspect/MoveLocationAfterPushMesStockAspect.java | 25 +++++++++++++++++++++----
1 files changed, 21 insertions(+), 4 deletions(-)
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/aspect/MoveLocationAfterPushMesStockAspect.java b/inspect-server/src/main/java/com/ruoyi/inspect/aspect/MoveLocationAfterPushMesStockAspect.java
index d6ee1d0..8af553f 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/aspect/MoveLocationAfterPushMesStockAspect.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/aspect/MoveLocationAfterPushMesStockAspect.java
@@ -3,7 +3,9 @@
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.basic.mapper.IfsInventoryQuantityMapper;
import com.ruoyi.basic.pojo.IfsInventoryQuantity;
+import com.ruoyi.common.numgen.NumberGenerator;
import com.ruoyi.common.utils.api.MesApiUtils;
import com.ruoyi.inspect.pojo.IfsSplitOrderRecord;
import com.ruoyi.inspect.service.IfsSplitOrderRecordService;
@@ -16,10 +18,7 @@
import org.springframework.transaction.annotation.Isolation;
import org.springframework.transaction.annotation.Transactional;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
/**
* 鎵цifs绉诲簱鎿嶄綔鍚庯紝鍚屾鎺ㄩ�乵es瀹炴椂搴撳瓨
@@ -36,6 +35,12 @@
private MesApiUtils mesApiUtils;
private final static String LOCATION_NO = "WG-02-001";//mes澶栬喘鍚堟牸搴撲綅
+
+ @Autowired
+ private IfsInventoryQuantityMapper ifsInventoryQuantityMapper;
+
+ @Autowired
+ private NumberGenerator<IfsSplitOrderRecord> splitOrderRecordNumberGenerator;
@AfterReturning(value = "execution(* com.ruoyi.inspect.service.impl.InsOrderServiceImpl.moveRawMaterial(..))")
@Transactional(rollbackFor = Exception.class,isolation = Isolation.READ_COMMITTED)
@@ -55,6 +60,18 @@
.last("limit 1")
);
if(Objects.nonNull(one)){
+ //鏌ヨ瀵瑰簲璁板綍鏄惁鏈夌浉鍚屾壒鍙峰拰闆朵欢鐨勮鍗曡褰�
+ List<IfsInventoryQuantity> quantityList = ifsInventoryQuantityMapper.selectList(Wrappers.<IfsInventoryQuantity>lambdaQuery()
+ .eq(IfsInventoryQuantity::getUpdateBatchNo, one.getLotBatchNo())
+ .eq(IfsInventoryQuantity::getPartNo, one.getPartNo())
+ .ne(IfsInventoryQuantity::getId,ifsInventoryQuantity.getId())
+ );
+ //鑾峰彇宸叉楠岀殑鏁版嵁鏉℃暟
+ long count = quantityList.stream().filter(f -> f.getIsFinish().equals(1)).count();
+ if(!quantityList.isEmpty() && count>0){
+ //鐢熸垚鏂扮殑绯荤粺缂栧彿
+ one.setSystemNo(splitOrderRecordNumberGenerator.generateNumberWithPrefix(IfsSplitOrderRecord.DIGIT,IfsSplitOrderRecord.PREFIX,IfsSplitOrderRecord::getSystemNo));
+ }
//鍚屾MES瀹炴椂搴撳瓨
Map<String, Object> requestMap = new HashMap<>();
requestMap.put("partNo", one.getPartNo()); // 闆朵欢缂栧彿
--
Gitblit v1.9.3