private void EnviarTareasAApi(IList <string> listaDeOperadores) { if (!SeEnvianTareasAlApi()) { return; } if (listaDeOperadores.Count <= 0) { return; } var op = Rest.ExecutePost <Operacion>( $"{InteraccionConUsuarioServicio.ObtenerDireccionBaseDeApi()}{RutasApi.Tareas.EnviarTareas}", new ListaOperadorParaActualizacionDeTarea { loginId = InteraccionConUsuarioServicio.ObtenerUsuarioYDominio(), password = InteraccionConUsuarioServicio.ObtenerClaveDeUsuario(), dbUser = InteraccionConUsuarioServicio.ObtenerUsuarioDeBaseDeDatos(), dbPassword = InteraccionConUsuarioServicio.ObtenerContraseniaDeBaseDeDatos(), serverIp = InteraccionConUsuarioServicio.ObtenerServerIp(), operators = listaDeOperadores }); if (op.Resultado == ResultadoOperacionTipo.Error) { InteraccionConUsuarioServicio.MensajeErrorDialogo($"Error al enviar las tareas hacia el dispositivo móvil debido a: {op.Mensaje}"); } }
/// <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)); }
/// <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> /// Metodo que elimina un usuario de la BD de SWIFT_EXPRESS y del API de Licenciamiento /// </summary> /// <param name="usuario"></param> /// <returns></returns> /// <exception cref="Exception"></exception> public Operacion EliminarUsuario(Usuario usuario) { try { BaseDeDatosServicio.BeginTransaction(); DbParameter[] parameters = { new OAParameter { ParameterName = "@LOGIN", Value = usuario.LOGIN } }; var op = BaseDeDatosServicio.ExecuteQuery <Operacion>("SWIFT_SP_DELETE_USER", CommandType.StoredProcedure, false, parameters)[0]; ValidarResultadoDeOperacion(op); op = Rest.ExecutePost <Operacion>($"{RutasApi.ProcesarUsuariosApi.ProcesarUsuarios}", usuario); ValidarResultadoDeOperacion(op); BaseDeDatosServicio.Commit(); return(op); } catch (DbException e) { BaseDeDatosServicio.Rollback(); return(new Operacion { Codigo = e.ErrorCode, Mensaje = e.HumanReadMessage(), Resultado = ResultadoOperacionTipo.Error }); } catch (Exception ex) { BaseDeDatosServicio.Rollback(); return(new Operacion { Codigo = -1, Mensaje = ex.Message, Resultado = ResultadoOperacionTipo.Error }); } }
/// <summary> /// Metodo que actualiza un usuario existente, tanto en SWIFT_EXPRESS como en el API de Licenciamiento /// </summary> /// <param name="usuarioArgumento"></param> /// <returns></returns> /// <exception cref="Exception"></exception> public Operacion ActualizarUsuario(UsuarioArgumento usuarioArgumento) { try { BaseDeDatosServicio.BeginTransaction(); DbParameter[] parameters = { new OAParameter { ParameterName = "@LOGIN", Value = usuarioArgumento.Data.LOGIN } , new OAParameter { ParameterName = "@NAME_USER", Value = usuarioArgumento.Data.NAME_USER } , new OAParameter { ParameterName = "@TYPE_USER", Value = usuarioArgumento.Data.TYPE_USER } , new OAParameter { ParameterName = "@PASSWORD", Value = usuarioArgumento.Data.PASSWORD } , new OAParameter { ParameterName = "@IMAGE", Value = usuarioArgumento.Data.IMAGE } , new OAParameter { ParameterName = "@RELATED_SELLER", Value = usuarioArgumento.Data.RELATED_SELLER } , new OAParameter { ParameterName = "@SELLER_ROUTE", Value = usuarioArgumento.Data.SELLER_ROUTE } , new OAParameter { ParameterName = "@USER_TYPE", Value = usuarioArgumento.Data.USER_TYPE } , new OAParameter { ParameterName = "@DEFAULT_WAREHOUSE", Value = usuarioArgumento.Data.DEFAULT_WAREHOUSE } , new OAParameter { ParameterName = "@USER_ROLE", Value = usuarioArgumento.Data.USER_ROLE } , new OAParameter { ParameterName = "@PRESALE_WAREHOUSE", Value = usuarioArgumento.Data.PRESALE_WAREHOUSE } , new OAParameter { ParameterName = "@ROUTE_RETURN_WAREHOUSE", Value = usuarioArgumento.Data.ROUTE_RETURN_WAREHOUSE } , new OAParameter { ParameterName = "@USE_PACK_UNIT", Value = usuarioArgumento.Data.USE_PACK_UNIT } , new OAParameter { ParameterName = "@ZONE_ID", Value = usuarioArgumento.Data.ZONE_ID } , new OAParameter { ParameterName = "@DISTRIBUTION_CENTER_ID", Value = usuarioArgumento.Data.DISTRIBUTION_CENTER_ID } , new OAParameter { ParameterName = "@CODE_PRICE_LIST", Value = usuarioArgumento.Data.CODE_PRICE_LIST } }; var op = BaseDeDatosServicio.ExecuteQuery <Operacion>("SWIFT_SP_UPDATE_USER", CommandType.StoredProcedure, false, parameters)[0]; ValidarResultadoDeOperacion(op); op = Rest.ExecutePost <Operacion>($"{RutasApi.ProcesarUsuariosApi.ProcesarUsuarios}", usuarioArgumento.Data); ValidarResultadoDeOperacion(op); BaseDeDatosServicio.Commit(); return(op); } catch (DbException e) { BaseDeDatosServicio.Rollback(); return(new Operacion { Codigo = e.ErrorCode, Mensaje = e.HumanReadMessage(), Resultado = ResultadoOperacionTipo.Error }); } catch (Exception ex) { BaseDeDatosServicio.Rollback(); return(new Operacion { Codigo = -1, Mensaje = ex.Message, Resultado = ResultadoOperacionTipo.Error }); } }