From 64251287f735a6a26bc585a8ca593c3936113137 Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期四, 07 九月 2023 18:04:47 +0800 Subject: [PATCH] bug --- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java | 81 ++++++++++++++++++++++++++++++++-------- 1 files changed, 64 insertions(+), 17 deletions(-) diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java index 277a0af..5e9a8f4 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java @@ -146,7 +146,8 @@ @Resource private OrderRefundService orderRefundService; - + @Resource + private RemoteMemberService memberService; /** * @description: buyGoods @@ -1185,6 +1186,8 @@ */ @Override public List<AppUserOrderPageVo> pageUserOrder(Page page, AppUserOrderPageDto appUserOrderPageDto) { + Long userId = appUserOrderPageDto.getUserId(); + Member member = memberService.getMember(userId).getData(); List<AppUserOrderPageVo> appUserOrderPageVoList = orderMapper.pageUserOrder(page, appUserOrderPageDto); if (appUserOrderPageVoList != null && !appUserOrderPageVoList.isEmpty()) { Long shopId; @@ -1210,13 +1213,17 @@ delayTime = redisService.getCacheObject(SecurityConstant.AUTO_CANCEL_ORDER_TIME); } for (AppUserOrderPageVo appUserOrderPageVo : appUserOrderPageVoList) { - shop = shopMap.get(appUserOrderPageVo.getShopId()); - appUserOrderPageVo.setShopName(shop.getShopName()); - appUserOrderPageVo.setShopServicePhone(shop.getShopServicePhone()); - if (appUserOrderPageVo.getShopId().equals(appUserOrderPageDto.getShopId())) { - appUserOrderPageVo.setSameShop(1); - } else { - appUserOrderPageVo.setSameShop(0); + if(member.getBindingFlag()==0&&appUserOrderPageVo.getOrderFrom()==2){ + appUserOrderPageVo.setShopName("全部店铺"); + }else{ + shop = shopMap.get(appUserOrderPageVo.getShopId()); + appUserOrderPageVo.setShopName(shop.getShopName()); + appUserOrderPageVo.setShopServicePhone(shop.getShopServicePhone()); + if (appUserOrderPageVo.getShopId().equals(appUserOrderPageDto.getShopId())) { + appUserOrderPageVo.setSameShop(1); + } else { + appUserOrderPageVo.setSameShop(0); + } } appUserOrderPageVo.setVerifyCode("1-" + appUserOrderPageVo.getOrderId()); appUserOrderPageVo.setEndTime(DateUtils.addMinutes(appUserOrderPageVo.getCreateTime(), delayTime)); @@ -1405,6 +1412,17 @@ throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); } } + //未绑定用户需判断活动订单是否支持该店铺 + if(order.getOrderFrom()==2){ + String activityId = order.getActivityId(); + MerActivityShopDto merActivityShopDto = new MerActivityShopDto(); + merActivityShopDto.setShopId(shopId); + merActivityShopDto.setActivityId(activityId); + Boolean judge = remoteActivityService.judgeActivityShop(merActivityShopDto).getData(); + if(!judge){ + throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); + } + } //未绑定用户需判断核销商城订单判断商品单价和优惠券 /*StringJoiner goodsIdSJ = new StringJoiner(","); for (AppUserOrderGoodsPageVo appUserOrderGoodsPageVo : appUserOrderGoodsPageVoList) { @@ -1527,6 +1545,17 @@ //商城订单需判断商户 if(order.getOrderFrom()==1){ if (!order.getShopId().equals(shopId)) { + throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); + } + } + //未绑定用户需判断活动订单是否支持该店铺 + if(order.getOrderFrom()==2){ + String activityId = order.getActivityId(); + MerActivityShopDto merActivityShopDto = new MerActivityShopDto(); + merActivityShopDto.setShopId(shopId); + merActivityShopDto.setActivityId(activityId); + Boolean judge = remoteActivityService.judgeActivityShop(merActivityShopDto).getData(); + if(!judge){ throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); } } @@ -1744,13 +1773,13 @@ } // 平台特约商户号,用户平台收取服务费 2023-09-05改变分账方式 String platformTyMacId = WxPayConfiguration.getPlatformTyMacId(); - if (!StringUtils.isEmpty(subMchId)) { + if (!StringUtils.isEmpty(platformTyMacId)) { WxPayConfig config = wxService.getConfig(); ShopProportionVo shopProportion = null; BigDecimal proportionPercent = null; //商户订单获取统一分成 活动订单获取活动分成 if(orderFrom==1){ - proportionPercent = redisService.getCacheObject(SecurityConstant.SHOP_COMMON_PROPORTION); + proportionPercent = new BigDecimal(redisService.getCacheObject(SecurityConstant.SHOP_COMMON_PROPORTION).toString()); }else{ R<ShopProportionVo> resultShopProportion = remoteShopService.getShopProportion(shopId); shopProportion = resultShopProportion.getData(); @@ -1764,8 +1793,7 @@ request.setOutOrderNo(IdUtils.simpleUUID()); List<ProfitSharingRequest.Receiver> receiverList = new ArrayList<>(); String description = "订单:" + orderNo + " 平台分账"; - //平台分成 - proportionPercent = new BigDecimal("100.00").subtract(proportionPercent); + //商户分成 if(proportionPercent.compareTo(BigDecimal.ZERO)>0){ ProfitSharingResult result = new ProfitSharingResult(); result.setOutOrderNo(orderNo); @@ -3658,9 +3686,6 @@ */ @Override public MgtPlTotalActivityTotalVo getPlTotalActivityTotal(MgtBasePlatformDto mgtBasePlatformDto) { - if(mgtBasePlatformDto.getActivityFrom()!=null&&mgtBasePlatformDto.getActivityFrom() == 2){ - return new MgtPlTotalActivityTotalVo(); - } MgtPlTotalActivityTotalVo totalActivityTotalVo = new MgtPlTotalActivityTotalVo(); totalActivityTotalVo.setOrderTotal(0); totalActivityTotalVo.setCycleTotal(0); @@ -3688,6 +3713,10 @@ totalActivityTotalVo.setJoinMemberTotalValue(new Integer[0]); totalActivityTotalVo.setGetMemberTotalKey(new String[0]); totalActivityTotalVo.setGetMemberTotalValue(new Integer[0]); + //店铺活动返回空 + if(mgtBasePlatformDto.getActivityFrom()!=null&&mgtBasePlatformDto.getActivityFrom()==2){ + return totalActivityTotalVo; + } List<Long> shopIdList = remoteShopService.listShopIdByPlTotal(mgtBasePlatformDto).getData(); if(mgtBasePlatformDto.getShopId()!=null){ shopIdList = new ArrayList<>(); @@ -3921,9 +3950,13 @@ @Override public MgtPlTotalActivityTotalVo getPlTotalActivityJoinMemberTotal(MgtBasePlatformDto mgtBasePlatformDto) { - if(mgtBasePlatformDto.getActivityFrom()!=null&&mgtBasePlatformDto.getActivityFrom() == 2){ + //店铺活动返回空 + if(mgtBasePlatformDto.getActivityFrom()!=null&&mgtBasePlatformDto.getActivityFrom()==2){ return new MgtPlTotalActivityTotalVo(); } + /*if(mgtBasePlatformDto.getActivityType()!=null&&mgtBasePlatformDto.getActivityType()!=1){ + return new MgtPlTotalActivityTotalVo(); + }*/ //获取需要关联的用户id集合 /*if (mgtBasePlatformDto.getDeptId() != null) { List<Long> userIdList = new ArrayList<>(); @@ -3985,9 +4018,13 @@ @Override public MgtPlTotalActivityTotalVo getPlTotalActivityGetMemberTotal(MgtBasePlatformDto mgtBasePlatformDto) { - if(mgtBasePlatformDto.getActivityFrom()!=null&&mgtBasePlatformDto.getActivityFrom() == 2){ + //店铺活动返回空 + if(mgtBasePlatformDto.getActivityFrom()!=null&&mgtBasePlatformDto.getActivityFrom()==2){ return new MgtPlTotalActivityTotalVo(); } + /*if(mgtBasePlatformDto.getActivityType()!=null&&mgtBasePlatformDto.getActivityType()!=1){ + return new MgtPlTotalActivityTotalVo(); + }*/ //获取需要关联的用户id集合 /*if (mgtBasePlatformDto.getDeptId() != null) { List<Long> userIdList = new ArrayList<>(); @@ -5735,4 +5772,14 @@ public MerMemberSimpleTotalVo getMerMemberSimpleTotalVo(MerBaseDto merBaseDto){ return orderMapper.getMerMemberSimpleTotalVo(merBaseDto); } + + @Override + public ProfitSharingResult queryBill(String transactionId,String outOrderNo) throws WxPayException { + ProfitSharingQueryRequest request = new ProfitSharingQueryRequest(); + request.setSubMchid("1650744551"); + request.setTransactionId(transactionId); + request.setOutOrderNo(outOrderNo); + ProfitSharingResult profitSharingResult = wxService.getEcommerceService().queryProfitSharing(request); + return profitSharingResult; + } } -- Gitblit v1.7.1