From 1391b345457a70d9449bb51e797c54039a3b0a53 Mon Sep 17 00:00:00 2001
From: 懒羊羊 <15939171744@163.com>
Date: 星期三, 17 一月 2024 17:39:48 +0800
Subject: [PATCH] 工单优化

---
 jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java |   69 +++++++++++++++++++++++++++-------
 1 files changed, 54 insertions(+), 15 deletions(-)

diff --git a/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java b/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java
index f74c05a..bafb93a 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/om/productionOrde/controller/OmProductionOrdeInfoController.java
@@ -1,9 +1,14 @@
 package com.jcdm.main.om.productionOrde.controller;
 
+import java.text.SimpleDateFormat;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
 import java.util.Date;
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
 
+import com.jcdm.main.bs.modelNumber.domain.BsModelNumber;
+import com.jcdm.main.bs.modelNumber.service.IBsModelNumberService;
 import com.jcdm.main.bs.orderScheduling.domain.BsOrderScheduling;
 import com.jcdm.main.bs.orderScheduling.service.IBsOrderSchedulingService;
 import com.jcdm.main.om.productionOrde.domain.OmProductionOrdeInfo;
@@ -44,6 +49,9 @@
 
     @Autowired
     private IBsOrderSchedulingService bsOrderSchedulingService;
+
+    @Autowired
+    private IBsModelNumberService bsModelNumberService;
 
     /**
      * 鏌ヨ鐢熶骇宸ュ崟鍒楄〃
@@ -97,24 +105,46 @@
     @PostMapping("/orderSchedulingForBoxCode")
     public AjaxResult addOrderSchedulingForBoxCode(@RequestBody OmProductionOrdeInfo omProductionOrdeInfo)
     {
+        //鑾峰彇褰撳墠鏃堕棿
+        LocalDateTime date= LocalDateTime.now();
+        //鍒涘缓鏃ユ湡鏃堕棿瀵硅薄鏍煎紡鍖栧櫒锛屾棩鏈熸牸寮忕被浼硷細 2023-05-23 22:18:38
+        DateTimeFormatter formatter= DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+        //灏嗘椂闂磋浆鍖栦负瀵瑰簲鏍煎紡鐨勫瓧绗︿覆
+        String fomateDate=date.format(formatter).toString();
+
+
         Integer startCode = Integer.parseInt(omProductionOrdeInfo.getStartCode());//寮�濮嬬紪鍙�
         Integer planQty = Math.toIntExact(omProductionOrdeInfo.getPlanQty());//璁″垝鏁伴噺
         String dateTimeRule = omProductionOrdeInfo.getDateTimeRule();
 
-        for(int i=0;i<planQty;i++){
-            BsOrderScheduling bsOrderScheduling = new BsOrderScheduling();
-            bsOrderScheduling.setOrderNo(omProductionOrdeInfo.getWorkOrderNo());
-            bsOrderScheduling.setModel(omProductionOrdeInfo.getTypeZ());
-            bsOrderScheduling.setEngineNo(omProductionOrdeInfo.getTypeZ() + " "+dateTimeRule+ StringUtils.leftPad(String.valueOf(startCode),3, "0"));
-            bsOrderScheduling.setProductionStatus("1");
-            bsOrderScheduling.setOperator(getUserName());
-//            bsOrderScheduling.setOperateTime(String.valueOf(new Date()));
-            bsOrderSchedulingService.insertBsOrderScheduling(bsOrderScheduling);
-            startCode ++;
-        }
+        String engineNo = "";
+        if(planQty>0) {
+            for (int i = 0; i < planQty; i++) {
+                engineNo = omProductionOrdeInfo.getTypeZ() + " " + dateTimeRule + StringUtils.leftPad(String.valueOf(startCode), 3, "0");
+                BsOrderScheduling bsOrderScheduling = new BsOrderScheduling();
+                bsOrderScheduling.setOrderNo(omProductionOrdeInfo.getWorkOrderNo());
+                bsOrderScheduling.setModel(omProductionOrdeInfo.getTypeZ());
+                bsOrderScheduling.setEngineNo(engineNo);
+                bsOrderScheduling.setProductionStatus("1");
+                bsOrderScheduling.setOperator(getUserName());
+                bsOrderScheduling.setOperateTime(fomateDate);
+                bsOrderSchedulingService.insertBsOrderScheduling(bsOrderScheduling);
+                startCode++;
+            }
 
-        omProductionOrdeInfo.setOrderStatus("2");//鏇存柊宸ュ崟鐘舵��
+            //鏂板鏈哄瀷搴忓彿
+            BsModelNumber bsModelNumber = new BsModelNumber();
+            bsModelNumber.setModel(omProductionOrdeInfo.getTypeZ());
+            bsModelNumber.setModelDate(dateTimeRule);
+            bsModelNumber.setMaxnumValue((startCode - 1) + "");
+            bsModelNumber.setSaveTime(fomateDate);
+            bsModelNumberService.insertBsModelNumber(bsModelNumber);
+        }
+        //鏇存柊宸ュ崟鐘舵��
+        omProductionOrdeInfo.setOrderStatus("2");
         return toAjax(omProductionOrdeInfoService.updateOmProductionOrdeInfo(omProductionOrdeInfo));
+
+
     }
 
     /**
@@ -150,12 +180,21 @@
     }
 
     /**
-     * table鍒椾笂绉讳笅绉�
+     * 鎺ユ敹宸ュ崟
      */
+    @PreAuthorize("@ss.hasPermi('om:productionOrde:receive')")
     @GetMapping("/getProductionNotice")
     public AjaxResult getProductionNotice(OmProductionOrdeInfo omProductionOrdeInfo)
     {
-        ReceivingServices.insertWebserviceData(omProductionOrdeInfo.getProductionNotice());
-        return AjaxResult.success();
+        String productionNotice = omProductionOrdeInfo.getProductionNotice();
+        List<OmProductionOrdeInfo> omProductionOrdeInfos = omProductionOrdeInfoService.selectOmProductionOrdeInfoList(omProductionOrdeInfo);
+        if(omProductionOrdeInfos.size() == 0){
+            try {
+                ReceivingServices.insertWebserviceData(productionNotice);
+            } catch (Exception e) {
+                return error("鎺ユ敹澶辫触锛佽妫�鏌ラ�氱煡鍗曞彿");
+            }
+        }
+        return warn("璇ヨ鍗曞凡鎺ユ敹瀹屾瘯锛屼笉鑳介噸澶嶆帴鏀讹紒");
     }
 }

--
Gitblit v1.9.3