provider.py 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. from .template import Template
  2. class Provider():
  3. description = (
  4. "Provider – единица описания поставщика услуг/ответственного лица "
  5. "за определенный ресурс (например, машину). "
  6. "По сути - это надстройка к клиентскому аккаунту, иллюстрирующая, "
  7. "что данный пользователь может выступать не только в роли потребителя. "
  8. "То есть, по тому, какие “провайдеры” находятся по идентификатору "
  9. "пользователя - можно установить конкретный список услуг "
  10. "данного пользователя."
  11. )
  12. # ID METASERVICE
  13. id_metaservice = Template.id_metaservice
  14. # DATA
  15. type = (
  16. "тип поставщика (партнер/ответственное лицо/поставщик услуг). Смысл "
  17. "такой - провайдер это статус пользователя, который, в зависимости от "
  18. "применения, может нести разный смысл и подразумевает под собой "
  19. "какой-то тип действия. Обычные исполнители - это провайдеры услуг "
  20. "(код 3). Ответственные за какое-то имущество, которые сдают его в "
  21. "аренду - это тоже провайдеры (код 2). Ответственные за набор услуг "
  22. "перед метасервисом (фактически - назначенные админы) - это "
  23. "провайдеры-партнеры (код 1)"
  24. )
  25. requirements = (
  26. "требования для того, чтобы можно было предоставлять услуги любые в "
  27. "этом метасервисе в целом (самые строгие)"
  28. )
  29. status = (
  30. "статус пользователя в системе относительно прохождения проверок "
  31. "(activity_status) (может быть active только в том случае, если "
  32. "ticket, влияющий на статус - закрыт."
  33. )
  34. location_type = (
  35. "статическая или динамическая локация оказания услуги. Если "
  36. "статическая, а исполнитель находится существенно за пределами "
  37. "локации - то тогда статус автоматом оффлайн для приема новых заявок."
  38. )
  39. default_location = (
  40. "локация по умолчанию для объекта."
  41. )
  42. # OTHER
  43. is_global = Template.is_global
  44. is_visible = Template.is_visible
  45. # FK
  46. user_id = (
  47. "уникальный идентификатор конкретного пользователя системы "
  48. "(meta-user), который будет оказывать услугу. Один пользователь может "
  49. "быть провайдером нескольких услуг. Статус провайдера означает, что с "
  50. "данным пользователем может быть установлена связь, как с исполнителем."
  51. )
  52. company = (
  53. "уникальный идентификатор компании, от лица которой выступает "
  54. "провайдер. Смысл такой - ответственны могут быть только одушевленные "
  55. "лица, компании - не одушевленные. Все услуги предоставляются через "
  56. "компании-партнеры, самозанятые или ИП являются единицами "
  57. "таких компаний."
  58. )
  59. ticket_status = (
  60. "id последнего актуального тикета, касающийся статуса. Если он меняет "
  61. "статус на закрытый - вызывается проверка, которая смотрит, нет ли "
  62. "другого открытого по пользователю."
  63. )
  64. service = (
  65. "id услуги, которую предостовляют"
  66. )