def validaciones(self, idlinebase): #valida la cantidad de miembros proyecto_id = LineaBase.objects.get(pk=idlinebase).fase.idproyecto_id (miembros, valido, mensaje) = CrearComiteProyectoView.miembros_proyecto(proyecto_id) self.comite_miembros = miembros if not valido: return (valido, mensaje) #valida que la fase se encuentre en estado de desarrollo if LineaBase.objects.get(pk=idlinebase).fase.estado != Fase.E_DESARROLLO : return (False, 'La fase ya se encuentra finalizada, no puede realizar modificaciones ') return (True, '')
def estado_votacion(self, idsolicitud ): """ Metodo que determina el estado actual de la votacion para una solicitud. retorna una tupla de la siguiente estructura (votos a favor, votos en contra, votos faltantes ) """ votos_sol = SolicitudVoto.objects.filter(solicitud_id=idsolicitud) votos_favor = votos_sol.filter(aprobado=True).count() votos_contra = votos_sol.filter(aprobado=False).count() #obtenemos la cantidad de votos esperados que es solicitud = get_object_or_404(SolicitudCambio, pk=idsolicitud) proyecto_id = solicitud.lineabase.fase.idproyecto_id (miembros, validez, msg ) = CrearComiteProyectoView.miembros_proyecto(proyecto_id) vot_faltantes = miembros.count() - ( votos_favor + votos_contra ) return (votos_favor, votos_contra, vot_faltantes)