From 7c63c8b10623fbf9171039f1039c30ebe50c6893 Mon Sep 17 00:00:00 2001 From: rentaiming <806181062@qq.com> Date: 星期四, 23 五月 2024 09:38:54 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CustomConfigController.java | 20 ++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/listener/RedisListener.java | 89 ++++++++++++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICustomConfigService.java | 16 ++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/DelayTaskMapper.java | 16 ++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CustomConfigMapper.java | 16 ++ ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/CustomConfigMapper.xml | 5 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/AgreementServiceImpl.java | 20 ++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CustomConfigServiceImpl.java | 20 ++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/Agreement.java | 56 ++++++++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/AgreementController.java | 20 ++ ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/AgreementMapper.xml | 5 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IAgreementService.java | 16 ++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/CustomConfig.java | 57 ++++++++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/AgreementMapper.java | 16 ++ 14 files changed, 372 insertions(+), 0 deletions(-) diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/AgreementController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/AgreementController.java new file mode 100644 index 0000000..c4caf3e --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/AgreementController.java @@ -0,0 +1,20 @@ +package com.ruoyi.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.web.bind.annotation.RestController; + +/** + * <p> + * 前端控制器 + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +@RestController +@RequestMapping("/agreement") +public class AgreementController { + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CustomConfigController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CustomConfigController.java new file mode 100644 index 0000000..bb5de76 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/CustomConfigController.java @@ -0,0 +1,20 @@ +package com.ruoyi.system.controller; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.web.bind.annotation.RestController; + +/** + * <p> + * 系统配置 前端控制器 + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +@RestController +@RequestMapping("/custom-config") +public class CustomConfigController { + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/Agreement.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/Agreement.java new file mode 100644 index 0000000..3e7e7d2 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/Agreement.java @@ -0,0 +1,56 @@ +package com.ruoyi.system.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import java.time.LocalDateTime; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * <p> + * + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("t_agreement") +@ApiModel(value = "Agreement对象", description = "") +public class Agreement implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + @ApiModelProperty(value = "协议类型 1=用户协议 2=隐私协议") + private Integer agreementType; + + @ApiModelProperty(value = "协议内容") + private String agreementContent; + + @ApiModelProperty(value = "创建者") + private String createBy; + + @ApiModelProperty(value = "创建时间") + private LocalDateTime createTime; + + @ApiModelProperty(value = "更新者") + private String updateBy; + + @ApiModelProperty(value = "更新时间") + private LocalDateTime updateTime; + + @ApiModelProperty(value = "删除标志(0代表存在 1代表删除)") + private Integer delFlag; + + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/CustomConfig.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/CustomConfig.java new file mode 100644 index 0000000..3070cad --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/CustomConfig.java @@ -0,0 +1,57 @@ +package com.ruoyi.system.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import java.time.LocalDateTime; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * <p> + * 系统配置 + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("t_custom_config") +@ApiModel(value = "CustomConfig对象", description = "系统配置") +public class CustomConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "配置id") + @TableId(value = "config_id", type = IdType.AUTO) + private Integer configId; + + @ApiModelProperty(value = "删除标记") + private Integer delFlag; + + @ApiModelProperty(value = "配置类型") + private Integer configType; + + @ApiModelProperty(value = "配置键") + private String configKey; + + @ApiModelProperty(value = "配置名") + private String configName; + + @ApiModelProperty(value = "配置值") + private String configValue; + + @ApiModelProperty(value = "创建时间") + private LocalDateTime createTime; + + @ApiModelProperty(value = "更新时间") + private LocalDateTime updateTime; + + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/listener/RedisListener.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/listener/RedisListener.java new file mode 100644 index 0000000..2062fef --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/listener/RedisListener.java @@ -0,0 +1,89 @@ +package com.ruoyi.system.listener; + + +import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.common.core.utils.StringUtils; +import com.ruoyi.system.api.constants.DelayTaskEnum; +import java.util.Date; +import lombok.extern.log4j.Log4j2; +import org.springframework.data.redis.connection.Message; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.data.redis.core.ValueOperations; +import org.springframework.data.redis.listener.KeyExpirationEventMessageListener; +import org.springframework.data.redis.listener.RedisMessageListenerContainer; +import org.springframework.stereotype.Component; + + +/** + * @author mitao + * @date 2024/5/22 + */ +@Log4j2 +@Component +public class RedisListener extends KeyExpirationEventMessageListener { + + private RedisTemplate<String, Object> redisTemplate; + + public RedisListener(RedisMessageListenerContainer listenerContainer, + RedisTemplate redisTemplate) { + super(listenerContainer); + this.redisTemplate=redisTemplate; + } + + @Override + public void onMessage(Message message, byte[] pattern) { + // 用户做自己的业务处理即可,注意message.toString()可以获取失效的key + String expiredKey = message.toString(); + log.info("RedisListener key={}", expiredKey); + String time= DateUtils.dateTime(new Date()); + try { + if(StringUtils.isNotBlank(expiredKey)){ + if(expiredKey.contains("-")){ + String[] split = expiredKey.split("-"); + String operation=split[0]; + if(DelayTaskEnum.SECKILL_START_TASK.getCode().equals(operation)){ + //自动开始任务 + }else if(DelayTaskEnum.SECKILL_END_TASK.getCode().equals(operation)){ + //自动结束任务 + }else if(DelayTaskEnum.GROUP_PURCHASES_START_TASK.getCode().equals(operation)){ + //自动开始任务 + } + else if(DelayTaskEnum.GROUP_PURCHASES_END_TASK.getCode().equals(operation)){ + //自动结束任务 + }else if(DelayTaskEnum.ORDER_AUTOMATIC_CANCEL.getCode().equals(operation)){ + //自动结束任务 + } + //删除失效的key + redisTemplate.delete(expiredKey); + } + } + }catch (Exception e){ + e.printStackTrace(); + } + } + + public <T> T getAndSet(final String key, T value){ + T oldValue=null; + try { + ValueOperations<String, Object> operations = redisTemplate.opsForValue(); + oldValue =(T) operations.getAndSet(key, value); + } catch (Exception e) { + e.printStackTrace(); + } + return oldValue; + } + + //延时任务表 + + private void autoStartActivity(String activityId){ + log.info("autoStartActivity scheduler task is running :" + activityId); + } + + private void autoEndActivity(String activityId){ + log.info("autoEndActivity scheduler task is running :" + activityId); + } + + private void autoCancelOrder(String orderId){ + log.info("autoCancelOrder scheduler task is running :" + orderId); + } +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/AgreementMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/AgreementMapper.java new file mode 100644 index 0000000..2889cd3 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/AgreementMapper.java @@ -0,0 +1,16 @@ +package com.ruoyi.system.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.system.domain.Agreement; + +/** + * <p> + * Mapper 接口 + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +public interface AgreementMapper extends BaseMapper<Agreement> { + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CustomConfigMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CustomConfigMapper.java new file mode 100644 index 0000000..608c82a --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/CustomConfigMapper.java @@ -0,0 +1,16 @@ +package com.ruoyi.system.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.system.domain.CustomConfig; + +/** + * <p> + * 系统配置 Mapper 接口 + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +public interface CustomConfigMapper extends BaseMapper<CustomConfig> { + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/DelayTaskMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/DelayTaskMapper.java new file mode 100644 index 0000000..dd142c8 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/DelayTaskMapper.java @@ -0,0 +1,16 @@ +package com.ruoyi.system.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.system.api.domain.DelayTask; + +/** + * <p> + * Mapper 接口 + * </p> + * + * @author jqs + * @since 2023-05-29 + */ +public interface DelayTaskMapper extends BaseMapper<DelayTask> { + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IAgreementService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IAgreementService.java new file mode 100644 index 0000000..25eff4b --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/IAgreementService.java @@ -0,0 +1,16 @@ +package com.ruoyi.system.service; + +import com.ruoyi.system.domain.pojo.Agreement; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * <p> + * 服务类 + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +public interface IAgreementService extends IService<Agreement> { + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICustomConfigService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICustomConfigService.java new file mode 100644 index 0000000..cba13ff --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ICustomConfigService.java @@ -0,0 +1,16 @@ +package com.ruoyi.system.service; + +import com.ruoyi.system.domain.pojo.CustomConfig; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * <p> + * 系统配置 服务类 + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +public interface ICustomConfigService extends IService<CustomConfig> { + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/AgreementServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/AgreementServiceImpl.java new file mode 100644 index 0000000..7a612c1 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/AgreementServiceImpl.java @@ -0,0 +1,20 @@ +package com.ruoyi.system.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.system.domain.Agreement; +import com.ruoyi.system.mapper.AgreementMapper; +import com.ruoyi.system.service.IAgreementService; +import org.springframework.stereotype.Service; + +/** + * <p> + * 服务实现类 + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +@Service +public class AgreementServiceImpl extends ServiceImpl<AgreementMapper, Agreement> implements IAgreementService { + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CustomConfigServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CustomConfigServiceImpl.java new file mode 100644 index 0000000..109d295 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/CustomConfigServiceImpl.java @@ -0,0 +1,20 @@ +package com.ruoyi.system.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.system.domain.CustomConfig; +import com.ruoyi.system.mapper.CustomConfigMapper; +import com.ruoyi.system.service.ICustomConfigService; +import org.springframework.stereotype.Service; + +/** + * <p> + * 系统配置 服务实现类 + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +@Service +public class CustomConfigServiceImpl extends ServiceImpl<CustomConfigMapper, CustomConfig> implements ICustomConfigService { + +} diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/AgreementMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/AgreementMapper.xml new file mode 100644 index 0000000..237a23f --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/AgreementMapper.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.ruoyi.system.mapper.AgreementMapper"> + +</mapper> diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/CustomConfigMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/CustomConfigMapper.xml new file mode 100644 index 0000000..1a7ede4 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/CustomConfigMapper.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.ruoyi.system.mapper.CustomConfigMapper"> + +</mapper> -- Gitblit v1.7.1