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 |   76 +++++++++++++++++++++++++++++++------
 1 files changed, 63 insertions(+), 13 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 efd9aac..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,11 +5,12 @@
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.dynamic.datasource.annotation.DS;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+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;
@@ -84,6 +85,8 @@
                 flowCardMapper.deleteReportingWork(processId);
                 //鍒犻櫎鍒嗘灦鏄庣粏
                 flowCardMapper.deleteFlowCardMp(orderId, processId);
+                //鍒犻櫎鎺掑簭琛ㄦ暟鎹�
+                flowCardMapper.deleteflowCardSort(orderId, processId);
                 //鍒ゆ柇璇ヨ鍗曟祦绋嬪崱鏄惁鍏ㄩ儴鍒犻櫎
                 Integer flowNumber = flowCardMapper.selectFlowCardCount(orderId);
                 if (flowNumber == 0) {
@@ -500,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= "";
         }
@@ -516,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);
                 }
@@ -530,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);
@@ -682,13 +685,20 @@
 
     }
 
-    public  List<FlowCard> getProcessCard() {
+    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("termination_status", 0)
-                        .orderByDesc("id")
+                new QueryWrapper<FlowCard>()
+                        .eq("process_id", processCardList[0])
+                        .eq("technology_number", processCardList[1])
         );
         for (FlowCard flowCard : flowCardList) {
-            flowCard.setProcessId(flowCard.getProcessId()+'/'+flowCard.getTechnologyNumber());
             flowCard.setOrderGlassDetail(
                     orderGlassDetailMapper.selectOne(
                             new QueryWrapper<OrderGlassDetail>()
@@ -706,11 +716,51 @@
         return flowCardList;
     }
 
-    public Boolean updateProcessCardState(Integer id) {
-        UpdateWrapper<FlowCard> updateWrapper = new UpdateWrapper<>();
-        updateWrapper.eq("id", id) // 鏍规嵁id鏇存柊
-                .set("termination_status", 1);
-        return flowCardMapper.update(null, updateWrapper) > 0;
+    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