cnas-process/src/main/java/com/ruoyi/process/controller/ProcessReportController.java
@@ -64,11 +64,8 @@ @ApiOperation(value = "导出检验报告发放登记表") @GetMapping("/exportProcessReport") public void exportProcessReport(String ids, HttpServletResponse response) { List<Integer> list = Arrays.stream(ids.split(",")) .map(Integer::parseInt) .collect(Collectors.toList()); processReportService.exportProcessReport(list, response); public void exportProcessReport(ProcessReportDto dto, HttpServletResponse response) { processReportService.exportProcessReport(dto, response); } } cnas-process/src/main/java/com/ruoyi/process/dto/ProcessReportDto.java
@@ -1,12 +1,13 @@ package com.ruoyi.process.dto; import com.ruoyi.process.pojo.ProcessReport; import lombok.Data; import java.util.List; @Data //导出 public class ProcessReportDto { public class ProcessReportDto extends ProcessReport { private List<Integer> ids; } cnas-process/src/main/java/com/ruoyi/process/mapper/ProcessOrderDeviceMapper.java
@@ -21,7 +21,7 @@ Set<String> selectDeviceNumber(@Param("inspectionOrderId") Integer inspectionOrderId); List<Integer> selectDeviceIdsByNumbers(@Param("orderDeviceNumbers") Set<String> orderDeviceNumbers); List<Integer> selectDeviceIdsByNumbers(@Param("deviceNumbers") Set<String> deviceNumbers); IPage<ProcessOrderDevice> deviceRecordPage(@Param("deviceId") Integer deviceId, @Param("page") Page page, @Param("sampleCode") String sampleCode, @Param("managementNumber") String managementNumber); } cnas-process/src/main/java/com/ruoyi/process/mapper/ProcessReportMapper.java
@@ -21,5 +21,5 @@ IPage<ProcessReport> pageProcessReport(Page page, @Param("ew") QueryWrapper<ProcessReport> queryWrappers); List<ProcessReport> getIds(@Param("ids") List<Integer> ids); List<ProcessReport> exportProcessReport(); } cnas-process/src/main/java/com/ruoyi/process/service/ProcessReportService.java
@@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.process.dto.ProcessReportDto; import com.ruoyi.process.pojo.ProcessReport; import javax.servlet.http.HttpServletResponse; @@ -21,5 +22,5 @@ IPage<ProcessReport> pageProcessReport(Page page, ProcessReport processReport); void exportProcessReport(List<Integer> ids, HttpServletResponse response); void exportProcessReport(ProcessReportDto dto, HttpServletResponse response); } cnas-process/src/main/java/com/ruoyi/process/service/impl/ProcessReportServiceImpl.java
@@ -15,6 +15,7 @@ import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.framework.exception.ErrorException; import com.ruoyi.inspect.util.HackLoopTableRenderPolicy; import com.ruoyi.process.dto.ProcessReportDto; import com.ruoyi.process.mapper.ProcessReportMapper; import com.ruoyi.process.pojo.ProcessReport; import com.ruoyi.process.service.ProcessReportService; @@ -53,44 +54,19 @@ @Resource private ProcessReportMapper processReportMapper; @Value("${wordUrl}") private String wordUrl; @Resource private UserMapper userMapper; @Override public IPage<ProcessReport> pageProcessReport(Page page, ProcessReport processReport) { //todo 仅看我 IPage<ProcessReport> processReportIPage = processReportMapper.pageProcessReport(page, QueryWrappers.queryWrappers(processReport)); // for (ProcessReport record : processReportIPage.getRecords()) { // List<String> name = new ArrayList<>(); // for (String s : record.getSignatory().split(",")) { // User user = userMapper.selectById(Integer.parseInt(s)); // name.add(user.getName()); // } // String signatoryName = name.stream().collect(Collectors.joining(",")); // record.setSignatoryName(signatoryName); // } return processReportIPage; } @Override public void exportProcessReport(List<Integer> ids, HttpServletResponse response) { List<ProcessReport> processReports = processReportMapper.getIds(ids); // for (ProcessReport record : processReports) { // List<String> name = new ArrayList<>(); // if(StringUtils.isNotBlank(record.getSignatory())){ // for (String s : record.getSignatory().split(",")) { // User user = userMapper.selectById(Integer.parseInt(s)); // name.add(user.getName()); // } // String signatoryName = name.stream().collect(Collectors.joining(",")); // record.setSignatoryName(signatoryName); // } // } public void exportProcessReport(ProcessReportDto dto, HttpServletResponse response) { List<ProcessReport> processReports = processReportMapper.exportProcessReport(); // 获取路径 InputStream inputStream = this.getClass().getResourceAsStream("/static/report-deal.docx"); Configure configure = Configure.builder() cnas-process/src/main/resources/mapper/ProcessReportMapper.xml
@@ -27,16 +27,11 @@ ${ew.customSqlSegment} </if> </select> <select id="getIds" resultType="com.ruoyi.process.pojo.ProcessReport"> <select id="exportProcessReport" resultType="com.ruoyi.process.pojo.ProcessReport"> select ROW_NUMBER() OVER (ORDER BY cpr.id) AS indexs, cpr.* , u1.name sendUserName from cnas_process_report cpr left join user u1 on send_user=u1.id where 1=1 and cpr.id in <foreach collection="ids" separator="," item="id" open="(" close=")"> #{id} </foreach> </select> </mapper> cnas-process/src/main/resources/static/report-deal.docxBinary files differ