puzhibing
2023-11-06 c36b79ea63fe43aa77ab74508505b727e4976a01
修改bug
6个文件已修改
50 ■■■■■ 已修改文件
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsTotalServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/miniapp/NotifyController.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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 &gt; 1 AND toc.user_id = #{userId} AND tog.goods_id = #{goodsId}
        WHERE toc.del_flag = 0 AND toc.order_status &gt; 1 AND tog.goods_id = #{goodsId} group by toc.user_id) as aa
    </select>
    <select id="getMgtShopAllOrderTotal" resultType="com.ruoyi.order.domain.vo.MgtShopAllOrderTotal">