From 3417384c42ef6e7d99e98cef4e3bb4a016cfedea Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期二, 29 七月 2025 20:42:06 +0800 Subject: [PATCH] 修改bug --- ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java | 12 +++++ ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/LotteryEventMapper.xml | 3 - ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml | 6 ++ ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskMapper.xml | 2 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java | 2 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/model/AddOrderVo.java | 3 + ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java | 70 ++++++++++++++++++++++++---------- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/concole/OrderController.java | 7 ++- 8 files changed, 76 insertions(+), 29 deletions(-) diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/model/AddOrderVo.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/model/AddOrderVo.java index 53594bd..acc7268 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/model/AddOrderVo.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/model/AddOrderVo.java @@ -11,8 +11,11 @@ private Long shopId; private Long userId; + private String goodsId; + private String goodsName; + private Integer goodsNum; private String id; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java index 0baeaeb..af4f1e8 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/lottery/LotteryEventServiceImpl.java @@ -234,6 +234,14 @@ memberGiftRecord.setGiftType(4); memberGiftRecord.setGiftName(userLotteryEvent.getObjectName()); memberGiftRecord.setGiftNumber(userLotteryEvent.getNumber()); + //添加待核销订单 + AddOrderVo orderVo1 = new AddOrderVo(); + orderVo1.setShopId(member.getRelationShopId()); + orderVo1.setUserId(member.getUserId()); + orderVo1.setId(userLotteryEvent.getId()); + orderVo1.setGoodsName(userLotteryEvent.getObjectName()); + orderVo1.setGoodsNum(userLotteryEvent.getNumber()); + remoteOrderService.addOrder(orderVo1); break; case 4: memberGiftRecord.setGiftType(5); @@ -244,7 +252,9 @@ } memberGiftRecord.setPrizeFrom(2); memberGiftRecord.setCreateTime(new Date()); - remoteMemberService.saveMemberGiftRecord(memberGiftRecord); + if(5 != lotteryEventPrize.getPrizeType()){ + remoteMemberService.saveMemberGiftRecord(memberGiftRecord); + } return R.ok(lotteryEventPrize); } } catch (Exception e) { diff --git a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/LotteryEventMapper.xml b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/LotteryEventMapper.xml index dbc8fd1..3ba830a 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/LotteryEventMapper.xml +++ b/ruoyi-modules/ruoyi-goods/src/main/resources/mapper/lottery/LotteryEventMapper.xml @@ -23,8 +23,7 @@ from t_user_lottery_event where user_id = #{userId} group by lottery_event_id) b on a.id = b.lottery_event_id - where a.del_flag = 0 - and a.activity_type in (4, 5)) as aa + where a.del_flag = 0 and a.activity_type in (4, 5) and now() < a.end_time and a.shop_id is null) as aa order by aa.sort, aa.startTime </select> diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/concole/OrderController.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/concole/OrderController.java index 0d2d51b..801b6af 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/concole/OrderController.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/concole/OrderController.java @@ -231,8 +231,11 @@ @ResponseBody @RequestMapping(value = "/addOrder", method = RequestMethod.POST) public R addOrder(@RequestBody AddOrderVo orderVo){ - Goods goods = remoteGoodsService.getGoods(orderVo.getGoodsId()).getData(); - orderService.addOrder(orderVo.getShopId(), orderVo.getUserId(), goods, orderVo.getGoodsNum(), orderVo.getId(), 2); + Goods goods = null; + if(null != orderVo.getGoodsId()){ + goods = remoteGoodsService.getGoods(orderVo.getGoodsId()).getData(); + } + orderService.addOrder(orderVo.getShopId(), orderVo.getUserId(), goods, orderVo.getGoodsName(), orderVo.getGoodsNum(), orderVo.getId(), 2); return R.ok(); } } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java index 77f2643..c530390 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java @@ -89,6 +89,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; +import java.math.MathContext; import java.math.RoundingMode; import java.text.SimpleDateFormat; import java.time.LocalDate; @@ -2319,11 +2320,16 @@ orderGoods.setOrderGoodsId(IdUtils.simpleUUID()); orderGoods.setDelFlag(0); orderGoods.setOrderId(order.getOrderId()); + orderGoods.setGoodsPrice(originAmount); + orderGoods.setGoodsTotalMoney(originAmount); + orderGoods.setGoodsReceivableMoney(originAmount); + orderGoods.setBuyNum(1); ConsumerGoods consumerGoods = new ConsumerGoods(); if(null != timeCard){ - orderGoods.setBuyNum(timeCard.getTimesCount()); - orderGoods.setServiceNum(timeCard.getTimesCount()); + //核销一次加一次 + orderGoods.setBuyNum(1); + orderGoods.setServiceNum(1); consumerGoods.setServiceNum(timeCard.getTimesCount()); consumerGoods.setUsedNum(1); consumerGoods.setUseTime(new Date()); @@ -2429,6 +2435,12 @@ }else{ //扣减剩余次数 OrderGoods orderGoods = orderGoodsService.getOne(new LambdaQueryWrapper<OrderGoods>().eq(OrderGoods::getOrderId, order.getOrderId())); + //核销一次加一次数量 + orderGoods.setBuyNum(orderGoods.getBuyNum() + 1); + if(null != orderGoods.getServiceNum()){ + orderGoods.setServiceNum(orderGoods.getServiceNum() + 1); + } + orderGoodsService.updateById(orderGoods); ConsumerGoods consumerGoods = consumerGoodsService.getOne(new LambdaQueryWrapper<ConsumerGoods>().eq(ConsumerGoods::getOrderId, order.getOrderId()).eq(ConsumerGoods::getOrderGoodsId, orderGoods.getOrderGoodsId())); consumerGoods.setUsedNum(consumerGoods.getUsedNum() + 1); consumerGoods.setUseTime(new Date()); @@ -2588,7 +2600,11 @@ orderGoods.setDelFlag(0); orderGoods.setOrderId(order.getOrderId()); orderGoods.setGoodsId(sku.getSku_id()); - orderGoods.setBuyNum(sku.getTimes_count()); + orderGoods.setBuyNum(1); + orderGoods.setServiceNum(1); + orderGoods.setGoodsPrice(originAmount); + orderGoods.setGoodsTotalMoney(originAmount); + orderGoods.setGoodsReceivableMoney(originAmount); orderGoods.setCycleNumFlag(1); orderGoods.setServiceNum(sku.getTimes_count()); orderGoods.setGoodsType(2); @@ -2695,6 +2711,10 @@ }else{ //扣减剩余次数 OrderGoods orderGoods = orderGoodsService.getOne(new LambdaQueryWrapper<OrderGoods>().eq(OrderGoods::getOrderId, order.getOrderId())); + orderGoods.setBuyNum(orderGoods.getBuyNum() + 1); + orderGoods.setServiceNum(orderGoods.getServiceNum() + 1); + orderGoodsService.updateById(orderGoods); + ConsumerGoods consumerGoods = consumerGoodsService.getOne(new LambdaQueryWrapper<ConsumerGoods>().eq(ConsumerGoods::getOrderId, order.getOrderId()).eq(ConsumerGoods::getOrderGoodsId, orderGoods.getOrderGoodsId())); consumerGoods.setUsedNum(consumerGoods.getUsedNum() + 1); consumerGoods.setUseTime(new Date()); @@ -3202,7 +3222,7 @@ if (memberGiftRecord.getPrizeFrom() == 2) { Order one = this.getOne(new QueryWrapper<Order>().eq("activity_id", memberGiftRecord.getGiftId()).eq("order_from", 4)); if(null == one){ - addOrder(memberGiftRecord.getShopId(), memberGiftRecord.getUserId(), goods, memberGiftRecord.getGoodsNumber(), memberGiftRecord.getGiftId(), 3); + addOrder(memberGiftRecord.getShopId(), memberGiftRecord.getUserId(), goods, null, memberGiftRecord.getGoodsNumber(), memberGiftRecord.getGiftId(), 3); }else{ one.setOrderStatus(3); this.updateById(one); @@ -3251,7 +3271,7 @@ * @param goods * @param goodsNum */ - public void addOrder(Long shopId, Long userId, Goods goods, Integer goodsNum, String giftId, Integer status) { + public void addOrder(Long shopId, Long userId, Goods goods, String goodsName, Integer goodsNum, String giftId, Integer status) { Order order = new Order(); order.setOrderId(IdUtils.simpleUUID()); order.setDelFlag(0); @@ -3260,7 +3280,7 @@ order.setOrderFrom(4); order.setShopId(shopId); order.setUserId(userId); - order.setOrderMoney(goods.getSalesPrice()); + order.setOrderMoney(null == goods ? BigDecimal.ZERO : goods.getSalesPrice()); order.setCouponMoney(BigDecimal.ZERO); order.setDiscountMoney(BigDecimal.ZERO); order.setReceivableMoney(BigDecimal.ZERO); @@ -3280,22 +3300,30 @@ orderGoods.setOrderGoodsId(IdUtils.simpleUUID()); orderGoods.setDelFlag(0); orderGoods.setOrderId(order.getOrderId()); - orderGoods.setGoodsId(goods.getGoodsId()); orderGoods.setBuyNum(goodsNum); - orderGoods.setGoodsPrice(goods.getSalesPrice()); - orderGoods.setGoodsDeposit(goods.getSubscription()); - orderGoods.setGoodsTotalMoney(goods.getSalesPrice().multiply(new BigDecimal(goodsNum))); - orderGoods.setGoodsReceivableMoney(BigDecimal.ZERO); - orderGoods.setCycleNumFlag(goods.getCycleNumFlag()); - orderGoods.setServiceNum(goods.getServiceNum()); - orderGoods.setGoodsType(goods.getGoodsType()); - orderGoods.setGoodsName(goods.getGoodsName()); - GoodsFile goodsFile = remoteGoodsService.getGoodsFile(goods.getGoodsId()).getData(); - if (null != goodsFile) { - orderGoods.setGoodsPicture(goodsFile.getFileUrl()); + if(null != goods){ + orderGoods.setGoodsId(goods.getGoodsId()); + orderGoods.setGoodsPrice(goods.getSalesPrice()); + orderGoods.setGoodsDeposit(goods.getSubscription()); + orderGoods.setGoodsTotalMoney(goods.getSalesPrice().multiply(new BigDecimal(goodsNum))); + orderGoods.setGoodsReceivableMoney(BigDecimal.ZERO); + orderGoods.setCycleNumFlag(goods.getCycleNumFlag()); + orderGoods.setServiceNum(goods.getServiceNum()); + orderGoods.setGoodsType(goods.getGoodsType()); + orderGoods.setGoodsName(goods.getGoodsName()); + GoodsFile goodsFile = remoteGoodsService.getGoodsFile(goods.getGoodsId()).getData(); + if (null != goodsFile) { + orderGoods.setGoodsPicture(goodsFile.getFileUrl()); + } + orderGoods.setGoodsIntroduction(goods.getGoodsIntroduction()); + orderGoods.setGoodsTag(goods.getGoodsTags()); + }else{ + orderGoods.setGoodsName(goodsName); + orderGoods.setBuyNum(1); + orderGoods.setGoodsPrice(BigDecimal.ZERO); + orderGoods.setGoodsTotalMoney(BigDecimal.ZERO); + orderGoods.setGoodsReceivableMoney(BigDecimal.ZERO); } - orderGoods.setGoodsIntroduction(goods.getGoodsIntroduction()); - orderGoods.setGoodsTag(goods.getGoodsTags()); orderGoodsService.save(orderGoods); } @@ -4404,7 +4432,7 @@ */ private List<MgtMapBigTotalVo> bigListRemoveNull(List<MgtMapBigTotalVo> MgtMapIntTotalVos) { for (int i = 0; i < MgtMapIntTotalVos.size(); i++) { - if(MgtMapIntTotalVos.get(i).getMapKey().isEmpty()){ + if(null != MgtMapIntTotalVos.get(i).getMapKey() && MgtMapIntTotalVos.get(i).getMapKey().isEmpty()){ MgtMapIntTotalVos.remove(i); } } diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java index 72edbc3..a84425e 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java @@ -681,5 +681,5 @@ * @param goodsNum * @param giftId */ - void addOrder(Long shopId, Long userId, Goods goods, Integer goodsNum, String giftId, Integer status); + void addOrder(Long shopId, Long userId, Goods goods, String goodsName, Integer goodsNum, String giftId, Integer status); } diff --git a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml index 1246efe..7bf51be 100644 --- a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml +++ b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml @@ -1639,7 +1639,7 @@ <select id="getMerOrderTotalOrderFrom" resultType="com.ruoyi.order.domain.vo.MerOrderTotalVo"> SELECT COUNT(order_id) orderTotal, - IFNULL(SUM(CASE WHEN order_from = 1 THEN 1 ELSE 0 END),0) onlineTotal, + IFNULL(SUM(CASE WHEN order_from in (1,4,5,6,7) THEN 1 ELSE 0 END),0) onlineTotal, IFNULL(SUM(CASE WHEN order_from = 3 THEN 1 ELSE 0 END),0) offlineTotal, IFNULL(SUM(CASE WHEN order_from = 2 THEN 1 ELSE 0 END),0) activityTotal, IFNULL(SUM(CASE WHEN null = change_receivable_money or change_receivable_money = 0 THEN receivable_money ELSE change_receivable_money END),0) orderMoney, @@ -1750,6 +1750,10 @@ WHEN 1 THEN "商城订单" WHEN 2 THEN "秒杀订单" WHEN 3 THEN "线下订单" + WHEN 4 THEN "抽奖" + WHEN 5 THEN "美团" + WHEN 6 THEN "抖音" + WHEN 7 THEN "快手" END mapKey, IFNULL(SUM(tog.goods_receivable_money),0) mapValue FROM t_order toc diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskMapper.xml index 422081c..d66521a 100644 --- a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskMapper.xml +++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/task/MemberTaskMapper.xml @@ -92,7 +92,7 @@ </select> - <select id="getMemberIngTotal" resultType="list"> + <select id="getMemberIngTotal" resultType="int"> SELECT user_id FROM t_member_task WHERE del_flag = 0 AND task_status = 1 AND shop_id = #{shopId} AND task_date = CURRENT_DATE() -- Gitblit v1.7.1