client.py 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. from django.contrib.auth import get_user_model
  2. from django.db import models
  3. from tickets.models import Ticket
  4. from dbsynce.docs.database.client import Client as HelpTexts
  5. from core.settings_vars import METASERVICE_ID
  6. from dbsynce.lib import dicts
  7. class Client(models.Model):
  8. """
  9. Client - это таблица с клиентами. Клиент/пользователь/аккаунт
  10. в системе, который по логике получает услугу.
  11. """
  12. # ID METASERVICE
  13. id_metaservice = models.PositiveIntegerField(
  14. default=METASERVICE_ID,
  15. help_text=HelpTexts.id_metaservice
  16. )
  17. # DATA
  18. requirements = models.CharField(
  19. max_length=50,
  20. #TODO ADD CORRECT DEFAULT!
  21. default="DSMPUB",
  22. help_text=HelpTexts.requirements
  23. )
  24. status = models.CharField(
  25. max_length=1,
  26. default="1",
  27. choices = list(dicts.activity_status_by_code.items()),
  28. help_text=HelpTexts.status
  29. )
  30. # OTHER
  31. is_global = models.CharField(
  32. max_length=1,
  33. default="f",
  34. choices = list(dicts.is_global_by_code.items()),
  35. help_text=HelpTexts.is_global
  36. )
  37. is_visible = models.CharField(
  38. max_length=1,
  39. default="f",
  40. choices = list(dicts.is_visible_by_code.items()),
  41. help_text=HelpTexts.is_visible
  42. )
  43. # FK
  44. ticket_status = models.ForeignKey(
  45. Ticket,
  46. on_delete=models.DO_NOTHING,
  47. help_text=HelpTexts.ticket_status
  48. )
  49. user = models.ForeignKey(
  50. get_user_model(),
  51. on_delete=models.DO_NOTHING,
  52. help_text=HelpTexts.user
  53. )
  54. class Meta:
  55. db_table = "client"
  56. verbose_name = "Клиента"
  57. verbose_name_plural = "Клиенты"