/// <summary> /// Elimina a los usuarios seleccionados que esten asociados a esa licencia y guarda un log p/c registro /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void _vista_UsuarioDeseaDesasignarUsuariosDeLicencias(object sender, AdministrarLicenciasArgumento e) { try { var op = AdministrarLicenciaServicio.RemoverDispositivo(e); if (op.Resultado == ResultadoOperacionTipo.Exito) { op = AdministrarLicenciaServicio.InsertarLogDeLicencia(e); if (op.Resultado != ResultadoOperacionTipo.Exito) { _vista.EstablecerError( $"Ha ocurrido un error al guardar el historial de modificaciones de la licencia. {op.Mensaje}", sender); } } else { _vista.EstablecerError( $"No se ha podido realizar la eliminación de usuarios, por favor, vuelva a intentar. {op.Mensaje}", sender); } _vista_CargarVistaGeneral(sender, e); } catch (Exception ex) { _vista.EstablecerError(ex.Message, sender); } }
/// <summary> /// Agregamos a los usuarios que no tengan licencias /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void _vista_UsuarioDeseaAgregarUsuariosALicencias(object sender, AdministrarLicenciasArgumento e) { try { var op = AdministrarLicenciaServicio.AsignarLicencia(e); if (op.Resultado == ResultadoOperacionTipo.Exito) { op = AdministrarLicenciaServicio.InsertarLogDeLicencia(e); if (op.Resultado == ResultadoOperacionTipo.Error) { _vista.EstablecerError( $"Ha ocurrido un error al guardar el historial de modificaciones de la licencia actual. {op.Mensaje}", sender); } } else { _vista.EstablecerError( $"Error al intentar asociar a los usuarios seleccionados a la licencia actual. {op.Mensaje}", sender); } _vista_CargarVistaGeneral(sender, e); } catch (Exception ex) { _vista.EstablecerError(ex.Message, sender); } }
/// <summary> /// Actualiza la direccion de la licencia seleccionada y tambien guarda el log con los valores antiguos y actuales. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void _vista_UsuarioDeseaActualizarDireccionLicencia(object sender, AdministrarLicenciasArgumento e) { try { var op = AdministrarLicenciaServicio.ActualizarDireccion(e); if (op.Resultado == ResultadoOperacionTipo.Exito) { op = AdministrarLicenciaServicio.InsertarLogDeLicencia(e); if (op.Resultado != ResultadoOperacionTipo.Exito) { _vista.EstablecerError( $"No se ha podido guardar el historial de modificación de la licencia. Error: {op.Mensaje}", sender); } } else { _vista.EstablecerError( $"No se ha podido actualizar la dirección de comunicación de la licencia. Por favor vuelva a intentar. Error: {op.Mensaje}", sender); } _vista_CargarVistaGeneral(sender, e); } catch (Exception ex) { _vista.EstablecerError(ex.Message, sender); } }
/// <summary> /// Obtenemos todas las licencias por empresa y tipo de ambiente. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void _vista_UsuarioDeseaObtenerLicenciasAsociadas(object sender, AdministrarLicenciasArgumento e) { try { _vista.Licencias = AdministrarLicenciaServicio.obtenerLicencia(e.LOGIN); } catch (Exception ex) { _vista.EstablecerError(ex.Message, sender); } }
/// <summary> /// Obtenemos todos los usuarios sin licencia /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void _vista_UsuarioDeseaObtenerUsuariosSinLicencia(object sender, AdministrarLicenciasArgumento e) { try { _vista.UsuariosSinLicencia = UsuarioServicio.ObtenerUsuariosSinLicencia(e); } catch (Exception ex) { _vista.EstablecerError(ex.Message, sender); } }
/// <summary> /// Elimina a un usuario de una licencia /// </summary> /// <param name="administrarLicenciasArgumento"></param> /// <returns></returns> public Operacion RemoverDispositivo(AdministrarLicenciasArgumento administrarLicenciasArgumento) { var usuariosAEliminar = administrarLicenciasArgumento.ListaUsuarios.Select(item => new LicenciaDetalle { UserId = item.CORRELATIVE, CodeRoute = item.LOGIN, LastModifiedBy = administrarLicenciasArgumento.LOGIN }).ToList(); return(Rest.ExecutePost <Operacion>(RutasApi.UsuarioApi.DesasociarUsuario.ToString(), usuariosAEliminar)); }
private void _vista_CargarVistaGeneral(object sender, AdministrarLicenciasArgumento e) { try { _vista_UsuarioDeseaObtenerLicenciasAsociadas(sender, e); _vista_VistaTerminoDeCargar(sender, e); } catch (Exception exception) { _vista.EstablecerError($"Error al recargar los datos de la pantalla. {exception.Message}", sender); } }
/// <summary> /// Obetenemos todos los usuarios que esten asociados a la licencia que se selecciono. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void _vista_UsuarioDeseaObtenerUsuariosPorLicencia(object sender, AdministrarLicenciasArgumento e) { try { _vista.UsuariosConLicenciaAsociada = UsuarioServicio.ObtenerUsuariosAsociadosALicencia(e.ID_LICENSE); _vista.TerminoProceso("cpTerminoDeCargarUsuariosAsociadosALicencia", true, sender); } catch (Exception ex) { _vista.EstablecerError(ex.Message, sender); } }
/// <summary> /// Metodo que emite una petición al API de Licenciamiento para asignar una licencia a un usuario /// </summary> /// <param name="administrarLicenciasArgumento"></param> /// <returns></returns> public Operacion AsignarLicencia(AdministrarLicenciasArgumento administrarLicenciasArgumento) { var listaDeUsuariosParaAsociar = administrarLicenciasArgumento.ListaUsuarios.Select(item => new LicenciaDetalle { DeviceIdentfier = string.Empty, Status = Status.Pending, CodeRoute = item.LOGIN, DateModified = DateTime.Now, DateCreated = DateTime.Now, LastModifiedBy = administrarLicenciasArgumento.LOGIN, LicenseId = administrarLicenciasArgumento.ID_LICENSE }).ToList(); return(Rest.ExecutePost <Operacion>(RutasApi.UsuarioApi.AsociarUsuario.ToString(), listaDeUsuariosParaAsociar)); }
/// <summary> /// Actualiza Direccion de comunicacion de la licencia en el API de Licenciamiento /// </summary> /// <param name="licenciaArgumento"></param> /// <returns></returns> public Operacion ActualizarDireccion(AdministrarLicenciasArgumento licenciaArgumento) { var licencia = new LicenciaApi { Id = int.Parse(licenciaArgumento.licencia.ID.ToString()) , LastModifiedBy = licenciaArgumento.LOGIN , DateModified = DateTime.Now , CommunicationAddress = licenciaArgumento.licencia.COMMUNICATION_ADDRESS }; return(Rest.ExecutePost <Operacion>( RutasApi.ActualizarDireccionDeComunicacionDeLicenciaApi.ActualizarDireccionDeComunicacion.ToString(), licencia)); }
/// <summary> /// Inserta vitacora de ejecucion /// </summary> /// <param name="administrarLicenciasArgumento"></param> /// <returns></returns> public Operacion InsertarLogDeLicencia(AdministrarLicenciasArgumento administrarLicenciasArgumento) { try { DbParameter[] parameters = { new OAParameter { ParameterName = "@XML", Value = administrarLicenciasArgumento.XML_LOGS }, new OAParameter { ParameterName = "@LOGIN", Value = administrarLicenciasArgumento.LOGIN } }; var op = BaseDeDatosServicio.ExecuteQuery <Operacion>("SWIFT_SP_INSERT_LICENSE_LOG", CommandType.StoredProcedure, parameters)[0]; return(op); } catch (DbException e) { return(new Operacion { Codigo = e.ErrorCode, Mensaje = e.Message, Resultado = ResultadoOperacionTipo.Error }); } catch (Exception ex) { return(new Operacion { Codigo = -1, Mensaje = ex.Message, Resultado = ResultadoOperacionTipo.Error }); } }
/// <summary> /// Obtiene los usuarios que no esten asociados a ninguna licencia /// </summary> /// <param name="administrarLicenciasArgumento"></param> /// <returns></returns> public IList <Usuario> ObtenerUsuariosSinLicencia(AdministrarLicenciasArgumento administrarLicenciasArgumento) { var empresa = administrarLicenciasArgumento.LOGIN.Substring(administrarLicenciasArgumento.LOGIN.IndexOf("@", StringComparison.Ordinal) + 1).ToUpper(); var listaDeUsuarios = ObtenerListaDeApi("GetUsers(enterpriseCode='" + empresa + "')"); if (!listaDeUsuarios.Any()) { return(new List <Usuario>()); } var xml = ObtenerXmlDeUsuarios(listaDeUsuarios); DbParameter[] parameters = { new OAParameter { ParameterName = "@XML", Value = xml } }; return(BaseDeDatosServicio.ExecuteQuery <Usuario>("SWIFT_SP_GET_USER_BY_LICENSES", CommandType.StoredProcedure, parameters).ToList()); }