ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java
@@ -337,12 +337,14 @@ @Override public void deleteMgtActivity(String activityId){ Activity activity = this.getById(activityId); if (activity.getActivityStatus() != 0) { throw new ServiceException(AppErrorConstant.ACTIVITY_ING_DELETE); } // if (activity.getActivityStatus() != 0) { // throw new ServiceException(AppErrorConstant.ACTIVITY_ING_DELETE); // } activity.setDelFlag(1); activity.setActivityStatus(-1); this.saveOrUpdate(activity); //活动结束 endActivity(activityId); } /** ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsTotalServiceImpl.java
@@ -32,7 +32,7 @@ */ @Override public void changeGoodsTotal(List<GoodsTotalChangeDto> goodsTotalChangeDtoList){ log.debug("商品统计变动"+goodsTotalChangeDtoList.toString()); log.error("商品统计变动"+goodsTotalChangeDtoList.toString()); if (goodsTotalChangeDtoList != null && !goodsTotalChangeDtoList.isEmpty()) { // 创建一个空的GoodsTotal对象 GoodsTotal goodsTotal; @@ -49,13 +49,13 @@ // 更新GoodsTotal对象的相关属性 goodsTotal.setBuyCount(goodsTotal.getBuyCount() + 1); goodsTotal.setBuyNumCount(goodsTotal.getBuyNumCount() + goodsTotalChangeDto.getChangeNum()); goodsTotal.setBuyUserCount(goodsTotal.getBuyUserCount() + goodsTotalChangeDto.getPersonNum()); goodsTotal.setBuyUserCount(goodsTotalChangeDto.getPersonNum()); goodsTotal.setBuyMoneyTotal(goodsTotal.getBuyMoneyTotal().add(goodsTotalChangeDto.getMoney())); } else { // 更新GoodsTotal对象的相关属性 goodsTotal.setBuyCount(goodsTotal.getBuyCount() - 1); goodsTotal.setBuyNumCount(goodsTotal.getBuyNumCount() - goodsTotalChangeDto.getChangeNum()); goodsTotal.setBuyUserCount(goodsTotal.getBuyUserCount() - goodsTotalChangeDto.getPersonNum()); goodsTotal.setBuyUserCount(goodsTotalChangeDto.getPersonNum()); goodsTotal.setBuyMoneyTotal(goodsTotal.getBuyMoneyTotal().subtract(goodsTotalChangeDto.getMoney())); } // 将更新后的GoodsTotal对象添加到列表中 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/NotifyController.java
@@ -14,6 +14,7 @@ import com.google.gson.GsonBuilder; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.controller.BaseController; import com.ruoyi.common.redis.service.RedisService; import com.ruoyi.order.domain.dto.WechatPaymentRefundDto; import com.ruoyi.order.domain.dto.WeixinPaymentNotifyDto; import com.ruoyi.order.domain.pojo.account.OrderRefund; @@ -45,6 +46,7 @@ import java.util.Enumeration; import java.util.Map; import java.util.Objects; import java.util.concurrent.TimeUnit; /** * @program: ruoyi @@ -75,6 +77,9 @@ @Resource private OrderRefundService orderRefundService; @Resource private RedisService redisService; @PostMapping(value = "/payNotify") @ApiOperation(value = "微信支付/退款通知") @@ -240,6 +245,14 @@ if("S".equals(transStat)){ PartnerTransactionsResult transaction = new PartnerTransactionsResult(); transaction.setOutTradeNo(data.getReqSeqId()); //防止回调频繁导致时间处理异常 Object cacheObject = redisService.getCacheObject(data.getReqSeqId()); if(null == cacheObject){ redisService.setCacheObject(data.getReqSeqId(), "", 10L, TimeUnit.SECONDS); }else{ return; } //开始处理业务数据 orderService.payBack(transaction, data.getFeeFlag() == 1 ? BigDecimal.ZERO : new BigDecimal(data.getFeeAmount())); ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java
@@ -662,11 +662,10 @@ * @description 获取用户商品购买数量 * @author jqs * @date 2023/7/23 18:17 * @param userId * @param goodsId * @return Integer */ Integer countUserBuyGoodsNum(@Param("userId")Long userId, @Param("goodsId")String goodsId); Integer countUserBuyGoodsNum(@Param("goodsId")String goodsId); /** ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -5181,12 +5181,8 @@ goodsTotalChangeDto.setChangeType(1); goodsTotalChangeDto.setChangeNum(orderGoods.getBuyNum()); goodsTotalChangeDto.setMoney(orderGoods.getGoodsReceivableMoney()); Integer bugGoodsNum = orderMapper.countUserBuyGoodsNum(order.getUserId(), orderGoods.getGoodsId()); if (bugGoodsNum == null || bugGoodsNum < 1) { goodsTotalChangeDto.setPersonNum(1); }else{ goodsTotalChangeDto.setPersonNum(0); } Integer bugGoodsNum = orderMapper.countUserBuyGoodsNum(orderGoods.getGoodsId()); goodsTotalChangeDto.setPersonNum(bugGoodsNum); goodsTotalChangeDtoList.add(goodsTotalChangeDto); } //更新商品统计 @@ -5392,12 +5388,8 @@ goodsTotalChangeDto.setChangeType(2); goodsTotalChangeDto.setChangeNum(orderGoods.getBuyNum()); goodsTotalChangeDto.setMoney(orderGoods.getGoodsReceivableMoney()); Integer bugGoodsNum = orderMapper.countUserBuyGoodsNum(order.getUserId(), orderGoods.getGoodsId()); if (bugGoodsNum == null || bugGoodsNum <= orderGoods.getBuyNum()) { goodsTotalChangeDto.setPersonNum(1); }else{ goodsTotalChangeDto.setPersonNum(0); } Integer bugGoodsNum = orderMapper.countUserBuyGoodsNum(orderGoods.getGoodsId()); goodsTotalChangeDto.setPersonNum(bugGoodsNum); goodsTotalChangeDtoList.add(goodsTotalChangeDto); } remoteGoodsService.changeGoodsTotal(goodsTotalChangeDtoList); ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml
@@ -2037,10 +2037,10 @@ </select> <select id="countUserBuyGoodsNum" resultType="java.lang.Integer"> SELECT SUM(tog.buy_num) select count(1) from (SELECT toc.user_id FROM t_order toc INNER JOIN t_order_goods tog ON tog.order_id = toc.order_id WHERE toc.del_flag = 0 AND toc.order_status > 1 AND toc.user_id = #{userId} AND tog.goods_id = #{goodsId} WHERE toc.del_flag = 0 AND toc.order_status > 1 AND tog.goods_id = #{goodsId} group by toc.user_id) as aa </select> <select id="getMgtShopAllOrderTotal" resultType="com.ruoyi.order.domain.vo.MgtShopAllOrderTotal">