1
0

data.py 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. from datetime import datetime, timedelta
  2. from dbsynce.lib.core import get_admin_url
  3. from dbsynce.models import ServiceCategory
  4. from tickets.models import Ticket, TicketList
  5. def create_ticket_service_category_activation(user, service_category):
  6. """
  7. Создание тикета на активацию Категории Сервиса.
  8. Список: 2101, METASERVICE-SUPERVISOR: Активация категорий сервисов (ST_REQUEST)
  9. Тип: 1, ST_REQUEST
  10. """
  11. # FIXME: Возможно нужно автоматически создавать содержимое поля json
  12. #TODO вместе с созданием тикета должно отправляться уведомление в группу, но может быть это будет на уровне обработчиков
  13. return Ticket.objects.create(
  14. title=f"Создание новой категории сервиса '{service_category.id_metaservice}' - '{service_category.caption}'",
  15. ticket_list=TicketList.objects.get(pk=2102),
  16. ticket_type=1,
  17. due_date=datetime.now().date() + timedelta(days=30),
  18. created_by=user,
  19. note=f"""
  20. Пользователь {user} отправил заявку на добавление и активацию категории сервиса:\n
  21. - Название: {service_category.caption}\n
  22. - Договор: {service_category.link_agreement}\n
  23. - Комиссия Сервиса: {service_category.metaservice_comission}\n
  24. - Тарификация: {service_category.price_type}\n
  25. - Описание: {service_category.description}\n
  26. \n
  27. Проверьте всю информацию и для активации категории сервиса измените статус заявки на ACCEPTED.
  28. Это будет означать, что Сервис сможет обрабатывать заказы данной категории.
  29. """
  30. )
  31. def create_service_category(service_category, metaservice, user):
  32. """
  33. Создание записи категории Сервиса.
  34. Создается запись в БД, Тикет на проверку и уведомление в джаббер
  35. """
  36. return ServiceCategory.objects.create(
  37. id_metaservice=service_category.id_metaservice,
  38. codename=service_category.codename,
  39. #TODO заменить дефолт после появления соответствующего функционала
  40. requirements="DSMPUB",
  41. status="0",
  42. caption=service_category.caption,
  43. description=service_category.description,
  44. link_agreement=service_category.link_agreement,
  45. price_type=service_category.price_type,
  46. metaservice_comission=service_category.metaservice_comission,
  47. #TODO заменить дефолт после появления соответствующего функционала
  48. is_global="0",
  49. is_visible="0",
  50. ticket_status=create_ticket_service_category_activation(user, service_category)
  51. )