xuhy
2025-11-12 30bd0425caaee2e105aac054bcdf94e9a58a2d3b
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;