From caf567becb6378f848b3b930821a4b38cb7564a5 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期二, 10 九月 2024 12:43:20 +0800
Subject: [PATCH] Merge branch 'master' of http://bore.pub:10439/r/ERP_override

---
 north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java |  136 ++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 128 insertions(+), 8 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 de8b7ad..96f2970 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
@@ -5,12 +5,16 @@
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.dynamic.datasource.annotation.DS;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.example.erp.common.Constants;
 import com.example.erp.entity.pp.FlowCard;
 import com.example.erp.entity.sd.OrderGlassDetail;
 import com.example.erp.entity.sd.OrderProcessDetail;
+import com.example.erp.entity.userInfo.Log;
+import com.example.erp.exception.ServiceException;
 import com.example.erp.mapper.pp.FlowCardMapper;
 import com.example.erp.mapper.sd.OrderGlassDetailMapper;
 import com.example.erp.mapper.sd.OrderProcessDetailMapper;
+import com.example.erp.service.userInfo.LogService;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import org.springframework.stereotype.Service;
 
@@ -35,11 +39,14 @@
     OrderGlassDetailMapper orderGlassDetailMapper;
     final
     OrderProcessDetailMapper orderProcessDetailMapper;
+    final
+    LogService logService;
 
-    public FlowCardService(FlowCardMapper flowCardMapper, OrderGlassDetailMapper orderGlassDetailMapper, OrderProcessDetailMapper orderProcessDetailMapper) {
+    public FlowCardService(FlowCardMapper flowCardMapper, OrderGlassDetailMapper orderGlassDetailMapper, OrderProcessDetailMapper orderProcessDetailMapper,LogService logService) {
         this.flowCardMapper = flowCardMapper;
         this.orderGlassDetailMapper = orderGlassDetailMapper;
         this.orderProcessDetailMapper = orderProcessDetailMapper;
+        this.logService= logService;
     }
 
     //娴佺▼鍗$鐞嗘煡璇�
@@ -66,7 +73,7 @@
     }
 
     //鍒犻櫎娴佺▼鍗�
-    public Boolean deleteFlowCardSv(String orderId, String processId) {
+    public Boolean deleteFlowCardSv(String orderId, String processId, String userId, String userName) {
         if (!orderId.isEmpty() && !processId.isEmpty()) {
             //鍒ゆ柇璇ユ祦绋嬪崱鏄惁鎶ュ伐
             Integer count = flowCardMapper.reportingWorkCount(processId);
@@ -78,6 +85,8 @@
                 flowCardMapper.deleteReportingWork(processId);
                 //鍒犻櫎鍒嗘灦鏄庣粏
                 flowCardMapper.deleteFlowCardMp(orderId, processId);
+                //鍒犻櫎鎺掑簭琛ㄦ暟鎹�
+                flowCardMapper.deleteflowCardSort(orderId, processId);
                 //鍒ゆ柇璇ヨ鍗曟祦绋嬪崱鏄惁鍏ㄩ儴鍒犻櫎
                 Integer flowNumber = flowCardMapper.selectFlowCardCount(orderId);
                 if (flowNumber == 0) {
@@ -87,6 +96,14 @@
                     //淇敼璁㈠崟琛ㄥ垎鏋剁姸鎬佷负1,鍒犻櫎閮ㄥ垎
                     flowCardMapper.updateProcessingCard(orderId, 1);
                 }
+
+                //淇濆瓨鏃ュ織
+                Log log = new Log();
+                log.setContent(orderId+processId);
+                log.setFunction("deleteFlowCardSv娴佺▼鍗″垹闄�");
+                log.setOperatorId(userId);
+                log.setOperator(userName);
+                logService.saveLog(log);
                 return true;
             } else {
                 return false;
@@ -101,6 +118,7 @@
     public Map<String, Object> selectNoCardSv(String orderId, String productionId, FlowCard flowCard) {
         Map<String, Object> map = new HashMap<>();
         map.put("data", flowCardMapper.selectNoCardMp(orderId, productionId, flowCard));
+        map.put("maxFlowCard", flowCardMapper.selectMaxFlowCard(orderId, productionId));
         map.put("orderOtherMoney", flowCardMapper.selectorderOtherMoney());
         return map;
     }
@@ -166,7 +184,13 @@
                 //璧嬪�艰鍗曞伐鑹鸿〃
                 orderProcessDetailMapper.insertOrderProcessDetail(orderProcessDetailList);
             }
-
+            //淇濆瓨鏃ュ織
+            Log log = new Log();
+            log.setContent(object.toString());
+            log.setFunction("addFlowCardSv娴佺▼鍗℃柊澧�");
+            log.setOperatorId((String) object.get("userId"));
+            log.setOperator((String) object.get("userName"));
+            logService.saveLog(log);
             return true;
         } else {
             return false;
@@ -325,6 +349,7 @@
                 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);
 
             }
@@ -478,7 +503,7 @@
         return true;
     }
 
-    public Map<String, Object> getSelectPrintingRefundSv(Map<String, Object> object, String printMerge, String printLike) {
+    public Map<String, Object> getSelectPrintingRefundSv(Map<String, Object> object, String printMerge, String printLike, String mergeTechnologyNumber) {
         if (printMerge == null){
             printMerge= "";
         }
@@ -494,7 +519,7 @@
                 //娴佺▼鍗¤〃澶磋〃灏炬暟鎹�
                 //鏄惁浼犲叆鍚堝苟灞傛暟
                 if (printMerge.equals("")||printMerge.equals("null") ){
-                    itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(),flowCard.getReportingWorkId()));
+                    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("detailList", detailList);
                 }
@@ -508,7 +533,7 @@
                         itemmap.put("detailList", detailList);
                     }
                     else {
-                        itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(), flowCard.getReportingWorkId()));
+                        itemmap.put("detail", flowCardMapper.getPrimaryListRefund(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(), flowCard.getReportingWorkId(), mergeTechnologyNumber));
 
                         List<Map<String, Object>> detailList = flowCardMapper.getDetailListLikeRefund(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber(),flowCard.getReportingWorkId());
                         itemmap.put("detailList", detailList);
@@ -546,7 +571,7 @@
                 //娴佺▼鍗¤〃澶磋〃灏炬暟鎹�
                 //鏄惁浼犲叆鍚堝苟灞傛暟
                 if (printMerge.equals("")||printMerge.equals("null") ){
-                    itemmap.put("detail", flowCardMapper.getPrimaryListRework(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber()));
+                    itemmap.put("detail", flowCardMapper.getPrimaryListRework(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(),flowCard.getReportingWorkId()));
                     List<Map<String, Object>> detailList = flowCardMapper.getDetailListRework(flowCard.getProcessId(), flowCard.getTechnologyNumber(),flowCard.getOrderNumber(),flowCard.getReportingWorkId());
                     itemmap.put("detailList", detailList);
                 }
@@ -560,7 +585,7 @@
                         itemmap.put("detailList", detailList);
                     }
                     else {
-                        itemmap.put("detail", flowCardMapper.getPrimaryListRework(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber()));
+                        itemmap.put("detail", flowCardMapper.getPrimaryListRework(flowCard.getProcessId(), String.valueOf(flowCard.getTechnologyNumber()),flowCard.getOrderNumber(), flowCard.getReportingWorkId()));
 
                         List<Map<String, Object>> detailList = flowCardMapper.getDetailListLikeRework(flowCard.getProcessId(), printMerge,flowCard.getOrderNumber(),flowCard.getReportingWorkId());
                         itemmap.put("detailList", detailList);
@@ -642,6 +667,101 @@
 
 
     }
+
+    public String mergeFlowCard(Map<String, Object> object) {
+        String returns= "false";
+        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";
+            }
+
+        }
+
+        return returns;
+
+
+    }
+
+    public  List<FlowCard> getProcessCard(Map<String, String> processCards) {
+        String processCard = processCards.get("processCard");
+        if(!processCard.contains("/")){
+            throw new ServiceException(Constants.Code_600, "閿欒鐨勬祦绋嬪崱鍙凤紝璇锋鏌�!");
+        }
+
+        String[] processCardList = processCard.split("/");
+
+        List<FlowCard> flowCardList = flowCardMapper.selectList(
+                new QueryWrapper<FlowCard>()
+                        .eq("process_id", processCardList[0])
+                        .eq("technology_number", processCardList[1])
+        );
+        for (FlowCard flowCard : flowCardList) {
+            flowCard.setOrderGlassDetail(
+                    orderGlassDetailMapper.selectOne(
+                            new QueryWrapper<OrderGlassDetail>()
+                                    .eq("order_id", flowCard.getOrderId())
+                                    .eq("order_number", flowCard.getOrderNumber())
+                                    .eq("technology_number", flowCard.getTechnologyNumber())
+                    )
+            );
+            String str = flowCard.getOrderGlassDetail().getGlassChild();
+            String delimiter = "mm";
+            int index = str.indexOf(delimiter);
+            Integer subString = Integer.valueOf(str.substring(0, index).trim());
+            flowCard.getOrderGlassDetail().setThickness(subString);
+        }
+        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;
+
+
+    }
 }
 
 

--
Gitblit v1.8.0