Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

user_canvas_version.py 1.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. from api.db.db_models import UserCanvasVersion, DB
  2. from api.db.services.common_service import CommonService
  3. from peewee import DoesNotExist
  4. class UserCanvasVersionService(CommonService):
  5. model = UserCanvasVersion
  6. @classmethod
  7. @DB.connection_context()
  8. def list_by_canvas_id(cls, user_canvas_id):
  9. try:
  10. user_canvas_version = cls.model.select(
  11. *[cls.model.id,
  12. cls.model.create_time,
  13. cls.model.title,
  14. cls.model.create_date,
  15. cls.model.update_date,
  16. cls.model.user_canvas_id,
  17. cls.model.update_time]
  18. ).where(cls.model.user_canvas_id == user_canvas_id)
  19. return user_canvas_version
  20. except DoesNotExist:
  21. return None
  22. except Exception:
  23. return None
  24. @classmethod
  25. @DB.connection_context()
  26. def delete_all_versions(cls, user_canvas_id):
  27. try:
  28. user_canvas_version = cls.model.select().where(cls.model.user_canvas_id == user_canvas_id).order_by(cls.model.create_time.desc())
  29. if user_canvas_version.count() > 20:
  30. for i in range(20, user_canvas_version.count()):
  31. cls.delete(user_canvas_version[i].id)
  32. return True
  33. except DoesNotExist:
  34. return None
  35. except Exception:
  36. return None