enums.py 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. """DMS契约固定枚举。"""
  2. from __future__ import annotations
  3. from enum import StrEnum
  4. class RoleCode(StrEnum):
  5. USER = "USER"
  6. ADMIN = "ADMIN"
  7. class AllowedModule(StrEnum):
  8. DOCUMENT_BROWSER = "DOCUMENT_BROWSER"
  9. BACKEND_MANAGEMENT = "BACKEND_MANAGEMENT"
  10. AUDIT_LOG = "AUDIT_LOG"
  11. class DocumentType(StrEnum):
  12. MAIN = "MAIN"
  13. SUB_PLAN = "SUB_PLAN"
  14. ATTACHMENT = "ATTACHMENT"
  15. class DocumentStatus(StrEnum):
  16. DRAFT = "DRAFT"
  17. PUBLISHED = "PUBLISHED"
  18. ARCHIVED = "ARCHIVED"
  19. class SecurityLevel(StrEnum):
  20. PUBLIC = "PUBLIC"
  21. INTERNAL = "INTERNAL"
  22. SECRET = "SECRET"
  23. CONFIDENTIAL = "CONFIDENTIAL"
  24. TOP_SECRET = "TOP_SECRET"
  25. SECURITY_LEVEL_VALUES = {
  26. SecurityLevel.PUBLIC: 10,
  27. SecurityLevel.INTERNAL: 20,
  28. SecurityLevel.SECRET: 30,
  29. SecurityLevel.CONFIDENTIAL: 40,
  30. SecurityLevel.TOP_SECRET: 50,
  31. }
  32. class VisibilityType(StrEnum):
  33. ALL_AUTHENTICATED = "ALL_AUTHENTICATED"
  34. ORGANIZATION = "ORGANIZATION"
  35. CUSTOM = "CUSTOM"
  36. class AttachmentType(StrEnum):
  37. POLICY = "POLICY"
  38. WORK_STANDARD = "WORK_STANDARD"
  39. TABLE = "TABLE"
  40. DIAGRAM = "DIAGRAM"
  41. OTHER = "OTHER"
  42. class SubjectType(StrEnum):
  43. ORG = "ORG"
  44. USER = "USER"
  45. class AllowedAction(StrEnum):
  46. VIEW = "VIEW"
  47. DOWNLOAD = "DOWNLOAD"
  48. EDIT = "EDIT"
  49. CONFIG_PERMISSION = "CONFIG_PERMISSION"
  50. DELETE = "DELETE"
  51. BIND_ATTACHMENT = "BIND_ATTACHMENT"
  52. UNBIND_ATTACHMENT = "UNBIND_ATTACHMENT"
  53. class CategoryType(StrEnum):
  54. SCENE = "SCENE"
  55. STYLE = "STYLE"
  56. SITUATION = "SITUATION"
  57. VERSION = "VERSION"
  58. OTHER = "OTHER"
  59. class EnabledStatus(StrEnum):
  60. ENABLED = "ENABLED"
  61. DISABLED = "DISABLED"
  62. class AuditResult(StrEnum):
  63. SUCCESS = "SUCCESS"
  64. FAILURE = "FAILURE"
  65. class AuditAction(StrEnum):
  66. LOGIN = "LOGIN"
  67. LOGOUT = "LOGOUT"
  68. VIEW_DOCUMENT = "VIEW_DOCUMENT"
  69. DOWNLOAD_DOCUMENT = "DOWNLOAD_DOCUMENT"
  70. UPLOAD_DOCUMENT = "UPLOAD_DOCUMENT"
  71. BATCH_IMPORT = "BATCH_IMPORT"
  72. EDIT_DOCUMENT = "EDIT_DOCUMENT"
  73. DELETE_DOCUMENT = "DELETE_DOCUMENT"
  74. CREATE_CATEGORY = "CREATE_CATEGORY"
  75. EDIT_CATEGORY = "EDIT_CATEGORY"
  76. DELETE_CATEGORY = "DELETE_CATEGORY"
  77. CHANGE_PERMISSION = "CHANGE_PERMISSION"
  78. BIND_ATTACHMENT = "BIND_ATTACHMENT"
  79. UNBIND_ATTACHMENT = "UNBIND_ATTACHMENT"
  80. RESTORE_DOCUMENT = "RESTORE_DOCUMENT"
  81. class AuditTarget(StrEnum):
  82. AUTH = "AUTH"
  83. CATEGORY = "CATEGORY"
  84. DOCUMENT = "DOCUMENT"
  85. ATTACHMENT = "ATTACHMENT"
  86. PERMISSION = "PERMISSION"
  87. ATTACHMENT_BINDING = "ATTACHMENT_BINDING"
  88. class ContentExtractStatus(StrEnum):
  89. SUCCESS = "SUCCESS"
  90. EMPTY = "EMPTY"
  91. UNSUPPORTED = "UNSUPPORTED"
  92. FAILED = "FAILED"