From 9bcc40d213a44498c46dae5e678e592b918b40b0 Mon Sep 17 00:00:00 2001
From: rentaiming <806181062@qq.com>
Date: 星期四, 30 五月 2024 18:33:54 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java |   71 +++++++++++++++++++++++++++++++++++
 1 files changed, 70 insertions(+), 1 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 311090d..1247964 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
@@ -1,9 +1,18 @@
 package com.ruoyi.order.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.order.domain.pojo.Order;
+import com.ruoyi.common.core.enums.OrderStatusEnum;
+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.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;
 
 /**
@@ -17,8 +26,68 @@
 @Service
 public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements IOrderService {
 
+
+    @Resource
+    private  IOrderService orderService;
+    @Resource
+    private IOrderMallService orderMallService;
+    @Override
+    public void saveOrderOne(OrderDTO OrderDTO) {
+        Order order=new Order();
+        String prefix = OrderUtil.getOrderNoForPrefix("XM");
+        order.setOrderNo(prefix);
+        order.setOrderTime(OrderDTO.getOrderTime());
+        order.setOrderFrom(OrderDTO.getOrderFrom());
+        order.setAuctionType(OrderDTO.getAuctionType());
+        order.setMemberId(OrderDTO.getMemberId());
+        order.setTotalAmount(OrderDTO.getTotalAmount());
+        order.setOrderStatus(OrderStatusEnum.TO_PLAY);
+        order.setGoodsQuantity(OrderDTO.getGoodsQuantity());
+        order.setReceiverName(OrderDTO.getReceiverName());
+        order.setReceiverphone(OrderDTO.getReceiverphone());
+        order.setReceiverCity(OrderDTO.getReceiverCity());
+        order.setReceiverDetailAddress(OrderDTO.getReceiverDetailAddress());
+        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