From 47e56bf8919dc916b34744e7bb5223b20445378d Mon Sep 17 00:00:00 2001 From: lxw <810412026@qq.com> Date: 星期五, 19 八月 2022 12:11:20 +0800 Subject: [PATCH] 产品下载 --- src/main/java/com/whyc/service/ProductBomService.java | 42 +++++++++++++++++++++++++++++++++++++++--- 1 files changed, 39 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/whyc/service/ProductBomService.java b/src/main/java/com/whyc/service/ProductBomService.java index 24072ee..53f55d3 100644 --- a/src/main/java/com/whyc/service/ProductBomService.java +++ b/src/main/java/com/whyc/service/ProductBomService.java @@ -26,6 +26,7 @@ import javax.servlet.http.HttpServletResponse; import java.awt.image.BufferedImage; import java.io.*; +import java.util.ArrayList; import java.util.Date; import java.util.LinkedList; import java.util.List; @@ -202,9 +203,20 @@ Product product=productMapper.selectOne(wrapper); //璇诲彇浜у搧鐨勫瓙浠跺拰鍏宠仈鐨勭墿鏂欎俊鎭� List<ProductBom> list=mapper.getBomAndMaterial(productId,version); - //澶勭悊 + //澶勭悊瀛樺湪鍏宠仈鍏崇郴鐨勭墿鏂� + List<ProductBom> endList=new ArrayList<>(); + list.stream().forEach(bom -> { + endList.add(bom); + if(bom.getMaterials()!=null&&bom.getMaterials().size()>0){ + for (Material m:bom.getMaterials()) { + //灏嗙墿鏂欏瓨鏀句负涓�涓猙om涓轰笅杞藉仛鍑嗗 + ProductBom copyBom=copyMaterialToBom(m); + endList.add(copyBom); + } + } + }); //鐢熸垚excel骞跺皢dwg鏂囦欢鏀惧湪鍚屼竴鎶ヤ笅鍘嬬缉 - creatBomExcel(req,resp,product,list,wb,"bom"); + creatBomExcel(req,resp,product,endList,wb,"bom"); //璁板綍鏃ュ織 DocUser docUser= ActionUtil.getUser(); String operationDetail="鍏蜂綋浜у搧淇℃伅涓�:"+product.toString(); @@ -212,8 +224,10 @@ String terminalIp=req.getRemoteAddr(); logService.recordOperationLog(docUser.getId(),docUser.getName(), UserOperation.TYPE_DOWNLOAD.getType(),new Date(),terminalIp,opreationMsg,operationDetail); } + + //鏍规嵁浜у搧淇℃伅鍒涘缓excel琛ㄦ牸骞跺瓨鏀惧湪鎸囧畾鐩綍 - public void creatBomExcel(HttpServletRequest req, HttpServletResponse resp,Product product,List list, HSSFWorkbook wb,String type){ + private void creatBomExcel(HttpServletRequest req, HttpServletResponse resp,Product product,List list, HSSFWorkbook wb,String type){ String fileDirName = FileDirPath.getFileDirName(); String rootFace=""; String excelName=""; @@ -386,4 +400,26 @@ List<ProductBom> list=mapper.getBomAndMaterial(productId,version); return new Response().setII(1,list.size()>0?true:false,list,"杩斿洖鐗╂枡淇℃伅鍙婂叧鑱旂墿鏂�"); } + + //灏嗙墿鏂欏瓨鏀句负涓�涓猙om涓轰笅杞藉仛鍑嗗 + private ProductBom copyMaterialToBom(Material m) { + ProductBom bom=new ProductBom(); + bom.setType(m.getType()); + bom.setCategory(m.getCategory()); + bom.setSubCode(m.getSubCode()); + bom.setSubName(m.getSubName()); + bom.setSubModel(m.getSubModel()); + bom.setUnit(m.getUnit()); + bom.setQuantity(m.getQuantity()); + bom.setProducer(m.getProducer()); + bom.setMaterial(m.getMaterial()); + bom.setThickness(m.getThickness()); + bom.setSurfaceDetail(m.getSurfaceDetail()); + bom.setNotes(m.getNotes()); + bom.setPictureUrl(m.getPictureUrl()); + bom.setDwgUrl(m.getDwgUrl()); + bom.setFileUrl(m.getFileUrl()); + bom.setCreateDate(m.getCreateDate()); + return bom; + } } -- Gitblit v1.9.1