From 30bd0425caaee2e105aac054bcdf94e9a58a2d3b Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 12 十一月 2025 17:20:36 +0800
Subject: [PATCH] 年龄修改
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOldsterWarningController.java | 13 ++++++
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOldsterServiceImpl.java | 15 ++++++-
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOldsterController.java | 4 --
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOldsterWarningServiceImpl.java | 30 +++++++++++++++
4 files changed, 55 insertions(+), 7 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOldsterController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOldsterController.java
index 7477972..f602ced 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOldsterController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOldsterController.java
@@ -176,10 +176,6 @@
result.append("第"+i+"行:[", "老人姓名"+"]不能为空");
continue;
}
- if (oldsterImport.getOldsterAge()==null){
- result.append("第"+i+"行:[", "老人年龄"+"]不能为空");
- continue;
- }
if (!StringUtils.hasLength(oldsterImport.getOldsterSexStr())){
result.append("第"+i+"行:[", "老人性别"+"]不能为空");
continue;
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOldsterWarningController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOldsterWarningController.java
index c90d108..17cc140 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOldsterWarningController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TOldsterWarningController.java
@@ -34,6 +34,8 @@
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.net.URLEncoder;
+import java.time.LocalDate;
+import java.time.Period;
import java.util.List;
import java.util.Objects;
@@ -80,7 +82,6 @@
TOldster oldster = oldsterService.getById(oldsterWarning.getOldsterId());
if(Objects.nonNull(oldster)){
oldsterWarningVO.setOldsterName(oldster.getOldsterName());
- oldsterWarningVO.setOldsterAge(oldster.getOldsterAge());
oldsterWarningVO.setOldsterSex(oldster.getOldsterSex());
oldsterWarningVO.setContactPhone(oldster.getContactPhone());
oldsterWarningVO.setGuardianName(oldster.getGuardianName());
@@ -90,6 +91,16 @@
oldsterWarningVO.setIdCard(oldster.getIdCard());
oldsterWarningVO.setBirthDate(oldster.getBirthDate());
oldsterWarningVO.setOldsterType(oldster.getOldsterType());
+ LocalDate birthDate = oldster.getBirthDate();
+ LocalDate currentDate = LocalDate.now();
+ // 使用Period类计算两个日期之间的年数差异
+ Period period = Period.between(birthDate, currentDate);
+ int years = period.getYears();
+ // 如果当前日期小于出生日期的下一个生日,则需要减去一年(因为我们还没有过生日)
+ if (currentDate.isBefore(birthDate.plusYears(years).plusMonths(1).minusDays(1))) {
+ years--;
+ }
+ oldsterWarningVO.setOldsterAge(years);
}
return R.ok(oldsterWarningVO);
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOldsterServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOldsterServiceImpl.java
index 3635f93..2361fec 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOldsterServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOldsterServiceImpl.java
@@ -12,6 +12,8 @@
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
+import java.time.LocalDate;
+import java.time.Period;
import java.util.List;
/**
@@ -34,8 +36,17 @@
}
for (TOldster oldster : list) {
- int age = IDCardAgeCalculator.calculateAge(oldster.getIdCard());
- oldster.setAge(age);
+ LocalDate birthDate = oldster.getBirthDate();
+ LocalDate currentDate = LocalDate.now();
+ // 使用Period类计算两个日期之间的年数差异
+ Period period = Period.between(birthDate, currentDate);
+ int years = period.getYears();
+ // 如果当前日期小于出生日期的下一个生日,则需要减去一年(因为我们还没有过生日)
+ if (currentDate.isBefore(birthDate.plusYears(years).plusMonths(1).minusDays(1))) {
+ years--;
+ }
+ oldster.setOldsterAge(years);
+ oldster.setAge(years);
}
pageInfo.setRecords( list);
return pageInfo;
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOldsterWarningServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOldsterWarningServiceImpl.java
index 4cf4ba0..74d0862 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOldsterWarningServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TOldsterWarningServiceImpl.java
@@ -15,6 +15,8 @@
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
+import java.time.LocalDate;
+import java.time.Period;
import java.util.ArrayList;
import java.util.List;
@@ -33,6 +35,22 @@
public PageInfo<TOldsterWarningVO> pageList(OldsterListQuery query) {
PageInfo<TOldsterWarningVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
List<TOldsterWarningVO> list = this.baseMapper.pageList(query,pageInfo);
+ if(CollectionUtils.isEmpty(list)){
+ return pageInfo;
+ }
+
+ for (TOldsterWarningVO oldsterWarningVO : list) {
+ LocalDate birthDate = oldsterWarningVO.getBirthDate();
+ LocalDate currentDate = LocalDate.now();
+ // 使用Period类计算两个日期之间的年数差异
+ Period period = Period.between(birthDate, currentDate);
+ int years = period.getYears();
+ // 如果当前日期小于出生日期的下一个生日,则需要减去一年(因为我们还没有过生日)
+ if (currentDate.isBefore(birthDate.plusYears(years).plusMonths(1).minusDays(1))) {
+ years--;
+ }
+ oldsterWarningVO.setOldsterAge(years);
+ }
pageInfo.setRecords(list);
return pageInfo;
}
@@ -40,6 +58,18 @@
@Override
public List<TOldsterWarningExport> exportOldsterWarning(OldsterListQuery query) {
List<TOldsterWarningExport> list = this.baseMapper.exportOldsterWarning(query);
+ for (TOldsterWarningExport oldsterWarningExport : list) {
+ LocalDate birthDate = oldsterWarningExport.getBirthDate();
+ LocalDate currentDate = LocalDate.now();
+ // 使用Period类计算两个日期之间的年数差异
+ Period period = Period.between(birthDate, currentDate);
+ int years = period.getYears();
+ // 如果当前日期小于出生日期的下一个生日,则需要减去一年(因为我们还没有过生日)
+ if (currentDate.isBefore(birthDate.plusYears(years).plusMonths(1).minusDays(1))) {
+ years--;
+ }
+ oldsterWarningExport.setOldsterAge(years);
+ }
return list;
}
}
--
Gitblit v1.7.1