From 3af957a67cf00b8d64eb61406df1f8b8072cb08c Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期一, 27 五月 2024 11:19:53 +0800
Subject: [PATCH] 修改秒杀/团购 websocket消息推送
---
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