From 7a92c0228a9b282e4b3cb2ae4a0035cec34feb67 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期三, 12 三月 2025 18:12:31 +0800 Subject: [PATCH] bug修改 --- ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java | 31 ++++++++++++++++++++----------- 1 files changed, 20 insertions(+), 11 deletions(-) diff --git a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java index 03fae10..73b0892 100644 --- a/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java +++ b/ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionSalesroomServiceImpl.java @@ -95,6 +95,7 @@ import com.ruoyi.system.api.feignClient.OrderClient; import com.ruoyi.system.api.feignClient.PromotionClient; import com.ruoyi.system.api.feignClient.SysUserClient; +import com.ruoyi.system.api.model.LoginUser; import io.seata.spring.annotation.GlobalTransactional; import java.io.IOException; import java.math.BigDecimal; @@ -395,7 +396,9 @@ @Override public AppMiniLoginVO isMiniLogin(AppMiniLoginDTO appMiniLoginDto) { AppMiniLoginVO appMiniLoginVo = new AppMiniLoginVO(); - R<SysUser> sysUserR = sysUserClient.queryUserByPhone(appMiniLoginDto.getPhone()); + LoginUser loginUser = SecurityUtils.getLoginUser(); + Long userid = loginUser.getUserid(); + R<SysUser> sysUserR = sysUserClient.getSysUser(userid); SysUser data = sysUserR.getData(); appMiniLoginVo.setSysUser(data); appMiniLoginVo.setPhone(appMiniLoginDto.getCode()); @@ -814,7 +817,7 @@ // 发送短信 authClient.sendSms( SmsSendDTO.builder().mobileList(Lists.newArrayList(membeOne.getPhone())) - .content("出价成功").build(), SecurityConstants.INNER); + .content("【酒鼎老酒】出价成功").build(), SecurityConstants.INNER); } else { AuctionGoods byId = auctionGoodsService.getById(bidVO.getTargetId()); R<GoodsSku> goodsSkuOneR = goodsSkuClient.getGoodsSkuOne(byId.getGoodsSkuId(), @@ -900,7 +903,7 @@ // 发送短信 authClient.sendSms( SmsSendDTO.builder().mobileList(Lists.newArrayList(membeOne.getPhone())) - .content("出价成功").build(), SecurityConstants.INNER); + .content("【酒鼎老酒】出价成功").build(), SecurityConstants.INNER); } } finally { @@ -1564,7 +1567,8 @@ Long orderId = addOrder(auctionBidRecord.getTargetId(), auctionBidRecord.getMemberId(), auctionBidRecord.getLastBidAmount(), - auctionSalesroom.getBond()); + auctionSalesroom.getBond(), + auctionSalesroomGoods.getDealQuantity()); orderIdMap.put(auctionBidRecord.getMemberId(), orderId.toString()); auctionBidRecord.setOrderId(orderId); auctionBidRecordMapper.updateById(auctionBidRecord); @@ -1577,7 +1581,8 @@ Long orderId = addOrder(auctionBidRecord.getTargetId(), auctionBidRecord.getMemberId(), auctionBidRecord.getLastBidAmount(), - auctionSalesroom.getBond()); + auctionSalesroom.getBond(), + auctionSalesroomGoods.getDealQuantity()); orderIdMap.put(auctionBidRecord.getMemberId(), orderId.toString()); auctionBidRecord.setOrderId(orderId); auctionBidRecordMapper.updateById(auctionBidRecord); @@ -1606,6 +1611,9 @@ .equals(BidStatusEnum.SUCCESSFUL)) .map(AuctionBidRecord::getMemberId) .collect(Collectors.toList()); + Map<Long, String> bidMap = auctionBidRecordList.stream().collect( + Collectors.toMap(AuctionBidRecord::getMemberId, + item -> item.getId().toString())); if (CollUtils.isNotEmpty(successMemberIdList)) { List<Member> successMemberList = memberClient.getMemberListByIds( successMemberIdList, SecurityConstants.INNER).getData(); @@ -1613,7 +1621,7 @@ // 推送websocket消息 sendWebsocketMsg(auctionSalesroomGoods.getId(), successMemberList, goodsSku, 1, - orderIdMap); + orderIdMap, bidMap); // 发送短信通知 List<String> mobileList = successMemberList.stream() .map(Member::getPhone) @@ -1631,7 +1639,7 @@ // 推送websocket消息 sendWebsocketMsg(auctionSalesroomGoods.getId(), failedMemberList, goodsSku, 0, - orderIdMap); + orderIdMap, bidMap); // 发送短信通知 List<String> mobileList = failedMemberList.stream() .map(Member::getPhone) @@ -1678,7 +1686,7 @@ * @param successFlag // 中标状态 1:中标 0:未中标 */ private void sendWebsocketMsg(Long id, List<Member> memberList, GoodsSku goodsSku, - Integer successFlag, Map<Long, String> userIdMap) { + Integer successFlag, Map<Long, String> userIdMap, Map<Long, String> bidMap) { for (Member member : memberList) { Map<String, Object> map = new ConcurrentHashMap<>(); map.put("notification_type", NotificationTypeConstant.AUCTION_POPUP); @@ -1687,6 +1695,7 @@ map.put("goods_name", Objects.nonNull(goodsSku) ? goodsSku.getSkuName() : ""); map.put("success_flag", successFlag); map.put("order_id", successFlag == 1 ? userIdMap.getOrDefault(member.getId(), "") : ""); + map.put("auction_bid_record_id", bidMap.getOrDefault(member.getId(), "0")); String msg = com.alibaba.fastjson2.JSONObject.toJSONString(map); sysUserClient.pushBatch( WebsocketMessageDTO.builder().message(msg).userId(member.getUserId()).build(), @@ -1696,7 +1705,7 @@ } public Long addOrder(Long goodsSkuId, Long memberId, BigDecimal lastBidAmount, - BigDecimal bound) { + BigDecimal bound, Integer dealQuantity) { OrderDTO order = new OrderDTO(); order.setGoodsSkuId(goodsSkuId); order.setOrderTime(LocalDateTime.now()); @@ -1705,8 +1714,8 @@ AuctionSalesroomGoods auctionSalesroomGoods = auctionSalesroomGoodsMapper.selectById( goodsSkuId); - order.setGoodsQuantity(1); - order.setTotalAmount(lastBidAmount); + order.setGoodsQuantity(dealQuantity); + order.setTotalAmount(lastBidAmount.multiply(new BigDecimal(dealQuantity))); order.setAuctionSalesroomId(auctionSalesroomGoods.getAuctionSalesroomId()); R<MemberAddress> memberAddressR = memberClient.getMemberAddressOne(memberId, -- Gitblit v1.7.1