From 5c3f8c8a3e36ab34fe614a8790b0fc7b3e15e1b5 Mon Sep 17 00:00:00 2001
From: whycxzp <perryhsu@163.com>
Date: 星期四, 11 八月 2022 15:47:54 +0800
Subject: [PATCH] 更新散装件审批

---
 src/main/java/com/whyc/service/WorksheetMainService.java |  105 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 105 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/whyc/service/WorksheetMainService.java b/src/main/java/com/whyc/service/WorksheetMainService.java
index 955b24b..74d9c72 100644
--- a/src/main/java/com/whyc/service/WorksheetMainService.java
+++ b/src/main/java/com/whyc/service/WorksheetMainService.java
@@ -43,6 +43,12 @@
     @Autowired
     private ComponentProductApprovingService cpApprovingService;
 
+    @Autowired
+    private ComponentApprovingService cApprovingService;
+
+    @Autowired
+    private ComponentService cService;
+
     @Transactional
     public boolean submit(WorksheetMain main, DocUser user) {
         main.setType(1);
@@ -204,6 +210,105 @@
         return true;
     }
 
+    public Response componentSubmit(WorksheetMain main, DocUser user) {
+        Response<Object> response = new Response<>();
+        List<ComponentApproving> cApprovingList = main.getCApprovingList();
+        //鏌ヨ鏄惁鏈� 宸茬敓鏁堟垨鑰呭凡鎻愪氦瀹℃壒鐨� 鐩稿悓鐨勬暎瑁呬欢
+        List<Component> existComponentList = new LinkedList<>();
+        List<ComponentApproving> existCAList = cApprovingService.getList();
+
+        List<Component> componentList = cService.getList();
+        List<ComponentApproving> cAList = cApprovingService.getList();
+        for (int i = 0; i < cApprovingList.size(); i++) {
+            ComponentApproving componentApproving = cApprovingList.get(i);
+            for (int j = 0; j < componentList.size(); j++) {
+                if(componentApproving.getSubCode().equals(componentList.get(j).getSubCode())
+                    && componentApproving.getSubName().equals(componentList.get(j).getSubName())
+                    && componentApproving.getSubModel().equals(componentList.get(j).getSubModel())
+                ){
+                    existComponentList.add(componentList.get(j));
+                }
+            }
+
+            for (int j = 0; j < cAList.size(); j++) {
+                if(componentApproving.getSubCode().equals(cAList.get(j).getSubCode())
+                        && componentApproving.getSubName().equals(cAList.get(j).getSubName())
+                        && componentApproving.getSubModel().equals(cAList.get(j).getSubModel())
+                ){
+                    existCAList.add(cAList.get(j));
+                }
+            }
+        }
+
+        int existCASize = existCAList.size();
+        int existComponentSize = existComponentList.size();
+        if(existCASize!=0){
+            if(existComponentSize!=0){
+                response.setII(21,existCAList,existComponentList,"閲嶅鎻愪氦:鐜版湁鏁h浠跺強姝e湪杩涜瀹℃壒鐨勬暎瑁呬欢涓�,瀛樺湪褰撳墠鎻愪氦涓婁紶鐨勬暎瑁呬欢");
+            }else{
+                response.set(22,existCAList,"閲嶅鎻愪氦:姝e湪杩涜瀹℃壒鐨勬暎瑁呬欢涓�,瀛樺湪褰撳墠鎻愪氦涓婁紶鐨勬暎瑁呬欢");
+            }
+            return response;
+        }else{
+            if(existComponentSize!=0){
+                return response.setII(23,null,existComponentList,"閲嶅鎻愪氦:鐜版湁鏁h浠朵腑,瀛樺湪褰撳墠鎻愪氦涓婁紶鐨勬暎瑁呬欢");
+            }
+        }
+
+        main.setType(EnumWorksheetType.Component.getType());
+        //鎻愪氦涓昏〃
+        main.setCreateUserId(user.getId());
+        //鎻愪氦浜鸿鑹叉潵鍒ゆ柇宸ヤ綔娴佸眰绾�
+        if(user.getRoleId().equals("1001")){
+            if(main.getId()==null) {
+                main.setLevel(2);
+                main.setStatus(1);
+                mainMapper.insert(main);
+            }
+            //鎻愪氦瀛愯〃
+            WorksheetLink link =new WorksheetLink();
+            link.setMainId(main.getId());
+            link.setParentId(0);
+            link.setDealUserId(main.getNextUser());
+            link.setDealType(1);
+            link.setDealDesc(main.getDealDesc());
+            link.setLinkStatus(0);
+            link.setEnableArchive(0);
+            linkMapper.insert(link);
+        }
+        else if(user.getRoleId().equals("1002")){
+            if(main.getId()==null) {
+                main.setLevel(1);
+                main.setStatus(2);
+                mainMapper.insert(main);
+            }
+            //鎻愪氦瀛愯〃
+            WorksheetLink link =new WorksheetLink();
+            link.setMainId(main.getId());
+            link.setParentId(0);
+            link.setDealUserId(main.getNextUser());
+            link.setDealType(2);
+            link.setDealDesc(main.getDealDesc());
+            link.setLinkStatus(0);
+            link.setEnableArchive(1);
+            linkMapper.insert(link);
+        }
+        else if(user.getRoleId().equals("1003")){
+            main.setLevel(0);
+            main.setStatus(5);
+            mainMapper.insert(main);
+        }else{
+            return response.set(3);
+        }
+        //鏁h浠�-瀹℃壒鎻愪氦
+        cApprovingList.forEach(cApproving->{
+            cApproving.setMainId(main.getId());
+        });
+
+        cApprovingService.insert(cApprovingList);
+        return response.set(1);
+    }
+
     public WorksheetMain getInfoById(Integer id) {
         return mainMapper.selectById(id);
     }

--
Gitblit v1.9.1