From 947622a11997e34a92b5b74bc5982aba21562240 Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期二, 09 十二月 2025 12:29:09 +0800
Subject: [PATCH] 次破报表添加厚度以及相关功能

---
 north-glass-erp/src/main/java/com/example/erp/service/pp/WorkOrderService.java |   74 ++++++++++++++++++++++++++-----------
 1 files changed, 52 insertions(+), 22 deletions(-)

diff --git a/north-glass-erp/src/main/java/com/example/erp/service/pp/WorkOrderService.java b/north-glass-erp/src/main/java/com/example/erp/service/pp/WorkOrderService.java
index ebe1495..65888ab 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/pp/WorkOrderService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/pp/WorkOrderService.java
@@ -11,6 +11,8 @@
 import org.springframework.stereotype.Service;
 
 import java.sql.Date;
+import java.time.LocalDate;
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -22,14 +24,27 @@
     WorkOrderMapper workOrderMapper;
 
     //鏌ヨ宸ュ崟
-    public Map<String, Object> defaultDateWork(Date selectTime1, Date selectTime2, Integer state, OrderGlassDetail orderGlassDetail) {
-        Map<String, Object> map = new HashMap<>();
-        if (state == 1) {
-            map.put("data", workOrderMapper.selectWordOrder(selectTime1, selectTime2, orderGlassDetail));
-        } else {
-            map.put("data", workOrderMapper.selectWordOrderNo(selectTime1, selectTime2, orderGlassDetail));
+    public Map<String, Object> defaultDateWork(List<String> selectDate, Integer state, OrderGlassDetail orderGlassDetail) {
+        String endDate = LocalDate.now().toString();
+        String startDate = LocalDate.now().minusDays(15).toString();
+        if(selectDate !=null && selectDate.size()==2){
+            if(!selectDate.get(0).isEmpty()){
+                startDate = selectDate.get(0);
+            }
+            if(!selectDate.get(1).isEmpty()){
+                endDate = selectDate.get(1);
+            }
         }
-
+        Map<String, Object> map = new HashMap<>();
+        if (state == 1) {//宸茶浆宸ュ崟
+            map.put("data", workOrderMapper.selectWordOrder(startDate, endDate, orderGlassDetail));
+        } else {//鏈浆宸ュ崟
+            map.put("data", workOrderMapper.selectWordOrderNo(startDate, endDate, orderGlassDetail));
+        }
+        List<String> list = new ArrayList<>();
+        list.add(startDate);
+        list.add(endDate);
+        map.put("selectDate",list);
         return map;
     }
 
@@ -57,10 +72,15 @@
         String orderId = orderDetaillist.get(0).getOrderId();
 
         for (OrderDetail orderDetail : orderDetaillist) {
+            if(orderDetail.getOrderId()!= orderId){
+                orderId = orderDetail.getOrderId();
+                letters = '1';
+                lettr = 'A';
+            }
             //鐢熸垚鐢熶骇璁㈠崟鍙�
             for (int i = 0; i < count; i++) {
                 letters = lettr++;
-                productIdVl = orderId + letters;
+                productIdVl = orderDetail.getOrderId() + letters;
                 //鏌ヨ鐢熸垚鐨勭敓浜ц鍗曞彿鏄惁瀛樺湪
                 Integer workCount = workOrderMapper.selectOrderNumber(productIdVl);
                 if (workCount < 1) {
@@ -69,7 +89,9 @@
 
             }
             //娣诲姞鐢熶骇璁㈠崟
-            workOrderMapper.addOrderWorkMp(productIdVl, orderDetail.getOrderId(), orderDetail.getProductId(), orderDetail.getProductName(), userName);
+            workOrderMapper.addOrderWorkMp(productIdVl, orderDetail.getOrderId(), orderDetail.getProductId(), orderDetail.getProductName(), userName,orderDetail.getOrderGlassDetail().getProcess());
+            //閬垮厤鍚屽簭鍙蜂笉鍚屽伐鑹轰慨鏀�
+            workOrderMapper.updateWorkIdMp(orderDetail.getOrderId(),userName);
             Integer state = 2;
             Integer states = 1;
             //鏌ヨ璇ヨ鍗曟湭杞敓浜ц鍗曠殑鏉℃暟
@@ -88,20 +110,28 @@
     //鍒犻櫎鐢熶骇璁㈠崟
     public Boolean deleteOrderWorkSv(String orderId, String productionId) {
         if (!orderId.isEmpty() && !productionId.isEmpty()) {
-            //鍒犻櫎璁㈠崟灏忕墖琛ㄧ敓浜ц鍗曞彿
-            workOrderMapper.deleteOrderWorkMp(orderId, productionId);
-            int state = 0;
-            int states = 1;
-            //鏌ヨ璇ヨ鍗曟湭杞敓浜ц鍗曠殑鏉℃暟
-            Integer noWorkCount = workOrderMapper.selectWorkCount(orderId);
-            //鏌ヨ璇ヨ鍗曡浆鐢熶骇璁㈠崟鐨勬潯鏁�
-            Integer yesWorkCount = workOrderMapper.selectYesWorkCount(orderId);
-            if (noWorkCount.equals(yesWorkCount)) {
-                workOrderMapper.updateWorkType(orderId, state);
-            } else {
-                workOrderMapper.updateWorkType(orderId, states);
+            //鏌ヨ璇ヨ鍗曟槸鍚﹀凡缁忓缓绔嬫祦绋嬪崱
+            Integer getProcessCard = workOrderMapper.selectProcessCard(orderId);
+            if (getProcessCard == 0){
+                //鍒犻櫎璁㈠崟灏忕墖琛ㄧ敓浜ц鍗曞彿
+                workOrderMapper.deleteOrderWorkMp(orderId, productionId);
+                int state = 0;
+                int states = 1;
+                //鏌ヨ璇ヨ鍗曟湭杞敓浜ц鍗曠殑鏉℃暟
+                Integer noWorkCount = workOrderMapper.selectWorkCount(orderId);
+                //鏌ヨ璇ヨ鍗曡浆鐢熶骇璁㈠崟鐨勬潯鏁�
+                Integer yesWorkCount = workOrderMapper.selectYesWorkCount(orderId);
+                if (noWorkCount.equals(yesWorkCount)) {//鍒ゆ柇璁㈠崟鏄惁鍏ㄩ儴杞伐鍗�
+                    workOrderMapper.updateWorkType(orderId, state);//鍏ㄩ儴
+                } else {
+                    workOrderMapper.updateWorkType(orderId, states);//閮ㄥ垎
+                }
+                return true;
             }
-            return true;
+            else {
+                return false;
+            }
+
         } else {
             return false;
         }

--
Gitblit v1.8.0