From bc80fd88fbea6009ce465ede75588cf2c0fc3ced Mon Sep 17 00:00:00 2001 From: qiankanghui <11284155+qian-kanghui@user.noreply.gitee.com> Date: Thu, 5 Feb 2026 13:34:17 +0800 Subject: [PATCH] =?UTF-8?q?feat(eam):=20=E6=B7=BB=E5=8A=A0=E6=8D=A2?= =?UTF-8?q?=E7=BA=BF=E4=B8=93=E5=AE=B6=E7=BB=84=E7=BB=B4=E4=BF=AE=E5=B7=A5?= =?UTF-8?q?=E5=8D=95=E5=AF=BC=E5=87=BA=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 实现 reportExchangeWorkOrderExport 接口支持工单数据导出 - 集成 EasyExcel 实现 Excel 文件生成和下载 - 添加 Content-Disposition 响应头设置文件下载 - 创建 reportExchangeWorkOrderExportData 数据模型类 - 定义工单编码、反馈单号、设备信息等 Excel 字段映射 - 配置日期格式化和列宽自适应策略 --- .../modules/pms/controller/EamController.java | 21 +++++++ .../reportExchangeWorkOrderExportData.java | 57 +++++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 src/main/java/com/xujie/sys/modules/pms/data/reportExchangeWorkOrderExportData.java 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 e383fe9a..b3e67064 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 @@ -55,6 +55,27 @@ public class EamController { @Autowired private QueryCriteriaConstructorDefault queryCriteriaConstructorDefault; + + /** + * @Description 换线专家组维修执行工单导出 + * @Title + * @author qkh + * @date + **/ + @PostMapping(value="/reportExchangeWorkOrderExport") + public void reportExchangeWorkOrderExport(@RequestBody EamWorkOrderInData data, HttpServletResponse response) throws IOException { + // 设置响应头 + response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + response.setCharacterEncoding("utf-8"); + String fileName = URLEncoder.encode("换线专家组维修执行工单", "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-Disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + //获取数据 + PageUtils page = eamService.eamWorkOrderSearch2(data); + EasyExcel.write(response.getOutputStream(), reportExchangeWorkOrderExportData.class) + .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) + .sheet("换线专家组维修执行工单") + .doWrite(page.getList()); + } /** * @Description 换线专家组维修工单 diff --git a/src/main/java/com/xujie/sys/modules/pms/data/reportExchangeWorkOrderExportData.java b/src/main/java/com/xujie/sys/modules/pms/data/reportExchangeWorkOrderExportData.java new file mode 100644 index 00000000..44335992 --- /dev/null +++ b/src/main/java/com/xujie/sys/modules/pms/data/reportExchangeWorkOrderExportData.java @@ -0,0 +1,57 @@ +package com.xujie.sys.modules.pms.data; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.format.DateTimeFormat; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +@Data +public class reportExchangeWorkOrderExportData { + + @ExcelProperty("工单编码") + private String orderNo; + + @ExcelProperty("反馈单号") + private String planID; + + @ExcelProperty("反馈描述") + private String feedBackDesc; + + @ExcelProperty("故障编码") + private String defectID; + + @ExcelProperty("故障名称") + private String defectDesc; + + @ExcelProperty("设备编码") + private String objectID; + + @ExcelProperty("设备名称") + private String objectDesc; + + @ExcelProperty("报修人员名称") + private String createBy; + + @ExcelProperty("状态") + private String status; + + @ExcelProperty("计划执行人员") + private String planOperatorName; + + @ExcelProperty("计划执行日期") + @DateTimeFormat("yyyy-MM-dd") + private Date planDate; + + @ExcelProperty("审核备注") + private String difficultyRemark; + + @ExcelProperty("备注说明") + private String remark; + + @ExcelProperty("单据来源") + private String documentSource; + + +}