diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java index c840549..b908a0a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java @@ -158,8 +158,8 @@ } @ApiOperation("导出") - @GetMapping("/listExport") - public void export( BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { + @PostMapping("/exportZip") + public void export(@RequestBody BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); QueryWrapper query = bizQualitySupervisionRecordVO.genQuery(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java index c840549..b908a0a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java @@ -158,8 +158,8 @@ } @ApiOperation("导出") - @GetMapping("/listExport") - public void export( BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { + @PostMapping("/exportZip") + public void export(@RequestBody BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); QueryWrapper query = bizQualitySupervisionRecordVO.genQuery(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java index 8ef84c7..071ceea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java @@ -64,7 +64,7 @@ } @ApiOperation("导出") - @PostMapping("/listExport") + @PostMapping("/exportZip") public void export(@RequestBody BizQualitySupervisionRepVO bizQualitySupervisionRepVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java index c840549..b908a0a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java @@ -158,8 +158,8 @@ } @ApiOperation("导出") - @GetMapping("/listExport") - public void export( BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { + @PostMapping("/exportZip") + public void export(@RequestBody BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); QueryWrapper query = bizQualitySupervisionRecordVO.genQuery(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java index 8ef84c7..071ceea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java @@ -64,7 +64,7 @@ } @ApiOperation("导出") - @PostMapping("/listExport") + @PostMapping("/exportZip") public void export(@RequestBody BizQualitySupervisionRepVO bizQualitySupervisionRepVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java index 7a40cd8..3f81edb 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java @@ -142,7 +142,7 @@ } @Override - public void exportZip(List recordList, HttpServletResponse response) { + public void exportZip(List recordList, HttpServletResponse response) throws ParseException { //健壮性校验 if (CollectionUtils.isEmpty(recordList)) { return; @@ -160,7 +160,28 @@ for (BizQualitySupervisionRecord supervisionRecord : recordList) { //todo 技术能力分析报告 if (ObjectUtil.isNotEmpty(supervisionRecord)) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, supervisionRecord.getId()); + List list = bizQualityProcessRecordService.list(queryWrapper); + supervisionRecord.setProcessRecords(list); + Map map = BeanUtil.beanToMap(supervisionRecord); + //格式化日期 + Calendar calendar = Calendar.getInstance(); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); + String date = simpleDateFormat.format(supervisionRecord.getCreateTime()); + calendar.setTime(new SimpleDateFormat("yyyy-MM-dd").parse(date)); + map.put("year", calendar.get(Calendar.YEAR)); + map.put("month", calendar.get(Calendar.MONTH) + 1); + map.put("day", calendar.get(Calendar.DAY_OF_MONTH)); + //拼接填充内容 + List contentList = new ArrayList<>(); + for (BizQualityProcessRecord processRecord : supervisionRecord.getProcessRecords()) { + String content = "监督的过程:" + processRecord.getProcessInfo() + "过程运行情况事实:" + processRecord.getOptFacts(); + contentList.add(content); + } + map.put("contentList", contentList); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.eq(SystemSign::getSignUserId, supervisionRecord.getCreator()); lambdaQueryWrapper.last("limit 1"); @@ -207,19 +228,20 @@ @Override public void exportFile(@RequestBody @Valid ExportDTO exportDTO, HttpServletResponse response) throws ParseException { BizQualitySupervisionRecord record = super.getById(exportDTO.getId()); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, exportDTO.getId()); - List list = bizQualityProcessRecordService.list(queryWrapper); - record.setProcessRecords(list); - - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.eq(SystemSign::getSignUserId, record.getCreator()); - lambdaQueryWrapper.last("limit 1"); - SystemSign sign = signService.getOne(lambdaQueryWrapper); - if (ObjectUtil.isEmpty(sign)) { - throw new BusinessException(16000, "该用户签名不存在"); - } if (Objects.nonNull(record)) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, exportDTO.getId()); + List list = bizQualityProcessRecordService.list(queryWrapper); + record.setProcessRecords(list); + + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(SystemSign::getSignUserId, record.getCreator()); + lambdaQueryWrapper.last("limit 1"); + SystemSign sign = signService.getOne(lambdaQueryWrapper); + if (ObjectUtil.isEmpty(sign)) { + throw new BusinessException(16000, "该用户签名不存在"); + } + Map map = BeanUtil.beanToMap(record); Calendar calendar = Calendar.getInstance(); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java index c840549..b908a0a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java @@ -158,8 +158,8 @@ } @ApiOperation("导出") - @GetMapping("/listExport") - public void export( BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { + @PostMapping("/exportZip") + public void export(@RequestBody BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); QueryWrapper query = bizQualitySupervisionRecordVO.genQuery(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java index 8ef84c7..071ceea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java @@ -64,7 +64,7 @@ } @ApiOperation("导出") - @PostMapping("/listExport") + @PostMapping("/exportZip") public void export(@RequestBody BizQualitySupervisionRepVO bizQualitySupervisionRepVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java index 7a40cd8..3f81edb 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java @@ -142,7 +142,7 @@ } @Override - public void exportZip(List recordList, HttpServletResponse response) { + public void exportZip(List recordList, HttpServletResponse response) throws ParseException { //健壮性校验 if (CollectionUtils.isEmpty(recordList)) { return; @@ -160,7 +160,28 @@ for (BizQualitySupervisionRecord supervisionRecord : recordList) { //todo 技术能力分析报告 if (ObjectUtil.isNotEmpty(supervisionRecord)) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, supervisionRecord.getId()); + List list = bizQualityProcessRecordService.list(queryWrapper); + supervisionRecord.setProcessRecords(list); + Map map = BeanUtil.beanToMap(supervisionRecord); + //格式化日期 + Calendar calendar = Calendar.getInstance(); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); + String date = simpleDateFormat.format(supervisionRecord.getCreateTime()); + calendar.setTime(new SimpleDateFormat("yyyy-MM-dd").parse(date)); + map.put("year", calendar.get(Calendar.YEAR)); + map.put("month", calendar.get(Calendar.MONTH) + 1); + map.put("day", calendar.get(Calendar.DAY_OF_MONTH)); + //拼接填充内容 + List contentList = new ArrayList<>(); + for (BizQualityProcessRecord processRecord : supervisionRecord.getProcessRecords()) { + String content = "监督的过程:" + processRecord.getProcessInfo() + "过程运行情况事实:" + processRecord.getOptFacts(); + contentList.add(content); + } + map.put("contentList", contentList); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.eq(SystemSign::getSignUserId, supervisionRecord.getCreator()); lambdaQueryWrapper.last("limit 1"); @@ -207,19 +228,20 @@ @Override public void exportFile(@RequestBody @Valid ExportDTO exportDTO, HttpServletResponse response) throws ParseException { BizQualitySupervisionRecord record = super.getById(exportDTO.getId()); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, exportDTO.getId()); - List list = bizQualityProcessRecordService.list(queryWrapper); - record.setProcessRecords(list); - - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.eq(SystemSign::getSignUserId, record.getCreator()); - lambdaQueryWrapper.last("limit 1"); - SystemSign sign = signService.getOne(lambdaQueryWrapper); - if (ObjectUtil.isEmpty(sign)) { - throw new BusinessException(16000, "该用户签名不存在"); - } if (Objects.nonNull(record)) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, exportDTO.getId()); + List list = bizQualityProcessRecordService.list(queryWrapper); + record.setProcessRecords(list); + + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(SystemSign::getSignUserId, record.getCreator()); + lambdaQueryWrapper.last("limit 1"); + SystemSign sign = signService.getOne(lambdaQueryWrapper); + if (ObjectUtil.isEmpty(sign)) { + throw new BusinessException(16000, "该用户签名不存在"); + } + Map map = BeanUtil.beanToMap(record); Calendar calendar = Calendar.getInstance(); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java index 99ccd78..5610aaa 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java @@ -146,6 +146,7 @@ } /** + * 导出zip * @param supervisionRepList 分页数据 * @param response 响应 */ @@ -154,14 +155,21 @@ if (CollectionUtil.isEmpty(supervisionRepList)){ return; } + int corePoolSize = 1; + if (supervisionRepList.size() > 5) { + corePoolSize = 5; + } //创建线程组 - ThreadPoolExecutor threadPool = new ThreadPoolExecutor(5, supervisionRepList.size(), 100, + ThreadPoolExecutor threadPool = new ThreadPoolExecutor(corePoolSize, supervisionRepList.size(), 100, TimeUnit.SECONDS, new LinkedBlockingQueue<>(10)); String rootFileName = "质量监督报告" + new SimpleDateFormat("yyyyMMddHHmm").format(new Date()); List> futures = new ArrayList<>(); for (BizQualitySupervisionRep supervisionRep : supervisionRepList) { if (ObjectUtil.isNotEmpty(supervisionRep)){ + wrapRep(supervisionRep); Map map = BeanUtil.beanToMap(supervisionRep); + String date = DateUtil.format(supervisionRep.getLogTime(), "yyyy-MM-dd"); + map.put("logTime", date); CompletableFuture completableFuture = CompletableFuture.supplyAsync( ()->{ //添加附件 diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java index c840549..b908a0a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java @@ -158,8 +158,8 @@ } @ApiOperation("导出") - @GetMapping("/listExport") - public void export( BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { + @PostMapping("/exportZip") + public void export(@RequestBody BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); QueryWrapper query = bizQualitySupervisionRecordVO.genQuery(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java index 8ef84c7..071ceea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java @@ -64,7 +64,7 @@ } @ApiOperation("导出") - @PostMapping("/listExport") + @PostMapping("/exportZip") public void export(@RequestBody BizQualitySupervisionRepVO bizQualitySupervisionRepVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java index 7a40cd8..3f81edb 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java @@ -142,7 +142,7 @@ } @Override - public void exportZip(List recordList, HttpServletResponse response) { + public void exportZip(List recordList, HttpServletResponse response) throws ParseException { //健壮性校验 if (CollectionUtils.isEmpty(recordList)) { return; @@ -160,7 +160,28 @@ for (BizQualitySupervisionRecord supervisionRecord : recordList) { //todo 技术能力分析报告 if (ObjectUtil.isNotEmpty(supervisionRecord)) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, supervisionRecord.getId()); + List list = bizQualityProcessRecordService.list(queryWrapper); + supervisionRecord.setProcessRecords(list); + Map map = BeanUtil.beanToMap(supervisionRecord); + //格式化日期 + Calendar calendar = Calendar.getInstance(); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); + String date = simpleDateFormat.format(supervisionRecord.getCreateTime()); + calendar.setTime(new SimpleDateFormat("yyyy-MM-dd").parse(date)); + map.put("year", calendar.get(Calendar.YEAR)); + map.put("month", calendar.get(Calendar.MONTH) + 1); + map.put("day", calendar.get(Calendar.DAY_OF_MONTH)); + //拼接填充内容 + List contentList = new ArrayList<>(); + for (BizQualityProcessRecord processRecord : supervisionRecord.getProcessRecords()) { + String content = "监督的过程:" + processRecord.getProcessInfo() + "过程运行情况事实:" + processRecord.getOptFacts(); + contentList.add(content); + } + map.put("contentList", contentList); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.eq(SystemSign::getSignUserId, supervisionRecord.getCreator()); lambdaQueryWrapper.last("limit 1"); @@ -207,19 +228,20 @@ @Override public void exportFile(@RequestBody @Valid ExportDTO exportDTO, HttpServletResponse response) throws ParseException { BizQualitySupervisionRecord record = super.getById(exportDTO.getId()); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, exportDTO.getId()); - List list = bizQualityProcessRecordService.list(queryWrapper); - record.setProcessRecords(list); - - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.eq(SystemSign::getSignUserId, record.getCreator()); - lambdaQueryWrapper.last("limit 1"); - SystemSign sign = signService.getOne(lambdaQueryWrapper); - if (ObjectUtil.isEmpty(sign)) { - throw new BusinessException(16000, "该用户签名不存在"); - } if (Objects.nonNull(record)) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, exportDTO.getId()); + List list = bizQualityProcessRecordService.list(queryWrapper); + record.setProcessRecords(list); + + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(SystemSign::getSignUserId, record.getCreator()); + lambdaQueryWrapper.last("limit 1"); + SystemSign sign = signService.getOne(lambdaQueryWrapper); + if (ObjectUtil.isEmpty(sign)) { + throw new BusinessException(16000, "该用户签名不存在"); + } + Map map = BeanUtil.beanToMap(record); Calendar calendar = Calendar.getInstance(); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java index 99ccd78..5610aaa 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java @@ -146,6 +146,7 @@ } /** + * 导出zip * @param supervisionRepList 分页数据 * @param response 响应 */ @@ -154,14 +155,21 @@ if (CollectionUtil.isEmpty(supervisionRepList)){ return; } + int corePoolSize = 1; + if (supervisionRepList.size() > 5) { + corePoolSize = 5; + } //创建线程组 - ThreadPoolExecutor threadPool = new ThreadPoolExecutor(5, supervisionRepList.size(), 100, + ThreadPoolExecutor threadPool = new ThreadPoolExecutor(corePoolSize, supervisionRepList.size(), 100, TimeUnit.SECONDS, new LinkedBlockingQueue<>(10)); String rootFileName = "质量监督报告" + new SimpleDateFormat("yyyyMMddHHmm").format(new Date()); List> futures = new ArrayList<>(); for (BizQualitySupervisionRep supervisionRep : supervisionRepList) { if (ObjectUtil.isNotEmpty(supervisionRep)){ + wrapRep(supervisionRep); Map map = BeanUtil.beanToMap(supervisionRep); + String date = DateUtil.format(supervisionRep.getLogTime(), "yyyy-MM-dd"); + map.put("logTime", date); CompletableFuture completableFuture = CompletableFuture.supplyAsync( ()->{ //添加附件 diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java index 11a98cf..5ab4526 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java @@ -22,6 +22,7 @@ import com.casic.missiles.service.Impl.GeneralApprovalServiceImpl; import com.casic.missiles.service.listeners.register.PrintFileRegister; import com.casic.missiles.service.resource.IBizResourceAuthorizeOrderService; +import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NoGeneratorUtil; import liquibase.pro.packaged.A; import org.apache.commons.lang3.ObjectUtils; @@ -81,8 +82,9 @@ } @Override - public void exportFile(ExportDTO exportDTO, HttpServletResponse response) { + public void exportFile(ExportDTO exportDTO, HttpServletResponse response) throws Exception { BizResourceAuthorizeOrder authorizeOrder = this.baseMapper.selectById(exportDTO.getId()); + DictCodeUtils.convertDictCodeToName(authorizeOrder); if (ObjectUtil.isNotEmpty(authorizeOrder)) { Map map = BeanUtil.beanToMap(authorizeOrder); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java index c840549..b908a0a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java @@ -158,8 +158,8 @@ } @ApiOperation("导出") - @GetMapping("/listExport") - public void export( BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { + @PostMapping("/exportZip") + public void export(@RequestBody BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); QueryWrapper query = bizQualitySupervisionRecordVO.genQuery(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java index 8ef84c7..071ceea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java @@ -64,7 +64,7 @@ } @ApiOperation("导出") - @PostMapping("/listExport") + @PostMapping("/exportZip") public void export(@RequestBody BizQualitySupervisionRepVO bizQualitySupervisionRepVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java index 7a40cd8..3f81edb 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java @@ -142,7 +142,7 @@ } @Override - public void exportZip(List recordList, HttpServletResponse response) { + public void exportZip(List recordList, HttpServletResponse response) throws ParseException { //健壮性校验 if (CollectionUtils.isEmpty(recordList)) { return; @@ -160,7 +160,28 @@ for (BizQualitySupervisionRecord supervisionRecord : recordList) { //todo 技术能力分析报告 if (ObjectUtil.isNotEmpty(supervisionRecord)) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, supervisionRecord.getId()); + List list = bizQualityProcessRecordService.list(queryWrapper); + supervisionRecord.setProcessRecords(list); + Map map = BeanUtil.beanToMap(supervisionRecord); + //格式化日期 + Calendar calendar = Calendar.getInstance(); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); + String date = simpleDateFormat.format(supervisionRecord.getCreateTime()); + calendar.setTime(new SimpleDateFormat("yyyy-MM-dd").parse(date)); + map.put("year", calendar.get(Calendar.YEAR)); + map.put("month", calendar.get(Calendar.MONTH) + 1); + map.put("day", calendar.get(Calendar.DAY_OF_MONTH)); + //拼接填充内容 + List contentList = new ArrayList<>(); + for (BizQualityProcessRecord processRecord : supervisionRecord.getProcessRecords()) { + String content = "监督的过程:" + processRecord.getProcessInfo() + "过程运行情况事实:" + processRecord.getOptFacts(); + contentList.add(content); + } + map.put("contentList", contentList); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.eq(SystemSign::getSignUserId, supervisionRecord.getCreator()); lambdaQueryWrapper.last("limit 1"); @@ -207,19 +228,20 @@ @Override public void exportFile(@RequestBody @Valid ExportDTO exportDTO, HttpServletResponse response) throws ParseException { BizQualitySupervisionRecord record = super.getById(exportDTO.getId()); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, exportDTO.getId()); - List list = bizQualityProcessRecordService.list(queryWrapper); - record.setProcessRecords(list); - - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.eq(SystemSign::getSignUserId, record.getCreator()); - lambdaQueryWrapper.last("limit 1"); - SystemSign sign = signService.getOne(lambdaQueryWrapper); - if (ObjectUtil.isEmpty(sign)) { - throw new BusinessException(16000, "该用户签名不存在"); - } if (Objects.nonNull(record)) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, exportDTO.getId()); + List list = bizQualityProcessRecordService.list(queryWrapper); + record.setProcessRecords(list); + + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(SystemSign::getSignUserId, record.getCreator()); + lambdaQueryWrapper.last("limit 1"); + SystemSign sign = signService.getOne(lambdaQueryWrapper); + if (ObjectUtil.isEmpty(sign)) { + throw new BusinessException(16000, "该用户签名不存在"); + } + Map map = BeanUtil.beanToMap(record); Calendar calendar = Calendar.getInstance(); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java index 99ccd78..5610aaa 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java @@ -146,6 +146,7 @@ } /** + * 导出zip * @param supervisionRepList 分页数据 * @param response 响应 */ @@ -154,14 +155,21 @@ if (CollectionUtil.isEmpty(supervisionRepList)){ return; } + int corePoolSize = 1; + if (supervisionRepList.size() > 5) { + corePoolSize = 5; + } //创建线程组 - ThreadPoolExecutor threadPool = new ThreadPoolExecutor(5, supervisionRepList.size(), 100, + ThreadPoolExecutor threadPool = new ThreadPoolExecutor(corePoolSize, supervisionRepList.size(), 100, TimeUnit.SECONDS, new LinkedBlockingQueue<>(10)); String rootFileName = "质量监督报告" + new SimpleDateFormat("yyyyMMddHHmm").format(new Date()); List> futures = new ArrayList<>(); for (BizQualitySupervisionRep supervisionRep : supervisionRepList) { if (ObjectUtil.isNotEmpty(supervisionRep)){ + wrapRep(supervisionRep); Map map = BeanUtil.beanToMap(supervisionRep); + String date = DateUtil.format(supervisionRep.getLogTime(), "yyyy-MM-dd"); + map.put("logTime", date); CompletableFuture completableFuture = CompletableFuture.supplyAsync( ()->{ //添加附件 diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java index 11a98cf..5ab4526 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java @@ -22,6 +22,7 @@ import com.casic.missiles.service.Impl.GeneralApprovalServiceImpl; import com.casic.missiles.service.listeners.register.PrintFileRegister; import com.casic.missiles.service.resource.IBizResourceAuthorizeOrderService; +import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NoGeneratorUtil; import liquibase.pro.packaged.A; import org.apache.commons.lang3.ObjectUtils; @@ -81,8 +82,9 @@ } @Override - public void exportFile(ExportDTO exportDTO, HttpServletResponse response) { + public void exportFile(ExportDTO exportDTO, HttpServletResponse response) throws Exception { BizResourceAuthorizeOrder authorizeOrder = this.baseMapper.selectById(exportDTO.getId()); + DictCodeUtils.convertDictCodeToName(authorizeOrder); if (ObjectUtil.isNotEmpty(authorizeOrder)) { Map map = BeanUtil.beanToMap(authorizeOrder); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileRecallArchiveServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileRecallArchiveServiceImpl.java index e9173dc..12f73bb 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileRecallArchiveServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileRecallArchiveServiceImpl.java @@ -88,6 +88,7 @@ @Override public void exportFile(ExportDTO exportDTO, HttpServletResponse response) { BizResourceFileRecallArchive fileRecallArchive = this.baseMapper.selectById(exportDTO.getId()); + //todo 字段不确定 } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java index c840549..b908a0a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java @@ -158,8 +158,8 @@ } @ApiOperation("导出") - @GetMapping("/listExport") - public void export( BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { + @PostMapping("/exportZip") + public void export(@RequestBody BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); QueryWrapper query = bizQualitySupervisionRecordVO.genQuery(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java index 8ef84c7..071ceea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java @@ -64,7 +64,7 @@ } @ApiOperation("导出") - @PostMapping("/listExport") + @PostMapping("/exportZip") public void export(@RequestBody BizQualitySupervisionRepVO bizQualitySupervisionRepVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java index 7a40cd8..3f81edb 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java @@ -142,7 +142,7 @@ } @Override - public void exportZip(List recordList, HttpServletResponse response) { + public void exportZip(List recordList, HttpServletResponse response) throws ParseException { //健壮性校验 if (CollectionUtils.isEmpty(recordList)) { return; @@ -160,7 +160,28 @@ for (BizQualitySupervisionRecord supervisionRecord : recordList) { //todo 技术能力分析报告 if (ObjectUtil.isNotEmpty(supervisionRecord)) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, supervisionRecord.getId()); + List list = bizQualityProcessRecordService.list(queryWrapper); + supervisionRecord.setProcessRecords(list); + Map map = BeanUtil.beanToMap(supervisionRecord); + //格式化日期 + Calendar calendar = Calendar.getInstance(); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); + String date = simpleDateFormat.format(supervisionRecord.getCreateTime()); + calendar.setTime(new SimpleDateFormat("yyyy-MM-dd").parse(date)); + map.put("year", calendar.get(Calendar.YEAR)); + map.put("month", calendar.get(Calendar.MONTH) + 1); + map.put("day", calendar.get(Calendar.DAY_OF_MONTH)); + //拼接填充内容 + List contentList = new ArrayList<>(); + for (BizQualityProcessRecord processRecord : supervisionRecord.getProcessRecords()) { + String content = "监督的过程:" + processRecord.getProcessInfo() + "过程运行情况事实:" + processRecord.getOptFacts(); + contentList.add(content); + } + map.put("contentList", contentList); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.eq(SystemSign::getSignUserId, supervisionRecord.getCreator()); lambdaQueryWrapper.last("limit 1"); @@ -207,19 +228,20 @@ @Override public void exportFile(@RequestBody @Valid ExportDTO exportDTO, HttpServletResponse response) throws ParseException { BizQualitySupervisionRecord record = super.getById(exportDTO.getId()); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, exportDTO.getId()); - List list = bizQualityProcessRecordService.list(queryWrapper); - record.setProcessRecords(list); - - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.eq(SystemSign::getSignUserId, record.getCreator()); - lambdaQueryWrapper.last("limit 1"); - SystemSign sign = signService.getOne(lambdaQueryWrapper); - if (ObjectUtil.isEmpty(sign)) { - throw new BusinessException(16000, "该用户签名不存在"); - } if (Objects.nonNull(record)) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, exportDTO.getId()); + List list = bizQualityProcessRecordService.list(queryWrapper); + record.setProcessRecords(list); + + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(SystemSign::getSignUserId, record.getCreator()); + lambdaQueryWrapper.last("limit 1"); + SystemSign sign = signService.getOne(lambdaQueryWrapper); + if (ObjectUtil.isEmpty(sign)) { + throw new BusinessException(16000, "该用户签名不存在"); + } + Map map = BeanUtil.beanToMap(record); Calendar calendar = Calendar.getInstance(); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java index 99ccd78..5610aaa 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java @@ -146,6 +146,7 @@ } /** + * 导出zip * @param supervisionRepList 分页数据 * @param response 响应 */ @@ -154,14 +155,21 @@ if (CollectionUtil.isEmpty(supervisionRepList)){ return; } + int corePoolSize = 1; + if (supervisionRepList.size() > 5) { + corePoolSize = 5; + } //创建线程组 - ThreadPoolExecutor threadPool = new ThreadPoolExecutor(5, supervisionRepList.size(), 100, + ThreadPoolExecutor threadPool = new ThreadPoolExecutor(corePoolSize, supervisionRepList.size(), 100, TimeUnit.SECONDS, new LinkedBlockingQueue<>(10)); String rootFileName = "质量监督报告" + new SimpleDateFormat("yyyyMMddHHmm").format(new Date()); List> futures = new ArrayList<>(); for (BizQualitySupervisionRep supervisionRep : supervisionRepList) { if (ObjectUtil.isNotEmpty(supervisionRep)){ + wrapRep(supervisionRep); Map map = BeanUtil.beanToMap(supervisionRep); + String date = DateUtil.format(supervisionRep.getLogTime(), "yyyy-MM-dd"); + map.put("logTime", date); CompletableFuture completableFuture = CompletableFuture.supplyAsync( ()->{ //添加附件 diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java index 11a98cf..5ab4526 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java @@ -22,6 +22,7 @@ import com.casic.missiles.service.Impl.GeneralApprovalServiceImpl; import com.casic.missiles.service.listeners.register.PrintFileRegister; import com.casic.missiles.service.resource.IBizResourceAuthorizeOrderService; +import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NoGeneratorUtil; import liquibase.pro.packaged.A; import org.apache.commons.lang3.ObjectUtils; @@ -81,8 +82,9 @@ } @Override - public void exportFile(ExportDTO exportDTO, HttpServletResponse response) { + public void exportFile(ExportDTO exportDTO, HttpServletResponse response) throws Exception { BizResourceAuthorizeOrder authorizeOrder = this.baseMapper.selectById(exportDTO.getId()); + DictCodeUtils.convertDictCodeToName(authorizeOrder); if (ObjectUtil.isNotEmpty(authorizeOrder)) { Map map = BeanUtil.beanToMap(authorizeOrder); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileRecallArchiveServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileRecallArchiveServiceImpl.java index e9173dc..12f73bb 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileRecallArchiveServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileRecallArchiveServiceImpl.java @@ -88,6 +88,7 @@ @Override public void exportFile(ExportDTO exportDTO, HttpServletResponse response) { BizResourceFileRecallArchive fileRecallArchive = this.baseMapper.selectById(exportDTO.getId()); + //todo 字段不确定 } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/quality/IBizQualitySupervisionRecordService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/quality/IBizQualitySupervisionRecordService.java index 015ee09..d0ccc11 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/quality/IBizQualitySupervisionRecordService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/quality/IBizQualitySupervisionRecordService.java @@ -45,7 +45,7 @@ */ BizQualitySupervisionRecord getByIdNoNonConformanceRep(Long superRecordId); - void exportZip(List recordList, HttpServletResponse response); + void exportZip(List recordList, HttpServletResponse response) throws ParseException; void exportFile(@RequestBody @Valid ExportDTO exportDTO, HttpServletResponse response) throws ParseException; } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java index c840549..b908a0a 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRecordController.java @@ -158,8 +158,8 @@ } @ApiOperation("导出") - @GetMapping("/listExport") - public void export( BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { + @PostMapping("/exportZip") + public void export(@RequestBody BizQualitySupervisionRecordVO bizQualitySupervisionRecordVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); QueryWrapper query = bizQualitySupervisionRecordVO.genQuery(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java index 8ef84c7..071ceea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/quality/BizQualitySupervisionRepController.java @@ -64,7 +64,7 @@ } @ApiOperation("导出") - @PostMapping("/listExport") + @PostMapping("/exportZip") public void export(@RequestBody BizQualitySupervisionRepVO bizQualitySupervisionRepVO, HttpServletResponse response) throws Exception { //to-do 所有文件压缩包导出 Page page = PageFactory.defaultPage(); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java index 7a40cd8..3f81edb 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRecordServiceImpl.java @@ -142,7 +142,7 @@ } @Override - public void exportZip(List recordList, HttpServletResponse response) { + public void exportZip(List recordList, HttpServletResponse response) throws ParseException { //健壮性校验 if (CollectionUtils.isEmpty(recordList)) { return; @@ -160,7 +160,28 @@ for (BizQualitySupervisionRecord supervisionRecord : recordList) { //todo 技术能力分析报告 if (ObjectUtil.isNotEmpty(supervisionRecord)) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, supervisionRecord.getId()); + List list = bizQualityProcessRecordService.list(queryWrapper); + supervisionRecord.setProcessRecords(list); + Map map = BeanUtil.beanToMap(supervisionRecord); + //格式化日期 + Calendar calendar = Calendar.getInstance(); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); + String date = simpleDateFormat.format(supervisionRecord.getCreateTime()); + calendar.setTime(new SimpleDateFormat("yyyy-MM-dd").parse(date)); + map.put("year", calendar.get(Calendar.YEAR)); + map.put("month", calendar.get(Calendar.MONTH) + 1); + map.put("day", calendar.get(Calendar.DAY_OF_MONTH)); + //拼接填充内容 + List contentList = new ArrayList<>(); + for (BizQualityProcessRecord processRecord : supervisionRecord.getProcessRecords()) { + String content = "监督的过程:" + processRecord.getProcessInfo() + "过程运行情况事实:" + processRecord.getOptFacts(); + contentList.add(content); + } + map.put("contentList", contentList); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.eq(SystemSign::getSignUserId, supervisionRecord.getCreator()); lambdaQueryWrapper.last("limit 1"); @@ -207,19 +228,20 @@ @Override public void exportFile(@RequestBody @Valid ExportDTO exportDTO, HttpServletResponse response) throws ParseException { BizQualitySupervisionRecord record = super.getById(exportDTO.getId()); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, exportDTO.getId()); - List list = bizQualityProcessRecordService.list(queryWrapper); - record.setProcessRecords(list); - - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.eq(SystemSign::getSignUserId, record.getCreator()); - lambdaQueryWrapper.last("limit 1"); - SystemSign sign = signService.getOne(lambdaQueryWrapper); - if (ObjectUtil.isEmpty(sign)) { - throw new BusinessException(16000, "该用户签名不存在"); - } if (Objects.nonNull(record)) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BizQualityProcessRecord::getSuperRecordId, exportDTO.getId()); + List list = bizQualityProcessRecordService.list(queryWrapper); + record.setProcessRecords(list); + + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.eq(SystemSign::getSignUserId, record.getCreator()); + lambdaQueryWrapper.last("limit 1"); + SystemSign sign = signService.getOne(lambdaQueryWrapper); + if (ObjectUtil.isEmpty(sign)) { + throw new BusinessException(16000, "该用户签名不存在"); + } + Map map = BeanUtil.beanToMap(record); Calendar calendar = Calendar.getInstance(); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java index 99ccd78..5610aaa 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/quality/BizQualitySupervisionRepServiceImpl.java @@ -146,6 +146,7 @@ } /** + * 导出zip * @param supervisionRepList 分页数据 * @param response 响应 */ @@ -154,14 +155,21 @@ if (CollectionUtil.isEmpty(supervisionRepList)){ return; } + int corePoolSize = 1; + if (supervisionRepList.size() > 5) { + corePoolSize = 5; + } //创建线程组 - ThreadPoolExecutor threadPool = new ThreadPoolExecutor(5, supervisionRepList.size(), 100, + ThreadPoolExecutor threadPool = new ThreadPoolExecutor(corePoolSize, supervisionRepList.size(), 100, TimeUnit.SECONDS, new LinkedBlockingQueue<>(10)); String rootFileName = "质量监督报告" + new SimpleDateFormat("yyyyMMddHHmm").format(new Date()); List> futures = new ArrayList<>(); for (BizQualitySupervisionRep supervisionRep : supervisionRepList) { if (ObjectUtil.isNotEmpty(supervisionRep)){ + wrapRep(supervisionRep); Map map = BeanUtil.beanToMap(supervisionRep); + String date = DateUtil.format(supervisionRep.getLogTime(), "yyyy-MM-dd"); + map.put("logTime", date); CompletableFuture completableFuture = CompletableFuture.supplyAsync( ()->{ //添加附件 diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java index 11a98cf..5ab4526 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceAuthorizeOrderServiceImpl.java @@ -22,6 +22,7 @@ import com.casic.missiles.service.Impl.GeneralApprovalServiceImpl; import com.casic.missiles.service.listeners.register.PrintFileRegister; import com.casic.missiles.service.resource.IBizResourceAuthorizeOrderService; +import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NoGeneratorUtil; import liquibase.pro.packaged.A; import org.apache.commons.lang3.ObjectUtils; @@ -81,8 +82,9 @@ } @Override - public void exportFile(ExportDTO exportDTO, HttpServletResponse response) { + public void exportFile(ExportDTO exportDTO, HttpServletResponse response) throws Exception { BizResourceAuthorizeOrder authorizeOrder = this.baseMapper.selectById(exportDTO.getId()); + DictCodeUtils.convertDictCodeToName(authorizeOrder); if (ObjectUtil.isNotEmpty(authorizeOrder)) { Map map = BeanUtil.beanToMap(authorizeOrder); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileRecallArchiveServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileRecallArchiveServiceImpl.java index e9173dc..12f73bb 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileRecallArchiveServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileRecallArchiveServiceImpl.java @@ -88,6 +88,7 @@ @Override public void exportFile(ExportDTO exportDTO, HttpServletResponse response) { BizResourceFileRecallArchive fileRecallArchive = this.baseMapper.selectById(exportDTO.getId()); + //todo 字段不确定 } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/quality/IBizQualitySupervisionRecordService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/quality/IBizQualitySupervisionRecordService.java index 015ee09..d0ccc11 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/quality/IBizQualitySupervisionRecordService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/quality/IBizQualitySupervisionRecordService.java @@ -45,7 +45,7 @@ */ BizQualitySupervisionRecord getByIdNoNonConformanceRep(Long superRecordId); - void exportZip(List recordList, HttpServletResponse response); + void exportZip(List recordList, HttpServletResponse response) throws ParseException; void exportFile(@RequestBody @Valid ExportDTO exportDTO, HttpServletResponse response) throws ParseException; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceAuthorizeOrderService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceAuthorizeOrderService.java index 42c9785..38b0b6d 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceAuthorizeOrderService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceAuthorizeOrderService.java @@ -22,5 +22,5 @@ ReturnDTO saveAuthorizeOrder(BizResourceAuthorizeOrder request); - void exportFile(ExportDTO exportDTO, HttpServletResponse response); + void exportFile(ExportDTO exportDTO, HttpServletResponse response) throws Exception; }