From 42ca668f6ef8643abc373e4a6b7e53876a7bbd7c Mon Sep 17 00:00:00 2001 From: = <=> Date: Fri, 7 Nov 2025 15:17:06 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A5=B3=E8=81=8C=E5=B7=A5=E5=8D=AB=E7=94=9F?= =?UTF-8?q?=E8=B4=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WomanSanitaryManageController.java | 3 +- .../model/WomanSanitaryUser.java | 10 +++ .../impl/WomanSanitaryUserServiceImpl.java | 86 ++++++++++++++++--- .../vo/WomanSanitaryUserExportVo.java | 8 +- .../vo/WomanSanitaryUserImportVo.java | 3 - .../womanSanitary/manage/index.html | 10 ++- .../womanSanitary/query/index.html | 8 +- .../staffbenefit/condolence/apply/index.html | 2 +- 8 files changed, 107 insertions(+), 23 deletions(-) diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/controller/WomanSanitaryManageController.java b/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/controller/WomanSanitaryManageController.java index 3c3081a6..f8cd50d7 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/controller/WomanSanitaryManageController.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/controller/WomanSanitaryManageController.java @@ -164,8 +164,7 @@ public class WomanSanitaryManageController { public Result batchIssue() { try { // 方案1: 使用SQL直接切换所有记录的状态 - Sql sql = Sqls.create("UPDATE woman_sanitary_user SET issue = !issue"); - dao.execute(sql); + Sql sql = Sqls.create("UPDATE woman_sanitary_user SET issue = true WHERE issue = false"); dao.execute(sql); return Result.success("状态切换成功"); } catch (Exception e) { diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/model/WomanSanitaryUser.java b/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/model/WomanSanitaryUser.java index 478bd251..a42c0bf2 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/model/WomanSanitaryUser.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/model/WomanSanitaryUser.java @@ -77,6 +77,16 @@ public class WomanSanitaryUser extends BaseModel implements Serializable { @ColDefine(type = ColType.VARCHAR, width = 50) private String mobile; + @Column + @Comment("入校时间") + @ColDefine(type = ColType.DATE) + private Date arrivalAtSchoolDate; + + @Column + @Comment("离校时间") + @ColDefine(type = ColType.DATE) + private Date expectedLeaveSchoolDate; + @Column @Comment("是否发放") @ColDefine(type = ColType.BOOLEAN) diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/service/impl/WomanSanitaryUserServiceImpl.java b/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/service/impl/WomanSanitaryUserServiceImpl.java index 84d78931..88b52980 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/service/impl/WomanSanitaryUserServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/service/impl/WomanSanitaryUserServiceImpl.java @@ -53,7 +53,6 @@ public class WomanSanitaryUserServiceImpl extends BaseServiceImpl ts = EasyExcelUtil.syncReadModel(file.getFile(), WomanSanitaryUserImportVo.class, 0, 1); List list = JSONUtil.parseArray(JSONUtil.toJsonStr(ts)).toList(WomanSanitaryUserImportVo.class); @@ -73,7 +72,9 @@ public class WomanSanitaryUserServiceImpl extends BaseServiceImpl vwUserList = vwUserSql.getList(Record.class); Map vwUserMap = vwUserList.stream().collect(Collectors.toMap(r -> r.getString("loginname"), r -> r)); - // 修改2: 使用正确的实体类 List userList = new ArrayList<>(); List insertOrUpdateUserList = new ArrayList<>(); @@ -113,6 +113,7 @@ public class WomanSanitaryUserServiceImpl extends BaseServiceImpl currentYear) { + // 判断入职时间 + if (arrivalYear < currentYear) { + return 12 * 30.0; // 全年在岗 + } else { + // 本年入职 + int arrivalMonth = DateUtil.month(arrivalDate) + 1; + return 30.0 * (12 - arrivalMonth + 1); + } + } else { + // 如果离校年份等于当前年份,需要计算到离校月份 + if (arrivalYear < currentYear) { + // 之前年份入职,计算到离校月份 + int leaveMonth = DateUtil.month(leaveDate) + 1; + return 30.0 * leaveMonth; // 包括离校当月 + } else if (arrivalYear == currentYear) { + // 本年入职又本年离校 + int arrivalMonth = DateUtil.month(arrivalDate) + 1; + int leaveMonth = DateUtil.month(leaveDate) + 1; + return 30.0 * (leaveMonth - arrivalMonth + 1); // 包括首尾两月 + } else { + // 不可能的情况(入职时间晚于离校时间) + return 0.0; + } + } + } + } + } diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/vo/WomanSanitaryUserExportVo.java b/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/vo/WomanSanitaryUserExportVo.java index cfa6cb6b..5949fb67 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/vo/WomanSanitaryUserExportVo.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/vo/WomanSanitaryUserExportVo.java @@ -40,13 +40,19 @@ public class WomanSanitaryUserExportVo { @Excel(name = "电话", width = 20) private String mobile; + @Excel(name = "入职时间", width = 20, format = "yyyy-MM-dd") + private String arrivalAtSchoolDate; + + @Excel(name = "离职时间", width = 20, format = "yyyy-MM-dd") + private String expectedLeaveSchoolDate; + @Excel(name = "发放金额", width = 20) private Double money; @Excel(name = "是否发放", width = 20) private String issueDisplay; - @Excel(name = "申请时间", width = 20, format = "yyyy-MM-dd") + @Excel(name = "导入时间", width = 20, format = "yyyy-MM-dd") private String applyTime; @ExcelIgnore diff --git a/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/vo/WomanSanitaryUserImportVo.java b/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/vo/WomanSanitaryUserImportVo.java index 5fb85b2e..2eb34add 100644 --- a/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/vo/WomanSanitaryUserImportVo.java +++ b/src/main/java/com/budwk/app/zhgh/dayofficework/womanSanitary/vo/WomanSanitaryUserImportVo.java @@ -37,9 +37,6 @@ public class WomanSanitaryUserImportVo { @ExcelProperty("单位") private String unitName; - @ExcelProperty("发放金额") - private Double money; - @ExcelIgnore private String errorInfo; diff --git a/src/main/resources/views/platform/zhgh/dayofficework/womanSanitary/manage/index.html b/src/main/resources/views/platform/zhgh/dayofficework/womanSanitary/manage/index.html index dce74de6..4f08c1a9 100644 --- a/src/main/resources/views/platform/zhgh/dayofficework/womanSanitary/manage/index.html +++ b/src/main/resources/views/platform/zhgh/dayofficework/womanSanitary/manage/index.html @@ -62,17 +62,23 @@ layout("/layouts/platform.html"){ - + + + + + + + - +