mitao
2024-06-21 ee9688b912bb993b54252a26f8ad9e0e04df21c3
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomGoodsServiceImpl.java
@@ -20,10 +20,19 @@
import com.ruoyi.common.core.enums.AuctionOrderTypeEnum;
import com.ruoyi.common.core.enums.AuctionStartStatusEnum;
import com.ruoyi.common.core.enums.BidStatusEnum;
import com.ruoyi.common.core.enums.ClientTypeEnum;
import com.ruoyi.common.core.enums.OrderFromEnum;
import com.ruoyi.common.core.utils.DateUtils;
import com.ruoyi.system.api.constants.NotificationTypeConstant;
import com.ruoyi.system.api.domain.*;
import com.ruoyi.system.api.domain.AuctionSalesroom;
import com.ruoyi.system.api.domain.CustomConfig;
import com.ruoyi.system.api.domain.GoodsBrand;
import com.ruoyi.system.api.domain.GoodsCategory;
import com.ruoyi.system.api.domain.GoodsFlavorType;
import com.ruoyi.system.api.domain.GoodsSeries;
import com.ruoyi.system.api.domain.GoodsSku;
import com.ruoyi.system.api.domain.Member;
import com.ruoyi.system.api.domain.MemberAddress;
import com.ruoyi.system.api.domain.Order;
import com.ruoyi.system.api.domain.dto.AuctionSalesroomDTO;
import com.ruoyi.system.api.domain.dto.AuctionSalesroomGoodsInfoDTO;
import com.ruoyi.system.api.domain.dto.GoodsStockUpdDTO;
@@ -37,7 +46,6 @@
import com.ruoyi.system.api.feignClient.MemberClient;
import com.ruoyi.system.api.feignClient.OrderClient;
import com.ruoyi.system.api.feignClient.SysUserClient;
import com.ruoyi.system.api.util.WebSocketUsers;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.ArrayList;
@@ -260,8 +268,9 @@
                auctionSalesroomVO.setNextAuctionSalesroomGoods(nextAuctionSalesroomGoods);
            }
            LambdaQueryWrapper<AuctionSalesroomGoods> wrapper2=Wrappers.lambdaQuery();
            wrapper2.notIn(AuctionSalesroomGoods::getSortNum,list);
            wrapper2.eq(AuctionSalesroomGoods::getDelFlag,0);
            if(list.size()>0){
                wrapper2.notIn(AuctionSalesroomGoods::getSortNum,list);
            }
            wrapper2.eq(AuctionSalesroomGoods::getAuctionSalesroomId,ationSalesroomGoodsDTO.getAuctionSalesroomId());
            wrapper2.orderByAsc(AuctionSalesroomGoods::getSortNum);
            wrapper2.orderByAsc(AuctionSalesroomGoods::getStatus);
@@ -310,20 +319,25 @@
        wrapper2.orderByAsc(AuctionSalesroomGoods::getSortNum);
        wrapper2.last("limit 1");
        AuctionSalesroomGoods auctionSalesroomGoods = this.getOne(wrapper2);
        auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.IN_PROGRESS);
        auctionSalesroomGoods.setStartTime(LocalDateTime.now());
        this.updateById(auctionSalesroomGoods);
        if(auctionSalesroomGoods!=null){
            auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.IN_PROGRESS);
            auctionSalesroomGoods.setStartTime(LocalDateTime.now());
            this.updateById(auctionSalesroomGoods);
        }
        Map<String, Object> map = new ConcurrentHashMap<>();
        map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM);
        map.put("auctionSalesroomId", auctionSalesroom.getId());
        map.put("AuctionTypeEnum",auctionSalesroom.getStatus());
        map.put("message_type", "start");
        map.put("type", "1");
        String msg = null;
        try {
            msg = objectMapper.writeValueAsString(map);
        } catch (JsonProcessingException e) {
        }
        WebSocketUsers.sendMessageToUsersByType(ClientTypeEnum.AUCTIONEER.getCode(), msg);
        sysUserClient.pushAll(msg, SecurityConstants.INNER);
    }
@@ -378,14 +392,16 @@
        Map<String, Object> map = new ConcurrentHashMap<>();
        map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM);
        map.put("AuctionTypeEnum",auctionSalesroom.getStatus());
        map.put("auctionSalesroomId", auctionSalesroom.getId());
        map.put("message_type", "end");
        map.put("type", "1");
        String msg = null;
        try {
            msg = objectMapper.writeValueAsString(map);
        } catch (JsonProcessingException e) {
        }
        WebSocketUsers.sendMessageToUsersByType(ClientTypeEnum.AUCTIONEER.getCode(), msg);
        sysUserClient.pushAll(msg, SecurityConstants.INNER);
    }
@@ -416,20 +432,23 @@
        wrapper2.eq(AuctionSalesroomGoods::getGoodsSkuId,auctionSalesroomGoodsDTO.getGoodsSkuId());
        AuctionSalesroomGoods auctionSalesroomGoods=this.getOne(wrapper2);
        auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.IN_PROGRESS);
        auctionSalesroomGoods.setStartTime(LocalDateTime.now());
        this.updateById(auctionSalesroomGoods);
     /*   Map<String, Object> map = new ConcurrentHashMap<>();
       Map<String, Object> map = new ConcurrentHashMap<>();
        map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM_GOODS);
        map.put("notification_time", LocalDateTime.now());
        map.put("notification_time", DateUtils.dateTimeNow("yyyy-MM-dd HH:mm:ss"));
        map.put("goodsSkuId", auctionSalesroomGoods.getId());
        map.put("message_type", "start");
        map.put("type",1);
        map.put("AuctionGoodsStatusEnum",auctionSalesroomGoods.getStatus());
        String msg = null;
        try {
            msg = objectMapper.writeValueAsString(map);
        } catch (JsonProcessingException e) {
            throw new RuntimeException(e);
        }
        WebSocketUsers.sendMessageToUsersByType(ClientTypeEnum.AUCTIONEER.getCode(), msg);*/
        sysUserClient.pushAll(msg, SecurityConstants.INNER);
    }
@@ -486,18 +505,20 @@
        auctionSalesroomGoods.setStatus(AuctionGoodsStatusEnum.ENDED);
        this.updateById(auctionSalesroomGoods);
      /*  Map<String, Object> map = new ConcurrentHashMap<>();
       Map<String, Object> map = new ConcurrentHashMap<>();
        map.put("notification_type", NotificationTypeConstant.AUCTION_SALESROOM_GOODS);
        map.put("notification_time", LocalDateTime.now());
        map.put("notification_time", DateUtils.dateTimeNow("yyyy-MM-dd HH:mm:ss"));
        map.put("goodsSkuId", auctionSalesroomGoods.getId());
        map.put("message_type", "end");
        map.put("type",2);
        map.put("AuctionGoodsStatusEnum",auctionSalesroomGoods.getStatus());
        String msg = null;
        try {
            msg = objectMapper.writeValueAsString(map);
        } catch (JsonProcessingException e) {
            throw new RuntimeException(e);
        }
        WebSocketUsers.sendMessageToUsersByType(ClientTypeEnum.AUCTIONEER.getCode(), msg);*/
        sysUserClient.pushAll(msg, SecurityConstants.INNER);
    }