Norberto Montalvo García commited on
Commit
23abfd2
·
unverified ·
2 Parent(s): a13698b ce8a660

Merge pull request #32 from CascoArcilla/HU10

Browse files
tecnicas/controllers/models_controller/sesion_controller.py CHANGED
@@ -125,12 +125,7 @@ class SesionController():
125
  return controller_error("Presentador invalido")
126
 
127
  @staticmethod
128
- def finishRepetion(session: SesionSensorial | str):
129
- if isinstance(session, str):
130
- use_session = SesionSensorial.objects.get(codigo_sesion=session)
131
- else:
132
- use_session = session
133
-
134
- use_session.activo = False
135
- use_session.save()
136
  return session
 
125
  return controller_error("Presentador invalido")
126
 
127
  @staticmethod
128
+ def finishRepetion(session: SesionSensorial):
129
+ session.activo = False
130
+ session.save()
 
 
 
 
 
131
  return session
tecnicas/controllers/views_controller/session_management/monitor_controller.py CHANGED
@@ -1,5 +1,6 @@
1
  from django.http import HttpRequest
2
- from django.shortcuts import render
 
3
  from tecnicas.models import SesionSensorial, Producto, EsAtributo, EsVocabulario
4
  from tecnicas.controllers import ParticipacionController, SesionController
5
  from tecnicas.utils import controller_error
@@ -12,6 +13,18 @@ class MonitorController():
12
  def __init__(self, session: SesionSensorial):
13
  self.sensorial_session = session
14
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  def setContext(self):
16
  self.participations = ParticipacionController.getParticipationsInTechinique(
17
  self.sensorial_session.tecnica)
@@ -26,7 +39,7 @@ class MonitorController():
26
  "use_technique": self.sensorial_session.tecnica.tipo_tecnica.nombre_tecnica
27
  }
28
 
29
- def controlGetResponse(self, request: HttpRequest, error: str = "", message: str = ""):
30
  self.setContext()
31
 
32
  if error != "" or error:
@@ -36,7 +49,7 @@ class MonitorController():
36
 
37
  return render(request, self.url_view, self.context)
38
 
39
- def getExpectedRatingsEscalasRapida(self):
40
  num_products = Producto.objects.filter(
41
  id_tecnica=self.sensorial_session.tecnica).count()
42
  style_words = self.sensorial_session.tecnica.id_estilo
@@ -52,8 +65,6 @@ class MonitorController():
52
  return num_products * num_words
53
 
54
  def finishSession(self):
55
- response = SesionController.finishRepetion(self.sensorial_session)
56
- if isinstance(response, dict):
57
- return controller_error(response["error"])
58
- self.sensorial_session.refresh_from_db()
59
  return self.sensorial_session
 
1
  from django.http import HttpRequest
2
+ from django.shortcuts import render, redirect
3
+ from django.urls import reverse
4
  from tecnicas.models import SesionSensorial, Producto, EsAtributo, EsVocabulario
5
  from tecnicas.controllers import ParticipacionController, SesionController
6
  from tecnicas.utils import controller_error
 
13
  def __init__(self, session: SesionSensorial):
14
  self.sensorial_session = session
15
 
16
+ def controllPostFinishSession(self, request: HttpRequest):
17
+ self.setContext()
18
+ (is_all_end, message) = self.checkAllFinish()
19
+ if not is_all_end:
20
+ self.context["error"] = message
21
+ return render(request, self.url_view, self.context)
22
+ self.finishSession()
23
+ return redirect(reverse(self.previus_view, kwargs={"session_code": self.sensorial_session.codigo_sesion}))
24
+
25
+ def checkAllFinish(self):
26
+ return (False, "Función sin implementar")
27
+
28
  def setContext(self):
29
  self.participations = ParticipacionController.getParticipationsInTechinique(
30
  self.sensorial_session.tecnica)
 
39
  "use_technique": self.sensorial_session.tecnica.tipo_tecnica.nombre_tecnica
40
  }
41
 
42
+ def controllGetResponse(self, request: HttpRequest, error: str = "", message: str = ""):
43
  self.setContext()
44
 
45
  if error != "" or error:
 
49
 
50
  return render(request, self.url_view, self.context)
51
 
52
+ def getExpectedRatings(self):
53
  num_products = Producto.objects.filter(
54
  id_tecnica=self.sensorial_session.tecnica).count()
55
  style_words = self.sensorial_session.tecnica.id_estilo
 
65
  return num_products * num_words
66
 
67
  def finishSession(self):
68
+ self.sensorial_session.activo = False
69
+ self.sensorial_session.save()
 
 
70
  return self.sensorial_session
tecnicas/controllers/views_controller/session_management/monitor_escalas_controller.py CHANGED
@@ -12,23 +12,10 @@ class MonitorEscalasController(MonitorController):
12
  self.url_view = "tecnicas/manage_sesions/monitor-sesion.html"
13
  self.previus_view = "cata_system:detalles_sesion"
14
 
15
- def controllPostFinishSession(self, request: HttpRequest):
16
- self.setContext()
17
- (is_all_end, message) = self.checkAllFinish()
18
- if not is_all_end:
19
- self.context["error"] = message
20
- return render(request, self.url_view, self.context)
21
- response = self.finishSession()
22
- if isinstance(response, dict):
23
- self.context["error"] = response["error"]
24
- return render(request, self.url_view, self.context)
25
- self.context["message"] = message
26
- return redirect(reverse(self.previus_view, kwargs={"session_code": self.sensorial_session.codigo_sesion}))
27
-
28
  def checkAllFinish(self):
29
  technique = self.sensorial_session.tecnica
30
 
31
- expected_ratings_repetition = self.getExpectedRatingsEscalasRapida()
32
 
33
  all_participations = list(
34
  Participacion.objects.filter(tecnica=technique))
 
12
  self.url_view = "tecnicas/manage_sesions/monitor-sesion.html"
13
  self.previus_view = "cata_system:detalles_sesion"
14
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  def checkAllFinish(self):
16
  technique = self.sensorial_session.tecnica
17
 
18
+ expected_ratings_repetition = self.getExpectedRatings()
19
 
20
  all_participations = list(
21
  Participacion.objects.filter(tecnica=technique))
tecnicas/controllers/views_controller/session_management/monitor_rata_controller.py CHANGED
@@ -12,23 +12,10 @@ class MonitorRATAController(MonitorController):
12
  self.url_view = "tecnicas/manage_sesions/monitor-sesion.html"
13
  self.previus_view = "cata_system:detalles_sesion"
14
 
15
- def controllPostFinishSession(self, request: HttpRequest):
16
- self.setContext()
17
- (is_all_end, message) = self.checkAllFinish()
18
- if not is_all_end:
19
- self.context["error"] = message
20
- return render(request, self.url_view, self.context)
21
- response = self.finishSession()
22
- if isinstance(response, dict):
23
- self.context["error"] = response["error"]
24
- return render(request, self.url_view, self.context)
25
- self.context["message"] = message
26
- return redirect(reverse(self.previus_view, kwargs={"session_code": self.sensorial_session.codigo_sesion}))
27
-
28
  def checkAllFinish(self):
29
  technique = self.sensorial_session.tecnica
30
 
31
- expected_ratings_repetition = self.getExpectedRatingsEscalasRapida()
32
 
33
  all_participations = list(
34
  Participacion.objects.filter(tecnica=technique))
 
12
  self.url_view = "tecnicas/manage_sesions/monitor-sesion.html"
13
  self.previus_view = "cata_system:detalles_sesion"
14
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  def checkAllFinish(self):
16
  technique = self.sensorial_session.tecnica
17
 
18
+ expected_ratings_repetition = self.getExpectedRatings()
19
 
20
  all_participations = list(
21
  Participacion.objects.filter(tecnica=technique))
tecnicas/views/sessions_management/session_details.py CHANGED
@@ -42,7 +42,7 @@ def sessionDetails(req: HttpRequest, session_code: str):
42
  codigo_sesion=session_code)
43
  use_techinique = sensorial_session.tecnica.tipo_tecnica.nombre_tecnica
44
 
45
- if use_techinique == "escalas" or use_techinique == "rata":
46
  controller_view = DetallesEscalasController(sensorial_session)
47
 
48
  if req.POST["action"] == "start_session":
 
42
  codigo_sesion=session_code)
43
  use_techinique = sensorial_session.tecnica.tipo_tecnica.nombre_tecnica
44
 
45
+ if use_techinique == "escalas" or use_techinique == "rata" or use_techinique == "cata":
46
  controller_view = DetallesEscalasController(sensorial_session)
47
 
48
  if req.POST["action"] == "start_session":
tecnicas/views/sessions_management/session_monitor.py CHANGED
@@ -18,9 +18,9 @@ def sessionMonitor(req: HttpRequest, session_code: str):
18
  codigo_sesion=session_code)
19
  use_techinique = sensorial_session.tecnica.tipo_tecnica.nombre_tecnica
20
 
21
- if use_techinique == "escalas" or use_techinique == "rata":
22
  controll_view = MonitorEscalasController(sensorial_session)
23
- response = controll_view.controlGetResponse(request=req)
24
  else:
25
  response = noValidTechnique(
26
  params={
@@ -31,7 +31,6 @@ def sessionMonitor(req: HttpRequest, session_code: str):
31
  },
32
  name_view="cata_system:detalles_sesion"
33
  )
34
-
35
  return response
36
  elif req.method == "POST":
37
  sensorial_session = SesionSensorial.objects.get(
 
18
  codigo_sesion=session_code)
19
  use_techinique = sensorial_session.tecnica.tipo_tecnica.nombre_tecnica
20
 
21
+ if use_techinique == "escalas" or use_techinique == "rata" or use_techinique == "cata":
22
  controll_view = MonitorEscalasController(sensorial_session)
23
+ response = controll_view.controllGetResponse(request=req)
24
  else:
25
  response = noValidTechnique(
26
  params={
 
31
  },
32
  name_view="cata_system:detalles_sesion"
33
  )
 
34
  return response
35
  elif req.method == "POST":
36
  sensorial_session = SesionSensorial.objects.get(
tecnicas/views/tester_forms/init_tester_form.py CHANGED
@@ -16,7 +16,7 @@ def initTesterForm(req: HttpRequest, code_sesion: str):
16
  if req.method == "GET":
17
  if type_technique == "escalas":
18
  response = view_controller.controllGetEscalas(request=req)
19
- elif type_technique == "rata":
20
  response = view_controller.controllGetRATA(request=req)
21
  else:
22
  context = {
 
16
  if req.method == "GET":
17
  if type_technique == "escalas":
18
  response = view_controller.controllGetEscalas(request=req)
19
+ elif type_technique == "rata" or type_technique == "cata":
20
  response = view_controller.controllGetRATA(request=req)
21
  else:
22
  context = {
tecnicas/views/tester_forms/login_session.py CHANGED
@@ -29,7 +29,7 @@ def loginSessionTester(req: HttpRequest):
29
 
30
  if type_technique == "escalas":
31
  response = login_controller.validateEntryEscalas(request=req)
32
- elif type_technique == "rata":
33
  response = login_controller.validateEntryRATA(request=req)
34
  else:
35
  context = {
 
29
 
30
  if type_technique == "escalas":
31
  response = login_controller.validateEntryEscalas(request=req)
32
+ elif type_technique == "rata" or type_technique == "cata":
33
  response = login_controller.validateEntryRATA(request=req)
34
  else:
35
  context = {