"""DMS契约固定枚举。""" from __future__ import annotations from enum import StrEnum class RoleCode(StrEnum): USER = "USER" ADMIN = "ADMIN" class AllowedModule(StrEnum): DOCUMENT_BROWSER = "DOCUMENT_BROWSER" BACKEND_MANAGEMENT = "BACKEND_MANAGEMENT" AUDIT_LOG = "AUDIT_LOG" ORGANIZATION_USER_MANAGEMENT = "ORGANIZATION_USER_MANAGEMENT" class DocumentType(StrEnum): MAIN = "MAIN" SUB_PLAN = "SUB_PLAN" ATTACHMENT = "ATTACHMENT" class DocumentStatus(StrEnum): DRAFT = "DRAFT" PUBLISHED = "PUBLISHED" ARCHIVED = "ARCHIVED" class SecurityLevel(StrEnum): PUBLIC = "PUBLIC" INTERNAL = "INTERNAL" SECRET = "SECRET" CONFIDENTIAL = "CONFIDENTIAL" TOP_SECRET = "TOP_SECRET" SECURITY_LEVEL_VALUES = { SecurityLevel.PUBLIC: 10, SecurityLevel.INTERNAL: 20, SecurityLevel.SECRET: 30, SecurityLevel.CONFIDENTIAL: 40, SecurityLevel.TOP_SECRET: 50, } class AttachmentType(StrEnum): SUPPORT_ACHIEVEMENT = "SUPPORT_ACHIEVEMENT" TRAINING_MATERIAL = "TRAINING_MATERIAL" TYPICAL_CASE = "TYPICAL_CASE" # 配套方案(原SUB_PLAN并轨,0020迁移):入库/挂载/解绑与其余三类附件一致 ACCOMPANYING_PLAN = "ACCOMPANYING_PLAN" class DeptScope(StrEnum): OWN = "OWN" # 其他部门:所属部门子树之外的全部部门(含无归属文档) OTHER = "OTHER" class AllowedAction(StrEnum): VIEW = "VIEW" DOWNLOAD = "DOWNLOAD" EDIT = "EDIT" CONFIG_PERMISSION = "CONFIG_PERMISSION" DELETE = "DELETE" BIND_ATTACHMENT = "BIND_ATTACHMENT" UNBIND_ATTACHMENT = "UNBIND_ATTACHMENT" class CategoryType(StrEnum): SCENE = "SCENE" STYLE = "STYLE" SITUATION = "SITUATION" VERSION = "VERSION" OTHER = "OTHER" class EnabledStatus(StrEnum): ENABLED = "ENABLED" DISABLED = "DISABLED" class AuditResult(StrEnum): SUCCESS = "SUCCESS" FAILURE = "FAILURE" class AuditAction(StrEnum): LOGIN = "LOGIN" LOGOUT = "LOGOUT" VIEW_DOCUMENT = "VIEW_DOCUMENT" DOWNLOAD_DOCUMENT = "DOWNLOAD_DOCUMENT" UPLOAD_DOCUMENT = "UPLOAD_DOCUMENT" BATCH_IMPORT = "BATCH_IMPORT" EDIT_DOCUMENT = "EDIT_DOCUMENT" DELETE_DOCUMENT = "DELETE_DOCUMENT" CREATE_CATEGORY = "CREATE_CATEGORY" EDIT_CATEGORY = "EDIT_CATEGORY" DELETE_CATEGORY = "DELETE_CATEGORY" CHANGE_PERMISSION = "CHANGE_PERMISSION" BIND_ATTACHMENT = "BIND_ATTACHMENT" UNBIND_ATTACHMENT = "UNBIND_ATTACHMENT" REORDER_DOCUMENT = "REORDER_DOCUMENT" REORDER_ATTACHMENT = "REORDER_ATTACHMENT" REORDER_CATEGORY = "REORDER_CATEGORY" MOVE_DOCUMENT = "MOVE_DOCUMENT" MOVE_ATTACHMENT = "MOVE_ATTACHMENT" RESTORE_DOCUMENT = "RESTORE_DOCUMENT" CREATE_ORGANIZATION = "CREATE_ORGANIZATION" EDIT_ORGANIZATION = "EDIT_ORGANIZATION" DELETE_ORGANIZATION = "DELETE_ORGANIZATION" CREATE_USER = "CREATE_USER" EDIT_USER = "EDIT_USER" DELETE_USER = "DELETE_USER" RESET_USER_PASSWORD = "RESET_USER_PASSWORD" CREATE_ROLE = "CREATE_ROLE" EDIT_ROLE = "EDIT_ROLE" DELETE_ROLE = "DELETE_ROLE" CHANGE_ROLE_PERMISSION = "CHANGE_ROLE_PERMISSION" CHANGE_ROLE_USER = "CHANGE_ROLE_USER" DOCUMENT_PASSWORD_SET = "DOCUMENT_PASSWORD_SET" DOCUMENT_PASSWORD_REMOVE = "DOCUMENT_PASSWORD_REMOVE" CREATE_IP_ENTRY = "CREATE_IP_ENTRY" EDIT_IP_ENTRY = "EDIT_IP_ENTRY" DELETE_IP_ENTRY = "DELETE_IP_ENTRY" ASSIGN_ORG_IP = "ASSIGN_ORG_IP" # 借阅授权(0026迁移):审批单凭证生命周期 UPLOAD_PERMISSION_VOUCHER = "UPLOAD_PERMISSION_VOUCHER" DELETE_PERMISSION_VOUCHER = "DELETE_PERMISSION_VOUCHER" class AuditTarget(StrEnum): AUTH = "AUTH" CATEGORY = "CATEGORY" DOCUMENT = "DOCUMENT" ATTACHMENT = "ATTACHMENT" PERMISSION = "PERMISSION" ATTACHMENT_BINDING = "ATTACHMENT_BINDING" ORGANIZATION = "ORGANIZATION" USER = "USER" ROLE = "ROLE" IP_ENTRY = "IP_ENTRY" class ContentExtractStatus(StrEnum): SUCCESS = "SUCCESS" EMPTY = "EMPTY" UNSUPPORTED = "UNSUPPORTED" FAILED = "FAILED" class DocumentPasswordAction(StrEnum): """方案密码锁可保护的操作(与权限矩阵7操作对齐)。""" VIEW = "VIEW" DOWNLOAD = "DOWNLOAD" EDIT = "EDIT" DELETE = "DELETE" CONFIG_PERMISSION = "CONFIG_PERMISSION" BIND_ATTACHMENT = "BIND_ATTACHMENT" UNBIND_ATTACHMENT = "UNBIND_ATTACHMENT"