Просмотр исходного кода

[分账][修改]:分账账户未配置时,对分账请求进行结束操作

release_toaliyun_real
hupeng 7 лет назад
Родитель
Сommit
f4bc5beac1
1 измененных файлов: 10 добавлений и 11 удалений
  1. +10
    -11
      mallinkService/src/main/java/com/iformall/service/impl/WxProfitSharingOrderServiceImpl.java

+ 10
- 11
mallinkService/src/main/java/com/iformall/service/impl/WxProfitSharingOrderServiceImpl.java Просмотреть файл

@@ -255,23 +255,22 @@ public class WxProfitSharingOrderServiceImpl implements WxProfitSharingOrderServ
psReceiverQ.setStatus(EnumProfitSharingReceiverStatus.PROFIT_SHARING_RECEIVER_STATUS_VALID.getCode());
List<WxProfitSharingReceiver> psReceiverList = wxProfitSharingReceiverMapper.findList(psReceiverQ);
if (psReceiverList.size() < 0 || psReceiverList.size() > 50) {
throw new MallinkException(ErrorCode.PROFIT_SHARING_RECEIVER_INVALID);
return new ResultData(ErrorCode.PROFIT_SHARING_RECEIVER_INVALID);
}

if (psReceiverList.size() == 0) { //没有分账账户,直接分入商户号
WxProfitSharingReceiver receiver = new WxProfitSharingReceiver();
receiver.setReceiverAccount(payAccount.getSubMchId());
receiver.setReceiverType(EnumProfitSharingReceiverType.PROFIT_SHARING_RECEIVER_MERCHANT_ID.getCode());
receiver.setSharingAmount(sharingOrderDto.getShareAmount());
receiver.setParameter(null);
receiver.setId(0L);
psReceiverList.add(receiver);
if (psReceiverList.size() == 0) { //没有分账账户,直接结束分账
if (sharingOrderDto.getType().equals(EnumProfitSharingOrderType.PROFIT_SHARING_SINGLE.getCode()))
sharingOrderDto.setType(EnumProfitSharingOrderType.PROFIT_SHARING_SINGLE_FINISH.getCode());
if (sharingOrderDto.getType().equals(EnumProfitSharingOrderType.PROFIT_SHARING_MULTI.getCode()))
return new ResultData(ErrorCode.PROFIT_SHARING_RECEIVER_INVALID);

return finishSharingOrder(sharingOrderDto);
}

//计算分账账户合法性
if (psReceiverList.size() > 1 &&
psReceiverList.stream().filter(r->(r.getParameter() == null)).count() > 0) {
throw new MallinkException(ErrorCode.PROFIT_SHARING_RECEIVER_INVALID);
return new ResultData(ErrorCode.PROFIT_SHARING_RECEIVER_INVALID);
}

//计算分账金额合法性
@@ -284,7 +283,7 @@ public class WxProfitSharingOrderServiceImpl implements WxProfitSharingOrderServ
}
});
if (psReceiverList.stream().mapToInt(r->r.getSharingAmount()).sum() > sharingOrderDto.getShareAmount()){
throw new MallinkException(ErrorCode.PROFIT_SHARING_RECEIVER_INVALID);
return new ResultData(ErrorCode.PROFIT_SHARING_RECEIVER_INVALID);
}

//单次分账检查是否已创建分账订单


Загрузка…
Отмена
Сохранить