From abca0c8ab107797f0d039cad9dd93924d8d8ec95 Mon Sep 17 00:00:00 2001 From: qiankanghui <11284155+qian-kanghui@user.noreply.gitee.com> Date: Thu, 5 Feb 2026 10:29:58 +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 - 新增 eamExchangeOrderExportExcel 接口支持换线专家组维修工单导出 - 添加 eamWorkOrderSearchForDefectExport 查询方法 - 在 EamMapper 中新增数据访问接口 - 在 EamService 和 EamServiceImpl 中实现导出业务逻辑 - 配置 Excel 导出响应头和文件名编码 - 使用 EasyExcel 实现数据导出功能 - 在 XML 映射文件中添加相应的 SQL 查询语句 --- .../modules/pms/controller/EamController.java | 25 ++++ .../sys/modules/pms/mapper/EamMapper.java | 2 + .../sys/modules/pms/service/EamService.java | 2 + .../pms/service/Impl/EamServiceImpl.java | 8 ++ src/main/resources/mapper/pms/EamMapper.xml | 126 ++++++++++++++++++ 5 files changed, 163 insertions(+) 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 70ff5c23..e383fe9a 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 @@ -56,6 +56,31 @@ public class EamController { @Autowired private QueryCriteriaConstructorDefault queryCriteriaConstructorDefault; + /** + * @Description 换线专家组维修工单 + * @Title + * @author qkh + * @date 2026/2/4 + **/ + @PostMapping(value="/eamExchangeOrderExportExcel") + public void eamExchangeOrderExportExcel (@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"); + + //获取数据 + List list = + eamService.eamWorkOrderSearchForDefectExport(data); + + EasyExcel.write(response.getOutputStream(), EamWorkOrderExportData.class) + .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) + .sheet("换线专家组维修工单") + .doWrite(list); + } + + /** * @Description 维护工单导出excel * @Title eamMaintainOrderExportExcel diff --git a/src/main/java/com/xujie/sys/modules/pms/mapper/EamMapper.java b/src/main/java/com/xujie/sys/modules/pms/mapper/EamMapper.java index b7b4646c..c587befa 100644 --- a/src/main/java/com/xujie/sys/modules/pms/mapper/EamMapper.java +++ b/src/main/java/com/xujie/sys/modules/pms/mapper/EamMapper.java @@ -533,4 +533,6 @@ public interface EamMapper { QcItemData getEamPropertiesItemByItemNo(@Param("data") QcItemData data); List eamWorkOrderSearchList(@Param("query") EamWorkOrderInData inData); + + List eamWorkOrderSearchForDefectExport(@Param("query") EamWorkOrderInData inData); } diff --git a/src/main/java/com/xujie/sys/modules/pms/service/EamService.java b/src/main/java/com/xujie/sys/modules/pms/service/EamService.java index d0cfb028..7cc39bd9 100644 --- a/src/main/java/com/xujie/sys/modules/pms/service/EamService.java +++ b/src/main/java/com/xujie/sys/modules/pms/service/EamService.java @@ -1223,4 +1223,6 @@ public interface EamService { QcItemData getEamPropertiesItemByItemNo(QcItemData data); List eamWorkOrderSearchList(EamWorkOrderInData data); + + List eamWorkOrderSearchForDefectExport(EamWorkOrderInData data); } diff --git a/src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java b/src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java index d101a958..4f7b3332 100644 --- a/src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java +++ b/src/main/java/com/xujie/sys/modules/pms/service/Impl/EamServiceImpl.java @@ -1685,6 +1685,14 @@ public class EamServiceImpl implements EamService { IPage resultList = this.eamMapper.eamWorkOrderSearchForDefect(new Page(inData.getPage(), inData.getLimit()), inData); return new PageUtils(resultList); } + //换线专家组不分页查询 + @Override + public List eamWorkOrderSearchForDefectExport(EamWorkOrderInData inData) { + if (StringUtils.isNotBlank(inData.getDepartmentName())) { + inData.setDeptArr(inData.getDepartmentName().split(";")); + } + return eamMapper.eamWorkOrderSearchForDefectExport(inData); + } //同eamWorkOrderSearchForDefect方法,但返回值接收对象不同,用于导出 @Override public PageUtils eamWorkOrderSearchForDefect2(EamWorkOrderInData inData){ diff --git a/src/main/resources/mapper/pms/EamMapper.xml b/src/main/resources/mapper/pms/EamMapper.xml index 149327ab..65b82e94 100644 --- a/src/main/resources/mapper/pms/EamMapper.xml +++ b/src/main/resources/mapper/pms/EamMapper.xml @@ -4341,6 +4341,132 @@ ORDER BY a.CreateDate + insert into sound_box_email_log (site, component_part_no, notify_no, request_data, response_data, email, created_at, user_id, username) values (#{site}, #{componentPartNo}, #{notifyNo}, #{requestData}, #{responseData}, #{email}, #{createdAt}, #{userId}, #{username})