コード例 #1
0
        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));
        }
コード例 #5
0
        /// <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
                });
            }
        }
コード例 #6
0
        /// <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
                });
            }
        }