| | |
| | | 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.AuctionSalesroom; |
| | | import com.ruoyi.system.api.domain.CustomConfig; |
| | |
| | | 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; |
| | |
| | | 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; |
| | |
| | | currentAuctionSalesroomGoods.setGoodsSkustatus(auctionSalesroomGoodss.getStatus()); |
| | | currentAuctionSalesroomGoods.setListingDuration(auctionSalesroomGoodss.getListingDuration()); |
| | | auctionSalesroomVO.setCurrentAuctionSalesroomGoods(currentAuctionSalesroomGoods); |
| | | wrappers.eq(AuctionSalesroomGoods::getSortNum, auctionSalesroomGoodss.getSortNum()); |
| | | list.add(auctionSalesroomGoodss.getSortNum()); |
| | | } |
| | | wrappers.eq(AuctionSalesroomGoods::getSortNum, auctionSalesroomGoodss.getSortNum()); |
| | | list.add(auctionSalesroomGoodss.getSortNum()); |
| | | |
| | | |
| | | } |
| | | wrapper1.last("limit 1"); |
| | | AuctionSalesroomGoods auctionSalesroomGoods1 = this.getOne(wrapper1); |
| | |
| | | auctionSalesroomVO.setNextAuctionSalesroomGoods(nextAuctionSalesroomGoods); |
| | | } |
| | | LambdaQueryWrapper<AuctionSalesroomGoods> wrapper2=Wrappers.lambdaQuery(); |
| | | wrapper2.notIn(AuctionSalesroomGoods::getSortNum,list); |
| | | 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); |
| | |
| | | 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); |
| | | |
| | | } |
| | | |
| | |
| | | |
| | | 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); |
| | | } |
| | | |
| | | |
| | |
| | | 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); |
| | | } |
| | | |
| | | |
| | |
| | | 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); |
| | | |
| | | } |
| | | |
| | |
| | | AuctionSalesroomGoodsInfoVO.setUnit(goodsSku.getUnit()); |
| | | AuctionSalesroomGoodsInfoVO.setDescription(goodsSku.getDescription()); |
| | | AuctionSalesroomGoodsInfoVO.setDetail(goodsSku.getDetail()); |
| | | AuctionSalesroomGoodsInfoVO.setSharePic(goodsSku.getSharePic()); |
| | | AuctionSalesroomGoodsInfoVO.setShareTitle(goodsSku.getShareTitle()); |
| | | AuctionSalesroomGoodsInfoVO.setYears(String.valueOf(goodsSku.getYears().getYear())); |
| | | GoodsBrand data = goodsSkuClient.getBrandOne(goodsSku.getBrandId(), SecurityConstants.INNER).getData(); |
| | | GoodsCategory data1 = goodsSkuClient.getCategoryOne(goodsSku.getCategoryId(), SecurityConstants.INNER).getData(); |
| | |
| | | AuctionSalesroomGoodsInfoVO.setAlbum(goodsSku.getAlbum()); |
| | | AuctionSalesroomGoodsInfoVO.setSpec(goodsSku.getSpec()); |
| | | AuctionSalesroomGoodsInfoVO.setSpecUnit(goodsSku.getSpecUnit()); |
| | | |
| | | CustomConfig returnAddressUserName = sysUserClient.getconfig("MALL_ORDER_DESCRIPTION").getData(); |
| | | AuctionSalesroomGoodsInfoVO.setExplain(returnAddressUserName.getConfigValue()); |
| | | AuctionSalesroomGoodsInfoVO.setMinimumMarkupAmount(byId1.getMinimumMarkupAmount()); |
| | | LambdaQueryWrapper<AuctionBidRecord> wrapper1=Wrappers.lambdaQuery(); |
| | | wrapper1.eq(AuctionBidRecord::getMemberId,auctionSalesroomGoodsInfoDTO.getMemberId()); |
| | |
| | | AuctionSalesroomGoodsInfoVO.setPresentBid(list1.getLastBidAmount()); |
| | | if (list1.getStatus().getCode()==2){ |
| | | AuctionSalesroomGoodsInfoVO.setIsStatus(2); |
| | | OrderDTO orderDTO =new OrderDTO(); |
| | | orderDTO.setMemberId(auctionSalesroomGoodsInfoDTO.getMemberId()); |
| | | orderDTO.setGoodsSkuId(byId1.getId()); |
| | | Order data4 = orderClient.getOrderOne(orderDTO, SecurityConstants.INNER).getData(); |
| | | if (data4!=null){ |
| | | AuctionSalesroomGoodsInfoVO.setOrderId(data4.getId()); |
| | | AuctionSalesroomGoodsInfoVO.setOrderNo(data4.getOrderNo()); |
| | | } |
| | | |
| | | }else{ |
| | | AuctionSalesroomGoodsInfoVO.setIsStatus(1); |
| | | } |
| | |
| | | auctionBidRecordVO.setSort(i+1); |
| | | auctionBidRecordVO.setLastBidAmount(auctionBidRecordList.get(i).getLastBidAmount()); |
| | | auctionBidRecordVO.setLastBidTime(auctionBidRecordList.get(i).getLastBidTime()); |
| | | Member data = emberClient.getMembeOne(auctionBidRecordList.get(i).getMemberId(), |
| | | SecurityConstants.INNER).getData(); |
| | | auctionBidRecordVO.setMemberName(data.getNickname()); |
| | | auctionBidRecordVO.setMemberId(data.getId()); |
| | | auctionBidRecordVO.setMemberName(auctionBidRecordList.get(i).getNickname()); |
| | | auctionBidRecordVO.setMemberId(auctionBidRecordList.get(i).getId()); |
| | | auctionBidRecordVOList.add(auctionBidRecordVO); |
| | | } |
| | | LambdaQueryWrapper<AuctionBidRecord> wrapper1=Wrappers.lambdaQuery(); |
| | |
| | | wrapper1.eq(AuctionBidRecord::getMemberId,auctionSalesroomGoodsInfoDTO.getMemberId()); |
| | | wrapper.last("limit 1"); |
| | | AuctionBidRecord auctionBidRecord = auctionBidRecordMapper.selectOne(wrapper); |
| | | |
| | | LambdaQueryWrapper<AuctionBidRecord> wrapper3=Wrappers.lambdaQuery(); |
| | | wrapper3.eq(AuctionBidRecord::getAuctionSalesroomId,auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()); |
| | | wrapper3.eq(AuctionBidRecord::getDelFlag,0); |
| | | wrapper3.eq(AuctionBidRecord::getTargetId,auctionSalesroomGoodsInfoDTO.getGoodsSkuId()); |
| | | wrapper3.le(AuctionBidRecord::getId,auctionBidRecord.getId()); |
| | | wrapper3.orderByDesc(AuctionBidRecord::getLastBidAmount); |
| | | Long count = auctionBidRecordMapper.selectCount(wrapper); |
| | | if (count>0){ |
| | | AuctionBidRecordVO auctionBidRecordVO=new AuctionBidRecordVO(); |
| | | auctionBidRecordVO.setSort(Integer.valueOf(count.intValue())); |
| | | auctionBidRecordVO.setLastBidAmount(auctionBidRecord.getLastBidAmount()); |
| | | auctionBidRecordVO.setLastBidTime(auctionBidRecord.getLastBidTime()); |
| | | Member data = emberClient.getMembeOne(auctionBidRecord.getMemberId(), |
| | | SecurityConstants.INNER).getData(); |
| | | auctionBidRecordVO.setMemberName(data.getNickname()); |
| | | auctionBidRecordVO.setMemberId(data.getId()); |
| | | auctionBidRecordVOList.add(auctionBidRecordVO); |
| | | if (auctionBidRecord!=null){ |
| | | LambdaQueryWrapper<AuctionBidRecord> wrapper3=Wrappers.lambdaQuery(); |
| | | wrapper3.eq(AuctionBidRecord::getAuctionSalesroomId,auctionSalesroomGoodsInfoDTO.getAuctionSalesroomId()); |
| | | wrapper3.eq(AuctionBidRecord::getDelFlag,0); |
| | | wrapper3.eq(AuctionBidRecord::getTargetId,auctionSalesroomGoodsInfoDTO.getGoodsSkuId()); |
| | | wrapper3.le(AuctionBidRecord::getId,auctionBidRecord.getId()); |
| | | wrapper3.orderByDesc(AuctionBidRecord::getLastBidAmount); |
| | | Long count = auctionBidRecordMapper.selectCount(wrapper); |
| | | if (count>0){ |
| | | AuctionBidRecordVO auctionBidRecordVO=new AuctionBidRecordVO(); |
| | | auctionBidRecordVO.setSort(Integer.valueOf(count.intValue())); |
| | | auctionBidRecordVO.setLastBidAmount(auctionBidRecord.getLastBidAmount()); |
| | | auctionBidRecordVO.setLastBidTime(auctionBidRecord.getLastBidTime()); |
| | | Member data = emberClient.getMembeOne(auctionBidRecord.getMemberId(), |
| | | SecurityConstants.INNER).getData(); |
| | | auctionBidRecordVO.setMemberName(data.getNickname()); |
| | | auctionBidRecordVO.setMemberId(data.getId()); |
| | | auctionBidRecordVOList.add(auctionBidRecordVO); |
| | | } |
| | | } |
| | | |
| | | return auctionBidRecordVOList; |
| | | } |
| | | |