mitao
2024-06-21 fb2128a3bf8d5a6f1e91ba735241af5924e74ffe
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsGroupPurchaseServiceImpl.java
@@ -33,6 +33,7 @@
import com.ruoyi.system.api.domain.GoodsGroupPurchase;
import com.ruoyi.system.api.domain.GoodsSku;
import com.ruoyi.system.api.domain.Order;
import com.ruoyi.system.api.domain.WebsocketMessageDTO;
import com.ruoyi.system.api.domain.dto.HomeGoodsSkuDTO;
import com.ruoyi.system.api.domain.dto.ListStatusDTO;
import com.ruoyi.system.api.domain.dto.OrderUpdDTO;
@@ -41,13 +42,12 @@
import com.ruoyi.system.api.domain.vo.OrderVO;
import com.ruoyi.system.api.domain.vo.WdGoodsGroupPurchaseVO;
import com.ruoyi.system.api.feignClient.OrderClient;
import com.ruoyi.system.api.util.WebSocketUsers;
import com.ruoyi.system.api.feignClient.SysUserClient;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@@ -65,14 +65,12 @@
@RequiredArgsConstructor
public class GoodsGroupPurchaseServiceImpl extends ServiceImpl<GoodsGroupPurchaseMapper, GoodsGroupPurchase> implements IGoodsGroupPurchaseService {
    @Resource
    private OrderClient orderClient;
    private final OrderClient orderClient;
    private final IGoodsSkuService goodsSkuService;
    private final AsyncMethodService asyncMethodService;
    private final RedisService redisService;
    @Resource
    private IMemberGoodsCollectionService iMemberGoodsCollectionService;
    private final IMemberGoodsCollectionService iMemberGoodsCollectionService;
    private final SysUserClient sysUserClient;
    // 创建一个静态共享的ObjectMapper实例以重用
    private static final ObjectMapper objectMapper = new ObjectMapper();
    /**
@@ -216,7 +214,9 @@
            map.put("target_id", groupPurchaseId);
            map.put("message_type", "start");
            String msg = objectMapper.writeValueAsString(map);
            WebSocketUsers.sendMessageToUsersByType(ClientTypeEnum.MEMBER.getCode(), msg);
            sysUserClient.pushByClientType(WebsocketMessageDTO.builder().message(msg)
                    .clientType(ClientTypeEnum.MEMBER).build(), SecurityConstants.INNER);
            log.info("===================>发送websocket通知,消息体{}", msg);
        }
    }
@@ -240,7 +240,8 @@
            map.put("target_id", groupPurchaseId);
            map.put("message_type", "end");
            String msg = objectMapper.writeValueAsString(map);
            WebSocketUsers.sendMessageToUsersByType(ClientTypeEnum.MEMBER.getCode(), msg);
            sysUserClient.pushByClientType(WebsocketMessageDTO.builder().message(msg)
                    .clientType(ClientTypeEnum.MEMBER).build(), SecurityConstants.INNER);
            log.info("===================>发送websocket通知,消息体{}", msg);
        }
    }