Commit 6d5bbcba authored by wuwz's avatar wuwz

Merge remote-tracking branch 'origin/dev-chw' into dev-chw

parents 02ca2d89 b2d59862
......@@ -84,11 +84,17 @@ public class CompanyWalletDetailBiz extends BaseBiz<CompanyWalletDetailMapper, C
public void updByIdOrOrderNo(BaseOrderAcceptDetailedDTO acceptDetailedDTO){
List<BaseOrderAcceptDetailedVO> list = acceptDetailedBiz.getList(acceptDetailedDTO);
List<CompanyWalletDetail> walletDetails = new ArrayList<>();
List<BaseOrderRevenue> revenues = new ArrayList<>();
String orderNo = "";
String type = "";
if (list.size() > 0){
for (BaseOrderAcceptDetailedVO acceptDetailedVO : list){
BigDecimal divisionAmount = acceptDetailedVO.getDivisionAmount() == null ? BigDecimal.ZERO : acceptDetailedVO.getDivisionAmount();
Integer source = setItype(acceptDetailedVO.getDivisionType());
orderNo=acceptDetailedVO.getOrderNo();
BaseOrderRevenue baseOrderRevenue = new BaseOrderRevenue();
baseOrderRevenue.setCompanyId(acceptDetailedVO.getMchId());
baseOrderRevenue.setAmount(divisionAmount);
revenues.add(baseOrderRevenue);
if (divisionAmount .compareTo(BigDecimal.ZERO) > 0 ){
Integer entryType = acceptDetailedVO.getEntryType() == null ? 0 : acceptDetailedVO.getEntryType();
if (entryType != 1){
......@@ -105,32 +111,30 @@ public class CompanyWalletDetailBiz extends BaseBiz<CompanyWalletDetailMapper, C
companyWalletDetail.setAmount(divisionAmount);
companyWalletDetail.setCompanyId(acceptDetailedVO.getMchId());
companyWalletDetail.setSAmount(companyAmount);
companyWalletDetail.setSource(setItype(acceptDetailedVO.getDivisionType()));
companyWalletDetail.setSource(source);
companyWalletDetail.setItype(CompanyWalletITypeEnum.COMPANY.getCode());
insertSelective(companyWalletDetail);
walletDetails.add(companyWalletDetail);
orderNo=acceptDetailedVO.getOrderNo();
type=companyWalletDetail.getType()+"";
}
}
}
if (walletDetails.size() > 0){
Map<Integer, BigDecimal> amountSum = walletDetails.stream().filter(t -> t.getAmount() != null)
.collect(Collectors.groupingBy(CompanyWalletDetail::getCompanyId, CollectorsUtil.summingBigDecimal(CompanyWalletDetail::getAmount)));
for(Map.Entry<Integer, BigDecimal> entry : amountSum.entrySet()){
Map<Integer, BigDecimal> amountSum = walletDetails.stream().filter(t -> t.getAmount() != null)
.collect(Collectors.groupingBy(CompanyWalletDetail::getCompanyId, CollectorsUtil.summingBigDecimal(CompanyWalletDetail::getAmount)));
amountSum.forEach((k,v) -> updCompanyWallet(k,v));
//营收明细
if (revenues.size() > 0){
Map<Integer, BigDecimal> amounts = revenues.stream().filter(t -> t.getAmount() != null)
.collect(Collectors.groupingBy(BaseOrderRevenue::getCompanyId, CollectorsUtil.summingBigDecimal(BaseOrderRevenue::getAmount)));
for(Map.Entry<Integer, BigDecimal> entry : amounts.entrySet()){
Integer companyId = entry.getKey();
BigDecimal amount = entry.getValue();
updCompanyWallet(companyId,amount);
//营收明细
BaseOrderRevenue baseOrderRevenue = new BaseOrderRevenue();
baseOrderRevenue.setAmount(amount);
baseOrderRevenue.setCompanyId(companyId);
baseOrderRevenue.setOrderNo(orderNo);
baseOrderRevenue.setType(type);
baseOrderRevenue.setStatus(1);
revenueBiz.addOrUpd(baseOrderRevenue);
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment