From b41aff58a0c2a4f8463db66ebba44a05a43a7f10 Mon Sep 17 00:00:00 2001
From: whyclxw <810412026@qq.com>
Date: 星期五, 13 六月 2025 18:02:55 +0800
Subject: [PATCH] 产品验收管理

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

diff --git a/src/main/java/com/whyc/service/BomAcceptanceService.java b/src/main/java/com/whyc/service/BomAcceptanceService.java
new file mode 100644
index 0000000..c82fffc
--- /dev/null
+++ b/src/main/java/com/whyc/service/BomAcceptanceService.java
@@ -0,0 +1,135 @@
+package com.whyc.service;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.whyc.dto.Response;
+import com.whyc.mapper.BomAcceptanceMapper;
+import com.whyc.pojo.BOMFeedback;
+import com.whyc.pojo.BomAcceptance;
+import com.whyc.pojo.DefectiveProducts;
+import com.whyc.util.CommonUtil;
+import com.whyc.util.FileUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.Date;
+import java.util.List;
+
+import static com.whyc.util.ActionUtil.createFilefolderIFNotExist;
+
+@Service
+public class BomAcceptanceService {
+    @Autowired(required = false)
+    private BomAcceptanceMapper mapper;
+
+    //涓婁紶浜у搧楠屾敹淇℃伅
+    public Response uploadBomAcceptance(MultipartFile fileLeft, MultipartFile fileRight, MultipartFile fileFront, MultipartFile fileBack, List<MultipartFile> multipartFileList, BomAcceptance bomAcceptance) throws IOException {
+        Date date = new Date();
+        long time = date.getTime();
+        String rootFile = CommonUtil.getRootFile();
+        //閰嶄欢瀛樺偍
+        if(multipartFileList!=null && multipartFileList.size()!=0){
+            String spareDirSuffix = "acceptance_bom" + File.separator + time + File.separator+ "spare" + File.separator;
+            String spareDir = rootFile + spareDirSuffix;
+            File fileDir = new File(spareDir);
+            if (!fileDir.exists()) {
+                fileDir.mkdirs();
+            }
+            for (int i = 0; i < multipartFileList.size(); i++) {
+                MultipartFile multipartFile = multipartFileList.get(i);
+                //瀛樺偍鏂囦欢
+                String originalFilename = multipartFile.getOriginalFilename();
+                String fileName = originalFilename.substring(0, originalFilename.lastIndexOf("."));
+                String suffix = originalFilename.substring(originalFilename.lastIndexOf("."));
+                String sparePath = spareDir + fileName + suffix;
+                File file = new File(sparePath);
+                multipartFile.transferTo(file);
+            }
+            bomAcceptance.setSparePicpart(spareDirSuffix);
+        }
+        String devDirSuffix = "acceptance_bom" + File.separator + time + File.separator+ "dev" + File.separator;
+        String devDir = rootFile + devDirSuffix;
+        //宸﹁鍥�
+        if(fileLeft!=null){
+            //瀛樺偍鏂囦欢
+            String originalFilename = fileLeft.getOriginalFilename();
+            String fileName = originalFilename.substring(0, originalFilename.lastIndexOf("."));
+            String suffix = originalFilename.substring(originalFilename.lastIndexOf("."));
+            String path = devDir + fileName + suffix;
+            createFilefolderIFNotExist(path);
+            fileLeft.transferTo(new File(path));
+            bomAcceptance.setDevPicleft("doc_file" + File.separator + devDirSuffix+originalFilename);
+        }
+        //鍙宠鍥�
+        if(fileRight!=null){
+            //瀛樺偍鏂囦欢
+            String originalFilename = fileRight.getOriginalFilename();
+            String fileName = originalFilename.substring(0, originalFilename.lastIndexOf("."));
+            String suffix = originalFilename.substring(originalFilename.lastIndexOf("."));
+            String path = devDir + fileName + suffix;
+            createFilefolderIFNotExist(path);
+            fileRight.transferTo(new File(path));
+            bomAcceptance.setDevPicright("doc_file" + File.separator + devDirSuffix+originalFilename);
+        }
+        //姝i潰鍥�
+        if(fileFront!=null){
+            //瀛樺偍鏂囦欢
+            String originalFilename = fileFront.getOriginalFilename();
+            String fileName = originalFilename.substring(0, originalFilename.lastIndexOf("."));
+            String suffix = originalFilename.substring(originalFilename.lastIndexOf("."));
+            String path = devDir + fileName + suffix;
+            createFilefolderIFNotExist(path);
+            fileFront.transferTo(new File(path));
+            bomAcceptance.setDevPicfront("doc_file" + File.separator + devDirSuffix+originalFilename);
+        }
+        //宸﹁鍥�
+        if(fileBack!=null){
+            //瀛樺偍鏂囦欢
+            String originalFilename = fileBack.getOriginalFilename();
+            String fileName = originalFilename.substring(0, originalFilename.lastIndexOf("."));
+            String suffix = originalFilename.substring(originalFilename.lastIndexOf("."));
+            String path = devDir + fileName + suffix;
+            createFilefolderIFNotExist(path);
+            fileBack.transferTo(new File(path));
+            bomAcceptance.setDevPicback("doc_file" + File.separator + devDirSuffix+originalFilename);
+        }
+        mapper.insert(bomAcceptance);
+        return new Response().set(1,true,"涓婁紶鎴愬姛");
+    }
+    //鏌ヨ浜у搧楠屾敹淇℃伅
+    public Response getBomAcceptance(BomAcceptance bomAcceptance, int pageNum, int pageSize) {
+        PageHelper.startPage(pageNum,pageSize);
+        QueryWrapper wrapper=new QueryWrapper();
+        if(bomAcceptance.getDirectName()!=null){
+            wrapper.like("direct_name",bomAcceptance.getDirectName());
+        }
+        if(bomAcceptance.getBomSeries()!=null){
+            wrapper.like("bom_series",bomAcceptance.getBomSeries());
+        }
+        if(bomAcceptance.getBomModel()!=null){
+            wrapper.like("bom_model",bomAcceptance.getBomModel());
+        }
+        if(bomAcceptance.getCreateTime()!=null){
+            wrapper.ge("create_time",bomAcceptance.getCreateTime());
+        }
+        if(bomAcceptance.getCreateTime1()!=null){
+            wrapper.le("create_time",bomAcceptance.getCreateTime1());
+        }
+        List<BomAcceptance> list = mapper.selectList(wrapper);
+        String rootFile = CommonUtil.getRootFile();//涓昏矾寰�
+        if(list!=null&&list.size()>0){
+            for (BomAcceptance acceptance:list) {
+                acceptance.setSparePicpart("doc_file"+File.separator+acceptance.getSparePicpart());
+                String filePath=rootFile+acceptance.getSparePicpart();
+                //鑾峰彇鏂囦欢澶逛笅鎵�鏈夌殑鍥剧墖鍚�
+                acceptance.setNameList(FileUtil.getFileNameWithOutDirectory(filePath));
+            }
+        }
+        PageInfo  pageInfo=new PageInfo(list);
+        return new Response().setII(1,list.size()>0,pageInfo,"鏌ヨ浜у搧楠屾敹淇℃伅");
+    }
+}
\ No newline at end of file

--
Gitblit v1.9.1