jiangping
2024-11-29 b77da6a838e6dd023e98949967d3ce8a58552922
开发更新
已修改1个文件
10 ■■■■ 文件已修改
server/system_service/src/main/java/com/doumee/core/utils/DateCompare.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/core/utils/DateCompare.java
@@ -68,11 +68,11 @@
        int yearDays = day - DateUtil.daysBetweenDates(DateUtil.addYearToDate(fromDate,year),fromDate) ;
        if(yearDays!=0){
            yearFloat = yearFloat.add(new BigDecimal(1.0*yearDays).divide(new BigDecimal(365.0), 2,RoundingMode.HALF_UP));
            yearFloat = yearFloat.add(new BigDecimal(1.0*yearDays).divide(new BigDecimal(365.0), 15,RoundingMode.HALF_UP));
        }
        int monthDays = day - DateUtil.daysBetweenDates(DateUtil.addMonthToDate(fromDate,month),fromDate) ;
        if(monthDays!=0){
            monthFloat = monthFloat.add(new BigDecimal(1.0*monthDays*12).divide(new BigDecimal(365.0), 2,RoundingMode.HALF_UP));
            monthFloat = monthFloat.add(new BigDecimal(1.0*monthDays*12).divide(new BigDecimal(365.0), 15,RoundingMode.HALF_UP));
        }
        return DateCompare.builder().day(day).month(month).year(year).yearFloat(yearFloat).monthFloat(monthFloat).yearDays(yearDays).monthDays(monthDays).build();
    }
@@ -83,7 +83,7 @@
        System.out.println(dateCompare.monthFloat);
        System.out.println(dateCompare.yearFloat);
        System.out.println(dateCompare.yearFloat.multiply(new BigDecimal(365.0)));
        System.out.println(new BigDecimal(29.0).divide(new BigDecimal(365.0), 2, RoundingMode.HALF_UP).multiply(new BigDecimal(365.0)));
        System.out.println(new BigDecimal(29.0).divide(new BigDecimal(365.0),12,  RoundingMode.HALF_UP).multiply(new BigDecimal(365.0)));
    }
    public static DateCompare monthYearCompare(Date fromDate,Date toDate ){
        //开始时间往后延伸,除去有效时期
@@ -106,11 +106,11 @@
        int yearDays = day - DateUtil.daysBetweenDates(DateUtil.addYearToDate(fromDate,year),fromDate) ;
        if(yearDays!=0){
            yearFloat = yearFloat.add(new BigDecimal(1.0*yearDays).divide(new BigDecimal(365.0), 2,RoundingMode.HALF_UP));
            yearFloat = yearFloat.add(new BigDecimal(1.0*yearDays).divide(new BigDecimal(365.0), 15,RoundingMode.HALF_UP));
        }
        int monthDays = day - DateUtil.daysBetweenDates(DateUtil.addMonthToDate(fromDate,month),fromDate) ;
        if(monthDays!=0){
            monthFloat = monthFloat.add(new BigDecimal(1.0*monthDays*12).divide(new BigDecimal(365.0), 2,RoundingMode.HALF_UP));
            monthFloat = monthFloat.add(new BigDecimal(1.0*monthDays*12).divide(new BigDecimal(365.0), 15,RoundingMode.HALF_UP));
        }
        return DateCompare.builder().day(day).month(month).year(year).yearFloat(yearFloat).monthFloat(monthFloat).yearDays(yearDays).monthDays(monthDays).build();
    }