// GET: Producto
 public ActionResult GetAll()
 {
     ML.Producto producto = new ML.Producto();
     ML.Result   result   = BL.Producto.GetAllEF();
     producto.Productos = result.Objects;
     return(View(producto));
 }
        [HttpGet]                            //Mostrar el formulario
        public ActionResult Form(string SKU) //Add , Update
        {
            ML.Producto producto = new ML.Producto();
            if (SKU == null)//Add
            {
                producto.Accion = "Add";
                return(View(producto));
            }
            else //Update
            {
                producto.Accion = "Update";
                ML.Result result = BL.Producto.GetProductogetBySKUAPI(SKU);

                if (result.Correct)
                {
                    producto.SKU           = ((ML.Producto)result.Object).SKU;
                    producto.Fert          = ((ML.Producto)result.Object).Fert;
                    producto.Modelo        = ((ML.Producto)result.Object).Modelo;
                    producto.Tipo          = ((ML.Producto)result.Object).Tipo;
                    producto.NumeroDeSerie = ((ML.Producto)result.Object).NumeroDeSerie;
                    producto.Fecha         = ((ML.Producto)result.Object).Fecha;


                    return(View(producto));
                }
                else
                {
                    ViewBag.Message = result.ErrorMessage;
                    return(PartialView("Modal"));
                }
            }
        }
示例#3
0
        public static ML.Result Update(ML.Producto producto)
        {
            ML.Result result = new ML.Result();
            try
            {
                using (DL.EmpresaXEntities context = new DL.EmpresaXEntities())
                {
                    var query = context.ProductoUpdate(producto.IdProducto, producto.Nombre, producto.CodigoDeBarras, Convert.ToInt32(producto.Cantidad), producto.PrecioUnitario, Convert.ToBase64String(producto.LogoTipo));

                    if (query >= 1)
                    {
                        result.Correct = true;
                    }
                    else
                    {
                        result.Correct = false;
                        result.Object  = "No se modifico el registro";
                    }
                    result.Correct = true;
                }
            }
            catch (Exception ex)
            {
                result.Correct = false;

                result.ErrorMessage = ex.Message;
            }
            return(result);
        }
 public static ML.Result DeleteEF(ML.Producto producto)
 {
     ML.Result result = new ML.Result();
     try
     {
         using (DL_EF.ComercioEntities context = new DL_EF.ComercioEntities())
         {
             var query = context.ProductoDelete(producto.IdProducto);
             if (query >= 1)
             {
                 result.Correct = true;
             }
             else
             {
                 result.Correct = false;
                 result.Message = "No se pudo eliminar";
             }
         }
     }
     catch (Exception e)
     {
         result.Correct = false;
         result.Message = e.Message;
     }
     return(result);
 }
 public ActionResult Form(ML.Producto producto)
 {
     ML.Result result;
     if (producto.IdProducto == 0)
     {
         result = BL.Producto.AddEF(producto);
         if (result.Correct)
         {
             ViewBag.Mensaje = "Agregado correctamente";
             return(PartialView("Validacion"));
         }
         else
         {
             ViewBag.Mensaje = result.Message;
             return(PartialView("Validacion"));
         }
     }
     else
     {
         result = BL.Producto.UpdateEF(producto);
         if (result.Correct)
         {
             ViewBag.Mensaje = "Actualizado correctamente";
             return(PartialView("Validacion"));
         }
         else
         {
             ViewBag.Mensaje = result.Message;
             return(PartialView("Validacion"));
         }
     }
 }
示例#6
0
        public ActionResult Form(ML.Producto producto)
        {
            ML.Result result = new ML.Result();

            if (producto.IdProducto == 0)
            {
                result = BL.Producto.AddByAPI(producto);

                if (result.Correct)
                {
                    ViewBag.Message = "Se agregó correctamente";
                    return(PartialView("Modal"));
                }
                else
                {
                    ViewBag.Message = "Ocurrió un error al agregar.  Error: " + result.ErrorMessage;
                    return(PartialView("Modal"));
                }
            }
            else
            {
                result = BL.Producto.UpdateByApi(producto);

                if (result.Correct)
                {
                    ViewBag.Message = "Se actualizó correctamente. ";
                    return(PartialView("Modal"));
                }
                else
                {
                    ViewBag.Message = "Ocurrió un error al actualizar.  Error: " + result.ErrorMessage;
                    return(PartialView("Modal"));
                }
            }
        }
 public static ML.Result AddEF(ML.Producto producto)
 {
     ML.Result result = new ML.Result();
     try
     {
         using (DL_EF.ComercioEntities context = new DL_EF.ComercioEntities())
         {
             ObjectParameter IdProducto = new ObjectParameter("IdProducto", typeof(int));
             var             query      = context.ProductoAdd(producto.Subcategoria.IdSubcategoria, producto.Proveedor.IdProveedor,
                                                              producto.Nombre, producto.Descripcion, producto.Precio, producto.Piezas, IdProducto);
             if (query >= 1)
             {
                 result.Correct = true;
             }
             else
             {
                 result.Correct = false;
                 result.Message = "No se pudo agregar";
             }
         }
     }
     catch (Exception e)
     {
         result.Correct = false;
         result.Message = e.Message;
     }
     return(result);
 }
示例#8
0
 public static ML.Result UpdateProducto(ML.Producto producto)
 {
     ML.Result result = new ML.Result();
     try
     {
         using (DL.BranchbitEntities context = new DL.BranchbitEntities())
         {
             var query = context.ProductoUpdate(producto.SKU, producto.Fert, producto.Modelo, producto.Tipo, producto.NumeroDeSerie);
             if (query >= 1)
             {
                 result.Correct = true;
             }
             else
             {
                 result.Correct      = false;
                 result.ErrorMessage = "No se insertó el producto correctamente";
             }
         }
     }
     catch (Exception ex)
     {
         result.Correct      = false;
         result.ErrorMessage = ex.Message;
     }
     return(result);
 }
示例#9
0
        public static ML.Result GetAllProducto()
        {
            ML.Result result = new ML.Result();
            try
            {
                using (DL.BranchbitEntities context = new DL.BranchbitEntities())
                {
                    var query = context.ProductosGetAll().ToList();

                    if (query != null)
                    {
                        result.Objects = new List <object>();
                        foreach (var obj in query)
                        {
                            ML.Producto producto = new ML.Producto();
                            producto.SKU           = obj.SKU;
                            producto.Fert          = obj.Fert;
                            producto.Modelo        = obj.Modelo;
                            producto.Tipo          = obj.Tipo;
                            producto.NumeroDeSerie = obj.NumeroSerie;
                            producto.Fecha         = (DateTime)obj.Fecha;

                            result.Objects.Add(producto);
                        }
                        result.Correct = true;
                    }
                }
            }
            catch (Exception ex)
            {
                result.Correct      = false;
                result.ErrorMessage = ex.Message;
            }
            return(result);
        }
示例#10
0
        public static ML.Result GetBySKUProducto(string SKU)
        {
            ML.Result result = new ML.Result();
            try
            {
                using (DL.BranchbitEntities context = new DL.BranchbitEntities())
                {
                    var query = context.ProductosGetProductogetBySKU(SKU).FirstOrDefault();

                    if (query != null)
                    {
                        ML.Producto producto = new ML.Producto();
                        producto.SKU           = query.SKU;
                        producto.Fert          = query.Fert;
                        producto.Modelo        = query.Modelo;
                        producto.Tipo          = query.Tipo;
                        producto.NumeroDeSerie = query.NumeroSerie;
                        producto.Fecha         = (DateTime)query.Fecha;

                        result.Object = producto;

                        result.Correct = true;
                    }
                }
            }
            catch (Exception ex)
            {
                result.Correct      = false;
                result.ErrorMessage = ex.Message;
            }
            return(result);
        }
示例#11
0
        public static ML.Result AddAPI(ML.Producto producto)
        {
            ML.Result result = new ML.Result();

            try
            {
                using (var client = new HttpClient())
                {
                    client.BaseAddress = new Uri("http://localhost:22140/api/");

                    var postTask = client.PostAsJsonAsync <ML.Producto>("Producto", producto);
                    postTask.Wait();

                    var resultAPI = postTask.Result;
                    if (resultAPI.IsSuccessStatusCode)
                    {
                        result.Correct = true;
                    }
                    else
                    {
                        result.Correct = false;
                    }
                }
            }
            catch (Exception ex)
            {
                result.Correct      = false;
                result.ErrorMessage = ex.Message;
            }
            return(result);
        }
示例#12
0
        public static void ProductoUpdate()
        {
            ML.Producto producto = new ML.Producto();
            Console.WriteLine("Ingresa el IdProducto a modificar");
            producto.IdProducto = int.Parse(Console.ReadLine());

            Console.WriteLine("Ingresa Nombre del producto");
            producto.Nombre = Console.ReadLine();
            Console.WriteLine("Ingresa Descripcion del producto");
            producto.Descripcion = Console.ReadLine();
            Console.WriteLine("Ingresa Precio del producto");
            producto.Precio = decimal.Parse(Console.ReadLine());
            Console.WriteLine("Ingresa IdDepartamento");
            producto.IdDepartamento = int.Parse(Console.ReadLine());
            Console.WriteLine("Ingresa IdProveedor");
            producto.IdProveedor = int.Parse(Console.ReadLine());
            //imagen
            producto.Imagen = "";
            Console.WriteLine("Ingresa stock del producto");
            producto.Stock = int.Parse(Console.ReadLine());

            var result = BL.Producto.ProductoUpdate(producto);

            if (result.Correct)
            {
                Console.WriteLine("Producto modificado correctamente SP");
            }
            else
            {
                Console.WriteLine(result.ErrorMessage);
            }
        }
示例#13
0
        public static ML.Result AddImagen(ML.Producto producto)
        {
            ML.Result result = new ML.Result();
            try
            {
                using (DL_EF.EcommerceRubenEntities contex = new DL_EF.EcommerceRubenEntities())
                {
                    var Add = contex.ProductoAddImagen
                                  (producto.Nombre, producto.Descripcion, producto.PaisOrigen, producto.Precio
                                  , producto.SubCategoria.IdSubcategoria,
                                  Convert.ToBase64String(producto.LogoTipo), producto.Stock);

                    if (Add > 0)
                    {
                        result.Correct = true;
                    }
                    else
                    {
                        result.Correct = false;
                    }
                }
            }
            catch (Exception ex)
            {
                result.Correct      = false;
                result.ErrorMessage = ex.Message;
            }
            return(result);
        }
示例#14
0
 public static ML.Result ProductoUpdateEF(ML.Producto Producto)
 {
     ML.Result result = new ML.Result();
     try
     {
         using (DL_EF.JFernandezEcommerce2Entities context = new DL_EF.JFernandezEcommerce2Entities()) {
             var query = context.UpdateSP(Producto.Nombre, Producto.Descripcion, Producto.Precio, Producto.IdDepartamento, Producto.IdProveedor, Producto.Imagen, Producto.Stock, Producto.IdProducto);
             if (query >= 1)
             {
                 result.Correct = true;
             }
             else
             {
                 result.Correct      = false;
                 result.ErrorMessage = "Error no se pudo modificar el producto ";
             }
         }
     }
     catch (Exception e)
     {
         result.Correct      = false;
         result.ErrorMessage = "Error en " + e.Message;
     }
     return(result);
 }
 public static ML.Result UpdateEF(ML.Producto producto)
 {
     ML.Result result = new ML.Result();
     try
     {
         using (DL_EF.ComercioEntities context = new DL_EF.ComercioEntities())
         {
             var query = context.ProductoUpdate(producto.IdProducto, producto.Subcategoria.IdSubcategoria,
                                                producto.Proveedor.IdProveedor, producto.Nombre, producto.Descripcion, producto.Precio,
                                                producto.Piezas);
             if (query >= 1)
             {
                 result.Correct = true;
             }
             else
             {
                 result.Correct = false;
                 result.Message = "No se pudo actualizar";
             }
         }
     }
     catch (Exception e)
     {
         result.Correct = false;
         result.Message = e.Message;
     }
     return(result);
 }
示例#16
0
        public static ML.Result DeleteEF(ML.Producto producto)
        {
            ML.Result result = new ML.Result();

            try
            {
                using (DL_EF.EcommerceRubenEntities context = new DL_EF.EcommerceRubenEntities())
                {
                    var query = context.ProductoDelete(producto.IdProducto);
                    if (query >= 1)
                    {
                        result.Correct = true;
                    }
                    else
                    {
                        result.Correct      = false;
                        result.ErrorMessage = "No se eliminó el registro";
                    }

                    result.Correct = true;
                }
            }
            catch (Exception ex)
            {
                result.Correct      = false;
                result.ErrorMessage = ex.Message;
            }

            return(result);
        }
示例#17
0
        /*LINQ*/
        public static ML.Result ProductoAddLinq(ML.Producto Producto)
        {
            ML.Result result = new ML.Result();
            try
            {
                using (DL_EF.JFernandezEcommerce2Entities context = new DL_EF.JFernandezEcommerce2Entities())
                {
                    DL_EF.Producto productoDL = new DL_EF.Producto();
                    productoDL.Nombre         = Producto.Nombre;
                    productoDL.Descripcion    = Producto.Descripcion;
                    productoDL.Precio         = Producto.Precio;
                    productoDL.IdDepartamento = Producto.IdDepartamento;
                    productoDL.IdProveedor    = Producto.IdProveedor;
                    productoDL.Imagen         = Producto.Imagen;
                    productoDL.Stock          = Producto.Stock;

                    context.Productoes.Add(productoDL);
                    context.SaveChanges();
                    result.Correct = true;
                }
            }
            catch (Exception e)
            {
                result.Correct      = false;
                result.ErrorMessage = "Error en " + e;
            }
            return(result);
        }
示例#18
0
        public static ML.Result UpdateEF(ML.Producto producto)
        {
            ML.Result result = new ML.Result();

            try
            {
                using (DL_EF.EcommerceRubenEntities context = new DL_EF.EcommerceRubenEntities())
                {
                    var updateResult = context.ProductoUpdate(producto.IdProducto, producto.Nombre, producto.Descripcion, producto.PaisOrigen,
                                                              producto.Precio, producto.SubCategoria.IdSubcategoria, Convert.ToBase64String(producto.LogoTipo), producto.Stock);

                    if (updateResult >= 1)
                    {
                        result.Correct = true;
                    }
                    else
                    {
                        result.Correct      = false;
                        result.ErrorMessage = "No se actualizó el status de la credencial";
                    }
                }
            }
            catch (Exception ex)
            {
                result.Correct      = false;
                result.ErrorMessage = ex.Message;
            }

            return(result);
        }
示例#19
0
        public ActionResult Form(string SKU)
        {
            ML.Result resultTipos = BL.Tipo.GetAll();

            ML.Producto producto = new ML.Producto();

            producto.Tipo       = new ML.Tipo();
            producto.Tipo.Tipos = resultTipos.Objects;

            if (SKU == null)
            {
                producto.Accion = "Add";
                ViewBag.Titulo  = "Agregar producto nuevo";
                ViewBag.Accion  = "Guardar";

                return(View(producto));
            }
            else
            {
                producto.Accion = "Update";
                ViewBag.Titulo  = "Actualizar producto existente";
                ViewBag.Accion  = "Actualizar";
                producto.SKU    = SKU;
                var result = BL.Producto.GetBySKU(producto.SKU);
                producto = (ML.Producto)result.Object;

                producto.Tipo.Tipos = resultTipos.Objects;

                return(View(producto));
            }
        }
示例#20
0
        public ActionResult Form(int?IdProducto)
        {
            ML.Result resultTipos = BL.Tipo.GetAll();

            ML.Producto producto = new ML.Producto();

            producto.Tipo       = new ML.Tipo();
            producto.Tipo.Tipos = resultTipos.Objects;

            if (IdProducto == null)
            {
                ViewBag.Titulo = "Agregar producto";
                ViewBag.Accion = "Guardar";

                return(View(producto));
            }
            else
            {
                ViewBag.Titulo      = "Actualizar producto";
                ViewBag.Accion      = "Actualizar";
                producto.IdProducto = IdProducto.Value;

                var result = BL.Producto.GetById(producto.IdProducto);
                producto = (ML.Producto)result.Object;

                producto.Tipo.Tipos = resultTipos.Objects;

                return(View(producto));
            }
        }
示例#21
0
        public static ML.Result GetProductogetBySKUAPI(string SKU)
        {
            ML.Result result = new ML.Result();
            try
            {
                using (var client = new HttpClient())
                {
                    client.BaseAddress = new Uri("http://localhost:22140/api/");
                    var responseTask = client.GetAsync("Producto/" + SKU);
                    responseTask.Wait();
                    var resultServicio = responseTask.Result;

                    if (resultServicio.IsSuccessStatusCode)
                    {
                        var readTask = resultServicio.Content.ReadAsAsync <ML.Result>();
                        result.Objects = new List <object>();

                        ML.Producto producto = Newtonsoft.Json.JsonConvert.DeserializeObject <ML.Producto>(readTask.Result.Object.ToString());
                        result.Object  = producto;
                        result.Correct = true;
                    }
                }
            }
            catch (Exception ex)
            {
                result.Correct      = false;
                result.ErrorMessage = ex.Message;
            }
            return(result);
        }
示例#22
0
        /*LINQ*/
        public static void ProductoAddLinq()
        {
            ML.Producto producto = new ML.Producto();

            Console.WriteLine("Ingresa Nombre del producto");
            producto.Nombre = Console.ReadLine();
            Console.WriteLine("Ingresa Descripcion del producto");
            producto.Descripcion = Console.ReadLine();
            Console.WriteLine("Ingresa Precio del producto");
            producto.Precio = decimal.Parse(Console.ReadLine());
            Console.WriteLine("Ingresa IdDepartamento");
            producto.IdDepartamento = int.Parse(Console.ReadLine());
            Console.WriteLine("Ingresa IdProveedor");
            producto.IdProveedor = int.Parse(Console.ReadLine());
            //imagen
            producto.Imagen = "";
            Console.WriteLine("Ingresa stock del producto");
            producto.Stock = int.Parse(Console.ReadLine());


            ML.Result result = new ML.Result();
            result = BL.Producto.ProductoAddLinq(producto);

            if (result.Correct)
            {
                Console.WriteLine("Producto registrado con exito LINQ");
            }
            else
            {
                Console.WriteLine(result.ErrorMessage);
            }
        }
示例#23
0
        public Result DeleteProducto(ML.Producto producto)
        {
            ML.Result result = BL.Producto.DeleteEF(producto);

            return(new Result {
                Correct = result.Correct, ErrorMessage = result.ErrorMessage, Ex = result.Ex
            });
        }
示例#24
0
        public Result AddProducto(ML.Producto producto)
        {
            ML.Result result = BL.Producto.AddImagen(producto);

            return(new Result {
                Correct = result.Correct, ErrorMessage = result.ErrorMessage, Ex = result.Ex
            });
        }
示例#25
0
        public ActionResult Delete(int IdProducto)
        {
            ML.Result   result   = BL.Producto.Delete(IdProducto);
            ML.Producto producto = new ML.Producto();

            producto.Productos = result.Objects;

            return(View(producto));
        }
示例#26
0
        public static ML.Result GetByIdEF(ML.Producto productos)
        {
            ML.Result result = new ML.Result();

            try
            {
                using (DL_EF.EcommerceRubenEntities context = new DL_EF.EcommerceRubenEntities())
                {
                    var alumnos = context.ProductoGetById(productos.IdProducto).FirstOrDefault();



                    if (alumnos != null)
                    {
                        ML.DetalleVenta detalle  = new ML.DetalleVenta();
                        ML.Producto     producto = new ML.Producto();
                        producto.IdProducto  = alumnos.IdProducto;
                        producto.Nombre      = alumnos.NombreProducto;
                        producto.Descripcion = alumnos.Descripcion;
                        producto.PaisOrigen  = alumnos.PaisOrigen;
                        producto.Precio      = alumnos.Precio;
                        producto.Stock       = Convert.ToInt32(alumnos.Stock);

                        producto.SubCategoria = new ML.SubCategoria();
                        producto.SubCategoria.IdSubcategoria        = alumnos.IdSubCategori;
                        producto.SubCategoria.Categoria             = new ML.Categoria();
                        producto.SubCategoria.Categoria.IdCategoria = alumnos.IdCategoria;
                        producto.LogoTipo = Convert.FromBase64String(alumnos.Imagen);

                        producto.DetalleVenta          = new ML.DetalleVenta();
                        producto.DetalleVenta.Cantidad = 1;

                        producto.DetalleVenta.Venta       = new ML.Venta();
                        producto.DetalleVenta.Venta.Total = Convert.ToInt32(producto.Precio * producto.DetalleVenta.Cantidad);
                        //producto.DetalleVenta.Venta.Total = alumnos.Precio;
                        result.Object = producto;

                        result.Correct = true;
                    }
                    else
                    {
                        result.Correct      = false;
                        result.ErrorMessage = "No se encontraron registros.";
                    }
                }
            }
            catch (Exception ex)
            {
                result.Correct      = false;
                result.ErrorMessage = ex.Message;
            }

            return(result);
        }
 // PUT: api/Producto/5
 public IHttpActionResult Update([FromBody] ML.Producto producto)
 {
     ML.Result result = BL.Producto.UpdateProducto(producto);
     if (result.Correct)
     {
         return(Ok(result));
     }
     else
     {
         return(NotFound());
     }
 }
 // POST: api/Producto
 public IHttpActionResult Post([FromBody] ML.Producto producto)
 {
     ML.Result result = BL.Producto.AddImagen(producto);
     if (result.Correct)
     {
         return(Ok(result));
     }
     else
     {
         return(NotFound());
     }
 }
示例#29
0
        public static ML.Result ProductoGetAllLinq()
        {
            ML.Result result = new ML.Result();
            try
            {
                using (DL_EF.JFernandezEcommerce2Entities context = new DL_EF.JFernandezEcommerce2Entities())
                {
                    var query = (from p in context.Productoes
                                 select new
                    {
                        IdProducto = p.IdProducto,
                        Nombre = p.Nombre,
                        Descripcion = p.Descripcion,
                        Precio = p.Precio,
                        IdDepartamento = p.IdDepartamento,
                        IdProveedor = p.IdProveedor,
                        Imagen = p.Imagen,
                        Stock = p.Stock
                    }).ToList();

                    if (query != null)
                    {
                        result.Objects = new List <object>();
                        foreach (var item in query)
                        {
                            ML.Producto ProductoDL = new ML.Producto();
                            ProductoDL.IdProducto     = item.IdProducto;
                            ProductoDL.Nombre         = item.Nombre;
                            ProductoDL.Descripcion    = item.Descripcion;
                            ProductoDL.Precio         = (decimal)item.Precio;
                            ProductoDL.IdDepartamento = (int)item.IdDepartamento;
                            ProductoDL.IdProveedor    = (int)item.IdProveedor;
                            ProductoDL.Stock          = (int)item.Stock;

                            result.Objects.Add(ProductoDL);
                        }
                        result.Correct = true;
                    }
                    else
                    {
                        result.Correct      = false;
                        result.ErrorMessage = "Error no hay registros";
                    }
                }
            }
            catch (Exception e)
            {
                result.Correct      = false;
                result.ErrorMessage = "Error en " + e.Message;
            }
            return(result);
        }
示例#30
0
        public IHttpActionResult Put([FromBody] ML.Producto producto)
        {
            var result = BL.Producto.Update(producto);

            if (result.Correct)
            {
                return(Ok(result));
            }
            else
            {
                return(Content(HttpStatusCode.NotFound, result));
            }
        }