rentaiming
2024-07-03 c305c2c555deda505af789ab3a7471996379c525
修改bug
21个文件已修改
318 ■■■■ 已修改文件
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/HomeGoodsSkuDTO.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/HomeGoodsSeckillInfoVO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/GoodsSkuFactory.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/MemberFallbackFactory.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/GoodsSkuClient.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/MemberClient.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/pom.xml 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/forepart/GoodsSeckillAppointmentController.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsSeckillController.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsSkuController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSeckillAppointment.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillAppointmentService.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillAppointmentServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/MemberGoodsCollectionServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/inner/MemberAddressController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java 108 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/PaylogServiceImpl.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/HomeGoodsSkuDTO.java
@@ -36,5 +36,8 @@
    @ApiModelProperty(value = "会员id")
    private Long memberId;
    @ApiModelProperty(value = "提交标识")
    private String formId;
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/HomeGoodsSeckillInfoVO.java
@@ -109,4 +109,8 @@
    @ApiModelProperty(value = "是收藏 1未收藏,2收藏")
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private Integer isCollection;
    @ApiModelProperty(value = "是预约 1未预约,2预约")
    @JsonInclude(JsonInclude.Include.ALWAYS)
    private Integer isAppointment;
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/GoodsSkuFactory.java
@@ -67,6 +67,16 @@
            }
            @Override
            public R<Boolean> updGoods(GoodsSku goodsSku, String source) {
                return R.fail("更新商品失败:" + cause.getMessage());
            }
            @Override
            public R<Boolean> updGoodsSeckill1(GoodsSku goodsSku, String source) {
                return R.fail("更新商品失败:" + cause.getMessage());
            }
            @Override
            public R<?> startSeckill(Long seckillId, String source) {
                return R.fail("开始秒杀失败:" + cause.getMessage());
            }
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/MemberFallbackFactory.java
@@ -52,8 +52,9 @@
                return R.fail("添加用户积分失败:" + cause.getMessage());
            }
            @Override
            public R<?> updMembeOne(updMembeOneDTO dMembeOneDTO) {
            public R<?> updMembeOne(updMembeOneDTO dMembeOneDTO, String source) {
                return R.fail("修改用户等级失败:" + cause.getMessage());
            }
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/GoodsSkuClient.java
@@ -55,6 +55,15 @@
    @PostMapping("/goods-sku/updateGoodsSkuOne")
    R<Boolean> updateGoodsSkuOne(@RequestBody GoodsSku goodsSku,
            @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
    @PutMapping("/goods-sku/updGoods")
    R<Boolean> updGoods(@RequestBody GoodsSku goodsSku,
                                 @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
    @PutMapping("/goods-seckill/updGoodsSeckill1")
    R<Boolean> updGoodsSeckill1(@RequestBody GoodsSku goodsSku,
                        @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
    @GetMapping("/goods-seckill/start/{seckillId}")
    R<?> startSeckill(@PathVariable("seckillId") Long seckillId,
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/MemberClient.java
@@ -41,7 +41,7 @@
    R<?> addMemberPoints(@RequestBody MemberPointsDTO memberPointsDTO);
    @PostMapping("/member/updMembeOne")
    R<?> updMembeOne(@RequestBody updMembeOneDTO dMembeOneDTO);
    R<?> updMembeOne(@RequestBody updMembeOneDTO dMembeOneDTO,@RequestHeader(SecurityConstants.FROM_SOURCE) String source);
    @PostMapping("/member/list-by-condition")
    R<List<Member>> getMemberListByCondition(@RequestBody MemberDTO memberDTO,
ruoyi-modules/ruoyi-auction/src/main/java/com/ruoyi/auction/service/impl/AuctionGoodsServiceImpl.java
@@ -453,6 +453,7 @@
        auctionGoodsinfoVO.setUnit(goodsSkuOne.getUnit());
        auctionGoodsinfoVO.setBond(byId.getBond());
        auctionGoodsinfoVO.setDescription(goodsSkuOne.getDescription());
        auctionGoodsinfoVO.setExplain(byId.getDescription());
        auctionGoodsinfoVO.setYears(goodsSkuOne.getYears());
        GoodsBrand data = goodsSkuClient.getBrandOne(goodsSkuOne.getBrandId(), SecurityConstants.INNER).getData();
        GoodsCategory data1 = goodsSkuClient.getCategoryOne(goodsSkuOne.getCategoryId(), SecurityConstants.INNER).getData();
@@ -557,8 +558,8 @@
        }
        CustomConfig returnAddressUserName = sysUserClient.getconfig("MALL_ORDER_DESCRIPTION").getData();
        auctionGoodsinfoVO.setExplain(returnAddressUserName.getConfigValue());
        /*CustomConfig returnAddressUserName = sysUserClient.getconfig("MALL_ORDER_DESCRIPTION").getData();
        auctionGoodsinfoVO.setExplain(returnAddressUserName.getConfigValue());*/
        List<getHomeGoodsSkuXxiVO> homeGoodsSkuXxiVOS=new ArrayList<>();
ruoyi-modules/ruoyi-goods/pom.xml
@@ -116,6 +116,16 @@
      <groupId>com.ruoyi</groupId>
      <artifactId>ruoyi-common-seata</artifactId>
    </dependency>
    <dependency>
      <groupId>com.github.binarywang</groupId>
      <artifactId>weixin-java-miniapp</artifactId>
      <version>3.4.0</version>
    </dependency>
  </dependencies>
  <build>
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/forepart/GoodsSeckillAppointmentController.java
@@ -1,8 +1,19 @@
package com.ruoyi.goods.controller.forepart;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.goods.service.IGoodsSeckillAppointmentService;
import com.ruoyi.goods.service.impl.GoodsSeckillAppointmentServiceImpl;
import com.ruoyi.system.api.domain.dto.HomeGoodsSkuDTO;
import com.ruoyi.system.api.domain.vo.getHomeGoodsSkuXxiVO;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
/**
 * <p>
@@ -16,4 +27,14 @@
@RequestMapping("/goods-seckill-appointment")
public class GoodsSeckillAppointmentController {
    @Resource
    private IGoodsSeckillAppointmentService goodsSeckillAppointmentService;
    @PostMapping("/goodsSeckillAppointment")
    @ApiOperation(value = "用户端-秒杀预约")
    public R goodsSeckillAppointment(@RequestBody HomeGoodsSkuDTO homeGoodsSkuDTO) {
        goodsSeckillAppointmentService.goodsSeckillAppointment(homeGoodsSkuDTO);
        return R.ok();
    }
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsSeckillController.java
@@ -2,10 +2,12 @@
import com.fasterxml.jackson.core.JsonProcessingException;
import com.ruoyi.common.core.constant.SecurityConstants;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.security.annotation.InnerAuth;
import com.ruoyi.goods.service.IGoodsSeckillService;
import com.ruoyi.system.api.domain.GoodsSeckill;
import com.ruoyi.system.api.domain.GoodsSku;
import com.ruoyi.system.api.domain.dto.GoodsStockUpdDTO;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@@ -45,6 +47,15 @@
        goodsSeckillService.updateById(GoodsSeckillOne);
        return R.ok();
    }
    @InnerAuth
    @PutMapping("/updGoodsSeckill1")
    R<Boolean> updGoodsSeckill1(@RequestBody GoodsSku goodsSku){
        GoodsSeckill GoodsSeckillOne = goodsSeckillService.getById(goodsSku.getId());
        Integer m= GoodsSeckillOne.getSoldQuantity()+goodsSku.getSoldQuantity();
        GoodsSeckillOne.setSoldQuantity(m);
        goodsSeckillService.updateById(GoodsSeckillOne);
        return R.ok();
    }
    /**
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/inner/GoodsSkuController.java
@@ -1,6 +1,7 @@
package com.ruoyi.goods.controller.inner;
import com.ruoyi.common.core.constant.SecurityConstants;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.security.annotation.InnerAuth;
import com.ruoyi.goods.service.IGoodsSkuService;
@@ -9,14 +10,8 @@
import java.util.Collection;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
/**
 * <p>
@@ -86,6 +81,15 @@
        iGoodsSkuService.updGoodsStock1(goodsStockUpdDTOS);
        return R.ok();
    }
    @InnerAuth
    @PutMapping("/updGoods")
    R<Boolean> updGoods(@RequestBody GoodsSku goodsSku){
        GoodsSku goodsSkuOne=iGoodsSkuService.getById(goodsSku.getId());
        Integer h=goodsSkuOne.getSoldQuantity()+goodsSku.getSoldQuantity();
        goodsSkuOne.setSoldQuantity(h);
        iGoodsSkuService.updateById(goodsSkuOne);
        return R.ok();
    }
    /**
     * 根据商品id集合查询商品
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/GoodsSeckillAppointment.java
@@ -35,6 +35,9 @@
    @ApiModelProperty(value = "会员id")
    private Long memberId;
    @ApiModelProperty(value = "提交标识")
    private String formId;
    @ApiModelProperty(value = "创建者")
    @TableField(value = "create_by", fill = FieldFill.INSERT)
    private String createBy;
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/IGoodsSeckillAppointmentService.java
@@ -1,7 +1,10 @@
package com.ruoyi.goods.service;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.goods.domain.GoodsSeckillAppointment;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.system.api.domain.dto.HomeGoodsSkuDTO;
import org.springframework.web.bind.annotation.RequestBody;
/**
 * <p>
@@ -13,4 +16,6 @@
 */
public interface IGoodsSeckillAppointmentService extends IService<GoodsSeckillAppointment> {
    R goodsSeckillAppointment(@RequestBody HomeGoodsSkuDTO homeGoodsSkuDTO);
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillAppointmentServiceImpl.java
@@ -1,9 +1,11 @@
package com.ruoyi.goods.service.impl;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.goods.domain.GoodsSeckillAppointment;
import com.ruoyi.goods.mapper.GoodsSeckillAppointmentMapper;
import com.ruoyi.goods.service.IGoodsSeckillAppointmentService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.system.api.domain.dto.HomeGoodsSkuDTO;
import org.springframework.stereotype.Service;
/**
@@ -17,4 +19,12 @@
@Service
public class GoodsSeckillAppointmentServiceImpl extends ServiceImpl<GoodsSeckillAppointmentMapper, GoodsSeckillAppointment> implements IGoodsSeckillAppointmentService {
    @Override
    public R goodsSeckillAppointment(HomeGoodsSkuDTO homeGoodsSkuDTO) {
        GoodsSeckillAppointment goodsSeckillAppointment=new GoodsSeckillAppointment();
        goodsSeckillAppointment.setGoodsSeckillId(homeGoodsSkuDTO.getGoodsSkuId());
        goodsSeckillAppointment.setMemberId(homeGoodsSkuDTO.getMemberId());
        this.save(goodsSeckillAppointment);
        return R.ok();
    }
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/GoodsSeckillServiceImpl.java
@@ -22,8 +22,10 @@
import com.ruoyi.goods.controller.management.dto.GoodsSeckillQuery;
import com.ruoyi.goods.controller.management.dto.GoodsSeckillUpd;
import com.ruoyi.goods.controller.management.vo.GoodsSeckillVO;
import com.ruoyi.goods.domain.GoodsSeckillAppointment;
import com.ruoyi.goods.domain.MemberGoodsCollection;
import com.ruoyi.goods.mapper.GoodsSeckillMapper;
import com.ruoyi.goods.service.IGoodsSeckillAppointmentService;
import com.ruoyi.goods.service.IGoodsSeckillService;
import com.ruoyi.goods.service.IGoodsSkuService;
import com.ruoyi.goods.service.IMemberGoodsCollectionService;
@@ -84,6 +86,10 @@
    @Resource
    private IMemberGoodsCollectionService iMemberGoodsCollectionService;
    @Resource
    private IGoodsSeckillAppointmentService iGoodsSeckillAppointmentService;
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void addGoodsSeckill(GoodsSeckillDTO dto) {
@@ -353,7 +359,10 @@
        in.add(0);
        in.add(1);
        wrapper4.in(GoodsSeckill::getStartStatus,in);
        if(goodsSkuIdList.size()>0){
        wrapper4.in(GoodsSeckill::getGoodsSkuId,goodsSkuIdList);
        }
        wrapper4.orderByAsc(GoodsSeckill::getSortNum);
        Page<GoodsSeckill> page2 = this.page(page, wrapper4);
@@ -421,6 +430,18 @@
        }else{
            homeGoodsSeckillInfoVO.setIsCollection(1);
        }
        LambdaQueryWrapper<GoodsSeckillAppointment> wrapper4= Wrappers.lambdaQuery();
        wrapper4.eq(GoodsSeckillAppointment::getDelFlag,0);
        wrapper4.eq(GoodsSeckillAppointment::getMemberId,homeGoodsSkuDTO.getMemberId());
        wrapper4.eq(GoodsSeckillAppointment::getGoodsSeckillId,homeGoodsSkuDTO.getGoodsSkuId());
        List<GoodsSeckillAppointment> list2 = iGoodsSeckillAppointmentService.list(wrapper4);
        if (list2.size()>0){
            homeGoodsSeckillInfoVO.setIsAppointment(2);
        }else{
            homeGoodsSeckillInfoVO.setIsAppointment(1);
        }
        return homeGoodsSeckillInfoVO;
    }
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/MemberGoodsCollectionServiceImpl.java
@@ -63,7 +63,9 @@
        LambdaQueryWrapper< MemberGoodsCollection> wrapper= Wrappers.lambdaQuery();
        wrapper.eq(MemberGoodsCollection::getMemberId,auctionCollectionDTO.getMemberId());
        wrapper.eq(MemberGoodsCollection::getTargetId,auctionCollectionDTO.getGoodsSkuId());
        if (auctionCollectionDTO.getType()!=null){
        wrapper.eq(MemberGoodsCollection::getType,auctionCollectionDTO.getType());
        }
        if (auctionCollectionDTO.getState()==1){
            List<MemberGoodsCollection> list = this.list(wrapper);
            if (list.size()==0){
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/inner/MemberAddressController.java
@@ -33,7 +33,7 @@
    @PostMapping("/getMemberAddressOne")
    @ResponseBody
    @InnerAuth
    public R<MemberAddress> getMemberAddressOne(@RequestBody Integer userId) {
    public R<MemberAddress> getMemberAddressOne(@RequestBody Long userId) {
        LambdaQueryWrapper<MemberAddress> wrapper2= Wrappers.lambdaQuery();
        wrapper2.eq(MemberAddress::getMemberId,userId);
        wrapper2.eq(MemberAddress::getDelFlag,0);
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/MemberServiceImpl.java
@@ -564,9 +564,13 @@
                if (cumulative.compareTo(byId.getMoney()) <= 0 && cumulative1.compareTo(byId.getMoney()) >= 0) {
                    byId.setLevel(list.get(i).getLevel());
                }else{
                    if (cumulative1.compareTo(byId.getMoney())<=0){
                    byId.setLevel(list.get(i).getLevel());
                }
                }
            }else {
                if (i!=0&&i!=list.size()-1){
                BigDecimal cumulative = list.get(i - 1).getCumulativeConsumption();
                BigDecimal cumulative1 = list.get(i).getCumulativeConsumption();
                if (cumulative.compareTo(byId.getMoney()) <= 0 && cumulative1.compareTo(byId.getMoney()) >= 0) {
@@ -577,6 +581,8 @@
        }
    }
        this.updateById(byId);
    }
    /**
     * 获取用户详情
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java
@@ -291,7 +291,7 @@
            String goodsLock = "goods_lock_" + CacheConstants.SECKILL_GOODS + data.getId();
            RLock redissonLock = redissonClient.getLock(goodsLock);
            Integer surpNum = 0;
            try {
        /*    try {
                redissonLock.lock(30, TimeUnit.SECONDS);
                surpNum = redisService.getCacheObject(CacheConstants.SECKILL_GOODS + data.getId());
                if (surpNum == null || surpNum < memberOrderDTO.getGoodsQuantity()) {
@@ -300,10 +300,26 @@
            }catch (Exception e){
                throw new ServiceException("reids 出错");
            }*/
            MemberOrderDTO memberOrderDTO1=new MemberOrderDTO();
            memberOrderDTO1.setMemberId(order.getMemberId());
            memberOrderDTO1.setGoodsSkuId(memberOrderDTO.getGoodsSkuId());
            Integer num=baseMapper.getSeckillMembers1(memberOrderDTO1);
            Integer num1=0;
            if (num!=null){
                num1 =num+1;
            }else{
                num1=order.getGoodsQuantity();
            }
            order.setOrderFrom(OrderFromEnum.SNAP_ORDERS);
            GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(data.getGoodsSkuId(), SecurityConstants.INNER).getData();
            if (data.getLimitNumber()<num1) {
                throw new ServiceException("对不起,大于商品购买数");
            }
            order.setOrderFrom(OrderFromEnum.SNAP_ORDERS);
            memberOrderVO.setGoodsSkuId(memberOrderDTO.getGoodsSkuId());
            memberOrderVO.setPrice(data.getSeckillPrice());
            memberOrderVO.setSjPrice(goodsSku.getPrice());
@@ -312,12 +328,12 @@
            memberOrderVO.setYouhiPrice(data.getSeckillPrice());
            pice=data.getSeckillPrice();
            if (data.getSeckillStock()<memberOrderDTO.getGoodsQuantity()){
            if (data.getSeckillStock()<1){
                throw new ServiceException("对不起,购买数大于库存");
            }else{
                GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO();
                goodsStockUpdDTO.setGoodsSkuId(goodsSku.getId());
                goodsStockUpdDTO.setAuctionStock(data.getSeckillStock()-memberOrderDTO.getGoodsQuantity());
                goodsStockUpdDTO.setGoodsSkuId(data.getId());
                goodsStockUpdDTO.setAuctionStock(data.getSeckillStock()-1);
                goodsSkuClient.updGoodsSeckill(goodsStockUpdDTO,SecurityConstants.INNER);
            }
@@ -421,21 +437,20 @@
        }if (memberOrderDTO.getGoodsQuantity()!=null){
            if (order.getOrderFrom().getCode()==1){
                GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData();
                if (goodsSku.getStock()<memberOrderDTO.getGoodsQuantity()){
                    throw new ServiceException("对不起,购买数大于库存");
                }else{
                    GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO();
                    goodsStockUpdDTO.setGoodsSkuId(goodsSku.getId());
                    goodsStockUpdDTO.setAuctionStock(goodsSku.getStock()+order.getGoodsQuantity());
                    goodsSkuClient.updGoodsStock1(goodsStockUpdDTO,
                            SecurityConstants.INNER);
                    GoodsStockUpdDTO goodsStockUpdDTO1 = new GoodsStockUpdDTO();
                    goodsStockUpdDTO1.setGoodsSkuId(goodsSku.getId());
                    goodsStockUpdDTO1.setAuctionStock(goodsSku.getStock()-memberOrderDTO.getGoodsQuantity());
                if (goodsSku.getStock()+order.getGoodsQuantity()<memberOrderDTO.getGoodsQuantity()){
                    throw new ServiceException("对不起,购买数大于库存");
                }
                     Integer m= goodsSku.getStock()+order.getGoodsQuantity();
                    goodsStockUpdDTO.setAuctionStock(m-memberOrderDTO.getGoodsQuantity());
                    goodsSkuClient.updGoodsStock1(goodsStockUpdDTO,
                            SecurityConstants.INNER);
                    order.setTotalAmount(goodsSku.getPrice().multiply(new BigDecimal(memberOrderDTO.getGoodsQuantity())));
                    order.setGoodsQuantity(memberOrderDTO.getGoodsQuantity());
                    memberOrderVO.setGoodsSkuId(memberOrderDTO.getGoodsSkuId());
@@ -444,7 +459,7 @@
                    memberOrderVO.setSkuName(goodsSku.getSkuName());
                }
            }
            if (order.getOrderFrom().getCode()==2){
                MemberOrderDTO memberOrderDTO1=new MemberOrderDTO();
                memberOrderDTO1.setMemberId(order.getMemberId());
@@ -459,22 +474,23 @@
                GoodsSeckill data = goodsSkuClient.getGoodsSeckillOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData();
                GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(data.getGoodsSkuId(), SecurityConstants.INNER).getData();
                if (data.getLimitNumber()<=num1){
                if (data.getLimitNumber()<num1){
                    throw new ServiceException("对不起,大于商品购买数");
                }else{
                    if (data.getSeckillStock()<memberOrderDTO.getGoodsQuantity()){
                        throw new ServiceException("对不起,购买数大于库存");
                    }else{
                        order.setGoodsQuantity(memberOrderDTO.getGoodsQuantity());
                    GoodsStockUpdDTO goodsStockUpdDTO = new GoodsStockUpdDTO();
                    goodsStockUpdDTO.setGoodsSkuId(data.getId());
                    goodsStockUpdDTO.setAuctionStock(data.getSeckillStock()+order.getGoodsQuantity());
                    goodsSkuClient.updGoodsSeckill(goodsStockUpdDTO,SecurityConstants.INNER);
                    if (data.getSeckillStock()+order.getGoodsQuantity()<memberOrderDTO.getGoodsQuantity()){
                        throw new ServiceException("对不起,购买数大于库存");
                    }
                    Integer m=data.getSeckillStock()+order.getGoodsQuantity();
                    GoodsStockUpdDTO goodsStockUpdDTO1 = new GoodsStockUpdDTO();
                    goodsStockUpdDTO1.setGoodsSkuId(data.getId());
                    goodsStockUpdDTO1.setAuctionStock(data.getSeckillStock()-memberOrderDTO.getGoodsQuantity());
                    goodsSkuClient.updGoodsSeckill(goodsStockUpdDTO,SecurityConstants.INNER);
                    goodsStockUpdDTO1.setAuctionStock(m-memberOrderDTO.getGoodsQuantity());
                    goodsSkuClient.updGoodsSeckill(goodsStockUpdDTO1,SecurityConstants.INNER);
                        order.setTotalAmount(data.getSeckillPrice().multiply(new BigDecimal(memberOrderDTO.getGoodsQuantity())));
                        order.setGoodsQuantity(memberOrderDTO.getGoodsQuantity());
@@ -483,7 +499,7 @@
                        order.setCoverPic(goodsSku.getCoverPic());
                        order.setSjPrice(goodsSku.getPrice());
                }
            }
                memberOrderVO.setGoodsSkuId(memberOrderDTO.getGoodsSkuId());
                memberOrderVO.setPrice(goodsSku.getPrice());
@@ -652,6 +668,20 @@
        PageDTO<MemberOrderListVO> memberOrderListVOPageDTO = PageDTO.of(page1, MemberOrderListVO.class);
        List<MemberOrderListVO> list = memberOrderListVOPageDTO.getList();
        for (MemberOrderListVO MemberOrderList:list){
            if (MemberOrderList.getOrderStatus().getCode()==1){
                if (MemberOrderList.getOrderFrom().getCode()==1||MemberOrderList.getOrderFrom().getCode()==2||MemberOrderList.getOrderFrom().getCode()==3){
                    LocalDateTime localDateTime = MemberOrderList.getOrderTime().plusMinutes(30);
                    if (LocalDateTime.now().isAfter(localDateTime)) {
                        // dateTime1 在 dateTime2 之后
                        MemberOrderList.setOrderStatus(OrderStatusEnum.CANCELED);
                        Order order = this.getOrder(MemberOrderList.getId());
                        order.setOrderStatus(OrderStatusEnum.CANCELED);
                        this.updateById(order);
                    }
                }
            }
            OrderReturnRequest orderReturnRequest = orderReturnRequestService.getOne(
                    Wrappers.lambdaQuery(OrderReturnRequest.class)
                            .eq(OrderReturnRequest::getOrderId,
@@ -730,11 +760,45 @@
            order.setOrderStatus(OrderStatusEnum.CANCELED);
            order.setCancelTime(LocalDateTime.now());
            baseMapper.updateById(order);
            if(order.getOrderNo().contains("SP")){
                GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData();
                GoodsStockUpdDTO goodsStockUpdDTO1 = new GoodsStockUpdDTO();
                goodsStockUpdDTO1.setGoodsSkuId(order.getGoodsSkuId());
                goodsStockUpdDTO1.setAuctionStock(goodsSku.getStock()+order.getGoodsQuantity());
                goodsSkuClient.updGoodsStock1(goodsStockUpdDTO1,SecurityConstants.INNER);
            }
            if(order.getOrderNo().contains("MS")){
                GoodsSeckill data = goodsSkuClient.getGoodsSeckillOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData();
                GoodsStockUpdDTO goodsStockUpdDTO1 = new GoodsStockUpdDTO();
                goodsStockUpdDTO1.setGoodsSkuId(order.getGoodsSkuId());
                goodsStockUpdDTO1.setAuctionStock(data.getSeckillStock()+order.getGoodsQuantity());
                goodsSkuClient.updGoodsStock1(goodsStockUpdDTO1,SecurityConstants.INNER);
            }
        }
        if (order.getOrderStatus().getCode() == 2) {
            order.setOrderStatus(OrderStatusEnum.CANCELED);
            order.setCancelTime(LocalDateTime.now());
            baseMapper.updateById(order);
            if(order.getOrderNo().contains("SP")){
                GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData();
                GoodsStockUpdDTO goodsStockUpdDTO1 = new GoodsStockUpdDTO();
                goodsStockUpdDTO1.setGoodsSkuId(order.getGoodsSkuId());
                goodsStockUpdDTO1.setAuctionStock(goodsSku.getStock()+order.getGoodsQuantity());
                goodsSkuClient.updGoodsStock1(goodsStockUpdDTO1,SecurityConstants.INNER);
            }
            if(order.getOrderNo().contains("MS")){
                GoodsSeckill data = goodsSkuClient.getGoodsSeckillOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData();
                GoodsStockUpdDTO goodsStockUpdDTO1 = new GoodsStockUpdDTO();
                goodsStockUpdDTO1.setGoodsSkuId(order.getGoodsSkuId());
                goodsStockUpdDTO1.setAuctionStock(data.getSeckillStock()+order.getGoodsQuantity());
                goodsSkuClient.updGoodsStock1(goodsStockUpdDTO1,SecurityConstants.INNER);
            }
            if (order.getCouponId()!=0){
                CouponMemberDTO couponMemberDTO1=new CouponMemberDTO();
@@ -749,7 +813,7 @@
            MembeOneDTO.setMemberId(order.getMemberId());
            MembeOneDTO.setMoney(order.getTotalAmount());
            MembeOneDTO.setTotalPoints(order.getPoints());
            memberClient.updMembeOne(MembeOneDTO);
            memberClient.updMembeOne(MembeOneDTO, SecurityConstants.INNER);
            if (order.getPaymentMethod() != null && order.getPaymentMethod().getCode() == 1) {//支付宝
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/PaylogServiceImpl.java
@@ -33,6 +33,7 @@
import com.ruoyi.order.util.tencent.common.XMLParser;
import com.ruoyi.order.util.tencent.protocol.AppPayReqData;
import com.ruoyi.order.util.tencent.protocol.UnifiedorderReqData;
import com.ruoyi.system.api.domain.GoodsSku;
import com.ruoyi.system.api.domain.Order;
import com.ruoyi.system.api.domain.OrderAuctionBond;
import com.ruoyi.system.api.domain.dto.BondDTO;
@@ -40,6 +41,7 @@
import com.ruoyi.system.api.domain.dto.RefundDTO;
import com.ruoyi.system.api.domain.dto.updMembeOneDTO;
import com.ruoyi.system.api.feignClient.AuctionClient;
import com.ruoyi.system.api.feignClient.GoodsSkuClient;
import com.ruoyi.system.api.feignClient.MemberClient;
import java.io.IOException;
@@ -84,6 +86,9 @@
    @Resource
    private OrderAuctionBondMapper orderAuctionBondMapper;
    @Resource
    private GoodsSkuClient GoodsSkuClient;
    @Override
    public R<Map<String, Object>> getPayInfo(Integer uid, Integer type, String orderNO,String openId, HttpServletRequest request) {
        Double price = 0.0;
@@ -122,6 +127,21 @@
                    page1.setPayTime(LocalDateTime.now());
                    OrderMapper.updateById(page1);
                    if(page1.getOrderNo().contains("SP")){
                        GoodsSku goodsSku =new GoodsSku();
                        goodsSku.setId(page1.getGoodsSkuId());
                        goodsSku.setSoldQuantity(page1.getGoodsQuantity());
                        GoodsSkuClient.updGoods(goodsSku, SecurityConstants.INNER);
                    }
                    if(page1.getOrderNo().contains("MS")){
                        GoodsSku goodsSku =new GoodsSku();
                        goodsSku.setId(page1.getGoodsSkuId());
                        goodsSku.setSoldQuantity(page1.getGoodsQuantity());
                        GoodsSkuClient.updGoodsSeckill1(goodsSku, SecurityConstants.INNER);
                    }
                    MemberPointsDTO memberPointsDTO=new MemberPointsDTO();
                    memberPointsDTO.setMemberId(page1.getMemberId());
                    memberPointsDTO.setPointsType(1);
@@ -134,7 +154,7 @@
                    MembeOneDTO.setMemberId(page1.getMemberId());
                    MembeOneDTO.setMoney(page1.getTotalAmount());
                    MembeOneDTO.setTotalPoints(page1.getPoints());
                    memberClient.updMembeOne(MembeOneDTO);
                    memberClient.updMembeOne(MembeOneDTO, SecurityConstants.INNER);
                }
                if (orderNO.contains("BO")) {
@@ -234,6 +254,19 @@
                            wrapper1.eq(Order::getOrderNo,paylog1.getOutTradeNo());
                            wrapper1.eq(Order::getDelFlag,0);
                            Order page1 = OrderMapper.selectOne(wrapper1);
                            if(page1.getOrderNo().contains("SP")){
                                GoodsSku goodsSku =new GoodsSku();
                                goodsSku.setId(page1.getGoodsSkuId());
                                goodsSku.setSoldQuantity(page1.getGoodsQuantity());
                                GoodsSkuClient.updGoods(goodsSku, SecurityConstants.INNER);
                            }
                            if(page1.getOrderNo().contains("MS")){
                                GoodsSku goodsSku =new GoodsSku();
                                goodsSku.setId(page1.getGoodsSkuId());
                                goodsSku.setSoldQuantity(page1.getGoodsQuantity());
                                GoodsSkuClient.updGoodsSeckill1(goodsSku, SecurityConstants.INNER);
                            }
                            page1.setOrderStatus(OrderStatusEnum.TO_BE_SHIPPED);
                            page1.setPayTime(LocalDateTime.now());
                            OrderMapper.updateById(page1);
@@ -249,7 +282,7 @@
                            MembeOneDTO.setMemberId(page1.getMemberId());
                            MembeOneDTO.setMoney(page1.getTotalAmount());
                            MembeOneDTO.setTotalPoints(page1.getPoints());
                            memberClient.updMembeOne(MembeOneDTO);
                            memberClient.updMembeOne(MembeOneDTO, SecurityConstants.INNER);
                        }
                    }
@@ -356,6 +389,20 @@
                            page1.setPayTime(LocalDateTime.now());
                            OrderMapper.updateById(page1);
                            if(page1.getOrderNo().contains("SP")){
                                GoodsSku goodsSku =new GoodsSku();
                                goodsSku.setId(page1.getGoodsSkuId());
                                goodsSku.setSoldQuantity(page1.getGoodsQuantity());
                                GoodsSkuClient.updGoods(goodsSku, SecurityConstants.INNER);
                            }
                            if(page1.getOrderNo().contains("MS")){
                                GoodsSku goodsSku =new GoodsSku();
                                goodsSku.setId(page1.getGoodsSkuId());
                                goodsSku.setSoldQuantity(page1.getGoodsQuantity());
                                GoodsSkuClient.updGoodsSeckill1(goodsSku, SecurityConstants.INNER);
                            }
                            MemberPointsDTO memberPointsDTO=new MemberPointsDTO();
                            memberPointsDTO.setMemberId(page1.getMemberId());
                            memberPointsDTO.setPointsType(1);
@@ -367,7 +414,7 @@
                            MembeOneDTO.setMemberId(page1.getMemberId());
                            MembeOneDTO.setMoney(page1.getTotalAmount());
                            MembeOneDTO.setTotalPoints(page1.getPoints());
                            memberClient.updMembeOne(MembeOneDTO);
                            memberClient.updMembeOne(MembeOneDTO, SecurityConstants.INNER);
                        }
                        log.debug("WxpayController.notify__回调处理成功:SUCCESS");
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml
@@ -16,7 +16,13 @@
  </select>
  <select id="getSeckillMembers1" resultType="java.lang.Integer">
    SELECT ifnull(SUM(o.goods_quantity), 0) FROM t_order o
      WHERE
      o.goods_sku_id = #{goodsSkuId}
      AND o.order_status IN (1,2,3)
      and o.member_id =#{memberId}
  </select>
  <select id="getGoodsGroupPurchase" resultType="java.lang.Integer">
    SELECT ifnull(SUM(o.goods_quantity), 0) FROM t_order o
@@ -86,9 +92,9 @@
    t_order o
    <where>
      o.goods_sku_id = #{goodsSkuId}
      AND o.del_flag=0
      AND o.order_status = 2 or  o.order_status =1
      AND o.order_from = 3
      AND o.del_flag=0
      AND   o.member_id=#{memberId}
    </where>
  </select>