From a8e56f03a22c722ccf3f67a408919e6c8f256de3 Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期四, 10 八月 2023 01:45:01 +0800 Subject: [PATCH] bug --- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java | 221 ++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 177 insertions(+), 44 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 9d12bd4..865eb95 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 @@ -1,21 +1,13 @@ package com.ruoyi.order.service.impl.order; -import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.github.binarywang.wxpay.bean.ecommerce.*; -import com.github.binarywang.wxpay.bean.ecommerce.ProfitSharingRequest.Receiver; -import com.github.binarywang.wxpay.bean.ecommerce.enums.TradeTypeEnum; +import com.github.binarywang.wxpay.bean.ecommerce.PartnerTransactionsResult; +import com.github.binarywang.wxpay.bean.ecommerce.RefundNotifyResult; import com.github.binarywang.wxpay.bean.profitsharingV3.ProfitSharingNotifyResult; -import com.github.binarywang.wxpay.config.WxPayConfig; -import com.github.binarywang.wxpay.exception.WxPayException; -import com.github.binarywang.wxpay.service.WxPayService; -import com.google.common.base.Joiner; -import com.google.gson.Gson; -import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.exception.ServiceException; import com.ruoyi.common.core.utils.DateUtils; import com.ruoyi.common.core.utils.StringUtils; @@ -23,7 +15,6 @@ import com.ruoyi.common.redis.service.RedisService; import com.ruoyi.common.security.utils.CodeFactoryUtil; import com.ruoyi.common.security.utils.SecurityUtils; -import com.ruoyi.order.config.MyWxPayConfig; import com.ruoyi.order.domain.dto.*; import com.ruoyi.order.domain.pojo.account.OrderPayment; import com.ruoyi.order.domain.pojo.account.OrderRefund; @@ -50,11 +41,11 @@ import com.ruoyi.system.api.domain.poji.goods.Goods; import com.ruoyi.system.api.domain.poji.goods.GoodsFile; import com.ruoyi.system.api.domain.poji.goods.ShopGoods; +import com.ruoyi.system.api.domain.poji.member.BirthdayCard; import com.ruoyi.system.api.domain.poji.member.Member; import com.ruoyi.system.api.domain.poji.member.MemberCoupon; import com.ruoyi.system.api.domain.poji.member.MemberGiftRecord; import com.ruoyi.system.api.domain.poji.shop.Shop; -import com.ruoyi.system.api.domain.poji.shop.ShopProportionVo; import com.ruoyi.system.api.domain.poji.sys.SysUser; import com.ruoyi.system.api.domain.vo.*; import com.ruoyi.system.api.service.*; @@ -67,7 +58,6 @@ import javax.annotation.Resource; import java.math.BigDecimal; -import java.math.RoundingMode; import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.util.*; @@ -132,8 +122,8 @@ @Autowired private RedissonClient redissonClient; - @Autowired - private WxPayService wxService; + /*@Autowired + private WxPayService wxService;*/ @Resource private PaymentMessageService paymentMessageService; @@ -670,6 +660,7 @@ orderGoods.setServiceNum(serviceNum); orderGoods.setGoodsType(goods.getGoodsType()); orderGoods.setGoodsName(goods.getGoodsName()); + orderGoods.setGoodsTag(goods.getGoodsTags()); orderGoods.setGoodsIntroduction(goods.getGoodsIntroduction()); orderGoods.setGoodsPicture(goodsFile.getFileUrl()); // 保存订单商品 @@ -704,7 +695,6 @@ order.setDiscountMoney(couponDiscount); order.setReceivableMoney(orderPayMoney); order.setReceivableDeposit(orderPayDeposit); - order.setChangeReceivableMoney(orderPayMoney); // 根据支付类型计算支付金额 if (appPlaceOrderDto.getPayType() == 1) { order.setPayMoney(orderPayMoney); @@ -721,6 +711,7 @@ order.setPayType(2); order.setCloseFlag(0); } + order.setChangeReceivableMoney(appPlaceOrderVo.getUnpaidMoney()); order.setOrderRemark(appPlaceOrderDto.getOrderRemark()); order.setGoodsNum(goodsNum); order.setCreateTime(new Date()); @@ -742,9 +733,9 @@ } // 小程序微信下单支付 - createWxPayInfo(appPlaceOrderVo, userId, order.getShopId(), goodsName, orderNo, + /*createWxPayInfo(appPlaceOrderVo, userId, order.getShopId(), goodsName, orderNo, orderId, order.getPayMoney(), appPlaceOrderDto.getOpenid(), - appPlaceOrderDto.getSpbillCreateIp(), goodsNameList); + appPlaceOrderDto.getSpbillCreateIp(), goodsNameList);*/ //减去优惠券 @@ -781,7 +772,7 @@ * @param payerClientIp * @param goodsNameList */ - private void createWxPayInfo(AppPlaceOrderVo appPlaceOrderVo, Long userId, Long shopId, + /*private void createWxPayInfo(AppPlaceOrderVo appPlaceOrderVo, Long userId, Long shopId, String goodsName, String orderNo, String orderId, BigDecimal payMoney, String openid, String payerClientIp, List<String> goodsNameList){ @@ -856,7 +847,7 @@ } catch (WxPayException e) { throw new ServiceException(e.getMessage()); } - } + }*/ /** @@ -996,6 +987,7 @@ orderGoods.setCycleNumFlag(goods.getCycleNumFlag()); orderGoods.setServiceNum(serviceNum); orderGoods.setGoodsType(goods.getGoodsType()); + orderGoods.setGoodsTag(goods.getGoodsTags()); orderGoods.setGoodsName(goods.getGoodsName()); orderGoods.setGoodsIntroduction(goods.getGoodsIntroduction()); orderGoods.setGoodsPicture(goodsFile.getFileUrl()); @@ -1037,7 +1029,6 @@ order.setDiscountMoney(couponDiscount); order.setReceivableMoney(orderPayMoney); order.setReceivableDeposit(orderPayDeposit); - order.setChangeReceivableMoney(orderPayMoney); order.setActivityId(activityId); order.setActivityName(activityGoodsGetVo.getActivityName()); // 根据支付类型设置订单支付金额,在线支付金额,订单支付金额,未支付金额,关闭标志 @@ -1048,6 +1039,7 @@ appPlaceOrderVo.setUnpaidMoney(order.getReceivableMoney().subtract(order.getPayMoney())); order.setPayType(1); order.setCloseFlag(1); + order.setChangeReceivableMoney(orderGoodsMoney.subtract(couponDiscount)); } else if (appPlaceActivityDto.getPayType() == 2) { order.setPayMoney(orderPayDeposit); order.setOnlinePayMoney(orderPayDeposit); @@ -1055,6 +1047,7 @@ appPlaceOrderVo.setUnpaidMoney(order.getReceivableMoney().subtract(order.getPayMoney())); order.setPayType(2); order.setCloseFlag(0); + order.setChangeReceivableMoney(orderGoodsMoney.subtract(couponDiscount).subtract(orderPayDeposit)); } // 设置订单备注,商品数量,创建时间 order.setOrderRemark(appPlaceActivityDto.getOrderRemark()); @@ -1315,15 +1308,32 @@ merVerifyOrderVo.setOrderGoodsMoney(order.getOrderMoney()); merVerifyOrderVo.setCouponDiscount(order.getCouponMoney()); merVerifyOrderVo.setReceivableDeposit(order.getReceivableDeposit()); - merVerifyOrderVo.setReceivableMoney(order.getReceivableMoney()); + if(order.getPayType()==1){ + merVerifyOrderVo.setReceivableMoney(order.getOrderMoney().subtract(order.getPayMoney())); + }else{ + merVerifyOrderVo.setReceivableMoney(order.getOrderMoney().subtract(order.getCouponMoney()).subtract(order.getReceivableDeposit())); + } merVerifyOrderVo.setPayMoney(order.getPayMoney()); merVerifyOrderVo.setOrderRemark(order.getOrderRemark()); merVerifyOrderVo.setCreateTime(order.getCreateTime()); merVerifyOrderVo.setPayTime(order.getPayTime()); merVerifyOrderVo.setUseTime(order.getUseTime()); merVerifyOrderVo.setAppUserOrderGoodsPageVoList(appUserOrderGoodsPageVoList); + merVerifyOrderVo.setPayType(order.getPayType()); + merVerifyOrderVo.setRealReceiveMoney(order.getChangeReceivableMoney()); + if(order.getPayType()==1){ + merVerifyOrderVo.setReceiveMoney(order.getPayMoney()); + }else{ + if(order.getOfflinePayMoney()!=null){ + merVerifyOrderVo.setReceiveMoney(order.getOfflinePayMoney()); + }else{ + merVerifyOrderVo.setReceiveMoney(BigDecimal.ZERO); + } + } + merVerifyOrderVo.setUnReceiveMoney(merVerifyOrderVo.getRealReceiveMoney().subtract(merVerifyOrderVo.getReceiveMoney())); // 根据订单用户ID获取用户信息 Member member = remoteMemberService.getMember(order.getUserId()).getData(); + merVerifyOrderVo.setUserId(order.getUserId()); merVerifyOrderVo.setUserName(member.getRealName()); merVerifyOrderVo.setUserMobile(member.getMobile()); merVerifyOrderVo.setCloseFlag(order.getCloseFlag()); @@ -1400,6 +1410,7 @@ consumerGoods.setServiceNum(appUserOrderGoodsPageVo.getServiceNum()); consumerGoods.setUsedNum(0); consumerGoods.setGoodsType(appUserOrderGoodsPageVo.getGoodsType()); + consumerGoods.setGoodsTag(appUserOrderGoodsPageVo.getGoodsTag()); consumerGoods.setCreateTime(nowTime); consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction()); consumerGoods.setGoodsPicture(appUserOrderGoodsPageVo.getGoodsPicture()); @@ -1425,6 +1436,7 @@ consumerGoods.setServiceNum(appUserOrderGoodsPageVo.getServiceNum()); consumerGoods.setUsedNum(0); consumerGoods.setGoodsType(appUserOrderGoodsPageVo.getGoodsType()); + consumerGoods.setGoodsTag(appUserOrderGoodsPageVo.getGoodsTag()); consumerGoods.setCreateTime(nowTime); consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction()); consumerGoods.setGoodsPicture(appUserOrderGoodsPageVo.getGoodsPicture()); @@ -1444,14 +1456,31 @@ merVerifyOrderVo.setOrderGoodsMoney(order.getOrderMoney()); merVerifyOrderVo.setCouponDiscount(order.getCouponMoney()); merVerifyOrderVo.setReceivableDeposit(order.getReceivableDeposit()); - merVerifyOrderVo.setReceivableMoney(order.getReceivableMoney()); + if(order.getPayType()==1){ + merVerifyOrderVo.setReceivableMoney(order.getOrderMoney().subtract(order.getPayMoney())); + }else{ + merVerifyOrderVo.setReceivableMoney(order.getOrderMoney().subtract(order.getCouponMoney()).subtract(order.getReceivableDeposit())); + } merVerifyOrderVo.setPayMoney(order.getPayMoney()); merVerifyOrderVo.setOrderRemark(order.getOrderRemark()); merVerifyOrderVo.setAppUserOrderGoodsPageVoList(appUserOrderGoodsPageVoList); merVerifyOrderVo.setCreateTime(order.getCreateTime()); merVerifyOrderVo.setPayTime(order.getPayTime()); merVerifyOrderVo.setUseTime(order.getUseTime()); + merVerifyOrderVo.setPayType(order.getPayType()); + merVerifyOrderVo.setRealReceiveMoney(order.getChangeReceivableMoney()); + if(order.getPayType()==1){ + merVerifyOrderVo.setReceiveMoney(order.getPayMoney()); + }else{ + if(order.getOfflinePayMoney()!=null){ + merVerifyOrderVo.setReceiveMoney(order.getOfflinePayMoney()); + }else{ + merVerifyOrderVo.setReceiveMoney(BigDecimal.ZERO); + } + } + merVerifyOrderVo.setUnReceiveMoney(merVerifyOrderVo.getRealReceiveMoney().subtract(merVerifyOrderVo.getReceiveMoney())); Member member = remoteMemberService.getMember(order.getUserId()).getData(); + merVerifyOrderVo.setUserId(order.getUserId()); merVerifyOrderVo.setUserName(member.getRealName()); merVerifyOrderVo.setUserMobile(member.getMobile()); merVerifyOrderVo.setCloseFlag(order.getCloseFlag()); @@ -1466,23 +1495,24 @@ payRecord.setOrderId(order.getOrderId()); payRecord.setPayMoney(merVerifyOrderDto.getRelPayMoney()); payRecord.setPayTime(new Date()); - payRecord.setPayType(2); + payRecord.setPayType(merVerifyOrderDto.getPayType()); payRecordService.save(payRecord); - submitProfitSharing(orderId, order.getOrderNo(), order.getShopId(), order.getOrderMoney()); + //submitProfitSharing(orderId, order.getOrderNo(), order.getShopId(), order.getOrderMoney()); return merVerifyOrderVo; } - private void submitProfitSharing(String orderId, String orderNo, Long shopId, BigDecimal orderMoney) { + /*private void submitProfitSharing(String orderId, String orderNo, Long shopId, BigDecimal orderMoney) { String sendMessage = ""; String resultMessage = ""; try { - // TODO 核销完成 开始分账(平台收取服务费) + // 核销完成 开始分账(平台收取服务费) OrderPayment payment = orderPaymentService.getByOrderId(orderId); String transactionId = payment.getTransactionId(); - String platformTyMacId = MyWxPayConfig.getPlatformTyMacId(); + // 平台特约商户号,用户平台收取服务费 + String platformTyMacId = WxPayConfiguration.getPlatformTyMacId(); R<String> resultMch = remoteShopService.getShopSubMchId(shopId); String subMchId = resultMch.getData(); @@ -1548,7 +1578,7 @@ // 保存分账信息 paymentMessageService.savePaymentMessage("4", orderId, sendMessage, resultMessage); - } + }*/ /** * @param merVerifyCouponDto @@ -1630,6 +1660,7 @@ } consumerGoods.setUsedNum(0); consumerGoods.setGoodsType(goods.getGoodsType()); + consumerGoods.setGoodsTag(goods.getGoodsTags()); consumerGoods.setCreateTime(new Date()); consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction()); goodsFile = remoteGoodsService.getGoodsFile(goods.getGoodsId()).getData(); @@ -1748,7 +1779,7 @@ @Override public List<MerMemberNoClearOrderVo> pageMerMemberNoClearOrder(Page page, MerMemberNoClearOrderDto merMemberNoClearOrderDto) { List<MerMemberNoClearOrderVo> merMemberNoClearOrderVoList = orderMapper.pageMerMemberNoClearOrder(page, merMemberNoClearOrderDto.getMemberUserId()); - if (merMemberNoClearOrderVoList != null && !merMemberNoClearOrderVoList.isEmpty()) { + /*if (merMemberNoClearOrderVoList != null && !merMemberNoClearOrderVoList.isEmpty()) { BigDecimal zeroBig = new BigDecimal("0.00"); for (MerMemberNoClearOrderVo merMemberNoClearOrderVo : merMemberNoClearOrderVoList) { merMemberNoClearOrderVo.setUnPaidMoney(merMemberNoClearOrderVo.getReceivableMoney().subtract(merMemberNoClearOrderVo.getPayMoney())); @@ -1756,7 +1787,7 @@ merMemberNoClearOrderVo.setUnPaidMoney(zeroBig); } } - } + }*/ return merMemberNoClearOrderVoList; } @@ -1783,7 +1814,7 @@ payRecord.setOrderId(order.getOrderId()); payRecord.setPayMoney(merCloseOrderDto.getPayMoney()); payRecord.setPayTime(new Date()); - payRecord.setPayType(2); + payRecord.setPayType(merCloseOrderDto.getPayType()); payRecordService.save(payRecord); } @@ -1941,6 +1972,7 @@ orderGoods.setCycleNumFlag(goods.getCycleNumFlag()); orderGoods.setServiceNum(serviceNum); orderGoods.setGoodsType(goods.getGoodsType()); + orderGoods.setGoodsTag(goods.getGoodsTags()); orderGoods.setGoodsName(goods.getGoodsName()); orderGoods.setGoodsIntroduction(goods.getGoodsIntroduction()); orderGoods.setGoodsPicture(goodsFile.getFileUrl()); @@ -1988,7 +2020,6 @@ order.setOrderRemark(merNewOrderDto.getOrderRemark()); order.setGoodsNum(goodsNum); order.setCreateTime(nowTime); - order.setPayTime(nowTime); order.setUseTime(nowTime); order.setUseUserId(merNewOrderDto.getUserId()); order.setPayMoney(merNewOrderDto.getPayMoney()); @@ -2026,6 +2057,7 @@ consumerGoods.setServiceNum(appUserOrderGoodsPageVo.getServiceNum()); consumerGoods.setUsedNum(0); consumerGoods.setGoodsType(appUserOrderGoodsPageVo.getGoodsType()); + consumerGoods.setGoodsTag(appUserOrderGoodsPageVo.getGoodsTag()); consumerGoods.setCreateTime(nowTime); consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction()); consumerGoods.setGoodsPicture(appUserOrderGoodsPageVo.getGoodsPicture()); @@ -2051,6 +2083,7 @@ consumerGoods.setServiceNum(appUserOrderGoodsPageVo.getServiceNum()); consumerGoods.setUsedNum(0); consumerGoods.setGoodsType(appUserOrderGoodsPageVo.getGoodsType()); + consumerGoods.setGoodsTag(appUserOrderGoodsPageVo.getGoodsTag()); consumerGoods.setCreateTime(nowTime); consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction()); consumerGoods.setGoodsPicture(appUserOrderGoodsPageVo.getGoodsPicture()); @@ -2123,6 +2156,9 @@ if (orderFrom != null) { if (orderFrom == 1) { orderFromDesc = "商城订单"; + } else if(orderFrom == 2){ + + orderFromDesc = "店铺砍价活动("+merOrderPageVo.getActivityName()+")"; } else { orderFromDesc = "线下创建"; } @@ -2330,7 +2366,7 @@ } } MgtOrderTotal mgtOrderTotal = new MgtOrderTotal(); - MgtOrderTotal mgtOrderTotalFirst = orderMapper.totalOrderFirst(); + MgtOrderTotal mgtOrderTotalFirst = orderMapper.totalOrderFirst(mgtShopOrderPageDto); MgtOrderTotal mgtOrderTotalSecond = orderMapper.totalOrderSecond(mgtShopOrderPageDto); MgtOrderTotal mgtOrderTotalThird = orderMapper.totalOrderThird(mgtShopOrderPageDto); mgtOrderTotal.setOrderTotal(mgtOrderTotalFirst.getOrderTotal()); @@ -2535,6 +2571,8 @@ @Override public MgtBulletinBoardVo boardOrderTotal() { MgtBulletinBoardVo mgtBulletinBoardVo = orderMapper.boardOrderTotal(); + Integer activityUserTotal = orderMapper.activityUserTotal(); + mgtBulletinBoardVo.setActivityUserTotal(activityUserTotal); return mgtBulletinBoardVo; } @@ -3161,10 +3199,39 @@ if (memberGiftRecord == null || memberGiftRecord.getVerifyStatus() != 1) { throw new ServiceException(AppErrorConstant.COUPON_USED); } + Shop shop = null; + if (memberGiftRecord.getGiftFrom() == 1) { + BirthdayCard birthdayCard = remoteMemberService.getBirthdayCard().getData(); + if(birthdayCard!=null){ + shop = remoteShopService.getShop(shopId).getData(); + //判断指定区域全部店铺 + if(birthdayCard.getAreaFlag()==2&&birthdayCard.getShopFlag()==1&&!StringUtils.checkString(birthdayCard.getDesignatedArea(),shop.getShopCityCode())){ + throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); + } + //判断指定店铺 + if(birthdayCard.getShopFlag()==2&&!StringUtils.checkString(birthdayCard.getApplicableShop(),shopId.toString())){ + throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); + } + }else{ + throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); + } + } if (memberGiftRecord.getGiftFrom() == 2 && !memberGiftRecord.getShopId().equals(shopId)) { throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR); } Member member = remoteMemberService.getMember(memberGiftRecord.getUserId()).getData(); + if(member.getBindingFlag()==0){ + //绑定用户 + if(shop==null){ + shop = remoteShopService.getShop(shopId).getData(); + } + AppMemberBindingDto appMemberBindingDto = new AppMemberBindingDto(); + appMemberBindingDto.setBindingFlag(1); + appMemberBindingDto.setShopId(shopId); + appMemberBindingDto.setShopName(shop.getShopName()); + appMemberBindingDto.setUserId(memberGiftRecord.getUserId()); + remoteMemberService.updateMemberBinding(appMemberBindingDto); + } merVerifyAwardVo.setUserName(member.getRealName()); merVerifyAwardVo.setUserMobile(member.getMobile()); if (memberGiftRecord.getGiftFrom() == 1) { @@ -3172,8 +3239,8 @@ } else { merVerifyAwardVo.setGiftFrom("商户生日卡"); } - merVerifyAwardVo.setGiftType(memberGiftRecord.getGiftType()); + //礼物类型1优惠券2商品3现金4实物 switch (memberGiftRecord.getGiftType()) { case 1: merVerifyAwardVo.setGiftName(memberGiftRecord.getCouponName()); @@ -3232,11 +3299,6 @@ */ @Override public MerOrderTotalVo getMerOrderTotal(MerTotalDto merTotalDto) { - if (merTotalDto.getShopAllFlag() != null && merTotalDto.getShopAllFlag() == 1) { - List<Long> shopIdList = remoteShopService.listShopIdByShopId(merTotalDto.getShopId()).getData(); - merTotalDto.setShopIdList(shopIdList); - merTotalDto.setShopId(null); - } if (merTotalDto.getShopAllFlag() != null && merTotalDto.getShopAllFlag() == 1) { List<Long> shopIdList = remoteShopService.listShopIdByShopId(merTotalDto.getShopId()).getData(); merTotalDto.setShopIdList(shopIdList); @@ -3647,6 +3709,7 @@ goodsTotalChangeDtoList.add(goodsTotalChangeDto); } //更新商品统计 + remoteGoodsService.changeGoodsTotal(goodsTotalChangeDtoList); // 更新商户统计信息 ShopTotalChangeDto shopTotalChangeDto = new ShopTotalChangeDto(); shopTotalChangeDto.setShopId(order.getShopId()); @@ -3663,10 +3726,12 @@ if (redisService.hasKey(SecurityConstant.PAY_MONEY_INTEGRAL)) { Integer moneyValue = redisService.getCacheObject(SecurityConstant.PAY_MONEY_INTEGRAL); BigDecimal moneyValueBig = BigDecimal.valueOf(moneyValue); - BigDecimal integralBig = moneyValueBig.multiply(order.getPayMoney()); + BigDecimal integralBig = moneyValueBig.multiply(order.getPayMoney()).setScale(0,BigDecimal.ROUND_HALF_UP); Integer integral = Integer.valueOf(integralBig.toString()); memberTotalChangeDto.setChangeIntegral(integral); memberTotalChangeDto.setTypeIntegral(1); + memberTotalChangeDto.setOrderId(orderId); + memberTotalChangeDto.setOrderNo(order.getOrderNo()); } // 设置会员支付金额和支付时间 memberTotalChangeDto.setPayMoney(order.getPayMoney()); @@ -3683,6 +3748,9 @@ } if (haveGoods) { memberTotalChangeDto.setGoodsOrderChange(1); + } + if(order.getOrderFrom()==2){ + memberTotalChangeDto.setActivityTime(order.getCreateTime()); } // 更新会员统计信息 remoteMemberService.changeMemberTotal(memberTotalChangeDto); @@ -3878,7 +3946,7 @@ BigDecimal onlinePayMoney = order.getOnlinePayMoney(); if(BigDecimal.ZERO.compareTo(onlinePayMoney) < 0){ // 订单支付金额大于0,可发起退款 - orderWxApplyRefund(orderId, refundId, onlinePayMoney, orderRefund); + //orderWxApplyRefund(orderId, refundId, onlinePayMoney, orderRefund); } orderRefund.setRefundStatus(1); @@ -3888,7 +3956,7 @@ /** * 申请退款API */ - private void orderWxApplyRefund(String orderId, String outRefundNo, BigDecimal payMoney, OrderRefund orderRefund){ + /*private void orderWxApplyRefund(String orderId, String outRefundNo, BigDecimal payMoney, OrderRefund orderRefund){ try { // 创建支付订单 OrderPayment orderPayment = orderPaymentService.getByOrderId(orderId); @@ -3927,7 +3995,7 @@ } catch (WxPayException e) { throw new ServiceException(e.getMessage()); } - } + }*/ /** * @param staffTotalDto @@ -4287,4 +4355,69 @@ } } } + + /** + * @description 获取商户订单统计 + * @author jqs + * @date 2023/8/4 10:25 + * @param mgtShopAllOrderPageDto + * @return MgtShopAllOrderTotal + */ + @Override + public MgtShopAllOrderTotal getMgtShopAllOrderTotal(MgtShopAllOrderPageDto mgtShopAllOrderPageDto){ + MgtShopAllOrderTotal shopAllOrderTotal = orderMapper.getMgtShopAllOrderTotal(mgtShopAllOrderPageDto); + return shopAllOrderTotal; + } + + /** + * 分页获取会员消费记录 + * @param merOrderPageDto + * @return + */ + @Override + public List<MerOrderPageVo> pageMerMemberPayOrder(Page page,MerMemberNoClearOrderDto merOrderPageDto){ + List<MerOrderPageVo> merOrderPageVoList = orderMapper.pageMerMemberPayOrder(page, merOrderPageDto); + if (merOrderPageVoList != null && !merOrderPageVoList.isEmpty()) { + Long userId; + Member member; + Integer orderFrom; + String orderFromDesc; + BigDecimal zeroBig = new BigDecimal("0.00"); + StringJoiner userIdSj = new StringJoiner(","); + for (MerOrderPageVo merOrderPageVo : merOrderPageVoList) { + userId = merOrderPageVo.getUserId(); + userIdSj.add(userId.toString()); + orderFrom = merOrderPageVo.getOrderFrom(); + if (orderFrom != null) { + if (orderFrom == 1) { + orderFromDesc = "商城订单"; + } else { + orderFromDesc = "线下创建"; + } + } else { + orderFromDesc = "商城订单"; + } + merOrderPageVo.setOrderFromDesc(orderFromDesc); + merOrderPageVo.setUnPaidMoney(merOrderPageVo.getPayMoney().subtract(merOrderPageVo.getReceiveMoney())); + if (merOrderPageVo.getUnPaidMoney() == null) { + merOrderPageVo.setUnPaidMoney(zeroBig); + } + } + MgtBaseBathDto mgtBaseBathDto = new MgtBaseBathDto(); + mgtBaseBathDto.setIds(userIdSj.toString()); + List<MgtSimpleMemberVo> simpleMemberVoList = remoteMemberService.listSimpleVoByIds(mgtBaseBathDto).getData(); + Map<Long, MgtSimpleMemberVo> userMap = simpleMemberVoList.stream() + .collect(Collectors.toMap(MgtSimpleMemberVo::getUserId, Function.identity())); + for (MerOrderPageVo merOrderPageVo : merOrderPageVoList) { + if(merOrderPageVo.getUserId()!=null&&userMap.get(merOrderPageVo.getUserId())!=null){ + merOrderPageVo.setUserName(userMap.get(merOrderPageVo.getUserId()).getRealName()); + merOrderPageVo.setNickName(userMap.get(merOrderPageVo.getUserId()).getNickName()); + merOrderPageVo.setUserMobile(userMap.get(merOrderPageVo.getUserId()).getUserMobile()); + }else{ + log.debug("订单merOrderPageVo"+merOrderPageVo.getOrderId()+"缺少用户"); + } + } + } + return merOrderPageVoList; + } } -- Gitblit v1.7.1