268 lines
8.0 KiB
Python
Raw Normal View History

2025-02-13 02:27:44 +08:00
# _*_ coding : UTF-8 _*_
# @Time : 2025/01/18 02:39
# @UpdateTime : 2025/01/18 02:39
# @Author : sonder
# @File : constant.py
# @Software : PyCharm
# @Comment : 本程序
from enum import Enum
class BusinessType(Enum):
"""
业务操作类型枚举
定义系统中的操作类型用于记录和分类业务日志
枚举值说明
- OTHER: 其它操作默认值为 0
- SELECT: 查询操作默认值为1
- INSERT: 新增操作值为 2
- UPDATE: 修改操作值为 3
- DELETE: 删除操作值为 4
- GRANT: 授权操作值为 5
- EXPORT: 导出数据操作值为 6
- IMPORT: 导入数据操作值为 7
- FORCE: 强制退出操作值为 8
- GENCODE: 代码生成操作值为 9
- CLEAN: 清空数据操作值为 10
"""
OTHER = 0
"""
其它操作默认值为 0
"""
SELECT = 1
"""
查询操作默认值为1
"""
INSERT = 2
"""
新增操作值为 2
"""
UPDATE = 3
"""
修改操作值为 3
"""
DELETE = 4
"""
删除操作值为 4
"""
GRANT = 5
"""
授权操作值为 5
"""
EXPORT = 6
"""
导出数据操作值为 6
"""
IMPORT = 7
"""
导入数据操作值为 7
"""
FORCE = 8
"""
强制退出操作值为 8
"""
GENCODE = 9
"""
代码生成操作值为 9
"""
CLEAN = 10
"""
清空数据操作值为 10
"""
class CommonConstant:
"""
常用常量定义类包含系统中常用的字符串标识和布尔值
属性:
WWW: `www.` 主域的前缀
HTTP: `http://` 协议前缀
HTTPS: `https://` 协议前缀
LOOKUP_RMI: RMI远程方法调用协议前缀
LOOKUP_LDAP: LDAP 协议前缀
LOOKUP_LDAPS: LDAPS 协议前缀
YES: 系统默认值 "" 的标识
NO: 系统默认值 "" 的标识
DEPT_NORMAL: 部门状态表示正常
DEPT_DISABLE: 部门状态表示停用
UNIQUE: 标识检查结果为唯一
NOT_UNIQUE: 标识检查结果为不唯一
"""
WWW = 'www.'
"""`www.` 主域的前缀"""
HTTP = 'http://'
"""`http://` 协议前缀"""
HTTPS = 'https://'
"""`https://` 协议前缀"""
LOOKUP_RMI = 'rmi:'
"""RMI远程方法调用协议前缀"""
LOOKUP_LDAP = 'ldap:'
"""LDAP 协议前缀"""
LOOKUP_LDAPS = 'ldaps:'
"""LDAPS 协议前缀"""
YES = 'Y'
"""系统默认值 "" 的标识"""
NO = 'N'
"""系统默认值 "" 的标识"""
DEPT_NORMAL = '0'
"""部门状态,表示正常"""
DEPT_DISABLE = '1'
"""部门状态,表示停用"""
UNIQUE = True
"""标识检查结果为唯一"""
NOT_UNIQUE = False
"""标识检查结果为不唯一"""
class HttpStatusConstant:
"""
定义 HTTP 状态码的常量描述不同操作的响应结果
属性:
SUCCESS: 表示操作成功HTTP 状态码 200
CREATED: 表示资源已成功创建HTTP 状态码 201
ACCEPTED: 表示请求已被接受HTTP 状态码 202
NO_CONTENT: 表示操作成功但无内容返回HTTP 状态码 204
MOVED_PERM: 表示资源已被永久移除HTTP 状态码 301
SEE_OTHER: 表示重定向到其他资源HTTP 状态码 303
NOT_MODIFIED: 表示资源未被修改HTTP 状态码 304
BAD_REQUEST: 参数错误HTTP 状态码 400
UNAUTHORIZED: 表示未授权HTTP 状态码 401
FORBIDDEN: 表示禁止访问HTTP 状态码 403
NOT_FOUND: 表示资源或服务未找到HTTP 状态码 404
BAD_METHOD: 不允许的 HTTP 方法HTTP 状态码 405
CONFLICT: 表示资源冲突HTTP 状态码 409
UNSUPPORTED_TYPE: 不支持的数据或媒体类型HTTP 状态码 415
ERROR: 表示系统内部错误HTTP 状态码 500
NOT_IMPLEMENTED: 接口未实现HTTP 状态码 501
WARN: 系统警告消息自定义状态码 601
"""
SUCCESS = 200
"""表示操作成功HTTP 状态码 200。"""
CREATED = 201
"""表示资源已成功创建HTTP 状态码 201。"""
ACCEPTED = 202
"""表示请求已被接受HTTP 状态码 202。"""
NO_CONTENT = 204
"""表示操作成功但无内容返回HTTP 状态码 204。"""
MOVED_PERM = 301
"""表示资源已被永久移除HTTP 状态码 301。"""
SEE_OTHER = 303
"""表示重定向到其他资源HTTP 状态码 303。"""
NOT_MODIFIED = 304
"""表示资源未被修改HTTP 状态码 304。"""
BAD_REQUEST = 400
"""参数错误HTTP 状态码 400。"""
UNAUTHORIZED = 401
"""表示未授权HTTP 状态码 401。"""
FORBIDDEN = 403
"""表示禁止访问HTTP 状态码 403。"""
NOT_FOUND = 404
"""表示资源或服务未找到HTTP 状态码 404。"""
BAD_METHOD = 405
"""不允许的 HTTP 方法HTTP 状态码 405。"""
CONFLICT = 409
"""表示资源冲突HTTP 状态码 409。"""
UNSUPPORTED_TYPE = 415
"""不支持的数据或媒体类型HTTP 状态码 415。"""
ERROR = 500
"""表示系统内部错误HTTP 状态码 500。"""
NOT_IMPLEMENTED = 501
"""接口未实现HTTP 状态码 501。"""
WARN = 601
"""系统警告消息,自定义状态码 601。"""
class JobConstant:
"""
定时任务相关的常量限制和规范任务模块的调用
属性:
JOB_ERROR_LIST: 禁止调用的模块及违规字符串列表包含敏感或不安全操作
JOB_WHITE_LIST: 允许调用的模块列表用于指定合法模块
"""
JOB_ERROR_LIST = [
'app', 'config', 'exceptions', 'import ', 'middlewares',
'module_admin', 'open(', 'os.', 'server', 'sub_applications',
'subprocess.', 'sys.', 'utils', 'while ', '__import__', '"', "'",
',', '?', ':', ';', '/', '|', '+', '-', '=', '~', '!', '#', '$',
'%', '^', '&', '*', '<', '>', '(', ')', '[', ']', '{', '}', ' '
]
"""禁止调用的模块及违规字符串列表,包含敏感或不安全操作。"""
JOB_WHITE_LIST = ['module_task']
"""允许调用的模块列表,用于指定合法模块。"""
class RedisKeyConfig(Enum):
"""
定义 Redis 键的常量用于缓存和存储数据
"""
@property
def key(self):
"""
获取 Redis 键名
:return: 键名字符串
"""
return self.value.get('key')
@property
def remark(self):
"""
获取键名备注信息
:return: 备注信息字符串
"""
return self.value.get('remark')
ACCESS_TOKEN = {'key': 'access_token', 'remark': '登录令牌信息'}
"""登录令牌信息,存储用户的访问令牌。"""
USER_INFO = {'key': 'user_info', 'remark': '用户信息'}
"""用户信息,存储用户的详细信息。"""
USER_ROUTES = {'key': 'user_routes', 'remark': '用户路由信息'}
"""用户路由信息,存储用户的路由信息。"""
CAPTCHA_CODES = {'key': 'captcha_codes', 'remark': '图片验证码'}
"""图片验证码,存储验证码及其校验信息。"""
CAPTCHA_TYPES = {'key': 'captcha_types', 'remark': '图片验证码类型'}
"""图片验证码类型,存储验证码类型及其配置信息。"""
EMAIL_CODES = {'key': 'email_codes', 'remark': '邮箱验证码'}
"""邮箱验证码,存储邮箱验证码及其校验信息。"""
TRANSLATION_INFO = {'key': 'translation_info', 'remark': '国际化信息'}
"""用于存储国际化数据。"""
TRANSLATION_TYPES = {'key': 'translation_types', 'remark': '国际化类型'}
"""国际化类型,存储国际化类型及其配置信息。"""
SYSTEM_CONFIG = {'key': 'system_config', 'remark': '系统配置信息'}
"""系统配置信息,存储系统的配置信息。"""