enums.py 2.5 KB

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