diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java index 5c49f2f5b..74f5f4cba 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxRentContract.java @@ -469,10 +469,16 @@ public class WxRentContract extends TenantEntity { public void calcutePrice() { //如果是按铺位数算,price不用计算,是填写的值 - if (!this.type.equals(EnumRentContractType.RENT_BY_COUNT.getCode())) { + if (this.type.equals(EnumRentContractType.RENT_BY_AREA.getCode()) || this.type.equals(EnumRentContractType.RENT_BY_AREA_AND_JOINT.getCode())) { if (StringUtils.isNotBlank(this.rentArea) && StringUtils.isNotBlank(this.rentPrice)) { this.price = new BigDecimal(this.rentArea).multiply(new BigDecimal(this.rentPrice)).setScale(Constant.default_long_decimal_size, RoundingMode.HALF_UP).toPlainString(); } + }else if (this.type.equals(EnumRentContractType.RENT_BY_JOINT.getCode())) { + if (StringUtils.isBlank(revenue)) { + this.price = "0"; + }else { + this.price = new BigDecimal(this.revenue).multiply(new BigDecimal(this.payRatio)).divide(new BigDecimal(100),Constant.default_long_decimal_size, RoundingMode.HALF_UP).toPlainString(); + } } } 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 618dab41f..d4768e15d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -677,13 +677,13 @@ public class WxRentContractServiceImpl implements WxRentContractService { if (StringUtils.isBlank(revenue)) { revenue = "0"; } - record.setPrice(new BigDecimal(record.getPayRatio()).multiply(new BigDecimal(revenue)).setScale(Constant.default_long_decimal_size,RoundingMode.HALF_UP).toPlainString()); + record.setPrice(new BigDecimal(record.getPayRatio()).multiply(new BigDecimal(revenue)).divide(new BigDecimal(100),Constant.default_long_decimal_size,RoundingMode.HALF_UP).toPlainString()); }else if (record.getType().equals(EnumRentContractType.RENT_BY_AREA_AND_JOINT.getCode())) { String revenue = record.getRevenue(); if (StringUtils.isBlank(revenue)) { revenue = "0"; } - BigDecimal renevuePrice = new BigDecimal(record.getPayRatio()).multiply(new BigDecimal(revenue)); + BigDecimal renevuePrice = new BigDecimal(record.getPayRatio()).multiply(new BigDecimal(revenue)).divide(new BigDecimal(100),Constant.default_long_decimal_size,RoundingMode.HALF_UP); BigDecimal rentPrice = null; //联营取高,如果是固定金额的话,取固定金额. 不固定的金额,会传price. if (null != record.getRevenueFixedRentPrice() && record.getRevenueFixedRentPrice().intValue() == EnumYesOrNo.YES.getCode()){