|
|
|
@@ -447,30 +447,30 @@ public class WxBillSettleServiceImpl implements WxBillSettleService { |
|
|
|
final IdWorker idWorker = IdWorker.get(); |
|
|
|
|
|
|
|
//检查账单是否存在其他结算单中 |
|
|
|
WxBillSettle query = new WxBillSettle(); |
|
|
|
query.setId(record.getId()); |
|
|
|
List<WxBillSettleBill> list = new ArrayList<>(); |
|
|
|
list.addAll(record.getReceiveBillIds()); |
|
|
|
list.addAll(record.getPayBillIds()); |
|
|
|
query.setReceiveBillIds(list); |
|
|
|
List<WxBillSettleBill> existList = wxBillSettleBillMapper.findExist(query); |
|
|
|
Set<Long> idSet = new HashSet(); |
|
|
|
if(CollectionUtils.isNotEmpty(existList)){ |
|
|
|
for (WxBillSettleBill b:existList) { |
|
|
|
idSet.add(b.getBillId()); |
|
|
|
} |
|
|
|
String ids = ""; |
|
|
|
for (Long id:idSet) { |
|
|
|
WxBillSettleBill queryBill = new WxBillSettleBill(); |
|
|
|
queryBill.setBillId(id); |
|
|
|
queryBill.setType(getType(id,record)); |
|
|
|
WxBillSettleBill db = wxBillSettleBillMapper.findByBillId(queryBill).get(0); |
|
|
|
BigDecimal r = new BigDecimal(db.getReceivePay()).divide(new BigDecimal(100),2,BigDecimal.ROUND_HALF_UP); |
|
|
|
ids += db.getBillName()+r.toString()+"元,"; |
|
|
|
} |
|
|
|
|
|
|
|
return new ResultData(ErrorCode.DB_FAIL.getCode(), ids.substring(0,ids.length()-1)+"已经在其他结算单中,请移除!"); |
|
|
|
} |
|
|
|
// WxBillSettle query = new WxBillSettle(); |
|
|
|
// query.setId(record.getId()); |
|
|
|
// List<WxBillSettleBill> list = new ArrayList<>(); |
|
|
|
// list.addAll(record.getReceiveBillIds()); |
|
|
|
// list.addAll(record.getPayBillIds()); |
|
|
|
// query.setReceiveBillIds(list); |
|
|
|
// List<WxBillSettleBill> existList = wxBillSettleBillMapper.findExist(query); |
|
|
|
// Set<Long> idSet = new HashSet(); |
|
|
|
// if(CollectionUtils.isNotEmpty(existList)){ |
|
|
|
// for (WxBillSettleBill b:existList) { |
|
|
|
// idSet.add(b.getBillId()); |
|
|
|
// } |
|
|
|
// String ids = ""; |
|
|
|
// for (Long id:idSet) { |
|
|
|
// WxBillSettleBill queryBill = new WxBillSettleBill(); |
|
|
|
// queryBill.setBillId(id); |
|
|
|
// queryBill.setType(getType(id,record)); |
|
|
|
// WxBillSettleBill db = wxBillSettleBillMapper.findByBillId(queryBill).get(0); |
|
|
|
// BigDecimal r = new BigDecimal(db.getReceivePay()).divide(new BigDecimal(100),2,BigDecimal.ROUND_HALF_UP); |
|
|
|
// ids += db.getBillName()+r.toString()+"元,"; |
|
|
|
// } |
|
|
|
// |
|
|
|
// return new ResultData(ErrorCode.DB_FAIL.getCode(), ids.substring(0,ids.length()-1)+"已经在其他结算单中,请移除!"); |
|
|
|
// } |
|
|
|
|
|
|
|
if (record.getFlowParams() == null || record.getFlowParams().size() == 0) { |
|
|
|
record.setStatus(EnumSettleStatus.NOT_FINISH.getCode()); |
|
|
|
|