diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumFlowKey.java b/mallinkService/src/main/java/com/iformall/enums/EnumFlowKey.java index 7bccc1f19..7f36672f5 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumFlowKey.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumFlowKey.java @@ -30,6 +30,8 @@ public enum EnumFlowKey { NEW_RENT_END(18, "商铺租赁合同终止"), NEW_RENT_POINT_CONTRACT(19, "多经点位商铺租赁合同签约"), NEW_RENT_POINT_CONTRACT_END(20, "多经点位商铺租赁合同终止"), + + SETTLE(21,"结算单审批"), ; public static EnumFlowKey getEnum(Integer code) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java index 3456eacf0..42400b591 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillRentServiceImpl.java @@ -295,7 +295,7 @@ public class WxBillRentServiceImpl implements WxBillRentService { ratio = wxRentContract.getPayRatio(); }else{ if(StringUtils.isNotBlank(wxRentContract.getBusDiscountRatio())){ - long dayCount = DateUtils.startToEnd(wxBillRent.getStarttime(),wxBillRent.getEndtime()); + long dayCount = DateUtils.startToEnd(wxBillRent.getStarttime(),wxBillRent.getEndtime()) + 1; if(EnumBusRatioTime.YEAR.getCode().equals(wxRentContract.getBusDiscountTime())){ if(startInt == endInt && months == 12){ //刚好1年 diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java index be5d2512d..7ac99f7a4 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -346,8 +346,11 @@ public class WxRentContractServiceImpl implements WxRentContractService { array = ratioList.get(i-1).split(":"); Integer frontatio = Integer.parseInt(array[1]); + revenueArray = array[0].split("-"); + + BigDecimal frontEnd = new BigDecimal(revenueArray[1]).divide(new BigDecimal(365), 10, BigDecimal.ROUND_HALF_DOWN).multiply(new BigDecimal(dayCount)); BigDecimal frontRatio = new BigDecimal(frontatio).divide(new BigDecimal(10000)); - BigDecimal frontPrice = end.multiply(new BigDecimal(1000000).multiply(frontRatio).setScale(2, RoundingMode.HALF_EVEN)); + BigDecimal frontPrice = frontEnd.multiply(new BigDecimal(1000000).multiply(frontRatio).setScale(2, RoundingMode.HALF_EVEN)); ratioVo.setPrice(price.add(frontPrice).longValue()); return ratioVo;