From 43c263df4d8ce0cc830f287780c29db8a2b47f0f Mon Sep 17 00:00:00 2001
From: rentaiming <806181062@qq.com>
Date: 星期一, 27 五月 2024 08:44:34 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java |   46 ++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 44 insertions(+), 2 deletions(-)

diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
index 07cb825..55b91da 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -2,11 +2,16 @@
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.core.enums.OrderStatusEnum;
-import com.ruoyi.order.domain.pojo.Order;
+import com.ruoyi.order.domain.pojo.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.Order;
 import com.ruoyi.system.api.domain.dto.OrderDTO;
+import java.util.List;
+import java.util.Set;
+import java.util.stream.Collectors;
 import javax.annotation.Resource;
 import org.springframework.stereotype.Service;
 
@@ -24,6 +29,8 @@
 
     @Resource
     private  IOrderService orderService;
+    @Resource
+    private IOrderMallService orderMallService;
     @Override
     public void saveOrderOne(OrderDTO OrderDTO) {
         Order order=new Order();
@@ -43,9 +50,44 @@
         order.setBound(OrderDTO.getBound());
         orderService.save(order);
     }
+
+    /**
+     * 获取某个商品的已购会员数
+     *
+     * @param id 秒杀商品id
+     * @return 已购会员数
+     */
     @Override
     public Integer getSeckillMembers(Long id) {
         return baseMapper.getSeckillMembers(id);
     }
-    
+
+    /**
+     * 获取团购商品已购数量
+     *
+     * @param id 团购商品id
+     * @return 团购商品已购数量
+     */
+    @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)
+                .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);
+    }
+
+    /**
+     * 根据团购商品id获取团购商品订单
+     *
+     * @param id 团购商品id
+     * @return 订单列表
+     */
+    @Override
+    public List<Order> getOrderByGroupPurchaseId(Long id) {
+        return baseMapper.getOrderByGroupPurchaseId(id);
+    }
 }

--
Gitblit v1.7.1