diff --git a/src/main/java/com/xujie/sys/modules/pms/controller/EamController.java b/src/main/java/com/xujie/sys/modules/pms/controller/EamController.java index 69d7b7df..338a0145 100644 --- a/src/main/java/com/xujie/sys/modules/pms/controller/EamController.java +++ b/src/main/java/com/xujie/sys/modules/pms/controller/EamController.java @@ -34,6 +34,7 @@ import org.springframework.http.ResponseEntity; import org.springframework.web.multipart.MultipartFile; import java.io.BufferedReader; +import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStreamReader; @@ -153,12 +154,25 @@ public class EamController { //获取数据 PageUtils page = eamService.eamWorkOrderSearchForDefect2(data); - // 写入Excel - EasyExcel.write(response.getOutputStream(), EamWorkOrderExportData.class) - //自适应列宽 - .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) - .sheet("设备维修组维修工单") - .doWrite(page.getList()); + // 写入Excel(先写入临时流,再设置特定列宽) + try (ByteArrayOutputStream outputStream = new ByteArrayOutputStream()) { + EasyExcel.write(outputStream, EamWorkOrderExportData.class) + //自适应列宽 + .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) + .sheet("设备维修组维修工单") + .doWrite(page.getList()); + + try (XSSFWorkbook workbook = new XSSFWorkbook(new ByteArrayInputStream(outputStream.toByteArray()))) { + XSSFSheet sheet = workbook.getSheetAt(0); + // 反馈描述(4)、故障原因(24)、处理方式(25)、预防措施(26)、备注说明(27) 设置50宽度 + sheet.setColumnWidth(4, 50 * 256); + sheet.setColumnWidth(24, 50 * 256); + sheet.setColumnWidth(25, 50 * 256); + sheet.setColumnWidth(26, 50 * 256); + sheet.setColumnWidth(27, 50 * 256); + workbook.write(response.getOutputStream()); + } + } } /** diff --git a/src/main/resources/mapper/pms/EamMapper.xml b/src/main/resources/mapper/pms/EamMapper.xml index 6412094c..d260fc08 100644 --- a/src/main/resources/mapper/pms/EamMapper.xml +++ b/src/main/resources/mapper/pms/EamMapper.xml @@ -1260,6 +1260,12 @@ AND a.repair_reporting_type = #{query.repairReportingType} + + AND b.CreatedDate >= #{query.createdStartDate} + + + AND #{query.createdEndDate} >= b.CreatedDate + AND a.repair_type = #{query.repairType}