diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java index c1b756059..8188c4997 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPropertyContractServiceImpl.java @@ -278,7 +278,11 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService Date date = new Date(); record.setCreatetime(date); record.setUpdatetime(date); - record.setStatus(EnumRentContractStatus.WAIT_SIGN.getCode()); + if (record.getOperationType().equals(EnumContractOperationType.WHOLE.getCode())) { + record.setStatus(EnumRentContractStatus.INTENTION.getCode()); + } else { + record.setStatus(EnumRentContractStatus.WAIT_SIGN.getCode()); + } record.setApplyStatus(EnumRentContractAppStatus.DEFAULT.getCode()); try { wxPropertyContractMapper.insertSelective(record); @@ -326,7 +330,6 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService record.setPrice(record.getPrice() != null ? record.getPrice() : 0); record.setDeposit(record.getDeposit() != null ? record.getDeposit() : 0); record.setUpdatetime(new Date()); - record.setStatus(EnumRentContractStatus.WAIT_SIGN.getCode()); try { wxPropertyContractMapper.updateByPrimaryKeySelective(record); } catch (Exception e) { 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 141e3b17f..d588a404e 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -820,7 +820,7 @@ public class WxRentContractServiceImpl implements WxRentContractService { for (int j = 0; j < arraySize; j++) { rentInfoObject = rentInfoArray.getJSONObject(j); adjustRatio = rentInfoObject.getJSONArray("adjustRatio"); - BigDecimal price = new BigDecimal(priceList.get(i)[j]).add(new BigDecimal(adjustRatio.getString(i))); + BigDecimal price = new BigDecimal(priceList.get(i)[j]).add(new BigDecimal(adjustRatio.getString(i)).multiply(new BigDecimal(100))); priceArrs[j] = price.setScale(0, RoundingMode.HALF_EVEN).longValue(); } priceList.add(priceArrs); @@ -869,10 +869,18 @@ public class WxRentContractServiceImpl implements WxRentContractService { priceArrs = new long[size]; priceArrs[0] = price; BigDecimal priceD = new BigDecimal(price); - for (int i = 1; i < size; i++) { - BigDecimal divide = priceD.multiply(new BigDecimal(integers.get(i))).divide(new BigDecimal(10000)); - priceD = priceD.add(divide); - priceArrs[i] = priceD.setScale(0, RoundingMode.HALF_EVEN).longValue(); + if (wxRentContract.getAdjustRatioWay().equals(EnumRentContractAdjustRatioWay.RATIO.getCode())) { + for (int i = 1; i < size; i++) { + BigDecimal divide = priceD.multiply(new BigDecimal(integers.get(i))).divide(new BigDecimal(10000)); + priceD = priceD.add(divide); + priceArrs[i] = priceD.setScale(0, RoundingMode.HALF_EVEN).longValue(); + } + } else { + for (int i = 1; i < size; i++) { + BigDecimal divide = priceD.add(new BigDecimal(integers.get(i))); + priceD = priceD.add(divide); + priceArrs[i] = priceD.setScale(0, RoundingMode.HALF_EVEN).longValue(); + } } }