From 0debf5b7bb0246eaef1397975cdb16f4adb9e8d9 Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期四, 29 十月 2026 14:36:31 +0800
Subject: [PATCH] refactor(inspection-order): 1.检验委托单绑定机制支持多次下单 2.合格率统计口径调整 3.外购铜导体推送入库MES增加米重 4.报告英文字段调整

---
 inspect-server/src/main/java/com/ruoyi/inspect/aspect/MoveLocationAfterPushMesStockAspect.java |   16 ++++++++++++++--
 1 files changed, 14 insertions(+), 2 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 2595c51..8f2e11b 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
@@ -6,7 +6,7 @@
 import com.ruoyi.basic.pojo.IfsInventoryQuantity;
 import com.ruoyi.common.numgen.NumberGenerator;
 import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.common.utils.api.MesApiUtils;
+import com.ruoyi.common.utils.api.mes.MesApiUtils;
 import com.ruoyi.inspect.pojo.IfsSplitOrderRecord;
 import com.ruoyi.inspect.service.IfsSplitOrderRecordService;
 import lombok.extern.slf4j.Slf4j;
@@ -18,6 +18,8 @@
 import org.springframework.transaction.annotation.Isolation;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.math.BigDecimal;
+import java.math.RoundingMode;
 import java.util.*;
 
 /**
@@ -38,6 +40,8 @@
 
     @Autowired
     private NumberGenerator<IfsSplitOrderRecord> splitOrderRecordNumberGenerator;
+
+
 
     @Before(value = "execution(* com.ruoyi.inspect.service.impl.InsOrderServiceImpl.moveRawMaterial(..))")
     @Transactional(rollbackFor = Exception.class,isolation = Isolation.READ_COMMITTED)
@@ -81,6 +85,14 @@
                     requestMap.put("newPartBatchNo", one.getLotBatchNo()); // 鏂伴浂浠舵壒鍙�
                     requestMap.put("stockQuantity", one.getLength()); // 搴撳瓨鏁伴噺1
                     requestMap.put("qty", one.getQtyStock()); // 搴撳瓨鏁伴噺2
+                    // 瀵煎叆闀垮害涓� km銆侀噸閲忎负 kg锛涚背閲嶆寜 kg/km 鍚戜笅淇濈暀 6 浣嶏紝閬垮厤鎹㈢畻鍚庤秴杩囧師閲嶉噺銆�
+                    BigDecimal lengthKm = one.getLength();
+                    BigDecimal weightKg = one.getQtyStock();
+                    if (lengthKm == null || lengthKm.signum() <= 0 || weightKg == null || weightKg.signum() <= 0) {
+                        throw new IllegalArgumentException("鎵瑰彿 " + one.getLotBatchNo() + " 鐨勯暱搴︽垨閲嶉噺涓虹┖鎴栦笉澶т簬 0锛屾棤娉曡绠楃背閲�");
+                    }
+                    BigDecimal meterWeight = weightKg.divide(lengthKm, 6, RoundingMode.DOWN);
+                    requestMap.put("meterWeight", meterWeight); // 绫抽噸锛宬g/km
                     requestMap.put("insulationColor", one.getInsulationColor()); // 缁濈紭棰滆壊
                     requestMap.put("outerColor", one.getOuterColor()); // 澶栨姢棰滆壊
                     requestMap.put("letteringInfo", one.getLetteringInfo()); // 鍗板瓧淇℃伅
@@ -92,7 +104,7 @@
 
                     String jsonStr = JSONUtil.toJsonStr(Collections.singletonList(requestMap));
                     log.info("鍚屾MES瀹炴椂搴撳瓨璇锋眰鍙傛暟-->{}",jsonStr);
-                    boolean b = mesApiUtils.batchAddStock(jsonStr);
+                    boolean b = mesApiUtils.batchAddStock(ifsInventoryQuantity.getContract(),jsonStr);
                     //鍚屾鎴愬姛锛屾洿鏂板悓姝ョ姸鎬�
                     if(b){
                         ifsSplitOrderRecordService.update(null,Wrappers.<IfsSplitOrderRecord>lambdaUpdate()

--
Gitblit v1.9.3