private void Mapper(ProductoResponse pRes, Productos producto)
 {
     pRes.Id          = producto.Id;
     pRes.Descripcion = producto.Descripcion;
     pRes.Precio      = producto.Precio;
     pRes.Imagen      = producto.Imagen;
 }
        public ProductoResponse GetProducto(int id)
        {
            ProductoResponse pRes = new ProductoResponse();

            try
            {
                using (ServiciosContext context = new ServiciosContext())
                {
                    var producto = context.Productos.Where(x => x.Id == id).FirstOrDefault();

                    if (producto != null)
                    {
                        Mapper(pRes, producto);
                    }

                    else
                    {
                        pRes.Mensaje = "No se ha encontrado ningun producto con el identificador " + id;
                    }
                }
            }
            catch (Exception ex)
            {
                pRes.Mensaje = ex.Message;
            }

            return(pRes);
        }
Example #3
0
        public async Task <IActionResult> Create([FromBody] CreateProductoRequest productoRequest)
        {
            var newProducto = new Producto
            {
                Nombre      = productoRequest.Nombre,
                Descripcion = productoRequest.Descripcion,
                Marca       = productoRequest.Marca,
                CategoriaId = productoRequest.Categoria,
                PromocionId = productoRequest.Promocion,
                Precio      = productoRequest.Precio
            };

            Producto result = await _productoRepository.Add(newProducto);

            if (result == null)
            {
                return(BadRequest());
            }

            var response = new ProductoResponse
            {
                ProductoId  = result.ProductoId,
                Nombre      = result.Nombre,
                Descripcion = result.Descripcion,
                Marca       = result.Marca,
                Categoria   = result.CategoriaId,
                Promocion   = result.PromocionId,
                Precio      = result.Precio
            };

            string urlBase     = $"{HttpContext.Request.Scheme}://{HttpContext.Request.Host.ToUriComponent()}";
            string locationUri = $"{urlBase}/{ApiRoutes.Productos.Get.Replace("{productoId}", response.ProductoId.ToString())}";

            return(Created(locationUri, response));
        }
Example #4
0
        public async Task <ProductoResponse> AddProduct(ProductoRequest request)
        {
            ProductoResponse response = new ProductoResponse();
            var paramSku         = new SqlParameter("@SKU", request.SKU);
            var paramNombre      = new SqlParameter("@nombre", request.nombre);
            var paramCantidad    = new SqlParameter("@cantidad", request.cantidad);
            var paramPrecio      = new SqlParameter("@precio", request.precio);
            var paramDescripcion = new SqlParameter("@descripcion", request.descripcion);
            var paramimagen      = new SqlParameter("@imagen", request.imagen);

            try
            {
                IList <TblProductos> usr = await db.Productos.FromSqlRaw(
                    "SP_InsertarProductos @SKU,@nombre,@cantidad,@precio,@descripcion,@imagen",
                    paramSku, paramNombre, paramCantidad, paramPrecio, paramDescripcion, paramimagen).ToListAsync();

                if (usr != null && usr.Count != 0)
                {
                    response = map.Map <ProductoResponse>(usr.FirstOrDefault());
                }
                return(response);
            }
            catch (Exception ex)
            {
                Console.WriteLine($"{ex.Message} {ex.InnerException?.Message}");
                throw;
            }
        }
 private void Mapper(ProductoResponse pRes, Productos producto, string mensaje)
 {
     pRes.Id          = producto.Id;
     pRes.Descripcion = producto.Descripcion;
     pRes.Precio      = producto.Precio;
     pRes.Imagen      = producto.Imagen;
     pRes.Mensaje     = mensaje;
 }
Example #6
0
 public EditItem(ProductoResponse _item)
 {
     InitializeComponent();
     _api                    = new Api();
     txtitemid.Text          = _item.id_prod.ToString();
     txtdescriptionItem.Text = _item.description;
     txtQuantity.Text        = _item.id_prod.ToString();
     txtstockmax.Text        = _item.id_prod.ToString();
     txtstockmin.Text        = _item.id_prod.ToString();
 }
Example #7
0
        public async Task <IActionResult> Products(ProductoViewModel product)
        {
            var producto = new ProductoViewModel
            {
                Categorias  = await _categoriaRepository.GetAll(),
                Promociones = await _promocionRepository.GetAll(),
                Mensaje     = ViewBag.Message
            };


            if (ModelState.IsValid)
            {
                var prod = new ProductoResponse
                {
                    Nombre      = product.Producto.Nombre,
                    Marca       = product.Producto.Marca,
                    Precio      = product.Producto.Precio,
                    Descripcion = product.Producto.Descripcion,
                    Categoria   = product.Producto.CategoriaId,
                    Promocion   = product.Producto.PromocionId
                };


                var    httpClient    = new HttpClient();
                string ruta          = "https://nathannjshop.azurewebsites.net/api/v1/productos";
                var    stringContent = new StringContent(JsonConvert.SerializeObject(prod), Encoding.UTF8, "application/json");

                var resultapiResult = await httpClient.PostAsync(ruta, stringContent);

                string resultContent = resultapiResult.Content.ReadAsStringAsync().Result;


                if (resultContent == null)
                {
                    ViewBag.Message = "No se ha registrado ";
                    ViewBag.alert   = "danger";
                }
                else
                {
                    ViewBag.Message = "Se ha registrado correctamente";
                    ViewBag.alert   = "success";
                }


                return(View(producto));
            }

            return(View(producto));
        }
Example #8
0
 private void eliminarProducto()
 {
     try
     {
         if (grdDatos.RowCount > 0 && grdDatos.SelectedRows != null && grdDatos.SelectedRows.Count > 0)
         {
             if (MessageBox.Show("¿Está seguro(a) que desea eliminar el producto " + grdDatos.SelectedRows[0].Cells["PRODUCTO"].Value.ToString() + ", de la empresa " + grdDatos.SelectedRows[0].Cells["RAZON_SOCIAL"].Value.ToString() + ", sucursal " + grdDatos.SelectedRows[0].Cells["SUCURSAL"].Value.ToString() + "?", "Confirmar eliminación", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes)
             {
                 long     tmpLong     = 0;
                 Producto tmpProducto = new Producto();
                 long.TryParse(grdDatos.SelectedRows[0].Cells["ID_PRODUCTO"].Value.ToString(), out tmpLong);
                 tmpProducto.ID_PRODUCTO = tmpLong;
                 tmpLong = 0;
                 Imagen tmpImagen = new Imagen();
                 long.TryParse(grdDatos.SelectedRows[0].Cells["ID_IMAGEN"].Value.ToString(), out tmpLong);
                 tmpImagen.ID_IMAGEN = tmpLong;
                 ProductoResponse objResponseProducto = serviciosProducto.eliminarProducto(tmpProducto);
                 if (objResponseProducto != null && objResponseProducto.correcto)
                 {
                     Controles.mensajes.mensajeCorrecto("El producto fue eliminado correctamente");
                     ImagenResponse objResponseImagen = serviciosImagen.eliminarImagen(tmpImagen);
                     if (objResponseImagen != null && objResponseImagen.correcto)
                     {
                         Controles.mensajes.mensajeCorrecto("La iamgen, del producto eliminado, tambien se eliminó correctamente");
                     }
                     else
                     {
                         Controles.mensajes.errorWebServices(objResponseImagen.error);
                     }
                 }
                 else
                 {
                     Controles.mensajes.errorWebServices(objResponseProducto.error);
                 }
             }
         }
         else
         {
             Controles.mensajes.mensajeError("Debe seleccionar un producto de la lista");
         }
     }
     catch (Exception exp)
     {
         Controles.mensajes.mensajeError(exp.Message);
     }
 }
Example #9
0
        public JsonResult EditItems(ProductoRequest _itemRequest)
        {
            var _itemResponse = new ProductoResponse();

            using (var bd = new bdgoldendatesEntities1())
            {
                var item = bd.Productos.Where(w => w.id_prod == _itemRequest.id_prod).FirstOrDefault();

                item.description = _itemRequest.description;
                item.cantidad    = _itemRequest.cantidad;
                item.stockmin    = _itemRequest.stockmin;
                item.stockmax    = _itemRequest.stockmax;

                bd.Entry(item).State = System.Data.Entity.EntityState.Modified;
                bd.SaveChanges();
                _itemResponse.id_prod = item.id_prod;
            }

            return(Json(_itemResponse, JsonRequestBehavior.DenyGet));
        }
Example #10
0
        public static ProductoResponse GetProductos()
        {
            ProductoResponse response = new ProductoResponse();

            try
            {
                using (DL.ExamenTrupperEntities context = new DL.ExamenTrupperEntities())
                {
                    var get = context.GetProductos().ToList();
                    if (get != null)
                    {
                        response.Code           = 100;
                        response.Message        = "Éxito al mapear los datos";
                        response.ListaProductos = new List <ML.Producto>();
                        foreach (var obj in get)
                        {
                            ML.Producto producto = new ML.Producto();
                            producto.SKU    = obj.SKU;
                            producto.Nombre = obj.NOMBRE;
                            producto.Precio = obj.PRECIO;
                            response.ListaProductos.Add(producto);
                        }
                    }
                    else
                    {
                        response.Code           = 90;
                        response.Message        = "No hay datos que mostrar";
                        response.ListaProductos = new List <ML.Producto>();
                    }
                    return(response);
                }
            }
            catch (Exception Ex)
            {
                response.Code           = -100;
                response.Message        = "Reporta este error a sistemas: " + Ex.ToString();
                response.ListaProductos = new List <ML.Producto>();
                return(response);
            }
        }
Example #11
0
        /**
         * Inserta nuevo registro en la tabla
         * @param Producto obj
         * @return Retorna el mismo objeto pero con la llave primaria configurada
         */
        public ProductoResponse crearProducto(Producto obj)
        {
            List <Producto>  lista       = null;
            Producto         obj_new     = new Producto();
            ProductoResponse objResponse = new ProductoResponse();

            try {
                ProductoDao dao = new ProductoDao();
                conn = conexion.conectar();
                dao.create(conn, obj);
                //verificar existencia
                obj_new.NOM_PRODUCTO     = obj.NOM_PRODUCTO;
                obj_new.ID_EMPRESA       = obj.ID_EMPRESA;
                obj_new.ID_TIPO_PRODUCTO = obj.ID_TIPO_PRODUCTO;
                lista = dao.searchMatching(conn, obj_new);
                if (lista != null && lista.Count > 0)
                {
                    obj_new = (Producto)lista[0];
                }
                else
                {
                    obj_new.ID_PRODUCTO = -1;
                }
                objResponse.correcto = true;
                objResponse.error    = "";
                objResponse.objeto   = obj_new;
            } catch (Exception e) {
                obj_new.ID_PRODUCTO  = -1;
                objResponse.correcto = false;
                objResponse.error    = e.Message;
                objResponse.objeto   = obj_new;
            } finally {
                if (conn != null && conn.State == System.Data.ConnectionState.Open)
                {
                    conn.Close();
                }
            }
            return(objResponse);
        }
Example #12
0
        public JsonResult AddItem(ProductoRequest _ProductoRequest)
        {
            var _ProductoResponse = new ProductoResponse();

            using (var bd = new bdgoldendatesEntities1())
            {
                var item = new Producto();
                item.description   = _ProductoRequest.description;
                item.cantidad      = _ProductoRequest.cantidad;
                item.stockmin      = _ProductoRequest.stockmin;
                item.stockmax      = _ProductoRequest.stockmax;
                item.FechaRegistro = DateTime.Now;



                bd.Entry(item).State = System.Data.Entity.EntityState.Added;
                bd.SaveChanges();
                _ProductoResponse.id_prod = item.id_prod;
            }

            return(Json(_ProductoResponse, JsonRequestBehavior.DenyGet));
        }
        public ProductoResponse AltaProducto(Productos producto)
        {
            ProductoResponse pRes = new ProductoResponse();

            byte[] byteImg = Encoding.UTF8.GetBytes(producto.Imagen);
            producto.Imagen = Convert.ToBase64String(byteImg);

            try
            {
                using (ServiciosContext context = new ServiciosContext())
                {
                    context.Productos.Add(producto);
                    context.SaveChanges();
                    Mapper(pRes, producto, "Producto dado de alta");
                }
            }
            catch (Exception ex)
            {
                pRes.Mensaje = ex.Message;
            }

            return(pRes);
        }
        public List <ProductoResponse> BuscarProductoPorOrden(Pago pago, IUnitOfWork <Pedido> _unitOfWork_pedido,
                                                              IUnitOfWork <Orden> _unitOfWork_orden)
        {
            List <ProductoResponse> respuesta = new List <ProductoResponse>();
            var existePedido = _unitOfWork_pedido.Service_Queries <Pedido>().FindOne(x => x.Id == pago.numero_pedido);

            if (existePedido != null)
            {
                foreach (var item in existePedido.id_orden)
                {
                    var ordenes = _unitOfWork_orden.Service_Queries <Orden>().FindOne(x => x.Id == item);
                    foreach (var producto in ordenes.items)
                    {
                        ProductoResponse objResponse = new ProductoResponse();
                        objResponse.Referencia = pago.numero_pedido;
                        objResponse.SKU        = producto.id_producto;
                        objResponse.Unidades   = producto.cantidad;
                        respuesta.Add(objResponse);
                    }
                }
            }
            return(respuesta);
        }
Example #15
0
        public ProductoResponse cargarProducto(ProductoRequest request)
        {
            ProductoResponse response = new ProductoResponse();
            DataAccess       da       = new DataAccess {
                CadenaConexion = ConfigurationManager.ConnectionStrings["jadetBD"].ConnectionString
            };
            var resultado = da.listarProductos(request.Id).FirstOrDefault();

            response = new ProductoResponse {
                Id                = resultado.Id,
                Nombre            = resultado.Nombre,
                AplicaExistencias = resultado.AplicaExistencias,
                Descripcion       = resultado.Descripcion,
                Existencias       = resultado.Existencias,
                Foto              = resultado.Foto,
                IdCategoria       = resultado.IdCatalogo,
                PrecioMXN         = resultado.PrecioMXN,
                PrecioUSD         = resultado.PrecioUSD,
                SKU               = resultado.SKU,
                IdTipo            = resultado.IdTipoNota
            };
            return(response);
        }
        public List <ProductoResponse> GetProductos()
        {
            List <ProductoResponse> listadoProductos = new List <ProductoResponse>();
            ProductoResponse        pRes;

            try
            {
                using (ServiciosContext context = new ServiciosContext())
                {
                    var productos = context.Productos.ToList();

                    if (productos != null)
                    {
                        foreach (var producto in productos)
                        {
                            pRes = new ProductoResponse();
                            Mapper(pRes, producto);
                            listadoProductos.Add(pRes);
                        }
                    }
                    else
                    {
                        pRes         = new ProductoResponse();
                        pRes.Mensaje = "Sin productos";
                        listadoProductos.Add(pRes);
                    }
                }
            }
            catch (Exception ex)
            {
                pRes         = new ProductoResponse();
                pRes.Mensaje = ex.Message;
                listadoProductos.Add(pRes);
            }

            return(listadoProductos);
        }
Example #17
0
        /**
         * Edita un registro en la tabla
         * @param Producto obj
         * @return boolean indicando si se realizo o no la actualizacion
         */
        public ProductoResponse editarProducto(Producto obj)
        {
            ProductoResponse resultado = new ProductoResponse();

            resultado.correcto = false;
            try {
                ProductoDao dao = new ProductoDao();
                conn = conexion.conectar();
                dao.save(conn, obj);
                resultado.correcto = true;
                resultado.error    = "";
                resultado.objeto   = obj;
            } catch (Exception e) {
                resultado.correcto = false;
                resultado.error    = e.Message;
                resultado.objeto   = obj;
            } finally {
                if (conn != null && conn.State == System.Data.ConnectionState.Open)
                {
                    conn.Close();
                }
            }
            return(resultado);
        }