From 4fd5b05a139e7d106c33ca7a6eabd153f8060676 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期四, 08 八月 2024 13:46:39 +0800
Subject: [PATCH] 修改精度丢失

---
 north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java |   61 +++++++++++++++++++++++-------
 1 files changed, 47 insertions(+), 14 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 6bf2dea..5aa3cad 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
@@ -218,14 +218,21 @@
         return map;
     }
 
-    public Object selectPrintSv(Map<String, Object> object) {
+    public Object selectPrintSv(Map<String, Object> object, String inquiryMode) {
         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.selectPrintMp(flowCard.getOrderId()));
+                if ("1".equals(inquiryMode)){
+                    itemmap.put("detail", flowCardMapper.selectPrintMp(flowCard.getOrderId()));
+                } else if ("3".equals(inquiryMode)) {
+                    itemmap.put("detail", flowCardMapper.selectPrintAllMp(flowCard.getOrderId()));
+                } else {
+                    itemmap.put("detail", flowCardMapper.selectPrintNotMp(flowCard.getOrderId()));
+                }
+
                 list.add(itemmap);
             }
         }
@@ -259,9 +266,18 @@
                 //娴佺▼鍗¤〃澶磋〃灏炬暟鎹�
                 //鏄惁浼犲叆鍚堝苟灞傛暟
                 if (printMerge.equals("")||printMerge.equals("null") ){
-                    itemmap.put("detail", flowCardMapper.getPrimaryList(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber())));
+                    itemmap.put("detail", flowCardMapper.getPrimaryList(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getGlassChild(),flowCard.getProcess()));
+                    //鏄惁鍖呭惈鍒囧壊
+                    boolean containsCutting = flowCard.getProcess().contains("鍒囧壊");
+                    if(String.valueOf(flowCard.getTechnologyNumber()).length()>1 && containsCutting){
+                        List<Map<String, Object>> detailList = flowCardMapper.getDetailListLike(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()));
+                        itemmap.put("detailList", detailList);
+                    }
+                    else {
                         List<Map<String, Object>> detailList = flowCardMapper.getDetailList(flowCard.getProcessId(), flowCard.getTechnologyNumber());
                         itemmap.put("detailList", detailList);
+                    }
+
                 }
                 else {
 
@@ -273,7 +289,7 @@
                         itemmap.put("detailList", detailList);
                     }
                     else {
-                        itemmap.put("detail", flowCardMapper.getPrimaryList(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber())));
+                        itemmap.put("detail", flowCardMapper.getPrimaryList(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()), flowCard.getGlassChild(), flowCard.getProcess()));
 
                         List<Map<String, Object>> detailList = flowCardMapper.getDetailListLike(flowCard.getProcessId(), printMerge);
                         itemmap.put("detailList", detailList);
@@ -281,7 +297,24 @@
                 }
 
                 //宸ヨ壓娴佺▼
-                List<Map<String, Object>> processList = flowCardMapper.getProcessList(flowCard.getProcessId(), flowCard.getTechnologyNumber());
+                //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);
@@ -379,7 +412,7 @@
             else{
                 for (FlowCard flowCard : flowCardList) {
                     Map<String, Object> itemmap = new HashMap<>();
-                    itemmap.put("data", flowCardMapper.getPrintCustomData(flowCard.getProcessId(),flowCard.getTechnologyNumber()));
+                    itemmap.put("data", flowCardMapper.getPrintCustomDataSemi(flowCard.getProcessId(),flowCard.getTechnologyNumber()));
                     list.add(itemmap);
                 }
             }
@@ -441,8 +474,8 @@
                 //娴佺▼鍗¤〃澶磋〃灏炬暟鎹�
                 //鏄惁浼犲叆鍚堝苟灞傛暟
                 if (printMerge.equals("")||printMerge.equals("null") ){
-                    itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber()));
-                    List<Map<String, Object>> detailList = flowCardMapper.getDetailListRefund(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber());
+                    itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(),flowCard.getReportingWorkId()));
+                    List<Map<String, Object>> detailList = flowCardMapper.getDetailListRefund(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber(),flowCard.getReportingWorkId());
                     itemmap.put("detailList", detailList);
                 }
                 else {
@@ -451,13 +484,13 @@
                     if (printLike.equals("")||printLike.equals("null") ){
                         itemmap.put("detail", flowCardMapper.getPrimaryListMergeRefund(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber()));
 
-                        List<Map<String, Object>> detailList = flowCardMapper.getDetailListRefund(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber());
+                        List<Map<String, Object>> detailList = flowCardMapper.getDetailListRefund(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber(), flowCard.getReportingWorkId());
                         itemmap.put("detailList", detailList);
                     }
                     else {
-                        itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber()));
+                        itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(), flowCard.getReportingWorkId()));
 
-                        List<Map<String, Object>> detailList = flowCardMapper.getDetailListLikeRefund(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber());
+                        List<Map<String, Object>> detailList = flowCardMapper.getDetailListLikeRefund(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber(),flowCard.getReportingWorkId());
                         itemmap.put("detailList", detailList);
                     }
                 }
@@ -494,7 +527,7 @@
                 //鏄惁浼犲叆鍚堝苟灞傛暟
                 if (printMerge.equals("")||printMerge.equals("null") ){
                     itemmap.put("detail", flowCardMapper.getPrimaryListRework(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber()));
-                    List<Map<String, Object>> detailList = flowCardMapper.getDetailListRework(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber());
+                    List<Map<String, Object>> detailList = flowCardMapper.getDetailListRework(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber(),flowCard.getReportingWorkId());
                     itemmap.put("detailList", detailList);
                 }
                 else {
@@ -503,13 +536,13 @@
                     if (printLike.equals("")||printLike.equals("null") ){
                         itemmap.put("detail", flowCardMapper.getPrimaryListMergeRework(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber()));
 
-                        List<Map<String, Object>> detailList = flowCardMapper.getDetailListRework(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber());
+                        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()));
 
-                        List<Map<String, Object>> detailList = flowCardMapper.getDetailListLikeRework(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber());
+                        List<Map<String, Object>> detailList = flowCardMapper.getDetailListLikeRework(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber(),flowCard.getReportingWorkId());
                         itemmap.put("detailList", detailList);
                     }
                 }

--
Gitblit v1.8.0