From 431dde90aa20f7652092fc0bfa9e6a1a28b06b9f Mon Sep 17 00:00:00 2001 From: jiangqs <343695869@qq.com> Date: 星期日, 06 八月 2023 12:41:23 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/HongRuiTang --- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java | 125 ++++++++++++++++++++++++++++++++++++++--- 1 files changed, 116 insertions(+), 9 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..2155f03 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 @@ -23,7 +23,7 @@ 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.config.WxPayConfiguration; import com.ruoyi.order.domain.dto.*; import com.ruoyi.order.domain.pojo.account.OrderPayment; import com.ruoyi.order.domain.pojo.account.OrderRefund; @@ -670,6 +670,7 @@ orderGoods.setServiceNum(serviceNum); orderGoods.setGoodsType(goods.getGoodsType()); orderGoods.setGoodsName(goods.getGoodsName()); + orderGoods.setGoodsTag(goods.getGoodsTags()); orderGoods.setGoodsIntroduction(goods.getGoodsIntroduction()); orderGoods.setGoodsPicture(goodsFile.getFileUrl()); // 保存订单商品 @@ -996,6 +997,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()); @@ -1322,8 +1324,21 @@ 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(order.getReceivableMoney())); // 根据订单用户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 +1415,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 +1441,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()); @@ -1451,7 +1468,20 @@ 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(order.getReceivableMoney())); Member member = remoteMemberService.getMember(order.getUserId()).getData(); + merVerifyOrderVo.setUserId(order.getUserId()); merVerifyOrderVo.setUserName(member.getRealName()); merVerifyOrderVo.setUserMobile(member.getMobile()); merVerifyOrderVo.setCloseFlag(order.getCloseFlag()); @@ -1466,7 +1496,7 @@ 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()); @@ -1478,11 +1508,12 @@ 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(); @@ -1630,6 +1661,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 +1780,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 +1788,7 @@ merMemberNoClearOrderVo.setUnPaidMoney(zeroBig); } } - } + }*/ return merMemberNoClearOrderVoList; } @@ -1783,7 +1815,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 +1973,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 +2021,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 +2058,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 +2084,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 +2157,9 @@ if (orderFrom != null) { if (orderFrom == 1) { orderFromDesc = "商城订单"; + } else if(orderFrom == 2){ + + orderFromDesc = "店铺砍价活动("+merOrderPageVo.getActivityName()+")"; } else { orderFromDesc = "线下创建"; } @@ -2330,7 +2367,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 +2572,8 @@ @Override public MgtBulletinBoardVo boardOrderTotal() { MgtBulletinBoardVo mgtBulletinBoardVo = orderMapper.boardOrderTotal(); + Integer activityUserTotal = orderMapper.activityUserTotal(); + mgtBulletinBoardVo.setActivityUserTotal(activityUserTotal); return mgtBulletinBoardVo; } @@ -3684,6 +3723,9 @@ if (haveGoods) { memberTotalChangeDto.setGoodsOrderChange(1); } + if(order.getOrderFrom()==2){ + memberTotalChangeDto.setActivityTime(order.getCreateTime()); + } // 更新会员统计信息 remoteMemberService.changeMemberTotal(memberTotalChangeDto); // 如果订单来源于活动,则更新活动统计信息 @@ -4287,4 +4329,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