Spaces:
Sleeping
Sleeping
File size: 2,018 Bytes
6bd93b2 b0a47bb 6bd93b2 365183d 6562745 365183d 509d9ea 02eff64 365183d 6562745 509d9ea c03d9f3 08b0b11 02eff64 509d9ea adaa824 b0a47bb e102c92 adaa824 68f34db 344b90b 365183d b35645d 365183d 344b90b 365183d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
from tecnicas.models import TipoTecnica, CategoriaTecnica, Tecnica, EstiloPalabra
from django.db import DatabaseError
from tecnicas.utils import controller_error
class TecnicaController():
def setTechnique(self, **kwargs):
self.technique = Tecnica(
tipo_tecnica=TipoTecnica.objects.get(nombre_tecnica=kwargs["name_tecnica"]),
id_estilo=EstiloPalabra.objects.get(id=kwargs["estilo_palabras"]),
repeticiones_max=kwargs["numero_repeticiones"] or 1,
limite_catadores=kwargs["numero_catadores"],
instrucciones=kwargs["instrucciones"],
)
def setTechniqueFromBasicData(self, basic):
self.technique = Tecnica(
tipo_tecnica=TipoTecnica.objects.get(nombre_tecnica=basic["name_tecnica"]),
id_estilo=EstiloPalabra.objects.get(nombre_estilo=basic["estilo_palabras"]),
repeticiones_max=basic["numero_repeticiones"] or 1,
limite_catadores=basic["numero_catadores"],
instrucciones=basic["instrucciones"] or "Espere instrucciones del Presentador",
)
def getDataTechnique(self):
return self.technique.toDict()
def saveTechnique(self):
try:
self.technique.save()
return self.technique
except DatabaseError:
return controller_error("No se ha podido guardar la técnica")
def deleteTechnique(self):
self.technique.delete()
@staticmethod
def getTechniqueById(id: int):
try:
technique = Tecnica.objects.get(id)
return technique
except Tecnica.DoesNotExist:
return controller_error("Técnica no encontrada")
@staticmethod
def getTypesTechnique():
showTecnicas = {}
categories = CategoriaTecnica.objects.all()
for cata in categories:
tecnicas = TipoTecnica.objects.filter(id_categoria_tecnica=cata.id)
showTecnicas[cata.nombre_categoria] = tecnicas
return showTecnicas
|