From f4bc5beac1e6bd098421a4590c3837c0cab8b126 Mon Sep 17 00:00:00 2001 From: hupeng Date: Wed, 1 May 2019 18:56:26 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=88=86=E8=B4=A6][=E4=BF=AE=E6=94=B9]:?= =?UTF-8?q?=E5=88=86=E8=B4=A6=E8=B4=A6=E6=88=B7=E6=9C=AA=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=97=B6,=E5=AF=B9=E5=88=86=E8=B4=A6=E8=AF=B7=E6=B1=82?= =?UTF-8?q?=E8=BF=9B=E8=A1=8C=E7=BB=93=E6=9D=9F=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/WxProfitSharingOrderServiceImpl.java | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxProfitSharingOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxProfitSharingOrderServiceImpl.java index 10e7ec24e..235c3726c 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxProfitSharingOrderServiceImpl.java +++ b/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 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); } //单次分账检查是否已创建分账订单