From 515025ffd3ace6f7382f9a853d3aba50f191c8d0 Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期四, 12 十二月 2024 08:30:32 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10105/r/ERP_override

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

diff --git a/north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java b/north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java
index 88a3c3a..7acc74e 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java
@@ -27,6 +27,7 @@
 
 import java.sql.Date;
 import java.util.*;
+import java.util.stream.Collectors;
 
 import static com.example.erp.service.sd.OrderService.getOrderProcessDetails;
 
@@ -85,6 +86,8 @@
                 flowCardMapper.deleteReportingWork(processId);
                 //鍒犻櫎鍒嗘灦鏄庣粏
                 flowCardMapper.deleteFlowCardMp(orderId, processId);
+                //鍒犻櫎鎺掑簭琛ㄦ暟鎹�
+                flowCardMapper.deleteflowCardSort(orderId, processId);
                 //鍒ゆ柇璇ヨ鍗曟祦绋嬪崱鏄惁鍏ㄩ儴鍒犻櫎
                 Integer flowNumber = flowCardMapper.selectFlowCardCount(orderId);
                 if (flowNumber == 0) {
@@ -138,7 +141,7 @@
     }
 
     //淇濆瓨娴佺▼鍗℃暟鎹�
-    public Boolean addFlowCardSv(Map<String, Object> object) {
+    public Boolean addFlowCardSv(String orderId, Map<String, Object> object) {
         String userName = "";
         if (object.get("userName") != null) {
             userName = object.get("userName").toString();
@@ -159,13 +162,13 @@
                 //淇敼鍒嗘灦鐘舵�侊紝灏嗙姸鎬佹敼涓�1
                 flowCardMapper.updateFlowState(productionId, flowCard.getOrderNumber());
                 //鏌ヨ璇ヨ鍗曟湭鍒嗘灦鏁伴噺
-                Integer FlowCount = flowCardMapper.selectFlowCount(productionId);
+                Integer FlowCount = flowCardMapper.selectFlowCount(orderId);
                 if (FlowCount == 0) {
                     //淇敼璁㈠崟琛ㄥ垎鏋剁姸鎬佷负2
-                    flowCardMapper.updateProcessingCard(productionId, 2);
+                    flowCardMapper.updateProcessingCard(orderId, 2);
                 } else {
                     //淇敼璁㈠崟琛ㄥ垎鏋剁姸鎬佷负1,鏈叏閮ㄥ垎鏋跺畬鎴�
-                    flowCardMapper.updateProcessingCard(productionId, 1);
+                    flowCardMapper.updateProcessingCard(orderId, 1);
                 }
                 //鏌ヨ璁㈠崟灏忕墖琛ㄨ幏鍙栧伐鑹轰紶鍏ュ皬鐗囧伐鑹鸿〃
                 List<OrderGlassDetail> orderGlassDetailList =
@@ -294,13 +297,13 @@
                     //boolean containsCutting = flowCard.getProcess().contains("鍒囧壊");
                     String processSub=flowCard.getProcess().substring(0, 2);
                     if(processSub.equals("澶硅兌") || processSub.equals("涓┖")){
-                        itemmap.put("detail", flowCardMapper.getPrimaryListLimt(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getGlassChild(),flowCard.getProcess()));
+                        itemmap.put("detail", flowCardMapper.getPrimaryListLimt(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getGlassChild(),flowCard.getProcess(),flowCard.getOrderId()));
 
                         List<Map<String, Object>> detailList = flowCardMapper.getDetailList(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getProcess());
                         itemmap.put("detailList", detailList);
                     }
                     else {
-                        itemmap.put("detail", flowCardMapper.getPrimaryList(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getGlassChild(),flowCard.getProcess()));
+                        itemmap.put("detail", flowCardMapper.getPrimaryList(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getGlassChild(),flowCard.getProcess(),flowCard.getOrderId()));
 
                         List<Map<String, Object>> detailList = flowCardMapper.getDetailListLike(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getProcess());
                         itemmap.put("detailList", detailList);
@@ -311,13 +314,13 @@
 
                     //娴佺▼鍗℃槑缁嗘暟鎹�
                     if (printLike.equals("")||printLike.equals("null") ){
-                        itemmap.put("detail", flowCardMapper.getPrimaryListMerge(flowCard.getProcessId(), printMerge));
+                        itemmap.put("detail", flowCardMapper.getPrimaryListMerge(flowCard.getProcessId(), printMerge, flowCard.getOrderId()));
 
                         List<Map<String, Object>> detailList = flowCardMapper.getDetailList(flowCard.getProcessId(), flowCard.getTechnologyNumber(), flowCard.getProcess());
                         itemmap.put("detailList", detailList);
                     }
                     else {
-                        itemmap.put("detail", flowCardMapper.getPrimaryList(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()), flowCard.getGlassChild(), flowCard.getProcess()));
+                        itemmap.put("detail", flowCardMapper.getPrimaryList(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()), flowCard.getGlassChild(), flowCard.getProcess(), flowCard.getOrderId()));
 
                         List<Map<String, Object>> detailList = flowCardMapper.getDetailListLike(flowCard.getProcessId(), printMerge, flowCard.getProcess());
                         itemmap.put("detailList", detailList);
@@ -359,6 +362,67 @@
         return map;
     }
 
+    public Map<String, Object> getSelectPrintProject(String printProject) {
+
+        Map<String, Object> map = new HashMap<>();
+        List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();//鏈�缁堢粨鏋�
+        List<FlowCard> flowCardList = flowCardMapper.getFlowCardListPrintProject(printProject);
+        if (!flowCardList.isEmpty()) {
+            for (FlowCard flowCard : flowCardList) {
+                Map<String, Object> itemmap = new HashMap<>();
+
+
+                    //鏄惁鍖呭惈鍒囧壊
+                    //boolean containsCutting = flowCard.getProcess().contains("鍒囧壊");
+                    String processSub=flowCard.getProcess().substring(0, 2);
+                    if(processSub.equals("澶硅兌") || processSub.equals("涓┖")){
+                        itemmap.put("detail", flowCardMapper.getPrimaryListLimt(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getGlassChild(),flowCard.getProcess(),flowCard.getOrderId()));
+
+                        List<Map<String, Object>> detailList = flowCardMapper.getDetailList(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getProcess());
+                        itemmap.put("detailList", detailList);
+                    }
+                    else {
+                        itemmap.put("detail", flowCardMapper.getPrimaryList(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getGlassChild(),flowCard.getProcess(),flowCard.getOrderId()));
+
+                        List<Map<String, Object>> detailList = flowCardMapper.getDetailListLike(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getProcess());
+                        itemmap.put("detailList", detailList);
+                    }
+
+
+
+                //宸ヨ壓娴佺▼
+                //List<Map<String, Object>> processList = flowCardMapper.getProcessList(flowCard.getProcessId(), flowCard.getTechnologyNumber());
+                String input = flowCard.getProcess();
+                String delimiter = "->";
+
+                // 鍒嗗壊瀛楃涓�
+                String[] parts = input.split(delimiter);
+
+                // 鍒涘缓 List<Map<String, Object>>
+                List<Map<String, Object>> processList = new ArrayList<>();
+
+                // 閬嶅巻鍒嗗壊鍚庣殑閮ㄥ垎骞跺皢鍏跺瓨鍏� List<Map<String, Object>>
+                for (int i = 0; i < parts.length; i++) {
+                    Map<String, Object> maps = new HashMap<>();
+                    maps.put("id", i); // 娣诲姞涓�涓储寮曞瓧娈�
+                    maps.put("process", parts[i]); // 娣诲姞瀹為檯鐨勫��
+
+                    processList.add(maps);
+                }
+
+                itemmap.put("processList", processList);
+                //  itemmap.put("numberList", numberList);
+                itemmap.put("count", flowCardMapper.countFlowCard(flowCard.getOrderId()));
+                itemmap.put("remarkList", flowCardMapper.remakList(flowCard.getProcessId()));
+                list.add(itemmap);
+
+            }
+        }
+
+        map.put("data", list);
+        return map;
+    }
+
     public Boolean updateComposingSv(Map<String, Object> object) {
         List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("composing")), FlowCard.class);
         if (!flowCardList.isEmpty()) {
@@ -379,6 +443,8 @@
             map.put("data", flowCardMapper.getPrintLabel(projectNo));
         } else if (Objects.equals(type, "2")) {
             map.put("data", flowCardMapper.getPrintLabel2(projectNo));
+        } else if (Objects.equals(type, "3")) {
+            map.put("data", flowCardMapper.getPrintLabel3(projectNo));
         }
 
         return map;
@@ -401,6 +467,27 @@
                 }
             }
             map.put("data", list);
+
+        return map;
+    }
+
+    public Map<String, Object> getSelectPrintLabelDetails(Map<String, Object> object) {
+        Map<String, Object> map = new HashMap<>();
+
+        List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();//鏈�缁堢粨鏋�
+        List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("printList")), FlowCard.class);
+        if (!flowCardList.isEmpty()) {
+            for (FlowCard flowCard : flowCardList) {
+                // Integer count=flowCardMapper.getPrintLabelCount(flowCard.getProcessId(), flowCard.getTechnologyNumber());
+                Map<String, Object> itemmap = new HashMap<>();
+                // for (int i = 0; i < count; i++) {
+                itemmap.put("data", flowCardMapper.getPrintLabelDetail(flowCard));
+                list.add(itemmap);
+                //}
+
+            }
+        }
+        map.put("data", list);
 
         return map;
     }
@@ -517,21 +604,21 @@
                 //娴佺▼鍗¤〃澶磋〃灏炬暟鎹�
                 //鏄惁浼犲叆鍚堝苟灞傛暟
                 if (printMerge.equals("")||printMerge.equals("null") ){
-                    itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(),flowCard.getReportingWorkId(),mergeTechnologyNumber));
-                    List<Map<String, Object>> detailList = flowCardMapper.getDetailListRefund(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber(),flowCard.getReportingWorkId());
+                    itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(),flowCard.getReportingWorkId(),mergeTechnologyNumber,flowCard.getPatchReason(),flowCard.getOrderId()));
+                    List<Map<String, Object>> detailList = flowCardMapper.getDetailListRefund(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber(),flowCard.getReportingWorkId(),flowCard.getPatchReason());
                     itemmap.put("detailList", detailList);
                 }
                 else {
 
                     //娴佺▼鍗℃槑缁嗘暟鎹�
                     if (printLike.equals("")||printLike.equals("null") ){
-                        itemmap.put("detail", flowCardMapper.getPrimaryListMergeRefund(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber()));
+                        itemmap.put("detail", flowCardMapper.getPrimaryListMergeRefund(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber(),flowCard.getOrderId()));
 
-                        List<Map<String, Object>> detailList = flowCardMapper.getDetailListRefund(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber(), flowCard.getReportingWorkId());
+                        List<Map<String, Object>> detailList = flowCardMapper.getDetailListRefund(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber(), flowCard.getReportingWorkId(), flowCard.getPatchReason());
                         itemmap.put("detailList", detailList);
                     }
                     else {
-                        itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(), flowCard.getReportingWorkId(), mergeTechnologyNumber));
+                        itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(), flowCard.getReportingWorkId(), mergeTechnologyNumber, flowCard.getPatchReason(), flowCard.getOrderId()));
 
                         List<Map<String, Object>> detailList = flowCardMapper.getDetailListLikeRefund(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber(),flowCard.getReportingWorkId());
                         itemmap.put("detailList", detailList);
@@ -569,7 +656,7 @@
                 //娴佺▼鍗¤〃澶磋〃灏炬暟鎹�
                 //鏄惁浼犲叆鍚堝苟灞傛暟
                 if (printMerge.equals("")||printMerge.equals("null") ){
-                    itemmap.put("detail", flowCardMapper.getPrimaryListRework(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(),flowCard.getReportingWorkId()));
+                    itemmap.put("detail", flowCardMapper.getPrimaryListRework(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(),flowCard.getReportingWorkId(),flowCard.getOrderId()));
                     List<Map<String, Object>> detailList = flowCardMapper.getDetailListRework(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber(),flowCard.getReportingWorkId());
                     itemmap.put("detailList", detailList);
                 }
@@ -577,13 +664,13 @@
 
                     //娴佺▼鍗℃槑缁嗘暟鎹�
                     if (printLike.equals("")||printLike.equals("null") ){
-                        itemmap.put("detail", flowCardMapper.getPrimaryListMergeRework(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber()));
+                        itemmap.put("detail", flowCardMapper.getPrimaryListMergeRework(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber(), flowCard.getOrderId()));
 
                         List<Map<String, Object>> detailList = flowCardMapper.getDetailListRework(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber(), flowCard.getReportingWorkId());
                         itemmap.put("detailList", detailList);
                     }
                     else {
-                        itemmap.put("detail", flowCardMapper.getPrimaryListRework(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(), flowCard.getReportingWorkId()));
+                        itemmap.put("detail", flowCardMapper.getPrimaryListRework(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(), flowCard.getReportingWorkId(), flowCard.getOrderId()));
 
                         List<Map<String, Object>> detailList = flowCardMapper.getDetailListLikeRework(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber(),flowCard.getReportingWorkId());
                         itemmap.put("detailList", detailList);
@@ -605,14 +692,19 @@
         return map;
     }
 
-    public Object selectPrintDetailsSv(Map<String, Object> object, String inquiryMode) {
+    public Object selectPrintDetailsSv(Map<String, Object> object, String inquiryMode,Integer type) {
         Map<String, Object> map = new HashMap<>();
         List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();//鏈�缁堢粨鏋�
         List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("printList")), FlowCard.class);
         if (!flowCardList.isEmpty()) {
             for (FlowCard flowCard : flowCardList) {
                 Map<String, Object> itemmap = new HashMap<>();
-                    itemmap.put("detail", flowCardMapper.selectPrintDetailsMp(flowCard.getOrderId()));
+                    if(type==1){
+                        itemmap.put("detail", flowCardMapper.selectPrintDetailsMp(flowCard.getOrderId()));
+                    }else if(type==2){
+                        itemmap.put("detail", flowCardMapper.selectPrintDetailsMp1(flowCard.getOrderId()));
+                    }
+
                 list.add(itemmap);
             }
         }
@@ -626,12 +718,24 @@
         List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();//鏈�缁堢粨鏋�
         List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("printList")), FlowCard.class);
         if (!flowCardList.isEmpty()) {
+            Set<String> processedProcessIds = new HashSet<>();  // 鐢ㄦ潵瀛樻斁宸插鐞嗚繃鐨� processId
 
             if (lableType != 2){
                 for (FlowCard flowCard : flowCardList) {
+                    String processId = flowCard.getProcessId();
+                    String orderNumber = flowCard.getOrderNumber().toString();
+
+                    // 妫�鏌ユ槸鍚﹀凡缁忓鐞嗚繃璇� processId锛屽鏋滃鐞嗚繃鍒欒烦杩�
+                    if (processedProcessIds.contains(processId)&&processedProcessIds.contains(orderNumber)) {
+                        continue;
+                    }
                     Map<String, Object> itemmap = new HashMap<>();
-                    itemmap.put("data", flowCardMapper.getPrintCustomDataDetails(flowCard.getProcessId(),flowCard.getOrderNumber()));
+                    itemmap.put("data", flowCardMapper.getPrintCustomDataDetails(flowCard.getProcessId(),flowCard.getOrderNumber(),flowCard.getPrintQuantity()));
                     list.add(itemmap);
+
+                    // 灏嗚 processId 鍔犲叆宸插鐞嗛泦鍚�
+                    processedProcessIds.add(processId);
+                    processedProcessIds.add(orderNumber);
                 }
             }
             else{
@@ -643,6 +747,13 @@
             }
         }
         map.put("data", list);
+        map.put("title", flowCardMapper.getPrintTitle(type));
+        return map;
+    }
+
+    public Map<String, Object> getPrintCustomDataProjectNo(String type, String projectNo) {
+        Map<String, Object> map = new HashMap<>();
+        map.put("data", flowCardMapper.getPrintCustomDataProjectNo(projectNo));
         map.put("title", flowCardMapper.getPrintTitle(type));
         return map;
     }
@@ -671,10 +782,18 @@
         List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("flowCard")), FlowCard.class);
         if (!flowCardList.isEmpty()) {
             List<Map<String, Object>> flowCardList1=flowCardMapper.selectFlowCardMerge(flowCardList.get(0).getProcessId());
-            if(flowCardList1.size()==1){
-                flowCardMapper.updateFlowCardMerge(flowCardList.get(0).getProcessId());
-                returns="true";
+            int index=1;
+            for(int i = 0;i < flowCardList1.size();i++){
+                if(Integer.valueOf(flowCardList1.get(i).get("count2").toString())>1){
+                    List<Integer> technologyNumber = Arrays.stream(flowCardList1.get(i).get("count1").toString().split(","))
+                            .map(Integer::parseInt)
+                            .collect(Collectors.toList());
+                    flowCardMapper.updateFlowCardMerge(flowCardList.get(0).getProcessId(),technologyNumber,index);
+                    index+=1;
+                    returns="true";
+                }
             }
+
 
         }
 
@@ -714,6 +833,116 @@
         return flowCardList;
     }
 
+    public Boolean checkboxDeleteSv(Map<String, Object> object) {
+        String userName = "";
+        if (object.get("userName") != null) {
+            userName = object.get("userName").toString();
+        }
+        String userId = "";
+        if (object.get("userId") != null) {
+            userId = object.get("userId").toString();
+        }
+        List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("composing")), FlowCard.class);
+            for (FlowCard flowCard : flowCardList) {
+                Integer count = flowCardMapper.reportingWorkCount(flowCard.getProcessId());
+                if (count == 0) {
+                    //淇敼鍒嗘灦鐘舵��
+                    flowCardMapper.updateDeleteState(flowCard.getOrderId(), flowCard.getProcessId());
+                    //鍒犻櫎鎶ュ伐娴佺▼鏄庣粏琛ㄦ暟鎹�
+                    flowCardMapper.deleteReportingWork(flowCard.getProcessId());
+                    //鍒犻櫎鍒嗘灦鏄庣粏
+                    flowCardMapper.deleteFlowCardMp(flowCard.getOrderId(), flowCard.getProcessId());
+                    //鍒犻櫎鎺掑簭琛ㄦ暟鎹�
+                    flowCardMapper.deleteflowCardSort(flowCard.getOrderId(), flowCard.getProcessId());
+                    //鍒ゆ柇璇ヨ鍗曟祦绋嬪崱鏄惁鍏ㄩ儴鍒犻櫎
+                    Integer flowNumber = flowCardMapper.selectFlowCardCount(flowCard.getOrderId());
+                    if (flowNumber == 0) {
+                        //淇敼璁㈠崟琛ㄥ垎鏋剁姸鎬佷负0,鍏ㄩ儴鍒犻櫎
+                        flowCardMapper.updateProcessingCard(flowCard.getOrderId(), 0);
+                    } else {
+                        //淇敼璁㈠崟琛ㄥ垎鏋剁姸鎬佷负1,鍒犻櫎閮ㄥ垎
+                        flowCardMapper.updateProcessingCard(flowCard.getOrderId(), 1);
+                    }
+
+                    //淇濆瓨鏃ュ織
+                    Log log = new Log();
+                    log.setContent(flowCard.getOrderId()+flowCard.getProcessId());
+                    log.setFunction("checkboxDeleteSv娴佺▼鍗″垹闄�");
+                    log.setOperatorId(userId);
+                    log.setOperator(userName);
+                    logService.saveLog(log);
+                } else {
+                    return false;
+                }
+            }
+            return true;
+
+
+    }
+
+    public Map<String, Object> getPrintProjectDetails(String projectNo) {
+        Map<String, Object> map = new HashMap<>();
+        map.put("data", flowCardMapper.getPrintProjectDetailsMp(projectNo));
+        return map;
+    }
+
+    public Map<String, Object> getPrintCustomDataProjectNoDetailSv(String type, Integer detailType, Map<String, Object> object) {
+        Map<String, Object> map = new HashMap<>();
+        List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();//鏈�缁堢粨鏋�
+        List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("printList")), FlowCard.class);
+        if (!flowCardList.isEmpty()) {
+            Set<String> processedProcessIds = new HashSet<>();  // 鐢ㄦ潵瀛樻斁宸插鐞嗚繃鐨� processId
+                for (FlowCard flowCard : flowCardList) {
+                    Map<String, Object> itemmap = new HashMap<>();
+                    if (detailType==0){
+                        itemmap.put("data", flowCardMapper.getPrintCustomDataProjectDetail(flowCard.getProjectNo(),flowCard.getStockId()));
+
+                    }
+                    else if (detailType==1) {
+                        itemmap.put("data", flowCardMapper.getPrintCustomDataProject(flowCard.getProjectNo()));
+
+                    }
+                    else  {
+                        itemmap.put("data", flowCardMapper.getPrintCustomDataProject(flowCard.getProjectNo()));
+
+                    }
+                    list.add(itemmap);
+                }
+        }
+        map.put("data", list);
+        map.put("title", flowCardMapper.getPrintTitle(type));
+        return map;
+    }
+
+    public Boolean updateProcessSv(String processId, String technologyNumber, String orderId, String Orderprocess, Map<String, Object> object) {
+
+        //鍒ゆ柇璇ユ祦绋嬪崱鏄惁鎶ュ伐
+        Integer count = flowCardMapper.reportingWorkCount(processId);
+        if (count == 0) {
+            //鍒犻櫎灏忕墖宸ヨ壓琛ㄥ搴旂殑鏁版嵁
+            flowCardMapper.deleteProcessMp(processId,technologyNumber);
+            //閲嶆柊鎻掑叆淇敼濂藉伐鑹烘祦绋嬪崱鐨勬暟鎹�
+            List<String> newCraftList = (List<String>) object.get("newCraft");
+            List<String> numberList = (List<String>) object.get("technologyNumber");
+            // 鍒ゆ柇 newCraftList 鏄惁涓虹┖
+            if (newCraftList != null) {
+                for (String number : numberList) {
+                    //淇敼璁㈠崟灏忕墖琛ㄥ伐鑹烘祦绋�
+                    flowCardMapper.updateOrderProcessMp(orderId,number,technologyNumber,Orderprocess);
+                    for (String process : newCraftList) {
+                        flowCardMapper.updateProcessMp(processId,technologyNumber,process,number);
+                    }
+                }
+            }
+
+            return true;
+        }else {
+            return false;
+        }
+
+
+
+    }
 }
 
 

--
Gitblit v1.8.0