fix Tratamiento de advertencias al consultar WS de Identidades

parent 3a6a4840
Pipeline #584 failed with stage
in 1 second
......@@ -127,7 +127,9 @@ class CustomUser(AbstractUser):
@classmethod
def get_nips_vinculacion(cls, cod_vinculacion):
"""Devuelve los NIPs que tengan el código de vinculación indicado."""
"""Devuelve los NIPs que tengan el código de vinculación indicado.
También devuelve la descripción de la advertencia en caso de producirse."""
wsdl = get_config('WSDL_VINCULACIONES')
session = Session()
session.auth = HTTPBasicAuth(
......@@ -143,15 +145,15 @@ class CustomUser(AbstractUser):
raise e
response = client.service.mostrarVinculaciones(cod_vinculacion)
if response.aviso:
# El WS produjo una advertencia. La mostramos y seguimos.
messages.warning(strategy.request, response.descripcionAviso)
# Si el WS produce una advertencia, la devolveremos con el resultado para mostrarla.
advertencia = response.descripcionAviso if response.aviso else None
if response.error:
# La comunicación con el WS fue correcta, pero éste devolvió un error. Finalizamos.
raise Exception(response.descripcionResultado)
return response.nipsInteger
return advertencia, response.nipsInteger
# Custom Manager
objects = CustomUserManager()
......@@ -295,7 +295,9 @@ class ProyectoEvaluadorUpdateView(LoginRequiredMixin, PermissionRequiredMixin, U
def get(self, request, *args, **kwargs):
User = get_user_model()
# Obtenemos los NIPs de los usuarios con vinculación «Evaluador externo innovacion ACPUA».
nip_evaluadores = User.get_nips_vinculacion(60)
advertencia, nip_evaluadores = User.get_nips_vinculacion(60)
if advertencia:
messages.warning(request, advertencia)
nip_evaluadores = [str(nip) for nip in nip_evaluadores]
# nip_evaluadores = ['136040', '327618', '329639', '370109'] # XXX - Desarrollo
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment