From cdd6fa2f3b023e701e3fac3956d1e524defbbdb3 Mon Sep 17 00:00:00 2001
From: sfd <sun.sunshine@163.com>
Date: 星期五, 09 五月 2025 10:14:52 +0800
Subject: [PATCH] 修改时间格式

---
 aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireServiceImpl.java |   59 +++++++++++++++++++++++++++--------------------------------
 1 files changed, 27 insertions(+), 32 deletions(-)

diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireServiceImpl.java b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireServiceImpl.java
index 0e40df7..4722333 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireServiceImpl.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireServiceImpl.java
@@ -3,7 +3,6 @@
 import java.math.BigDecimal;
 import java.util.*;
 
-import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.IdUtil;
 import com.aps.common.core.utils.DateUtils;
 import com.aps.common.security.utils.DictUtils;
@@ -18,6 +17,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.aps.core.service.IApsPlateStandardRequireService;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 
@@ -69,6 +69,9 @@
 
     @Resource
     IApsStandardProcessRouteLineService routeLineService;
+
+    @Resource
+    IApsPlateStandardRequireBatchService requireBatchService;
 
     /**
      * 鏌ヨ閽i噾宸ュ崟鏍囧噯闇�姹�
@@ -154,14 +157,18 @@
         return apsPlateStandardRequireMapper.selectPlateSupplyGapList(apsPlateStandardRequire);
     }
 
-    private void generatorPlan(){
+    @Transactional
+    @Override
+    public void generatorPlan(){
 
+        /*鍒濆鍖栨暟鎹�*/
+        requireBatchService.initRequireBatch();
         /*瀹氫箟宸ュ巶涓哄崡閫� */
         String plantCode="FORTUNA";
         /*瀹氫箟涓诲崟绫诲瀷涓洪挘閲戜富鍗�*/
-        String mainOrderType = "閽i噾涓讳欢";
+        String mainOrderType = "0";
         /*鐢熸垚鏂版壒娆″彿*/
-        String batchNum=getBatch();
+        String batchNum= requireBatchService.getNewBatchNumber();
         /*鑾峰彇閽i噾涓诲崟淇℃伅*/
         List<ApsPlatePlan> mainPlans = platePlanMapper.selectPlatePlanByPlantMajor(plantCode,mainOrderType);
         for (ApsPlatePlan mainPlan : mainPlans) {
@@ -196,7 +203,7 @@
         /*鏋勫缓闇�姹備俊鎭�*/
         ApsPlateStandardRequire require = new ApsPlateStandardRequire();
         require.setId(IdUtil.getSnowflakeNextId());
-        require.setRequireId(plan.getId());
+        require.setRequireTrackId(plan.getId());
         require.setBatchNumber(batchNum);
         require.setDocNum(plan.getDocumentNumber());
         require.setOrgCode(plant);
@@ -215,6 +222,8 @@
         }
         /*鏌ユ壘搴撳瓨锛岃绠楀噣闇�姹傦紝淇濆瓨鍓╀綑搴撳瓨锛屼繚瀛樺簱瀛樻墸鍑忔槑缁�*/
         BigDecimal remainderStock = BigDecimal.ZERO;
+        /*榛樿鍑�闇�姹備负BOM鐢ㄩ噺*/
+        require.setNetRequirement(require.getBomUseAmount());
         Optional<ApsMaterialStorageManagement> itemStorage = getItemStorage(plant, itemNumber);
         if (itemStorage.isPresent()) {
             ApsMaterialStorageManagement storage = itemStorage.get();
@@ -237,7 +246,7 @@
                     afterStockAmount = remainderStock.subtract(deductionAmount);
                     require.setNetRequirement(BigDecimal.ZERO);
                 }
-                bomStockDetailService.saveStorageAndDetail(storage, plan, bomLine, batchNum, deductionAmount, afterStockAmount,require.getId().toString());
+                bomStockDetailService.saveStorageAndDetail(storage, plan, bomLine, batchNum, deductionAmount, afterStockAmount,require.getId());
             }
         }
 
@@ -268,10 +277,10 @@
         require.setStartDate(startDay);
 
         /*璁$畻鏄惁鏈夐闄�*/
-        require.setHasDelayRisk("鏃犻闄�");
+        require.setHasDelayRisk("0");
         Date dateZero = getDateZero(DateUtils.getNowDate());
         if (startDay.before(dateZero)) {
-            require.setHasDelayRisk("鏈夐闄�");
+            require.setHasDelayRisk("1");
         }
 
         /*鐢熶骇鍩哄湴*/
@@ -282,33 +291,19 @@
         if (require.getNetRequirement().compareTo(BigDecimal.ZERO) > 0) {
             require.setMatchState("寰呭尮閰�");
             require.setMatchMode("宸ュ崟鍖归厤");
+            /*浣跨敤瀛愪欢宸ュ崟杩涜闇�姹傚尮閰�*/
+            matchRequireAndSubPlan(require);
         }
-        /*浣跨敤瀛愪欢宸ュ崟杩涜闇�姹傚尮閰�*/
-        matchRequireAndSubPlan(require);
-
         allRequires.add(require);
-        /*褰撳墠Bom鑺傜偣澶勭悊瀹屾垚鍚庯紝澶勭悊涓嬬骇BOM*/
-        List<ApsBom> bomLineList = bomLineService.selectApsBomLineList(plant, itemNumber);
-        if (!bomLineList.isEmpty()) {
-            bomLineList.forEach(line -> {
-                getBomRequires(plant, line, batchNum, require.getStartDate(), plan, allRequires, level + 1);
-            });
+        if (require.getNetRequirement().compareTo(BigDecimal.ZERO) > 0) {
+            /*褰撳墠Bom鑺傜偣澶勭悊瀹屾垚鍚庯紝澶勭悊涓嬬骇BOM*/
+            List<ApsBom> bomLineList = bomLineService.selectApsBomLineList(plant, itemNumber);
+            if (!bomLineList.isEmpty()) {
+                bomLineList.forEach(line -> {
+                    getBomRequires(plant, line, batchNum, require.getStartDate(), plan, allRequires, level + 1);
+                });
+            }
         }
-    }
-
-    /**
-     * 鐢熸垚鏂版壒娆″彿
-     * */
-    private  String getBatch() {
-        String batchNum = System.currentTimeMillis() + "";
-        ApsPlateStandardRequireBatch batchBuilder = ApsPlateStandardRequireBatch.builder()
-                .id(IdUtil.getSnowflakeNextId())
-                .batchNumber(batchNum)
-                .delFlag("0").build();
-        batchBuilder.setCreateBy(SecurityUtils.getUsername());
-        batchBuilder.setCreateTime(DateUtils.getNowDate());
-        requireBatchMapper.insertApsPlateStandardRequireBatch(batchBuilder);
-        return batchNum;
     }
     /**
      * 鑾峰彇鐗╂枡搴撳瓨淇℃伅

--
Gitblit v1.9.3