rentaiming
2024-06-04 9ea0ed39137ded48ccd490cfe6d931d34d5c82d6
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -1,5 +1,7 @@
package com.ruoyi.order.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.collect.Lists;
import com.ruoyi.common.core.constant.SecurityConstants;
@@ -8,9 +10,7 @@
import com.ruoyi.common.core.enums.PaymentMethodEnum;
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.order.domain.OrderMall;
import com.ruoyi.order.mapper.OrderMapper;
import com.ruoyi.order.service.IOrderMallService;
import com.ruoyi.order.service.IOrderService;
import com.ruoyi.order.util.OrderUtil;
import com.ruoyi.system.api.domain.*;
@@ -40,11 +40,6 @@
 */
@Service
public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements IOrderService {
    @Resource
    private IOrderMallService orderMallService;
    @Resource
    private GoodsSkuClient goodsSkuClient;
@@ -77,6 +72,7 @@
        order.setOrderTime(OrderDTO.getOrderTime());
        order.setOrderFrom(OrderDTO.getOrderFrom());
        order.setAuctionType(OrderDTO.getAuctionType());
        order.setGoodsSkuId(OrderDTO.getGoodsSkuId());
        order.setMemberId(OrderDTO.getMemberId());
        order.setTotalAmount(OrderDTO.getTotalAmount());
        order.setOrderStatus(OrderStatusEnum.TO_PLAY);
@@ -108,11 +104,7 @@
     */
    @Override
    public Integer getGroupPurchasesGoodsNum(Long id) {
        Set<Long> orderIdSet = orderMallService.lambdaQuery().eq(OrderMall::getActivityId, id)
                .list()
                .stream().map(OrderMall::getOrderId).collect(
                        Collectors.toSet());
        List<Order> list = this.lambdaQuery().in(Order::getId, orderIdSet)
        List<Order> list = this.lambdaQuery().eq(Order::getId, id)
                .in(Order::getOrderStatus, OrderStatusEnum.TO_BE_SHIPPED,
                        OrderStatusEnum.GOODS_TO_BE_RECEIVED, OrderStatusEnum.FINISHED).list();
        return list.stream().map(Order::getGoodsQuantity).reduce(0, Integer::sum);
@@ -237,20 +229,9 @@
            }
        }
        order.setGoodsSkuId(memberOrderDTO.getGoodsSkuId());
        baseMapper.insert(order);
        OrderMall orderMall=new OrderMall();
        orderMall.setOrderId(order.getId());
        if (memberOrderDTO.getOrderFrom()==1){
            orderMall.setGoodsSkuId(memberOrderDTO.getGoodsSkuId());
        }
        if (memberOrderDTO.getOrderFrom()==2){
            orderMall.setActivityId(memberOrderDTO.getGoodsSkuId());
        }
        if (memberOrderDTO.getOrderFrom()==3){
            orderMall.setActivityId(memberOrderDTO.getGoodsSkuId());
        }
        orderMallService.save(orderMall);
        memberOrderVO.setId(order.getId());
        memberOrderVO.setOrderStatus(OrderStatusEnum.TO_PLAY);
        memberOrderVO.setOrderNo(order.getOrderNo());
@@ -347,6 +328,15 @@
            CouponMemberDTO couponMemberDTO=new CouponMemberDTO();
            couponMemberDTO.setId(memberOrderDTO.getCouponId());
            CouponMember data = promotionClient.getCouponMember(couponMemberDTO, SecurityConstants.INNER).getData();
            if (order.getCouponId()!=null){
                CouponMemberDTO couponMemberDTO1=new CouponMemberDTO();
                couponMemberDTO1.setId(memberOrderDTO.getCouponId());
                couponMemberDTO1.setCouponStatus(1);
                promotionClient.updCouponMember(couponMemberDTO1, SecurityConstants.INNER);
            }
            BigDecimal pice=new BigDecimal(0);
            if (data.getCouponType().getCode()==1){
                pice= order.getTotalAmount();
@@ -372,6 +362,12 @@
               }
            }
            order.setCouponId(memberOrderDTO.getCouponId());
            CouponMemberDTO couponMemberDTO2=new CouponMemberDTO();
            couponMemberDTO2.setId(memberOrderDTO.getCouponId());
            couponMemberDTO2.setCouponStatus(2);
            promotionClient.updCouponMember(couponMemberDTO2, SecurityConstants.INNER);
            order.setTotalAmount(pice);
        }