first commit

This commit is contained in:
2026-06-12 01:09:25 +08:00
commit 1b577e55fe
349 changed files with 22015 additions and 0 deletions
@@ -0,0 +1,12 @@
package com.ichangzuo.config.property;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
@ConfigurationProperties(prefix = "pay.ali")
@Data
public class AliPayProperties {
private boolean sandBox;
private String notifyUrl;
private String returnUrl;
}
@@ -0,0 +1,50 @@
package com.ichangzuo.config.property;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import java.util.Map;
/**
* 阿里云短信配置
*
* @author Ray
* @since 2024/8/17
*/
@Configuration
@ConfigurationProperties(prefix = "sms.aliyun")
@Data
public class AliyunSmsProperties {
/**
* 阿里云账户的Access Key ID,用于API请求认证
*/
private String accessKeyId;
/**
*阿里云账户的Access Key Secret,用于API请求认证
*/
private String accessKeySecret;
/**
* 阿里云短信服务API的域名 eg: dysmsapi.aliyuncs.com
*/
private String domain;
/**
* 阿里云服务的区域ID,如cn-shanghai
*/
private String regionId;
/**
* 短信签名,必须是已经在阿里云短信服务中注册并通过审核的
*/
private String signName;
/**
* 模板编码
*/
private Map<String, String> templateCodes;
}
@@ -0,0 +1,92 @@
package com.ichangzuo.config.property;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
/**
* 验证码 属性配置
*
* @author haoxr
* @since 2023/11/24
*/
@Component
@ConfigurationProperties(prefix = "captcha")
@Data
public class CaptchaProperties {
/**
* 验证码类型 circle-圆圈干扰验证码|gif-Gif验证码|line-干扰线验证码|shear-扭曲干扰验证码
*/
private String type;
/**
* 验证码图片宽度
*/
private int width;
/**
* 验证码图片高度
*/
private int height;
/**
* 干扰线数量
*/
private int interfereCount;
/**
* 文本透明度
*/
private Float textAlpha;
/**
* 验证码过期时间,单位:秒
*/
private Long expireSeconds;
/**
* 验证码字符配置
*/
private CodeProperties code;
/**
* 验证码字体
*/
private FontProperties font;
/**
* 验证码字符配置
*/
@Data
public static class CodeProperties {
/**
* 验证码字符类型 math-算术|random-随机字符串
*/
private String type;
/**
* 验证码字符长度,type=算术时,表示运算位数(1:个位数 2:十位数);type=随机字符时,表示字符个数
*/
private int length;
}
/**
* 验证码字体配置
*/
@Data
public static class FontProperties {
/**
* 字体名称
*/
private String name;
/**
* 字体样式 0-普通|1-粗体|2-斜体
*/
private int weight;
/**
* 字体大小
*/
private int size;
}
}
@@ -0,0 +1,96 @@
//package com.ichangzuo.config.property;
//
//import cn.hutool.core.io.file.FileNameUtil;
//import cn.hutool.core.map.MapUtil;
//import lombok.Data;
//import org.springframework.boot.context.properties.ConfigurationProperties;
//import org.springframework.stereotype.Component;
//
//import java.util.List;
//import java.util.Map;
//
///**
// * 代码生成配置属性
// *
// * @author Ray
// * @since 2.11.0
// */
//@Component
//@ConfigurationProperties(prefix = "codegen")
//@Data
//public class CodegenProperties {
//
//
// /**
// * 默认配置
// */
// private DefaultConfig defaultConfig ;
//
// /**
// * 模板配置
// */
// private Map<String, TemplateConfig> templateConfigs = MapUtil.newHashMap(true);
//
// /**
// * 后端应用名
// */
// private String backendAppName;
//
// /**
// * 前端应用名
// */
// private String frontendAppName;
//
// /**
// * 下载文件名
// */
// private String downloadFileName;
//
// /**
// * 排除数据表
// */
// private List<String> excludeTables;
//
// /**
// * 模板配置
// */
// @Data
// public static class TemplateConfig {
//
// /**
// * 模板路径 (e.g. /templates/codegen/controller.java.vm)
// */
// private String templatePath;
//
// /**
// * 子包名 (e.g. controller/service/mapper/model)
// */
// private String subpackageName;
//
// /**
// * 文件扩展名,如 .java
// */
// private String extension = FileNameUtil.EXT_JAVA;
//
// }
//
// /**
// * 默认配置
// */
// @Data
// public static class DefaultConfig {
//
// /**
// * 作者 (e.g. Ray)
// */
// private String author;
//
// /**
// * 默认模块名(e.g. system)
// */
// private String moduleName;
//
// }
//
//
//}
@@ -0,0 +1,99 @@
package com.ichangzuo.config.property;
import cn.hutool.extra.mail.Mail;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
/**
* 邮件配置类,用于接收和存储邮件相关的配置属性。
*
* @author Ray
* @since 2024/8/17
*/
@ConfigurationProperties(prefix = "spring.mail")
@Data
public class MailProperties {
/**
* 邮件服务器主机名或 IP 地址。
* 例如:smtp.example.com
*/
private String host;
/**
* 邮件服务器端口号。
* 例如:587
*/
private int port;
/**
* 用于连接邮件服务器的用户名。
* 例如:your_email@example.com
*/
private String username;
/**
* 用于连接邮件服务器的密码。
* 该密码应安全存储,不应在代码中硬编码。
*/
private String password;
/**
* 用于发送邮件的协议
*/
private String protocol;
/**
* 邮件发送者地址。
*/
private String from;
/**
* 邮件服务器的其他属性配置。
* 这些配置通常用于进一步定制邮件发送行为。
*/
private Properties properties = new Properties();
/**
* 内部类,用于封装邮件服务器的详细配置。
* 包含 SMTP 相关的配置选项。
*/
@Data
public static class Properties {
private Mail mail = new Mail();
@Data
public static class Mail {
/**
* SMTP 配置选项类。
* 包含认证、加密等与 SMTP 协议相关的配置。
*/
private Smtp smtp = new Smtp();
@Data
public static class Smtp {
/**
* 是否启用 SMTP 认证。
* 如果为 `true`,则需要提供有效的用户名和密码进行认证。
*/
private boolean auth;
/**
* STARTTLS 加密配置选项。
*/
private StartTls starttls = new StartTls();
@Data
public static class StartTls {
/**
* 是否启用 STARTTLS 加密。
* 如果为 `true`,在发送邮件时将启用 STARTTLS 协议进行加密传输。
*/
private boolean enable;
}
}
}
}
}
@@ -0,0 +1,44 @@
package com.ichangzuo.config.property;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import java.util.List;
/**
* @author haoxr
* @since 2024/4/18
*/
@Data
@ConfigurationProperties(prefix = "security")
public class SecurityProperties {
/**
* 白名单 URL 集合
*/
private List<String> ignoreUrls;
/**
* JWT 配置
*/
private JwtProperty jwt;
/**
* JWT 配置
*/
@Data
public static class JwtProperty {
/**
* JWT 密钥
*/
private String key;
/**
* JWT 过期时间
*/
private Long ttl;
}
}
@@ -0,0 +1,13 @@
package com.ichangzuo.config.property;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
@ConfigurationProperties(prefix = "pay.wx")
@Data
public class WxPayProperties {
private String appNotifyUrl;
private String webNotifyUrl;
private String appPrivateKeyPath;
private String webPrivateKeyPath;
}