예제 #1
0
        /// <summary>
        /// Método para añadir un descuento a la base de datos, a traves de la API RESTful.
        /// </summary>
        /// <param name="discount">El objeto de descuento.</param>
        public void Add(Discount discount)
        {
            // Iniciamos la conexión.
            Uri          baseUrl = new Uri(mauzoUrl + "/");
            IRestClient  client  = new RestClient(baseUrl);
            IRestRequest request = new RestRequest(Method.POST);

            request.AddHeader("Authorization", token); // Agregamos la autorización de token en el header.

            // Convertimos el descuento a json y lo incorporamos a la petición.
            string jsonRequest = JsonConvert.SerializeObject(new {
                id        = discount.Id,
                codeDisc  = discount.Code,
                descDisc  = discount.Desc,
                pricePerc = discount.PricePerc
            });

            request.AddJsonBody(jsonRequest);                 // Se añade el json al cuerpo de la petición.

            IRestResponse response = client.Execute(request); // Ejecutamos la petición.

            // Procesamos la respuesta de la petición.
            if (!response.IsSuccessful)
            {
                // FIXME: 08/06/2020 Creo que el nombre de esta función no hace honor a lo que hace
                LoginConn.CalculateException(response, "No se ha encontrado el descuento");
            }
        }
예제 #2
0
        /// <summary>
        /// Método para obtener del servidor, a partir del id, un objeto de informe.
        /// </summary>
        /// <param name="id">El ID del informe.</param>
        /// <returns>Objeto del informe.</returns>
        public Inform Get(int id)
        {
            // Iniciamos la conexión.
            Uri          baseUrl = new Uri(mauzoUrl + "/" + id);
            IRestClient  client  = new RestClient(baseUrl);
            IRestRequest request = new RestRequest(Method.GET);

            // FIXME: 08/06/2020 Sólo un detalle, ..., si no recuerdo mal, pero puede que recuerde mal, ..., Authorization
            // debería ir en base64, esto es así?
            request.AddHeader("Authorization", token);        // Agregamos la autorización de token en el header.

            IRestResponse response = client.Execute(request); // Ejecutamos la petición.

            Inform inform = null;                             // Inicializamos la venta

            // Procesamos el objeto del informe
            if (response.IsSuccessful)
            {
                inform = JsonConvert.DeserializeObject <Inform>(response.Content);
            }
            else
            {
                LoginConn.CalculateException(response, "No se ha encontrado el informes.");
            }

            return(inform); // Devolvemos el objeto
        }
예제 #3
0
        /// <summary>
        /// Método para obtener del servidor, a partir del id, un objeto de descuento.
        /// </summary>
        /// <param name="id">El ID del descuento.</param>
        /// <returns>Objeto del descuento.</returns>
        public Discount Get(int id)
        {
            // Iniciamos la conexión.
            Uri          baseUrl = new Uri(mauzoUrl + "/" + id);
            IRestClient  client  = new RestClient(baseUrl);
            IRestRequest request = new RestRequest(Method.GET);

            request.AddHeader("Authorization", token);        // Agregamos la autorización de token en el header.

            IRestResponse response = client.Execute(request); // Ejecutamos la petición.

            Discount discount = null;                         // Inicializamos el descuento

            // Procesamos el objeto del descuento
            if (response.IsSuccessful)
            {
                discount = JsonConvert.DeserializeObject <Discount>(response.Content);
            }
            else
            {
                LoginConn.CalculateException(response, "No se ha encontrado el descuento.");
            }

            return(discount); // Devolvemos el objeto
        }
예제 #4
0
        /// <summary>
        /// Método para obtener un usuario a traves del id en la base de datos
        /// usando de intermediario a la API RESTful.
        /// </summary>
        /// <param name="Id">El id del usuario.</param>
        /// <returns></returns>
        public User Get(int Id)
        {
            // Iniciamos la conexión.
            Uri          baseUrl = new Uri(mauzoUrl + "/" + Id);
            IRestClient  client  = new RestClient(baseUrl);
            IRestRequest request = new RestRequest(Method.GET);

            // Agregamos la autorización de token en el header.
            request.AddHeader("Authorization", token);

            // Ejecutamos la petición.
            IRestResponse response = client.Execute(request);

            // Inicializamos el usuario.
            User user = null;

            // Procesamos el objeto de usuario.
            if (response.IsSuccessful)
            {
                user = JsonConvert.DeserializeObject <User>(response.Content);
            }
            else
            {
                LoginConn.CalculateException(response, "No se ha encontrado el usuario");
            }

            // Devolvemos el objeto.
            return(user);
        }
예제 #5
0
        /// <summary>
        /// Método para añadir un usuario a la base de datos a partir
        /// de la API RESTful.
        /// </summary>
        /// <param name="user">El usuario en cuestión.</param>
        public void Add(User user)
        {
            // Iniciamos la conexión.
            Uri          baseUrl = new Uri(mauzoUrl + "/");
            IRestClient  client  = new RestClient(baseUrl);
            IRestRequest request = new RestRequest(Method.POST);

            // Agregamos la autorización de token en el header.
            request.AddHeader("Authorization", token);

            // Convertimos el usuario a json y lo incorporamos a la petición.
            string jsonRequest = JsonConvert.SerializeObject(new {
                username  = user.Username,
                firstname = user.Firstname,
                lastname  = user.Lastname,
                email     = user.Email,
                password  = user.Password,
                isAdmin   = user.IsAdmin,
                userPic   = user.UserPic
            });

            // Se añade el json al cuerpo de la petición.
            request.AddJsonBody(jsonRequest);

            // Ejecutamos la petición.
            IRestResponse response = client.Execute(request);

            // Procesamos la respuesta de la petición.
            if (!response.IsSuccessful)
            {
                LoginConn.CalculateException(response, "No se ha encontrado el usuario");
            }
        }
예제 #6
0
        /// <summary>
        /// Nos añade una devolución con todos sus atributos mediante una petición al servidor, en caso de no poder nos manda un mensaje de error.
        /// </summary>
        /// <param name="refund">El recibo a añadir a la base de datos </param>
        public void Add(Refund refund)
        {
            // Iniciamos la conexión.
            Uri          baseUrl = new Uri(mauzoUrl + "/");
            IRestClient  client  = new RestClient(baseUrl);
            IRestRequest request = new RestRequest(Method.POST);

            // Agregamos la autorización de token en el header.
            request.AddHeader("Authorization", token);

            // Convertimos la devolución a json y lo incorporamos a la petición.
            string jsonRequest = JsonConvert.SerializeObject(new
            {
                dateRefund = refund.DateRefund,
                userId     = refund.UserId,
                saleId     = refund.SaleId
            });

            // Se añade el json al cuerpo de la petición.
            request.AddJsonBody(jsonRequest);

            // Ejecutamos la petición.
            IRestResponse response = client.Execute(request);

            // Procesamos la respuesta de la petición.
            if (!response.IsSuccessful)
            {
                LoginConn.CalculateException(response, "No se ha encontrado la devolución");
            }
        }
예제 #7
0
        /// <summary>
        /// Método que modifica una vebta en el servidor.
        /// </summary>
        /// <param name="sale">El objeto </param>
        public void Modify(Sale sale)
        {
            // Iniciamos la conexión.
            Uri          baseUrl = new Uri(mauzoUrl + "/" + sale.Id);
            IRestClient  client  = new RestClient(baseUrl);
            IRestRequest request = new RestRequest(Method.PUT);

            // Agregamos la autorización de token en el header.
            request.AddHeader("Authorization", token);

            // Convertimos la venta a json y lo incorporamos a la petición.
            string jsonRequest = JsonConvert.SerializeObject(new
            {
                stampRef = sale.StampRef,
                userId   = sale.UserId,
                prodId   = sale.ProdId,
                discId   = sale.DiscId
            });

            // Se añade el json al cuerpo de la petición.
            request.AddJsonBody(jsonRequest);

            // Ejecutamos la petición.
            IRestResponse response = client.Execute(request);

            // Procesamos la respuesta de la petición.
            if (!response.IsSuccessful)
            {
                LoginConn.CalculateException(response, "No se ha encontrado la venta");
            }
        }
예제 #8
0
        /// <summary>
        /// Nos añade un producto con todos sus atributos a la base de datos, en caso de no poder nos manda un mensaje de error
        /// </summary>
        /// <param name="product">El producto a añadir a la base de datos</param>
        public void Add(Product product)
        {
            // Iniciamos la conexión.
            Uri          baseUrl = new Uri(mauzoUrl + "/");
            IRestClient  client  = new RestClient(baseUrl);
            IRestRequest request = new RestRequest(Method.POST);

            // Agregamos la autorización de token en el header.
            request.AddHeader("Authorization", token);

            // Convertimos el producto a json y lo incorporamos a la petición.
            string jsonRequest = JsonConvert.SerializeObject(new
            {
                prodName  = product.ProdName,
                prodCode  = product.ProdCode,
                prodPrice = product.ProdPrice,
                prodDesc  = product.ProdDesc,
                prodPic   = product.ProdPic
            });

            // Se añade el json al cuerpo de la petición.
            request.AddJsonBody(jsonRequest);

            // Ejecutamos la petición.
            IRestResponse response = client.Execute(request);

            // Procesamos la respuesta de la petición.
            if (!response.IsSuccessful)
            {
                LoginConn.CalculateException(response, "No se ha encontrado el producto");
            }
        }
예제 #9
0
        /// <summary>
        /// Método que elimina a un descuento en el servidor.
        /// </summary>
        /// <param name="discount">El objeto de descuento.</param>
        public void Delete(Discount discount)
        {
            // Iniciamos la conexión.
            Uri          baseUrl = new Uri(mauzoUrl + "/" + discount.Id);
            IRestClient  client  = new RestClient(baseUrl);
            IRestRequest request = new RestRequest(Method.DELETE);

            request.AddHeader("Authorization", token);        // Agregamos la autorización de token en el header.

            IRestResponse response = client.Execute(request); // Ejecutamos la petición.

            // Procesamos la respuesta de la petición.
            if (!response.IsSuccessful)
            {
                LoginConn.CalculateException(response, "No se ha encontrado el descuento");
            }
        }