| @@ -584,9 +584,53 @@ public class WxRentContractHelper { | |||||
| if (validDays.size() <= 0 ) { | if (validDays.size() <= 0 ) { | ||||
| return null; | return null; | ||||
| } | } | ||||
| return validDays; | return validDays; | ||||
| } | } | ||||
| public static void main(String[] args) { | |||||
| Date start = DateUtils.str2Date("2024-08-05 00:00:00").getTime(); | |||||
| Date end = DateUtils.str2Date("2025-11-04 23:59:59").getTime(); | |||||
| Date d1 = DateUtils.str2Date("2024-07-31 00:00:00").getTime(); | |||||
| Date d2 = DateUtils.str2Date("2024-08-03 00:00:00").getTime(); | |||||
| Date d3 = DateUtils.str2Date("2024-08-06 00:00:00").getTime(); | |||||
| Date d4 = DateUtils.str2Date("2024-08-31 00:00:00").getTime(); | |||||
| Date d5 = DateUtils.str2Date("2024-09-01 00:00:00").getTime(); | |||||
| Date d6 = DateUtils.str2Date("2024-09-11 00:00:00").getTime(); | |||||
| Date d7 = DateUtils.str2Date("2024-09-30 00:00:00").getTime(); | |||||
| List<Date> freeDays = new ArrayList<Date>(); | |||||
| // freeDays.add(d1); | |||||
| // freeDays.add(d2); | |||||
| // freeDays.add(d3); | |||||
| // freeDays.add(d4); | |||||
| // freeDays.add(d5); | |||||
| // freeDays.add(d6); | |||||
| // freeDays.add(d7); | |||||
| Date d11 = DateUtils.str2Date("2024-08-20 00:00:00").getTime(); | |||||
| Date d21 = DateUtils.str2Date("2024-09-19 00:00:00").getTime(); | |||||
| List<Date> frees1 = DateUtils.getAllDays(d11, d21); | |||||
| freeDays.addAll(frees1); | |||||
| Date d111 = DateUtils.str2Date("2024-10-01 00:00:00").getTime(); | |||||
| Date d211 = DateUtils.str2Date("2024-10-31 00:00:00").getTime(); | |||||
| List<Date> frees2 = DateUtils.getAllDays(d111, d211); | |||||
| freeDays.addAll(frees2); | |||||
| Date d11111 = DateUtils.str2Date("2024-09-07 00:00:00").getTime(); | |||||
| Date d21111 = DateUtils.str2Date("2024-10-06 00:00:00").getTime(); | |||||
| List<Date> dds = getValidDays(d11111,d21111,freeDays); | |||||
| System.out.println(dds.size()); | |||||
| //String dayMoney = getNeedPay(freeDays, 2, new BigDecimal(10), start, end, EnumRentDayPriceCalcute.AVERAGE_DAYS, 30); | |||||
| //System.out.println(dayMoney); | |||||
| //String monthMoney = getMonthNeedPay(freeDays, 2, new BigDecimal(2000), start, end, EnumContractReceivePeriodUnit.QUARTER.getCode(), 1, EnumRentDayPriceCalcute.AVERAGE_DAYS.getCode(), 30); | |||||
| //System.out.println(monthMoney); | |||||
| } | |||||
| //查询当前月内的金额 | //查询当前月内的金额 | ||||
| private static NeedPayDTO getCurrentMonthPay(Date start,Date end, BigDecimal priceMonth,Integer decimalSize,List<Date> validDays,Integer dayPriceCalcute,Integer monthAvageDays) { | private static NeedPayDTO getCurrentMonthPay(Date start,Date end, BigDecimal priceMonth,Integer decimalSize,List<Date> validDays,Integer dayPriceCalcute,Integer monthAvageDays) { | ||||
| NeedPayDTO np = new NeedPayDTO(); | NeedPayDTO np = new NeedPayDTO(); | ||||
| @@ -772,33 +816,5 @@ public class WxRentContractHelper { | |||||
| } | } | ||||
| return 0; | return 0; | ||||
| } | } | ||||
| public static void main(String[] args) { | |||||
| Date start = DateUtils.str2Date("2024-08-05 00:00:00").getTime(); | |||||
| Date end = DateUtils.str2Date("2025-11-04 23:59:59").getTime(); | |||||
| Date d1 = DateUtils.str2Date("2024-07-31 00:00:00").getTime(); | |||||
| Date d2 = DateUtils.str2Date("2024-08-03 00:00:00").getTime(); | |||||
| Date d3 = DateUtils.str2Date("2024-08-06 00:00:00").getTime(); | |||||
| Date d4 = DateUtils.str2Date("2024-08-31 00:00:00").getTime(); | |||||
| Date d5 = DateUtils.str2Date("2024-09-01 00:00:00").getTime(); | |||||
| Date d6 = DateUtils.str2Date("2024-09-11 00:00:00").getTime(); | |||||
| Date d7 = DateUtils.str2Date("2024-09-30 00:00:00").getTime(); | |||||
| List<Date> freeDays = new ArrayList<Date>(); | |||||
| freeDays.add(d1); | |||||
| freeDays.add(d2); | |||||
| freeDays.add(d3); | |||||
| freeDays.add(d4); | |||||
| freeDays.add(d5); | |||||
| freeDays.add(d6); | |||||
| freeDays.add(d7); | |||||
| //String dayMoney = getNeedPay(freeDays, 2, new BigDecimal(10), start, end, EnumRentDayPriceCalcute.AVERAGE_DAYS, 30); | |||||
| //System.out.println(dayMoney); | |||||
| //String monthMoney = getMonthNeedPay(freeDays, 2, new BigDecimal(2000), start, end, EnumContractReceivePeriodUnit.QUARTER.getCode(), 1, EnumRentDayPriceCalcute.AVERAGE_DAYS.getCode(), 30); | |||||
| //System.out.println(monthMoney); | |||||
| } | |||||
| } | } | ||||