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