|
|
|
@@ -65,36 +65,42 @@ public class WxBillSettleServiceImpl implements WxBillSettleService { |
|
|
|
public WxBillSettle getById(Long id){ |
|
|
|
WxBillSettle billSettle = wxBillSettleMapper.selectByPrimaryKey(id); |
|
|
|
|
|
|
|
if(billSettle != null) { |
|
|
|
if(billSettle != null){ |
|
|
|
WxMerchant merchant = wxMerchantMapper.selectByPrimaryKey(billSettle.getMerchantId()); |
|
|
|
if(merchant != null){ |
|
|
|
billSettle.setMerchantName(merchant.getName()); |
|
|
|
} |
|
|
|
|
|
|
|
if(billSettle.getReceiveMoney() > billSettle.getPayMoney()){ |
|
|
|
billSettle.setSettleWay(EnumSettleWay.B.getCode()); |
|
|
|
}else{ |
|
|
|
billSettle.setSettleWay(EnumSettleWay.M.getCode()); |
|
|
|
} |
|
|
|
//加载账单列表 |
|
|
|
WxBillSettleBill wxBillSettleBill = new WxBillSettleBill(); |
|
|
|
wxBillSettleBill.setTenantId(billSettle.getTenantId()); |
|
|
|
wxBillSettleBill.setSettleId(billSettle.getId()); |
|
|
|
wxBillSettleBill.setType(EnumSettleBillType.R.getCode()); |
|
|
|
billSettle.setReceiveBillIds(wxBillSettleBillMapper.findBySettleId(wxBillSettleBill)); |
|
|
|
|
|
|
|
wxBillSettleBill.setType(EnumSettleBillType.P.getCode()); |
|
|
|
billSettle.setPayBillIds(wxBillSettleBillMapper.findBySettleId(wxBillSettleBill)); |
|
|
|
|
|
|
|
//加载清算历史 |
|
|
|
WxBillSettleRecord wxBillSettleRecord = new WxBillSettleRecord(); |
|
|
|
wxBillSettleRecord.setTenantId(billSettle.getTenantId()); |
|
|
|
wxBillSettleRecord.setSettleId(billSettle.getId()); |
|
|
|
billSettle.setSettleRecordList(wxBillSettleRecordMapper.findList(wxBillSettleRecord)); |
|
|
|
|
|
|
|
//计算结余金额 |
|
|
|
Long sumSettleMoney = wxBillSettleRecordMapper.getSumMoneyBySettleId(billSettle); |
|
|
|
billSettle.setBalance(billSettle.getReceiveMoney() - (billSettle.getPayMoney()+sumSettleMoney)); |
|
|
|
} |
|
|
|
//加载应收、承付、结余 |
|
|
|
WxBillSettle query = new WxBillSettle(); |
|
|
|
query.setId(id); |
|
|
|
query = wxBillSettleMapper.findList(query).get(0); |
|
|
|
billSettle.setReceiveMoney(query.getReceiveMoney()); |
|
|
|
billSettle.setPayMoney(query.getPayMoney()); |
|
|
|
billSettle.setBalance(query.getBalance()); |
|
|
|
|
|
|
|
//清算方向 |
|
|
|
if(billSettle.getReceiveMoney() > billSettle.getPayMoney()){ |
|
|
|
billSettle.setSettleWay(EnumSettleWay.B.getCode()); |
|
|
|
}else{ |
|
|
|
billSettle.setSettleWay(EnumSettleWay.M.getCode()); |
|
|
|
} |
|
|
|
} |
|
|
|
return billSettle; |
|
|
|
} |
|
|
|
|
|
|
|
|