bug
jiangqs
2023-07-25 45684deea50d27ac78f2a8315bdea50d022e01cb
bug
1 文件已重命名
39个文件已修改
3个文件已添加
514 ■■■■ 已修改文件
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/AppErrorConstant.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/ConfigEnum.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/activity/ActivityRecord.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/AppMemberCouponVo.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteActivityFallbackFactory.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteActivityService.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-auth/src/main/resources/bootstrap.yml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-gateway/src/main/resources/bootstrap.yml 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-gen/src/main/resources/bootstrap.yml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/ActivityController.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/AppGoodsInfoVo.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/activity/ActivityRecordMapper.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/activity/ActivityRecordService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityRecordServiceImpl.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/bootstrap.yml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ShoppingCartMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-job/src/main/resources/bootstrap.yml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/management/MgtCouponController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponEditDto.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/AppMemberCouponPageVo.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/scheduler/MemberScheduler.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberCouponServiceImpl.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/resources/bootstrap.yml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberCouponMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/scheduler/OrderScheduler.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/scheduler/SchedulerUtils.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java 102 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/resources/bootstrap.yml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-shop/src/main/resources/bootstrap.yml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtCustomConfigDto.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtServiceCodeEditDto.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/CustomConfigService.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/CustomConfigServiceImpl.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysMenuMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-visual/ruoyi-monitor/src/main/resources/bootstrap.yml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/AppErrorConstant.java
@@ -84,6 +84,8 @@
    String ACTIVITY_GOODS_NULL = "商品已售罄";
    String ACTIVITY_GOODS_BEYOND = "超出商品购买限制";
    String BIRTHDAY_NULL = "未填写生日";
    String BIRTHDAY_ERROR = "只有生日当月领取";
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/ConfigEnum.java
@@ -19,6 +19,7 @@
public enum ConfigEnum {
    PLATFORM_SERVICE_PHONE("PLATFORM_SERVICE_PHONE", 1,"客服电话"),
    PLATFORM_SERVICE_CODE("PLATFORM_SERVICE_CODE", 1,"客服二维码"),
    SHOP_EMERGENCY_DEGREE("SHOP_EMERGENCY_DEGREE", 3,"合作商任务紧急程度"),
    SHOP_FOLLOW_TYPE("SHOP_FOLLOW_TYPE", 3,"合作商跟进类型"),
    SHOP_CUSTOM_STATUS("SHOP_CUSTOM_STATUS", 3,"合作商状态"),
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/activity/ActivityRecord.java
File was renamed from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/activity/ActivityRecord.java
@@ -1,4 +1,4 @@
package com.ruoyi.goods.domain.pojo.activity;
package com.ruoyi.system.api.domain.poji.activity;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotation.IdType;
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/AppMemberCouponVo.java
@@ -1,5 +1,6 @@
package com.ruoyi.system.api.domain.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -39,9 +40,11 @@
    private BigDecimal discountPercent;
    @ApiModelProperty(value="有效开始时间")
    @JsonFormat(pattern = "yyyy.MM.dd")
    private Date validStartTime;
    @ApiModelProperty(value="使用有效期")
    @JsonFormat(pattern = "yyyy.MM.dd")
    private Date deadlineTime;
    @ApiModelProperty(value="关联商品ids")
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteActivityFallbackFactory.java
@@ -4,6 +4,7 @@
import com.ruoyi.system.api.domain.dto.AGStockChangeDto;
import com.ruoyi.system.api.domain.dto.ActivityGoodsGetDto;
import com.ruoyi.system.api.domain.dto.ActivityTotalChangeDto;
import com.ruoyi.system.api.domain.poji.activity.ActivityRecord;
import com.ruoyi.system.api.domain.vo.ActivityGoodsGetVo;
import com.ruoyi.system.api.domain.vo.MgtBulletinBoardVo;
import com.ruoyi.system.api.service.RemoteActivityService;
@@ -71,6 +72,16 @@
            public R endActivity(String activityId) {
                return null;
            }
            @Override
            public R addActivityRecord(ActivityRecord activityRecord) {
                return R.fail("新增活动记录失败:" + throwable.getMessage());
            }
            @Override
            public R delActivityRecord(ActivityRecord activityRecord) {
                return R.fail("删除活动记录失败:" + throwable.getMessage());
            }
        };
    }
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteActivityService.java
@@ -6,6 +6,7 @@
import com.ruoyi.system.api.domain.dto.ActivityGoodsGetDto;
import com.ruoyi.system.api.domain.dto.ActivityTotalChangeDto;
import com.ruoyi.system.api.domain.poji.activity.ActivityGoods;
import com.ruoyi.system.api.domain.poji.activity.ActivityRecord;
import com.ruoyi.system.api.domain.vo.ActivityGoodsGetVo;
import com.ruoyi.system.api.domain.vo.MgtBulletinBoardVo;
import com.ruoyi.system.api.factory.RemoteActivityFallbackFactory;
@@ -97,4 +98,27 @@
     */
    @PostMapping("/activity/endActivity")
    public R endActivity(@RequestBody String activityId);
    /**
     * @description  添加活动记录
     * @author  jqs
     * @date    2023/7/25 14:00
     * @param activityRecord
     * @return  R
     */
    @PostMapping("/activity/addActivityRecord")
    public R addActivityRecord(@RequestBody ActivityRecord activityRecord);
    /**
     * @description  删除活动记录
     * @author  jqs
     * @date    2023/7/25 14:23
     * @param activityRecord
     * @return  R
     */
    @PostMapping("/activity/delActivityRecord")
    public R delActivityRecord(@RequestBody ActivityRecord activityRecord);
}
ruoyi-auth/src/main/resources/bootstrap.yml
@@ -14,12 +14,12 @@
    nacos:
      discovery:
        # 服务注册地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
      config:
        # 配置中心地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
        # 配置文件格式
        file-extension: yml
        # 共享配置
ruoyi-gateway/src/main/resources/bootstrap.yml
@@ -14,12 +14,12 @@
    nacos:
      discovery:
        # 服务注册地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
      config:
        # 配置中心地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
        # 配置文件格式
        file-extension: yml
        # 共享配置
@@ -35,8 +35,8 @@
      datasource:
        ds1:
          nacos:
            server-addr: 47.109.78.184:5000
            #server-addr: 127.0.0.1:8848
            #server-addr: 47.109.78.184:5000
            server-addr: 127.0.0.1:8848
            dataId: sentinel-ruoyi-gateway
            groupId: DEFAULT_GROUP
            data-type: json
ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml
@@ -19,12 +19,12 @@
    nacos:
      discovery:
        # 服务注册地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
      config:
        # 配置中心地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
        # 配置文件格式
        file-extension: yml
        # 共享配置
ruoyi-modules/ruoyi-gen/src/main/resources/bootstrap.yml
@@ -14,12 +14,12 @@
    nacos:
      discovery:
        # 服务注册地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
      config:
        # 配置中心地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
        # 配置文件格式
        file-extension: yml
        # 共享配置
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/ActivityController.java
@@ -8,6 +8,7 @@
import com.ruoyi.system.api.domain.dto.ActivityGoodsGetDto;
import com.ruoyi.system.api.domain.dto.ActivityTotalChangeDto;
import com.ruoyi.system.api.domain.poji.activity.ActivityGoods;
import com.ruoyi.system.api.domain.poji.activity.ActivityRecord;
import com.ruoyi.system.api.domain.vo.ActivityGoodsGetVo;
import com.ruoyi.system.api.domain.vo.MgtBulletinBoardVo;
import org.springframework.web.bind.annotation.PostMapping;
@@ -145,4 +146,30 @@
        activityService.changeActivityTotal(activityTotalChangeDto);
        return R.ok();
    }
    /**
     * @description  添加活动记录
     * @author  jqs
     * @date    2023/7/25 14:00
     * @param activityRecord
     * @return  R
     */
    @PostMapping("/addActivityRecord")
    public R addActivityRecord(@RequestBody ActivityRecord activityRecord){
        activityRecordService.save(activityRecord);
        return R.ok();
    }
    /**
     * @description  删除活动记录
     * @author  jqs
     * @date    2023/7/25 14:23
     * @param activityRecord
     * @return  R
     */
    @PostMapping("/delActivityRecord")
    public R delActivityRecord(@RequestBody ActivityRecord activityRecord){
        activityRecordService.delActivityRecord(activityRecord);
        return R.ok();
    }
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/vo/AppGoodsInfoVo.java
@@ -28,6 +28,9 @@
    @ApiModelProperty(value = "商品简介")
    private String goodsIntroduction;
    @ApiModelProperty(value = "商品图片")
    private String goodsPicture;
    @ApiModelProperty(value = "商品视频")
    private String goodsVideo;
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/activity/ActivityRecordMapper.java
@@ -1,6 +1,6 @@
package com.ruoyi.goods.mapper.activity;
import com.ruoyi.goods.domain.pojo.activity.ActivityRecord;
import com.ruoyi.system.api.domain.poji.activity.ActivityRecord;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/activity/ActivityRecordService.java
@@ -1,6 +1,6 @@
package com.ruoyi.goods.service.activity;
import com.ruoyi.goods.domain.pojo.activity.ActivityRecord;
import com.ruoyi.system.api.domain.poji.activity.ActivityRecord;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.system.api.domain.vo.MgtBulletinBoardVo;
@@ -44,4 +44,13 @@
     * @return  Integer
     */
    Integer getUserActivityGoodsNum(String goodsId,String activityId,Long userId);
    /**
     * @description  删除活动记录
     * @author  jqs
     * @date    2023/7/25 14:19
     * @param activityRecord
     * @return  void
     */
    void delActivityRecord(ActivityRecord  activityRecord);
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityRecordServiceImpl.java
@@ -1,9 +1,10 @@
package com.ruoyi.goods.service.impl.activity;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.goods.domain.pojo.activity.ActivityRecord;
import com.ruoyi.goods.mapper.activity.ActivityRecordMapper;
import com.ruoyi.goods.service.activity.ActivityRecordService;
import com.ruoyi.system.api.domain.poji.activity.ActivityRecord;
import com.ruoyi.system.api.domain.vo.MgtBulletinBoardVo;
import org.springframework.stereotype.Service;
@@ -64,4 +65,23 @@
    public Integer getUserActivityGoodsNum(String goodsId,String activityId,Long userId){
        return activityRecordMapper.getUserActivityGoodsNum(goodsId, activityId, userId);
    }
    /**
     * @description  删除活动记录
     * @author  jqs
     * @date    2023/7/25 14:19
     * @param activityRecord
     * @return  void
     */
    @Override
    public void delActivityRecord(ActivityRecord activityRecord){
        LambdaUpdateWrapper<ActivityRecord> updateWrapper = new LambdaUpdateWrapper<>();
        updateWrapper.eq(ActivityRecord::getDelFlag,0);
        updateWrapper.eq(ActivityRecord::getActivityId,activityRecord.getActivityId());
        updateWrapper.eq(ActivityRecord::getGoodsId,activityRecord.getGoodsId());
        updateWrapper.eq(ActivityRecord::getUserId,activityRecord.getUserId());
        updateWrapper.eq(ActivityRecord::getOrderTime,activityRecord.getOrderTime());
        updateWrapper.set(ActivityRecord::getDelFlag,1);
        this.update(updateWrapper);
    }
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java
@@ -222,7 +222,9 @@
        List<String> bannerList = new ArrayList<>();
        if(goodsFileList!=null&&!goodsFileList.isEmpty()){
            for(GoodsFile goodsFile : goodsFileList){
                if(goodsFile.getFileType()==2){
                if(goodsFile.getFileType()==1){
                    appGoodsInfoVo.setGoodsPicture(goodsFile.getFileUrl());
                }else if(goodsFile.getFileType()==2){
                    appGoodsInfoVo.setGoodsVideo(goodsFile.getFileUrl());
                }else if(goodsFile.getFileType()==3){
                    bannerList.add(goodsFile.getFileUrl());
ruoyi-modules/ruoyi-goods/src/main/resources/bootstrap.yml
@@ -14,12 +14,12 @@
    nacos:
      discovery:
        # 服务注册地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
      config:
        # 配置中心地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
        # 配置文件格式
        file-extension: yml
        # 共享配置
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/goods/ShoppingCartMapper.xml
@@ -100,7 +100,7 @@
        INNER JOIN t_goods tg ON tsc.goods_id = tg.goods_id
        LEFT JOIN t_goods_file tgf ON tg.goods_id = tgf.goods_id AND tgf.del_flag = 0 AND tgf.file_type = 1
        LEFT JOIN t_shop_goods tsg ON tg.goods_id = tsg.goods_id AND tsg.shop_id = #{shopId}
        WHERE tsc.del_flag = 0 AND tg.del_flag = 0 AND tsc.shop_id = #{shopId} AND tsc.user_id = #{userId} AND tg.del_flag = 0 AND tg.goods_status = 1 AND tg.recommend_flag = 1
        WHERE tsc.del_flag = 0 AND tg.del_flag = 0 AND tsc.shop_id = #{shopId} AND tsc.user_id = #{userId} AND tg.del_flag = 0 AND tg.goods_status = 1
        ORDER BY tg.create_time DESC
    </select>
ruoyi-modules/ruoyi-job/src/main/resources/bootstrap.yml
@@ -14,12 +14,12 @@
    nacos:
      discovery:
        # 服务注册地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
      config:
        # 配置中心地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
        # 配置文件格式
        file-extension: yml
        # 共享配置
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/management/MgtCouponController.java
@@ -11,6 +11,7 @@
import com.ruoyi.system.api.domain.dto.MgtBaseGetDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -59,7 +60,7 @@
    @RequestMapping(value = "/editMgtCoupon", method = RequestMethod.POST)
    @Log(title = "优惠券管理", businessType = BusinessType.UPDATE,operContent = "编辑优惠券")
    @ApiOperation(value = "平台编辑优惠券")
    public R editMgtCoupon(@RequestBody MgtCouponEditDto mgtCouponEditDto) {
    public R editMgtCoupon(@Validated @RequestBody MgtCouponEditDto mgtCouponEditDto) {
        Long userId = SecurityUtils.getUserId();
        mgtCouponEditDto.setUserId(userId);
        couponService.editMgtCoupon(mgtCouponEditDto);
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/dto/MgtCouponEditDto.java
@@ -4,6 +4,7 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@@ -22,15 +23,19 @@
    private String couponId;
    @ApiModelProperty(value="优惠券类型1.满减2.折扣3.代金4.商品")
    @NotNull(message = "优惠券类型不能为空")
    private Integer couponType;
    @ApiModelProperty(value="优惠券名称")
    @NotNull(message = "优惠券名称不能为空")
    private String couponName;
    @ApiModelProperty(value = "发送类型1.手动领取2.指定发放")
    @NotNull(message = "发送类型不能为空")
    private Integer sendType;
    @ApiModelProperty(value = "发送对象2.全部用户3.会员用户4非会员用户5自定义")
    @NotNull(message = "发送对象不能为空")
    private Integer sendTarget;
    @ApiModelProperty(value="发送时间类型1立即2定时")
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/AppMemberCouponPageVo.java
@@ -47,11 +47,11 @@
    @ApiModelProperty(value = "有效开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy.MM.dd")
    private Date validStartTime;
    @ApiModelProperty(value = "有效结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy.MM.dd")
    private Date deadlineTime;
    @ApiModelProperty(value = "使用时间")
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/scheduler/MemberScheduler.java
@@ -43,7 +43,7 @@
    /**
     * 定时检查优惠券过期
     */
    @Scheduled(cron="0 0 * * * ?")
    @Scheduled(cron="1 0 * * * ?")
    private void timingCheckMemberCoupon(){
        if(schedulerUtils.getSchedulerRun()) {
            log.info("定时检查优惠券过期任务开始执行");
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java
@@ -11,15 +11,13 @@
import com.ruoyi.member.domain.dto.MgtBirthdayGiftDto;
import com.ruoyi.member.domain.pojo.birthday.BirthdayCard;
import com.ruoyi.member.domain.pojo.birthday.BirthdayGift;
import com.ruoyi.system.api.domain.poji.member.MemberGiftRecord;
import com.ruoyi.member.domain.vo.*;
import com.ruoyi.member.mapper.birthday.BirthdayCardMapper;
import com.ruoyi.member.service.birthday.BirthdayCardService;
import com.ruoyi.member.service.birthday.BirthdayGiftService;
import com.ruoyi.member.service.member.MemberGiftRecordService;
import com.ruoyi.system.api.domain.dto.BirthdayGiftSendDto;
import com.ruoyi.system.api.service.RemoteCouponService;
import com.ruoyi.system.api.service.RemoteOrderService;
import com.ruoyi.system.api.domain.poji.member.MemberGiftRecord;
import com.ruoyi.system.api.service.RemoteShopService;
import org.springframework.stereotype.Service;
@@ -52,11 +50,6 @@
    @Resource
    private MemberGiftRecordService memberGiftRecordService;
    @Resource
    private RemoteCouponService remoteCouponService;
    @Resource
    private RemoteOrderService remoteOrderService;
    /**
     * @description  平台编辑生日卡
@@ -109,13 +102,13 @@
        // 如果店铺ID为空,则进行相关设置
        if(mgtBirthdayEditDto.getShopId()==null){
            birthdayCard.setAreaFlag(mgtBirthdayEditDto.getAreaFlag());
            if(mgtBirthdayEditDto.getAreaFlag()==2){
            if(mgtBirthdayEditDto.getAreaFlag()!=null&&mgtBirthdayEditDto.getAreaFlag()==2){
                birthdayCard.setDesignatedArea(mgtBirthdayEditDto.getDesignatedArea());
            }else{
                birthdayCard.setDesignatedArea(null);
            }
            birthdayCard.setShopFlag(mgtBirthdayEditDto.getShopFlag());
            if(mgtBirthdayEditDto.getShopFlag()==2){
            if(mgtBirthdayEditDto.getShopFlag()!=null&&mgtBirthdayEditDto.getShopFlag()==2){
                birthdayCard.setApplicableShop(mgtBirthdayEditDto.getApplicableShop());
            }else{
                birthdayCard.setApplicableShop(null);
@@ -129,7 +122,7 @@
        List<MgtBirthdayGiftDto> mgtBirthdayGiftDtoList = mgtBirthdayEditDto.getMgtBirthdayGiftDtoList();
        List<BirthdayGift> birthdayGiftList = new ArrayList<>();
        // 如果生日礼物列表不为空,则进行相关设置
        if(!mgtBirthdayGiftDtoList.isEmpty()) {
        if(mgtBirthdayGiftDtoList!=null&&!mgtBirthdayGiftDtoList.isEmpty()) {
            mgtBirthdayGiftDtoList.forEach(dto -> {
                BirthdayGift birthdayGift = new BirthdayGift();
                birthdayGift.setDelFlag(0);
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberCouponServiceImpl.java
@@ -217,7 +217,9 @@
                    }
                }
                appGetAbleCouponPageVo.setGoodsLimitList(goodsLimitList);
                appGetAbleCouponPageVo.setVerifyShopName(shopMap.get(appGetAbleCouponPageVo.getShopId()).getShopName());
                if(appGetAbleCouponPageVo.getShopId()!=null){
                    appGetAbleCouponPageVo.setVerifyShopName(shopMap.get(appGetAbleCouponPageVo.getShopId()).getShopName());
                }
            }
        }
        return memberCouponPageVoList;
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java
@@ -235,6 +235,7 @@
            member.setMemberNo(memberNo);
            member.setUserId(sysUser.getUserId());
            member.setDelFlag(0);
            member.setFrozenFlag(0);
            member.setNickName("鸿瑞堂用户");
            member.setRealName("鸿瑞堂用户");
            member.setCustomerSource("小程序");
@@ -600,6 +601,7 @@
            member.setMemberId(memberId);
            member.setUserId(sysUser.getUserId());
            member.setDelFlag(0);
            member.setFrozenFlag(0);
            member.setNickName(merMemberAddDto.getNickName());
            member.setRealName(merMemberAddDto.getNickName());
            member.setGender(merMemberAddDto.getGender());
@@ -768,8 +770,8 @@
        String memberNo = createMemberNo();
        member.setMemberNo(memberNo);
        member.setDelFlag(0);
        member.setFrozenFlag(0);
        member.setAvatar("https://hongruitang.oss-cn-beijing.aliyuncs.com/default.png");
        member.setBindingFlag(0);
        member.setCreateTime(new Date());
        member.setCustomerSource("商户订单添加");
        this.saveOrUpdate(member);
ruoyi-modules/ruoyi-member/src/main/resources/bootstrap.yml
@@ -14,12 +14,12 @@
    nacos:
      discovery:
        # 服务注册地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
      config:
        # 配置中心地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
        # 配置文件格式
        file-extension: yml
        # 共享配置
ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberCouponMapper.xml
@@ -159,7 +159,7 @@
        tuc.money_threshold moneyThreshold,
        tuc.discount_money discountMoney,
        tuc.discount_percent discountPercent,
        tuc.valid_start_time validStartTime,
        IFNULL(tuc.valid_start_time,tuc.receive_time) validStartTime,
        tuc.deadline_time deadlineTime,
        tuc.rel_goods_ids relGoodsIds
        FROM t_member_coupon tuc
ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml
@@ -60,7 +60,7 @@
    <select id="selectMemberByMobile" parameterType="String" resultMap="MemberResult">
        <include refid="selectMemberVo"/>
        where mobile = #{mobile}
        where mobile = #{mobile} AND del_flag = 0
    </select>
    <insert id="insertMember" parameterType="com.ruoyi.system.api.domain.poji.member.Member">
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/scheduler/OrderScheduler.java
New file
@@ -0,0 +1,36 @@
package com.ruoyi.order.scheduler;
import com.ruoyi.order.service.order.OrderService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
@Component
@Slf4j
public class OrderScheduler {
    @Autowired
    private SchedulerUtils schedulerUtils;
    @Resource
    private OrderService orderService;
    /**
     * 定时检查跟进任务状态
     */
    @Scheduled(cron="*/10 * * * *")
    private void timingCheckMemberCoupon(){
        if(schedulerUtils.getSchedulerRun()) {
            log.info("定时检查订单状态任务开始执行");
            orderService.checkOrderStatus();
        }
    }
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/scheduler/SchedulerUtils.java
New file
@@ -0,0 +1,48 @@
package com.ruoyi.order.scheduler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;
import java.net.Inet4Address;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.util.Enumeration;
@Component
public class SchedulerUtils {
    @Autowired
    private StringRedisTemplate redisTemplate;
    public boolean getSchedulerRun() {
        String localIpAddress = getLocalIpAddress();
        return true;
    }
    public static String getLocalIpAddress() {
        String localIpAddress = "";
        try {
            Enumeration<NetworkInterface> allNetInterfaces = NetworkInterface.getNetworkInterfaces();
            InetAddress ip = null;
            while (allNetInterfaces.hasMoreElements()) {
                NetworkInterface netInterface = (NetworkInterface) allNetInterfaces.nextElement();
                if (netInterface.isLoopback() || netInterface.isVirtual() || !netInterface.isUp()) {
                    continue;
                } else {
                    Enumeration<InetAddress> addresses = netInterface.getInetAddresses();
                    while (addresses.hasMoreElements()) {
                        ip = addresses.nextElement();
                        if (ip != null && ip instanceof Inet4Address) {
                            return ip.getHostAddress();
                        }
                    }
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return localIpAddress;
    }
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -28,6 +28,7 @@
import com.ruoyi.system.api.constant.DelayTaskEnum;
import com.ruoyi.system.api.constant.SecurityConstant;
import com.ruoyi.system.api.domain.dto.*;
import com.ruoyi.system.api.domain.poji.activity.ActivityRecord;
import com.ruoyi.system.api.domain.poji.config.DelayTask;
import com.ruoyi.system.api.domain.poji.goods.Goods;
import com.ruoyi.system.api.domain.poji.goods.GoodsFile;
@@ -175,7 +176,10 @@
        List<AppMemberCouponVo> appMemberCouponVoList = remoteCouponService.listVoMemberCouponByUserId(merBaseDto).getData();
        // 将优惠券列表转换为Map,以优惠券ID为键
        Map<String, AppMemberCouponVo> appMemberCouponVoMap = appMemberCouponVoList.stream().collect(Collectors.toMap(AppMemberCouponVo::getMemberCouponId, Function.identity()));
        Map<String, AppMemberCouponVo> appMemberCouponVoMap = new HashMap<>();
        if(appMemberCouponVoList!=null&&!appMemberCouponVoList.isEmpty()){
            appMemberCouponVoMap = appMemberCouponVoList.stream().collect(Collectors.toMap(AppMemberCouponVo::getMemberCouponId, Function.identity()));
        }
        AppMemberCouponVo appMemberCouponVo;
        Integer couponType;
        BigDecimal moneyThreshold;
@@ -262,7 +266,6 @@
            appSureOrderGoodsVo.setGoodsTotalPrice(goodsTotalPrice);
            appSureOrderGoodsVo.setCouponDiscount(discountMoney);
            appSureOrderGoodsVo.setGoodsRealPrice(goodsRealPrice);
            goodsDeposit = goods.getSubscription();
            // 获取商品押金
            goodsDeposit = goods.getSubscription();
            if (goodsDeposit != null && goodsDeposit.compareTo(BigDecimal.ZERO)>0) {
@@ -290,6 +293,8 @@
                }else{
                    entity.setUseFlag(0);
                }
            }
            // 过滤商品优惠券列表
            List<AppMemberCouponVo> appGoodsMemberCouponVoList;
@@ -409,6 +414,9 @@
        }
        if (activityGoodsGetVo.getAvailableBuyNum() < 1) {
            throw new ServiceException(AppErrorConstant.ACTIVITY_GOODS_NULL);
        }
        if (activityGoodsGetVo.getAvailableBuyNum() < buyNum) {
            throw new ServiceException(AppErrorConstant.ACTIVITY_GOODS_BEYOND);
        }
        Goods goods = remoteGoodsService.getGoods(goodsId).getData();
        if(goods.getGoodsStatus()!=1){
@@ -726,7 +734,7 @@
        //减去优惠券
        if(memberCouponSJ!=null){
        if(memberCouponSJ!=null&&StringUtils.isNotBlank(memberCouponSJ.toString())){
            remoteCouponService.useMemberCoupon(memberCouponSJ.toString());
        }
        //生成自动取消订单延时任务
@@ -814,8 +822,8 @@
        if (activityGoodsGetVo.getAvailableBuyNum() < 1) {
            throw new ServiceException(AppErrorConstant.ACTIVITY_GOODS_NULL);
        }
        if (buyNum < activityGoodsGetVo.getAvailableBuyNum()) {
            throw new ServiceException(AppErrorConstant.ACTIVITY_GOODS_NULL);
        if (activityGoodsGetVo.getAvailableBuyNum() < buyNum) {
            throw new ServiceException(AppErrorConstant.ACTIVITY_GOODS_BEYOND);
        }
        // 创建订单ID和订单号
        String orderId = IdUtils.simpleUUID();
@@ -1000,7 +1008,19 @@
        appPlaceOrderVo.setTradeType(res.getSignType());
        appPlaceOrderVo.setPaySign(res.getPaySign());
*/
        //生成活动参加记录
        ActivityRecord activityRecord = new ActivityRecord();
        activityRecord.setDelFlag(0);
        activityRecord.setActivityId(activityId);
        activityRecord.setUserId(userId);
        activityRecord.setOrderTime(order.getCreateTime());
        activityRecord.setOrderMoney(order.getOrderMoney());
        activityRecord.setOrderId(orderId);
        activityRecord.setCreateTime(new Date());
        activityRecord.setBuyNum(orderGoods.getBuyNum());
        activityRecord.setGoodsId(orderGoods.getGoodsId());
        activityRecord.setActivityMoney(activityGoodsGetVo.getActivityPrice());
        remoteActivityService.addActivityRecord(activityRecord);
        //生成自动取消订单延时任务
        Integer delayTime = 30;
        if(redisService.hasKey(SecurityConstant.AUTO_CANCEL_ORDER_TIME)){
@@ -1184,9 +1204,9 @@
        merVerifyOrderVo.setUseTime(order.getUseTime());
        merVerifyOrderVo.setAppUserOrderGoodsPageVoList(appUserOrderGoodsPageVoList);
        // 根据订单用户ID获取用户信息
        SysUser sysUser = remoteUserService.getSysUser(order.getUserId()).getData();
        merVerifyOrderVo.setUserName(sysUser.getNickName());
        merVerifyOrderVo.setUserMobile(sysUser.getPhonenumber());
        Member member = remoteMemberService.getMember(order.getUserId()).getData();
        merVerifyOrderVo.setUserName(member.getRealName());
        merVerifyOrderVo.setUserMobile(member.getMobile());
        merVerifyOrderVo.setCloseFlag(order.getCloseFlag());
        // 返回结果
        return merVerifyOrderVo;
@@ -1210,6 +1230,7 @@
        if (order.getOrderStatus() != 2) {
            throw new ServiceException(AppErrorConstant.VERIFY_USED);
        }
        ShopRelUserVo shopRelUserVo = remoteShopService.getShopByUserId(merVerifyOrderDto.getUserId()).getData();
        if(!shopRelUserVo.getShopId().equals(order.getShopId())){
            throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
@@ -1278,9 +1299,10 @@
        merVerifyOrderVo.setCreateTime(order.getCreateTime());
        merVerifyOrderVo.setPayTime(order.getPayTime());
        merVerifyOrderVo.setUseTime(order.getUseTime());
        SysUser sysUser = remoteUserService.getSysUser(order.getUserId()).getData();
        merVerifyOrderVo.setUserName(sysUser.getNickName());
        merVerifyOrderVo.setUserMobile(sysUser.getPhonenumber());
        Member member = remoteMemberService.getMember(order.getUserId()).getData();
        merVerifyOrderVo.setUserName(member.getRealName());
        merVerifyOrderVo.setUserMobile(member.getMobile());
        merVerifyOrderVo.setCloseFlag(order.getCloseFlag());
        //
        if(order.getOrderFrom()==2){
@@ -1312,7 +1334,7 @@
        Long userId = verifyCouponGetVo.getUserId();
        // 调用remoteMemberService的getMember方法获取Member对象
        Member member = remoteMemberService.getMember(userId).getData();
        merVerifyCouponVo.setUserName(member.getNickName());
        merVerifyCouponVo.setUserName(member.getRealName());
        merVerifyCouponVo.setUserMobile(member.getMobile());
        merVerifyCouponVo.setCouponFrom(verifyCouponGetVo.getCouponFrom());
        merVerifyCouponVo.setCouponName(verifyCouponGetVo.getMemberCoupon().getCouponName());
@@ -1404,7 +1426,7 @@
            throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
        }
        Member member = remoteMemberService.getMember(memberGiftRecord.getUserId()).getData();
        merVerifyAwardVo.setUserName(member.getNickName());
        merVerifyAwardVo.setUserName(member.getRealName());
        merVerifyAwardVo.setUserMobile(member.getMobile());
        if(memberGiftRecord.getGiftFrom()==1){
            merVerifyAwardVo.setGiftFrom("平台生日卡");
@@ -1524,6 +1546,8 @@
    public void createNewOrder(MerNewOrderDto merNewOrderDto) {
        Long userId = merNewOrderDto.getBuyUserId();
        Date nowTime = new Date();
        Long shopId = merNewOrderDto.getShopId();
        Shop shop = remoteShopService.getShop(shopId).getData();
        //如果非指定用户判断是否需要通过手机号创建新用户
        if (userId == null) {
            String name = merNewOrderDto.getName();
@@ -1551,6 +1575,9 @@
                member.setMobile(mobile);
                member.setRealName(name);
                member.setNickName(name);
                member.setBindingFlag(1);
                member.setRelationShopId(shopId);
                member.setRelationShopName(shop.getShopName());
                remoteMemberService.createNewMember(member);
            }
            userId = sysUser.getUserId();
@@ -1567,8 +1594,6 @@
        BigDecimal goodsPrice;
        BigDecimal goodsTotalPrice;
        BigDecimal goodsRealPrice;
        Long shopId = merNewOrderDto.getShopId();
        Shop shop = remoteShopService.getShop(shopId).getData();
        MerBaseDto merBaseDto = new MerBaseDto();
        merBaseDto.setUserId(userId);
        merBaseDto.setShopId(shopId);
@@ -2762,7 +2787,7 @@
        Long userId = verifyCouponGetVo.getUserId();
        // 调用remoteMemberService的getMember方法获取Member对象
        Member member = remoteMemberService.getMember(userId).getData();
        merVerifyCouponVo.setUserName(member.getNickName());
        merVerifyCouponVo.setUserName(member.getRealName());
        merVerifyCouponVo.setUserMobile(member.getMobile());
        merVerifyCouponVo.setCouponFrom(verifyCouponGetVo.getCouponFrom());
        merVerifyCouponVo.setCouponName(verifyCouponGetVo.getMemberCoupon().getCouponName());
@@ -2811,7 +2836,7 @@
            throw new ServiceException(AppErrorConstant.VERIFY_SHOP_ERROR);
        }
        Member member = remoteMemberService.getMember(memberGiftRecord.getUserId()).getData();
        merVerifyAwardVo.setUserName(member.getNickName());
        merVerifyAwardVo.setUserName(member.getRealName());
        merVerifyAwardVo.setUserMobile(member.getMobile());
        if(memberGiftRecord.getGiftFrom()==1){
            merVerifyAwardVo.setGiftFrom("平台生日卡");
@@ -3177,6 +3202,13 @@
                    agStockChangeDto.setShopId(order.getShopId());
                    agStockChangeDto.setUserId(order.getUserId());
                    remoteActivityService.changeActivityStock(agStockChangeDto);
                    //删除活动记录
                    ActivityRecord activityRecord = new ActivityRecord();
                    activityRecord.setActivityId(order.getActivityId());
                    activityRecord.setGoodsId(orderGoods.getGoodsId());
                    activityRecord.setUserId(order.getUserId());
                    activityRecord.setOrderTime(order.getCreateTime());
                    remoteActivityService.delActivityRecord(activityRecord);
                }
            }
        }else{
@@ -3394,6 +3426,13 @@
                    agStockChangeDto.setShopId(order.getShopId());
                    agStockChangeDto.setUserId(order.getUserId());
                    remoteActivityService.changeActivityStock(agStockChangeDto);
                    //删除活动记录
                    ActivityRecord activityRecord = new ActivityRecord();
                    activityRecord.setActivityId(order.getActivityId());
                    activityRecord.setGoodsId(orderGoods.getGoodsId());
                    activityRecord.setUserId(order.getUserId());
                    activityRecord.setOrderTime(order.getCreateTime());
                    remoteActivityService.delActivityRecord(activityRecord);
                }else{
                    memberCouponSJ.add(orderGoods.getCouponId());
                }
@@ -3718,4 +3757,31 @@
        }
        return dateList;
    }
    /**
     * @description  检查订单状态定时任务
     * @author  jqs
     * @date    2023/7/25 14:40
     * @param
     * @return  void
     */
    @Override
    public void checkOrderStatus(){
        Integer delayTime = 30;
        if(redisService.hasKey(SecurityConstant.AUTO_CANCEL_ORDER_TIME)){
            delayTime = redisService.getCacheObject(SecurityConstant.AUTO_CANCEL_ORDER_TIME);
        }
        delayTime = delayTime + 5;
        Date checkTime = DateUtils.addMinutes(new Date(),delayTime);
        LambdaQueryWrapper<Order> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(Order::getDelFlag,0);
        queryWrapper.lt(Order::getCreateTime,checkTime);
        queryWrapper.eq(Order::getOrderStatus,1);
        List<Order> orderList = this.list(queryWrapper);
        if(orderList!=null&&!orderList.isEmpty()){
            for(Order order : orderList){
                autoCancelOrder(order.getOrderId());
            }
        }
    }
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java
@@ -479,4 +479,14 @@
     * @return  StaffActivityDateMemberTotalVo
     */
    StaffActivityDateMemberTotalVo getStaffActivityMemberTotal(StaffTotalDto staffTotalDto);
    /**
     * @description  检查订单状态定时任务
     * @author  jqs
     * @date    2023/7/25 14:40
     * @param
     * @return  void
     */
    void checkOrderStatus();
}
ruoyi-modules/ruoyi-order/src/main/resources/bootstrap.yml
@@ -14,12 +14,12 @@
    nacos:
      discovery:
        # 服务注册地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
      config:
        # 配置中心地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
        # 配置文件格式
        file-extension: yml
        # 共享配置
ruoyi-modules/ruoyi-shop/src/main/resources/bootstrap.yml
@@ -14,12 +14,12 @@
    nacos:
      discovery:
        # 服务注册地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
      config:
        # 配置中心地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
        # 配置文件格式
        file-extension: yml
        # 共享配置
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java
@@ -123,6 +123,16 @@
        return R.ok();
    }
    @RequestMapping(value = "/editServiceCode", method = RequestMethod.POST)
    @Log(title = "客服二维码管理", businessType = BusinessType.UPDATE,operContent = "修改客服二维码")
    @ApiOperation(value = "修改客服二维码")
    public R editServiceCode(@RequestBody MgtServiceCodeEditDto mgtServiceCodeEditDto) {
        Long userId = SecurityUtils.getUserId();
        mgtServiceCodeEditDto.setUserId(userId);
        customConfigService.editServiceCode(mgtServiceCodeEditDto);
        return R.ok();
    }
    @RequestMapping(value = "/editAgreement", method = RequestMethod.POST)
    @Log(title = "协议管理", businessType = BusinessType.UPDATE,operContent = "修改协议")
    @ApiOperation(value = "修改协议")
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtCustomConfigDto.java
@@ -23,6 +23,7 @@
            "MEMBER_LEVEL:会员等级 " +
            "MEMBER_TYPE:会员类型 " +
            "NURSE_PROBLEM:调理问题 " +
            "PLATFORM_SERVICE_PHONE:客服电话")
            "PLATFORM_SERVICE_PHONE:客服电话" +
            "PLATFORM_SERVICE_CODE:客服二维码")
    private String configType;
}
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtServiceCodeEditDto.java
New file
@@ -0,0 +1,20 @@
package com.ruoyi.system.domain.dto;
import com.ruoyi.system.api.domain.dto.MgtBaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * @ClassName MgtServiceCodeEditDto
 * @Description TODO
 * @Author jqs
 * @Date 2023/7/25 16:16
 * @Version 1.0
 */
@Data
public class MgtServiceCodeEditDto extends MgtBaseDto {
    @ApiModelProperty(value = "客服二维码")
    private String serviceCodeUrl;
}
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/CustomConfigService.java
@@ -40,6 +40,15 @@
    void editServiceMobile( MgtServiceMobileEditDto mgtServiceMobileEditDto);
    /**
     * @description  修改客服二维码
     * @author  jqs
     * @date    2023/7/25 16:17
     * @param mgtServiceCodeEditDto
     * @return  void
     */
    void editServiceCode(MgtServiceCodeEditDto mgtServiceCodeEditDto);
    /**
     * @description  平台获取自定义配置
     * @author  jqs
     * @date    2023/6/7 15:02
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/CustomConfigServiceImpl.java
@@ -110,6 +110,33 @@
    }
    /**
     * @description  修改客服二维码
     * @author  jqs
     * @date    2023/7/25 16:17
     * @param mgtServiceCodeEditDto
     * @return  void
     */
    @Override
    public void editServiceCode(MgtServiceCodeEditDto mgtServiceCodeEditDto){
        // 获取平台服务电话的配置
        CustomConfig customConfig = getByKey(ConfigEnum.PLATFORM_SERVICE_CODE.getKey());
        // 如果配置不存在,则创建一个新的配置
        if (customConfig == null) {
            customConfig = new CustomConfig();
            customConfig.setCreateTime(new Date());
            customConfig.setDelFlag(0);
        }
        // 设置配置的类型、键、名称、值和更新时间
        customConfig.setConfigType(ConfigEnum.PLATFORM_SERVICE_CODE.getKeyType());
        customConfig.setConfigKey(ConfigEnum.PLATFORM_SERVICE_CODE.getKey());
        customConfig.setConfigName(ConfigEnum.PLATFORM_SERVICE_CODE.getKeyName());
        customConfig.setConfigValue(mgtServiceCodeEditDto.getServiceCodeUrl());
        customConfig.setUpdateTime(new Date());
        // 保存或更新配置
        this.saveOrUpdate(customConfig);
    }
    /**
     * @param
     * @return MgtCustomConfigVo
     * @description 平台获取自定义配置
ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml
@@ -14,12 +14,12 @@
    nacos:
      discovery:
        # 服务注册地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
      config:
        # 配置中心地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
        # 配置文件格式
        file-extension: yml
        # 共享配置
ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysMenuMapper.xml
@@ -111,7 +111,7 @@
        select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
        from sys_menu m
        left join sys_user_menu rm on m.menu_id = rm.menu_id
        where rm.user_id = #{params.userId} AND m.menu_from = 1 AND rm.menu = 1 and m.status = '0'
        where rm.user_id = #{params.userId} AND m.menu_from = 1 AND rm.menu_from = 1 and m.status = '0'
        <if test="menuName != null and menuName != ''">
            AND m.menu_name like concat('%', #{menuName}, '%')
        </if>
ruoyi-visual/ruoyi-monitor/src/main/resources/bootstrap.yml
@@ -14,12 +14,12 @@
    nacos:
      discovery:
        # 服务注册地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
      config:
        # 配置中心地址
        server-addr: 47.109.78.184:5000
        #server-addr: 127.0.0.1:8848
        #server-addr: 47.109.78.184:5000
        server-addr: 127.0.0.1:8848
        # 配置文件格式
        file-extension: yml
        # 共享配置