package com.doumee.core.constants; import lombok.AllArgsConstructor; import lombok.Getter; import java.util.*; /** * 框架级常量 * @author Eva.Caesar Liu * @since 2025/03/31 16:44 */ public interface Constants { /** * 缓存Key */ interface CacheKey { } /** * 操作类型,用于做接口验证分组 */ interface OperaType { /** * 创建 */ interface Create {} /** * 修改 */ interface Update {} /** * 修改状态 */ interface UpdateStatus {} } /** * Job常量 */ interface Job { // jobId在JOB实例中的存储参数键 String JOB_DATA_MAP_JOB_ID = "JOB_ID"; /** * JOB状态 */ @Getter @AllArgsConstructor enum JobStatus { PAUSE((byte) -1, "暂停"), READY((byte) 0, "已准备"), RUNNING((byte) 1, "运行中"), ; private byte code; private String remark; } /** * 分片状态 */ @Getter @AllArgsConstructor enum SnippetStatus { READY((byte) 0, "已准备"), RUNNING((byte) 1, "运行中"), SUCCESS((byte) 2, "执行成功"), FAILED((byte) -2, "执行失败"), ; private byte code; private String remark; } /** * 分片状态 */ @Getter @AllArgsConstructor enum LogStatus { FAILED((byte) 0, "执行失败"), SUCCESS((byte) 1, "执行成功"), IGNORE((byte) 2, "跳过"), NONE((byte) -1, "执行中"), ; private byte code; private String remark; } /** * 触发类型 */ @Getter @AllArgsConstructor enum TriggerType { SYSTEM("SYSTEM", "系统"), MANUAL("MANUAL", "手动"), ; private String code; private String remark; } } /** * 跟踪日志异常等级 */ @Getter @AllArgsConstructor enum ExceptionLevel { DANGER((byte)10, "高"), WARN((byte)5, "中"), LOW((byte)0, "低"), ; private byte level; private String remark; } /** * MyBatis自动注入忽略 */ interface Ignore { /** * 忽略时间,当不需要更新createTime/updateTime时,可使用该常量进行填充。 */ Date IGNORE_TIME = new IgnoreDate(); /** * 忽略用户,当不需要更新createUser/updateUser时,可使用该常量进行填充。 */ Integer IGNORE_USER = -1; /** * 忽略时间类 */ class IgnoreDate extends Date {} } }