diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java index 767bd2a20..0f4370806 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java @@ -194,11 +194,10 @@ public class WxBillAllServiceImpl implements WxBillAllService { for (Map map:maps) { Integer billType = ((Long)map.get("billTypeValue")).intValue(); if(EnumBillType.SETTLE.getCode().equals(billType)){ - BigDecimal rp = (BigDecimal)map.get("receivePay"); - WxBillSettle query = new WxBillSettle(); - query.setId((Long)map.get("id")); - Long sum = wxBillSettleRecordMapper.getSumMoneyBySettleId(query); - map.put("owe",rp.subtract(new BigDecimal(sum))); + Long id = (Long)map.get("id"); + WxBillSettle settle = wxBillSettleService.getById(id,EnumFilterSettle.YES.getCode()); + BigDecimal money = new BigDecimal(settle.getBalance()).divide(new BigDecimal(100),2,BigDecimal.ROUND_HALF_UP); + map.put("owe",money); } } PageInfo> pageInfo = new PageInfo<>(maps); @@ -208,11 +207,10 @@ public class WxBillAllServiceImpl implements WxBillAllService { for (Map map:maps) { Integer billType = ((Long)map.get("billTypeValue")).intValue(); if(EnumBillType.SETTLE.getCode().equals(billType)){ - BigDecimal rp = (BigDecimal)map.get("receivePay"); - WxBillSettle query = new WxBillSettle(); - query.setId((Long)map.get("id")); - Long sum = wxBillSettleRecordMapper.getSumMoneyBySettleId(query); - map.put("owe",rp.subtract(new BigDecimal(sum))); + Long id = (Long)map.get("id"); + WxBillSettle settle = wxBillSettleService.getById(id,EnumFilterSettle.YES.getCode()); + BigDecimal money = new BigDecimal(settle.getBalance()).divide(new BigDecimal(100),2,BigDecimal.ROUND_HALF_UP); + map.put("owe",money); } } return new ResultData(maps); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillSettleServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillSettleServiceImpl.java index 9dd50e2b7..2abf98bc6 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillSettleServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillSettleServiceImpl.java @@ -169,7 +169,7 @@ public class WxBillSettleServiceImpl implements WxBillSettleService { if(EnumBillRentStatus.PAID.getCode().equals(status)){ WxBillRent dbBill = wxBillRentMapper.selectByPrimaryKey(wxBillRent.getId()); if(dbBill!=null) { - wxBillRent.setPay(wxBillRent.getPay()+ dbBill.getOwe()); + wxBillRent.setPay(dbBill.getPay()+ dbBill.getOwe()); wxBillRent.setPayDate(new Date()); addBillAction(bill.getBillId(), dbBill.getOwe()); }