cache_version.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. # coding=utf-8
  2. """
  3. @project: MaxKB
  4. @Author:虎虎
  5. @file: cache_version.py
  6. @date:2025/4/14 19:09
  7. @desc:
  8. """
  9. from enum import Enum
  10. class Cache_Version(Enum):
  11. # 令牌
  12. TOKEN = "TOKEN", lambda token: token
  13. # 工作空间列表
  14. WORKSPACE_LIST = "WORKSPACE:LIST", lambda user_id: user_id
  15. # 用户数据
  16. USER = "USER", lambda user_id: user_id
  17. # 当前用户所有的角色
  18. ROLE_LIST = "ROLE:LIST", lambda user_id: user_id
  19. # 当前用户所有权限
  20. PERMISSION_LIST = "PERMISSION:LIST", lambda user_id: user_id
  21. # 验证码
  22. CAPTCHA = "CAPTCHA", lambda captcha: captcha
  23. # 系统
  24. SYSTEM = "SYSTEM", lambda key: key
  25. # 应用对接三方应用的缓存
  26. APPLICATION_THIRD_PARTY = "APPLICATION:THIRD_PARTY", lambda key: key
  27. KNOWLEDGE_WORKFLOW_INTERRUPTED = "KNOWLEDGE_WORKFLOW_INTERRUPTED", lambda action_id: action_id
  28. # 对话
  29. CHAT = "CHAT", lambda key: key
  30. CHAT_INFO = "CHAT_INFO", lambda key: key
  31. CHAT_VARIABLE = "CHAT_VARIABLE", lambda key: key
  32. # 应用API KEY
  33. APPLICATION_API_KEY = "APPLICATION_API_KEY", lambda secret_key, use_get_data: secret_key
  34. CHAT_USER_TOKEN = "CHAT_USER_TOKEN", lambda token: token
  35. TOOL_WORKFLOW_EXECUTE = "TOOL_WORKFLOW_EXECUTE", lambda key: key
  36. def get_version(self):
  37. return self.value[0]
  38. def get_key_func(self):
  39. return self.value[1]
  40. def get_key(self, **kwargs):
  41. return self.value[1](**kwargs)