diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/PBomApi.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/PBomApi.java index 7e27982a..6069687b 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/PBomApi.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/api/user/PBomApi.java @@ -16,7 +16,9 @@ import com.nflg.product.bomnew.pojo.query.BomNewPbomParentQuery; import com.nflg.product.bomnew.pojo.vo.BaseMaterialVO; import com.nflg.product.bomnew.pojo.vo.BomCopyCheckResultVO; import com.nflg.product.bomnew.pojo.vo.BomNewPbomParentVO; +import com.nflg.product.bomnew.pojo.vo.BomNewPbomWorkExcelVO; import com.nflg.product.bomnew.service.*; +import com.nflg.product.bomnew.util.EecExcelUtil; import com.nflg.product.bomnew.util.VUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -77,15 +79,18 @@ public class PBomApi extends BaseApi { @PostMapping("exportWorkDetailsListByPage") @ApiOperation("导出工作列表--导出") @LogRecord(success = "PBom-导出工作列表,操作结果:{{#_ret}}", bizNo = "",type = "PBom-导出工作列表") - public void exportWorkDownLoad(@RequestBody BomNewPbomParentQuery query ,HttpServletResponse response) throws IOException { - bomNewPbomParentService.workDetailsExcel(query,response); + public void exportWorkDownLoad(@RequestBody List bomRowIds, HttpServletResponse response) throws IOException { + List data = bomNewPbomParentService.exportExcel(bomRowIds); + //new Workbook().addSheet(new ListSheet<>(data)).writeTo(response.getOutputStream()); + EecExcelUtil.export(response, data, BomNewPbomWorkExcelVO.class, "pbom明细列表"); } @PostMapping("releaseListDownLoad") @ApiOperation("PBom已发布工作列表--导出") @LogRecord(success = "PBom-导出已发布工作列表,操作结果:{{#_ret}}", bizNo = "",type = "PBom-已发布工作列表") - public void releaseListDownLoad(@RequestBody BomNewPbomParentQuery query ,HttpServletResponse response) throws IOException { - bomNewPbomParentService.releaseListExcel(query,response); + public void releaseListDownLoad(@RequestBody List bomRowIds, HttpServletResponse response) throws IOException { + List data = bomNewPbomParentService.exportExcel(bomRowIds); + EecExcelUtil.export(response, data, BomNewPbomWorkExcelVO.class, "pbom已发布明细列表"); } @GetMapping("getChild") diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/BomNewPbomParentMapper.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/BomNewPbomParentMapper.java index 9a1ed8c2..dbf42682 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/BomNewPbomParentMapper.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/mapper/master/BomNewPbomParentMapper.java @@ -49,4 +49,6 @@ public interface BomNewPbomParentMapper extends BaseMapper exportExcel(List bomRowIds); } diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java index 55789f2e..ddbf0aef 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/BomNewPbomParentService.java @@ -220,6 +220,12 @@ public class BomNewPbomParentService extends ServiceImpl(result)).writeTo(response.getOutputStream()); } + public List exportExcel(List bomRowIds) { + List result = this.getBaseMapper().exportExcel(bomRowIds); + materialMainService.intiMaterialInfo(result, BomNewPbomWorkExcelVO::getMaterialNo, EBomConstant.EBOM_IGNORED_FIELDS_INIT_MATERIAL_DEFAULT); + return result; + } + /** * 导出正式工作表 * diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/util/EecExcelUtil.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/util/EecExcelUtil.java index 7c30fa57..864d61d1 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/util/EecExcelUtil.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/util/EecExcelUtil.java @@ -3,6 +3,8 @@ package com.nflg.product.bomnew.util; import com.nflg.product.base.core.exception.NflgBusinessException; import com.nflg.product.bomnew.pojo.dto.BaseImportExcelDTO; import nflg.product.common.constant.STATE; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; import org.ttzero.excel.entity.ListSheet; import org.ttzero.excel.entity.Workbook; import org.ttzero.excel.reader.ExcelReader; @@ -172,4 +174,15 @@ public class EecExcelUtil { public static String StringTrim(String str) { return str.replaceAll("[\\s\\u00A0]+", "").trim(); } + + public static void export(HttpServletResponse response, List data,Class clazz,String name) throws IOException { + response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE); + response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\"" + URLEncoder.encode(name, "utf-8") + ".xlsx\""); + new Workbook().addSheet(new ListSheet() { + @Override + protected Class getTClass() { + return clazz; // 指定类型 + } + }.setData(data)).writeTo(response.getOutputStream()); + } } diff --git a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewPbomParentMapper.xml b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewPbomParentMapper.xml index c12355d6..536e34ac 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewPbomParentMapper.xml +++ b/nflg_project_dev/nflg-bom-new/src/main/resources/mapper/master/BomNewPbomParentMapper.xml @@ -213,6 +213,12 @@ and b.material_no=#{materialNo} and b.created_by=#{jobNo} - - +