From bac7755aa3aea1705caf870c4318803186484e9c Mon Sep 17 00:00:00 2001
From: whycxzp <perryhsu@163.com>
Date: 星期一, 05 十二月 2022 14:26:45 +0800
Subject: [PATCH] 流程卡及SOP更新

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

diff --git a/src/main/java/com/whyc/service/WorksheetLinkService.java b/src/main/java/com/whyc/service/WorksheetLinkService.java
index 80dd0ac..f620956 100644
--- a/src/main/java/com/whyc/service/WorksheetLinkService.java
+++ b/src/main/java/com/whyc/service/WorksheetLinkService.java
@@ -3,11 +3,13 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.whyc.config.EnumWorksheetType;
+import com.whyc.dto.Response;
 import com.whyc.mapper.ProductBomApprovingMapper;
 import com.whyc.mapper.WorksheetLinkMapper;
 import com.whyc.pojo.*;
 import com.whyc.util.CommonUtil;
 import com.whyc.util.FileUtil;
+import com.whyc.util.WordUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -66,6 +68,12 @@
 
     @Autowired
     private ProductHistoryService phService;
+
+    @Autowired
+    private ProcedureDocApprovingService procedureDocApprovingService;
+
+    @Autowired
+    private ProcedureDocService procedureDocService;
 
     @Transactional
     public void audit(WorksheetLink link) {
@@ -583,4 +591,43 @@
     public DocUser getApprovingUser(Integer mainId) {
         return linkMapper.getApprovingUser(mainId);
     }
+
+    @Transactional
+    public Response confirmProductProcedureAndSOP(WorksheetLink link) throws IOException {
+        Integer mainId = linkMapper.selectById(link.getId()).getMainId();
+        //鏇存柊瀛愯〃
+        linkMapper.updateById(link);
+        if(link.getLinkStatus() ==1){
+            //鏌ヨ褰撳墠鍗曟嵁瀛愯〃鏄惁宸茬粡鍏ㄩ儴鍚屾剰
+            QueryWrapper<WorksheetLink> query = Wrappers.query();
+            query.eq("main_id",mainId);
+            List<WorksheetLink> linkList = linkMapper.selectList(query);
+            List<WorksheetLink> rejectList = linkList.stream().filter(linkFilter -> linkFilter.getLinkStatus() != 1).collect(Collectors.toList());
+            if(rejectList == null){
+                //閮戒负1,宸茬‘璁�
+                mainService.updateEndStatusById(mainId,"宸茬‘璁�",5);
+                //鏂囦欢杞Щ鍒板鎵瑰畬鎴愬悗鐨勬寮忚矾寰� 鏂囦欢淇濆瓨鍦�/doc_file/procedure/xxx.doc
+                ProcedureDocApproving approving = procedureDocApprovingService.getByMainId(mainId);
+                String fileRelativePath = approving.getFile();
+                String projectDir = CommonUtil.getProjectDir();
+                String inFilePath = projectDir + File.separator + fileRelativePath;
+                String outFilePath = (projectDir + File.separator + fileRelativePath).replace("_approving","");
+                WordUtil.fillValue(inFilePath,outFilePath,Arrays.asList(approving.getFzr(),approving.getBz(),approving.getZz(),approving.getPb()));
+                //娴佺▼鏂囦欢鏁版嵁杞Щ
+                ProcedureDoc procedureDoc = new ProcedureDoc();
+                procedureDoc.setName(approving.getName());
+                procedureDoc.setDescription(approving.getDescription());
+                procedureDoc.setVersion(approving.getVersion());
+                procedureDoc.setFzr(approving.getFzr());
+                procedureDoc.setBz(approving.getBz());
+                procedureDoc.setType(approving.getType());
+                procedureDoc.setCreateTime(new Date());
+                procedureDoc.setFile(fileRelativePath.replace("_approving",""));
+                procedureDocService.insert(procedureDoc);
+            }
+        }else{
+            mainService.updateEndStatusById(mainId,"宸查┏鍥�",0);
+        }
+        return new Response().set(1);
+    }
 }

--
Gitblit v1.9.1