xuhy
2026-03-27 0923c2a6f1a7b4d28e39f566f9ff27557e2bf250
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);
    }