#!/usr/bin/env python # -*- encoding: utf-8 -*- """ @Version: 1.0 @Python Version:3.6.6 @Author: ludq1 @Email: ludq1@chinaunicom.cn @date: 2023/04/07 11:40:00 @Description: """ class EnvNameConst: r""" 环境变量名称常量 """ ENV_LOGIN_REQUIRED = 'ENV_LOGIN_REQUIRED' ENV_PERMISSION_REQUIRED = 'ENV_PERMISSION_REQUIRED' ENV_ROLE_REQUIRED = 'ENV_ROLE_REQUIRED' ENV_DONT_OVERRITE_USERINFO_FROM_FRANT = "DontOverrideUserInfoFromFront" ENV_LOCAL_RUN = "LOCAL_RUN" ENV_MYSQLPOOL_SERVICE = "MYSQLPOOL_SERVICE" class UserInfoKeyConst: r""" 缓存中用户信息的key """ G_USERINFO = 'userinfo' PERMISSION = 'permissions' USERROLE = 'roles' USER_SYSTEM = 'usersystem' TENANT_ID = 'tenantid' USER_ID = 'userid' USER_NAME = 'username' DEPT_NAME_SHORT = 'dept_name' DEPT_NAME_FULL = 'deptname' DEPT_ID = 'dept_id' OU_ID = 'OUID' OU_NAME = 'OU' EMAIL = 'email' class GlobalReqKeyConst: r""" 全局的Http请求key常量 """ TRANSJSONARRAY = "transjsonarray" TRANSSQL = "transsql" SQL = "sql" PROCEDURENAME = "procedurename" CONDITIONEXEC = "conditionexec" QUERYSTR = "querystr" CHECKCONTENT = "checkcontent" COLUMNNAME = "columnname" COLUMNTYPE = "columntype" CHECKTYPE = "checktype" COMPAREVALUE = "comparevalue" CHECKTIPS = "checktips" EXECTYPE = "exectype" EXECKEYWHENTRUE = "execkeywhensuccess" EXECKEYWHENFALSE = "execkeywhenfalse" COLUMNTYPE_STRING = "string" COLUMNTYPE_INT = "int" COLUMNTYPE_LONG = "long" COLUMNTYPE_DOUBLE = "double" COLUMNTYPE_DATE = "date" CHECKTYPE_EQ = "eq" CHECKTYPE_REGEQ = "regeq" CHECKTYPE_NOTEQ = "noteq" CHECKTYPE_REGNOTEQ = "regnoteq" CHECKTYPE_GT = "gt" CHECKTYPE_GE = "ge" CHECKTYPE_LT = "lt" CHECKTYPE_LE = "le" EXECTYPE_ROLLBACK = "rollback" EXECTYPE_COMMIT = "commit" EXECTYPE_CONTINUE = "continue" EXECTYPE_BRANCH = "branch" class GlobalRetKeyConst: r""" 全局的Http请求返回的json的key常量 """ RET_CODE = "RetCode" RET_VAL = "RetVal" SUBMITTEDWEBARG = "SubmittedWebArg" DATAROWS = "DataRows" ROWCOUNT = "RowCount" PAGECOUNT = "PageCount" class SkyGlobalRetKeyConst: r""" 天宫全局的Http请求返回的json的key常量 """ RET_CODE = "code" RET_VAL = "message" SUBMITTEDWEBARG = "SubmittedWebArg" DATAROWS = "data" ROWCOUNT = "RowCount" PAGECOUNT = "PageCount" class GlobalConst: """ 全局常量类 """ RETKEY_RET_CODE = GlobalRetKeyConst.RET_CODE RETKEY_RET_VAL = GlobalRetKeyConst.RET_VAL RETKEY_SUBMITTEDWEBARG = GlobalRetKeyConst.SUBMITTEDWEBARG RETCODE_COMMON_ERROR = "0" RETCODE_SUCESS_CODE = "1" RETKEY_DATAROWS = GlobalRetKeyConst.DATAROWS RETKEY_ROWCOUNT = GlobalRetKeyConst.ROWCOUNT RETKEY_PAGECOUNT = GlobalRetKeyConst.PAGECOUNT RETCODE_FOR_NOT_LOGIN = '10000' RETVAL_FOR_NOT_LOGIN = '用户未登录' RETCODE_FOR_NO_PERMISSION = '10001' RETVAL_FOR_NO_PERMISSION = '权限不足' RETCODE_FOR_MISS_ROLE = '10002' RETVAL_FOR_MISS_ROLE = '缺少角色' G_KEY_USERINFO = UserInfoKeyConst.G_USERINFO G_USERINFO_KEY_USER_SYSTEM = UserInfoKeyConst.USER_SYSTEM G_USERINFO_KEY_USER_ID = UserInfoKeyConst.USER_ID G_USERINFO_KEY_PERMISSION = UserInfoKeyConst.PERMISSION G_USERINFO_KEY_USERROLE = UserInfoKeyConst.USERROLE ENV_LOGIN_REQUIRED = EnvNameConst.ENV_LOGIN_REQUIRED ENV_PERMISSION_REQUIRED = EnvNameConst.ENV_PERMISSION_REQUIRED ENV_ROLE_REQUIRED = EnvNameConst.ENV_ROLE_REQUIRED CHARACTERENCODING_UTF8 = "UTF-8" DEFAULTCONFIG_CHARACTERENCODING = CHARACTERENCODING_UTF8 DEFAULTCONFIG_CONTENTTYPE = "text/html;charset=utf-8" DEFAULT_URLSCHEMA = "http://" DEFAULT_URLSCHEMA_SECRUE = "https://" RUNTIMEENV_PROD = "prod" RUNTIMEENV_UAT = "uat" RUNTIMEENV_DEV = "dev" class SkyGlobalConst: """ 全局常量类 """ RETKEY_RET_CODE = SkyGlobalRetKeyConst.RET_CODE RETKEY_RET_VAL = SkyGlobalRetKeyConst.RET_VAL RETKEY_SUBMITTEDWEBARG = SkyGlobalRetKeyConst.SUBMITTEDWEBARG RETCODE_COMMON_ERROR = "ERROR" RETCODE_SUCESS_CODE = "OK" RETKEY_DATAROWS = SkyGlobalRetKeyConst.DATAROWS RETKEY_ROWCOUNT = SkyGlobalRetKeyConst.ROWCOUNT RETKEY_PAGECOUNT = SkyGlobalRetKeyConst.PAGECOUNT RETCODE_FOR_NOT_LOGIN = '10000' RETVAL_FOR_NOT_LOGIN = '用户未登录' RETCODE_FOR_NO_PERMISSION = '10001' RETVAL_FOR_NO_PERMISSION = '权限不足' RETCODE_FOR_MISS_ROLE = '10002' RETVAL_FOR_MISS_ROLE = '缺少角色' G_KEY_USERINFO = UserInfoKeyConst.G_USERINFO G_USERINFO_KEY_USER_SYSTEM = UserInfoKeyConst.USER_SYSTEM G_USERINFO_KEY_USER_ID = UserInfoKeyConst.USER_ID G_USERINFO_KEY_PERMISSION = UserInfoKeyConst.PERMISSION G_USERINFO_KEY_USERROLE = UserInfoKeyConst.USERROLE ENV_LOGIN_REQUIRED = EnvNameConst.ENV_LOGIN_REQUIRED ENV_PERMISSION_REQUIRED = EnvNameConst.ENV_PERMISSION_REQUIRED ENV_ROLE_REQUIRED = EnvNameConst.ENV_ROLE_REQUIRED CHARACTERENCODING_UTF8 = "UTF-8" DEFAULTCONFIG_CHARACTERENCODING = CHARACTERENCODING_UTF8 DEFAULTCONFIG_CONTENTTYPE = "text/html;charset=utf-8" DEFAULT_URLSCHEMA = "http://" DEFAULT_URLSCHEMA_SECRUE = "https://" RUNTIMEENV_PROD = "prod" RUNTIMEENV_UAT = "uat" RUNTIMEENV_DEV = "dev" class HttpConst: """ http 常量 """ HEADER_KEY_REQUEST_METHOD = "Request Method" HEADER_KEY_CONTENT_TYPE = "Content-Type" HEADER_KEY_COOKIE = "Cookie" REQUEST_METHOD_GET = "GET" REQUEST_METHOD_POST = "POST" CONTENT_TYPE_URLENCODED = "application/x-www-form-urlencoded" CONTENT_TYPE_JSON = "application/json" CONTENT_TYPE_PATH_JSON = "application/merge-patch+json" AUTH_KEY = "Authorization" AUTH_BEARER_PREFIX = "Bearer " HEADERKEY_ACCESS_CONTROL_ALLOW_ORIGIN = "Access-Control-Allow-Origin" class RedisInfoKeysConst: """ redis 信息格式key """ REDIS_MASTER_KEY = "redis_master" REDIS_SLAVE_KEY = "redis_slave" class RedisConnEnvConst: """ redis 环境变量 """ CONN_MR_IP = "REDIS_MR_CONN_IP" CONN_MR_PORT = "REDIS_MR_PORT" CONN_MR_AUTH = "REDIS_MR_AUTH" CONN_MR_DB = "REDIS_MR_DB_INDEX" CONN_SL_IP = "REDIS_SL_CONN_IP" CONN_SL_PORT = "REDIS_SL_PORT" CONN_SL_AUTH = "REDIS_SL_AUTH" CONN_SL_DB = "REDIS_SL_DB_INDEX" class RedisConnConst: """ redis 常量 """ CONN_IP = "conn_ip" CONN_PORT = "conn_port" CONN_AUTH = "conn_auth" CONN_DB = "conn_db" class RedisSentinelConnEnvConst: """ redis哨兵 环境变量 """ CONN_IP = "REDIS_SENTINEL_CONN_IP" CONN_PORT = "REDIS_SENTINEL_PORT" CONN_AUTH = "REDIS_SENTINEL_AUTH" CONN_DB = "REDIS_SENTINEL_DB_INDEX" class RedisSentinelConnConst: """ redis 常量 """ CONN_IP = "conn_ip" CONN_PORT = "conn_port" CONN_CLUSTERNAME = "conn_clustername" CONN_HOSTS = "conn_hosts" class RedisConst: """ Redis常量 """ # 最大周期 EXPIRE_TIME = "expire_time" class RedisDbNumConst: """ Redis库分布 """ # 验证码 ID_INFO = "9" # 登录信息 LOGIN_INFO = "10" class DateTimeConst: r""" 日期常量类 """ ALL_DATEFORMAT_PATTERNS = [ '%Y/%m/%d %H:%M:%S.%f', '%Y-%m-%d %H:%M:%S.%f', '%Y/%m/%d %H:%M:%S', '%Y-%m-%d %H:%M:%S', '%Y/%m/%d', '%Y-%m-%d', '%Y-%m-%dT%H:%M:%SZ' ] COMMON_DATETIME_FORMAT = '%Y-%m-%d %H:%M:%S' RFC3339_DATETIME_FORMAT = '%Y-%m-%dT%H:%M:%SZ' COMMON_DATE_FORMAT = '%Y-%m-%d' class RegexPatternConst: r""" 正则表达式常量类 """ URL_PATTERN = '^(https?):\\/\\/([\\w-]+(\\.[\\w-]+)*\\/?)+(\\?([\\w\\-\\.,@?^=%&:\\/~\\+#]*)+)?$' class FlaskConfigIDConst: r""" flask 全局config id """ # InitFlaskInfo 在flask配置信息的唯一标识ID FLASK_INIT = "chinaunicom.flask.init." # 初始化信息 INIT_CONFIG_ID = FLASK_INIT + "cfg.handle.id" # redis 类 id REDIS_CLASS_ID = FLASK_INIT + "redis.handle.id" class CookiesConstKey: r""" 业务需要用的关键的key """ # CSM登录标识 LOGIN_SESSTION_KEY = "CSMSESSTIONID"