From fab3a22666c4c5a26145b468b9696abce50d4efd Mon Sep 17 00:00:00 2001 From: dd3s_206 Date: Tue, 9 Jun 2026 18:04:11 +0800 Subject: [PATCH] =?UTF-8?q?=E8=81=8C=E5=B7=A5=E7=A6=8F=E5=88=A9-=E7=A6=8F?= =?UTF-8?q?=E5=88=A9=E5=90=8D=E5=8D=95:=20=E6=96=B0=E5=A2=9E=E2=80=98?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=E9=87=8D=E5=A4=8D=E8=BA=AB=E4=BB=BD=E8=AF=81?= =?UTF-8?q?=E5=8F=B7=E4=BA=BA=E5=91=98=E2=80=99=E6=8C=89=E9=92=AE=EF=BC=88?= =?UTF-8?q?=E4=BB=85=E8=B6=85=E7=BA=A7=E7=AE=A1=E7=90=86=E5=91=98=E5=8F=AF?= =?UTF-8?q?=E8=A7=81=EF=BC=89;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WelfareListController.java | 8 +++ .../welfare/service/WelfareListService.java | 7 ++ .../service/impl/WelfareListServiceImpl.java | 66 +++++++++++++++++++ .../zhgh/welfare/welfareUser/index.html | 14 ++++ 4 files changed, 95 insertions(+) diff --git a/src/main/java/com/budwk/app/zhgh/welfare/controller/WelfareListController.java b/src/main/java/com/budwk/app/zhgh/welfare/controller/WelfareListController.java index 1713495..5c8710a 100644 --- a/src/main/java/com/budwk/app/zhgh/welfare/controller/WelfareListController.java +++ b/src/main/java/com/budwk/app/zhgh/welfare/controller/WelfareListController.java @@ -116,6 +116,14 @@ public class WelfareListController { welfareListService.exportAddress(pageForm, response); } + @At + @SaCheckPermission("welfare.list.mange") + @ApiOperation("导出重复身份证号人员") + @Ok("void") + public void exportRepeatIdCard(WelfareListPageForm pageForm, HttpServletResponse response) { + welfareListService.exportRepeatIdCard(pageForm, response); + } + @At @SaCheckPermission("welfare.list.mange") @ApiOperation("导出") diff --git a/src/main/java/com/budwk/app/zhgh/welfare/service/WelfareListService.java b/src/main/java/com/budwk/app/zhgh/welfare/service/WelfareListService.java index efa8c9e..66b5030 100644 --- a/src/main/java/com/budwk/app/zhgh/welfare/service/WelfareListService.java +++ b/src/main/java/com/budwk/app/zhgh/welfare/service/WelfareListService.java @@ -53,6 +53,13 @@ public interface WelfareListService extends BaseService { */ void exportAddress(WelfareListPageForm pageForm, HttpServletResponse response); + /** + * 导出重复身份证号人员 + * @param pageForm + * @param response + */ + void exportRepeatIdCard(WelfareListPageForm pageForm, HttpServletResponse response); + /** * 导出 * @param pageForm diff --git a/src/main/java/com/budwk/app/zhgh/welfare/service/impl/WelfareListServiceImpl.java b/src/main/java/com/budwk/app/zhgh/welfare/service/impl/WelfareListServiceImpl.java index b6ad1d7..5925580 100644 --- a/src/main/java/com/budwk/app/zhgh/welfare/service/impl/WelfareListServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/welfare/service/impl/WelfareListServiceImpl.java @@ -629,6 +629,72 @@ public class WelfareListServiceImpl extends BaseServiceImpl impleme } } + @Override + public void exportRepeatIdCard(WelfareListPageForm pageForm, HttpServletResponse response) { + Sql sql = Sqls.create(""" + SELECT + t1.*, + t2.loginname, + t2.username, + t2.idCard, + t2.sex, + DATE_FORMAT(t2.birthday, '%Y-%m-%d') AS birthday + FROM + `welfare_list` t1 + LEFT JOIN sys_user t2 ON t2.id = t1.userId + $condition + """); + Cnd cnd = Cnd.NEW(); + cnd.and("t1.projectId", "=", pageForm.getProjectId()); + cnd.and("t2.idCard", "in", Sqls.create("select idCard from sys_user where idCard is not null and idCard != '' group by idCard having count(1) > 1")); + if (StrUtil.isNotBlank(pageForm.getUserName())) { + cnd.where().andLike("t2.username", pageForm.getUserName()); + } + if (StrUtil.isNotBlank(pageForm.getLoginName())) { + cnd.where().andLike("t2.loginname", pageForm.getLoginName()); + } + cnd.andEX("t2.sex", "=", pageForm.getSex()); + cnd.andEX("t2.birthday", "=", pageForm.getBirthday()); + if (pageForm.getBirthMonths() != null && pageForm.getBirthMonths().length > 0) { + cnd.andEX("MONTH(t2.birthday)", "in", pageForm.getBirthMonths()); + } + cnd.andEX("t1.welfareUnitId", "in", pageForm.getUnitIds()); + cnd.andEX("t1.welfareUnionId", "=", pageForm.getUnionId()); + cnd.andEX("t1.personType", "in", pageForm.getPersonTypes()); + cnd.andEX("t1.preparedBy", "in", pageForm.getPreparedBys()); + cnd.andEX("t1.userState", "in", pageForm.getUserStates()); + + cnd.asc("t2.idCard"); + cnd.asc("t1.welfareUnionName"); + cnd.asc("t1.welfareUnitName"); + + sql.setCondition(cnd); + List list = listMap(sql); + + try { + List exportEntities = new ArrayList<>(); + exportEntities.add(new ExcelExportEntity("工号", "loginname", 20)); + exportEntities.add(new ExcelExportEntity("姓名", "username", 20)); + exportEntities.add(new ExcelExportEntity("身份证号", "idCard", 30)); + exportEntities.add(new ExcelExportEntity("性别", "sex", 20)); + exportEntities.add(new ExcelExportEntity("出生日期", "birthday", 20)); + exportEntities.add(new ExcelExportEntity("人员类型", "personType", 20)); + exportEntities.add(new ExcelExportEntity("聘用方式", "preparedBy", 20)); + exportEntities.add(new ExcelExportEntity("在职状态", "userState", 20)); + exportEntities.add(new ExcelExportEntity("所属工会", "welfareUnionName", 20)); + exportEntities.add(new ExcelExportEntity("所属单位", "welfareUnitName", 30)); + exportEntities.add(new ExcelExportEntity("备注", "remark", 30)); + + ExportParams exportParams = new ExportParams(); + exportParams.setType(ExcelType.XSSF); + Workbook workbook = ExcelExportUtil.exportExcel(exportParams, exportEntities, list); + + CommonDownloadUtil.download("重复身份证号人员.xlsx", workbook, response); + } catch (Exception e) { + e.printStackTrace(); + } + } + @Override public void exportXlsx(WelfareListPageForm pageForm, HttpServletResponse response) { Sql sql = Sqls.create(""" diff --git a/src/main/resources/views/platform/zhgh/welfare/welfareUser/index.html b/src/main/resources/views/platform/zhgh/welfare/welfareUser/index.html index 1e5993f..5faf21a 100644 --- a/src/main/resources/views/platform/zhgh/welfare/welfareUser/index.html +++ b/src/main/resources/views/platform/zhgh/welfare/welfareUser/index.html @@ -136,6 +136,16 @@ layout("/layouts/platform.html"){ 导出名单 + + 导出重复身份证号人员 + 导入名单 @@ -329,6 +339,10 @@ layout("/layouts/platform.html"){ exportAddress() { this.$downLoad("/platform/welfare/list/mange/exportAddress", this.pageForm) }, + // 导出重复身份证号人员 + exportRepeatIdCard() { + this.$downLoad("/platform/welfare/list/mange/exportRepeatIdCard", this.pageForm) + }, // 导出名单 openExport() { const pageForm = clone(this.pageForm)