示例#1
0
        public ActionResult Mover(int?id)
        {
            int id_producto;

            if (id != null)
            {
                try
                {
                    detalle_producto det = new detalle_producto();
                    det         = db.detalle_producto.Where(x => x.id_detalle_producto == id).SingleOrDefault();
                    id_producto = det.id_producto;
                    if (det.enexposicion == true)
                    {
                        det.enexposicion = false;
                    }
                    else
                    {
                        det.enexposicion = true;
                    }
                    string ID = Convert.ToString(id_producto);
                    db.SaveChanges();
                    return(Redirect("~/Productos/Detail/" + det.id_producto));
                }
                catch (Exception)
                {
                    throw;
                }
            }
            else
            {
                return(RedirectToAction("index"));
            }
        }
示例#2
0
        public ActionResult Create([Bind(Include = "id_proveedor,nombre_proveedor,direccion,ruc")] proveedor proveedor)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    proveedor.estado = true;
                    db.proveedor.Add(proveedor);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
                catch (Exception)
                {
                    VerificacionDuplicado verif = new VerificacionDuplicado();
                    bool rptanombre, rptaruc;
                    rptanombre = verif.VerificarProveedor(proveedor.nombre_proveedor);
                    if (rptanombre == true)
                    {
                        ModelState.AddModelError("errorProveedor", "Ya existe una proveedor con este nombre, agruegue una diferente");
                    }

                    rptaruc = verif.VerificarProveedorRuc(proveedor.ruc);
                    if (rptaruc == true)
                    {
                        ModelState.AddModelError("ruc", "Ya existe un proveedor con este ruc, agruegue una diferente");
                    }
                    if (rptanombre == false && rptaruc == false)
                    {
                        ModelState.AddModelError("errorProveedor", "Ocurrio un error al guadar");
                    }
                }
            }

            return(View(proveedor));
        }
示例#3
0
        public ActionResult Create([Bind(Include = "id_generico,nombre_generico,descripcion_generico")] generico generico)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    generico.estado = true;
                    db.generico.Add(generico);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
                catch (Exception)
                {
                    VerificacionDuplicado verif = new VerificacionDuplicado();
                    bool rpta;
                    rpta = verif.VerificarGenerico(generico.nombre_generico);
                    if (rpta == true)
                    {
                        ModelState.AddModelError("errorGenerico", "Ya existe un generico con este nombre, agruegue uno diferente");
                    }
                    else
                    {
                        ModelState.AddModelError("errorGenerico", "Ocurrio un error al guadar");
                    }
                }
            }

            return(View(generico));
        }
示例#4
0
 public ActionResult Create([Bind(Include = "id_presentacion,nombre_presentacion,descripcion_presentacion")] presentacion presentacion)
 {
     if (ModelState.IsValid)
     {
         try
         {
             presentacion.estado = true;
             db.presentacion.Add(presentacion);
             db.SaveChanges();
             return(RedirectToAction("Index"));
         }
         catch (Exception)
         {
             VerificacionDuplicado verif = new VerificacionDuplicado();
             bool rpta;
             rpta = verif.VerificarPresentacion(presentacion.nombre_presentacion);
             if (rpta == true)
             {
                 ModelState.AddModelError("errorPresentacion", "Ya existe una presentacion con este nombre, agruegue uno diferente");
             }
             else
             {
                 ModelState.AddModelError("errorPresentacion", "Ocurrio un error al guadar");
             }
         }
     }
     return(View(presentacion));
 }
示例#5
0
        public ActionResult Create([Bind(Include = "id_umedida,nombre_umedida,descripcion_umedida")] umedida umedida)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    umedida.estado = true;
                    db.umedida.Add(umedida);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
                catch (Exception)
                {
                    VerificacionDuplicado verif = new VerificacionDuplicado();
                    bool rpta;
                    rpta = verif.VerificarMedida(umedida.nombre_umedida);
                    if (rpta == true)
                    {
                        ModelState.AddModelError("errorMedida", "Ya existe una medida con este nombre, agruegue una diferente");
                    }
                    else
                    {
                        ModelState.AddModelError("errorMedida", "Ocurrio un error al guadar");
                    }
                }
            }

            return(View(umedida));
        }
示例#6
0
        public ActionResult Create([Bind(Include = "id_usuario,nombre_user,apellido_user,email,contrasena,estado,imagen,id_rol, usuario_cedula")] usuario usuario)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    usuario.contrasena = "Contrasena123";


                    usuario.contrasena = HelperHash.MD5(usuario.contrasena);
                    usuario.estado     = true;
                    db.usuario.Add(usuario);

                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
                //catch (Exception)
                //{
                //    ModelState.AddModelError("nombre_user", "Erro al guardar");
                //    //throw;
                //}
                catch (DbEntityValidationException ex)
                {
                    List <string> errorMessages = new List <string>();
                    List <string> newMessages   = new List <string>();
                    //((System.Data.Entity.Validation.DbEntityValidationException)$dbEx).EntityValidationErrors;

                    foreach (DbEntityValidationResult validationResult in ex.EntityValidationErrors)
                    {
                        string entityName = validationResult.Entry.Entity.GetType().Name;
                        foreach (DbValidationError error in validationResult.ValidationErrors)
                        {
                            errorMessages.Add(entityName + "." + error.PropertyName + ": " + error.ErrorMessage);
                        }
                    }
                    //respuesta.Respuesta = false;
                    //respuesta.ListaError = errorMessages;
                    newMessages = errorMessages;
                }
            }


            ViewBag.id_rol = new SelectList(db.rol, "id_rol", "rol1", usuario.id_rol);
            return(View(usuario));
        }
示例#7
0
        public ActionResult Create([Bind(Include = "id_cliente,nombre_cliente,apellido_cliente,direccion,cedula")] cliente cliente)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    if (cliente.cedula != null)
                    {
                        VerificacionDuplicado verif = new VerificacionDuplicado();
                        bool rptacedula;
                        rptacedula = verif.VerificarCliente(cliente.cedula, 0);
                        if (rptacedula == false)
                        {
                            cliente.estado = true;
                            db.cliente.Add(cliente);
                            db.SaveChanges();
                            return(RedirectToAction("Index"));
                        }
                        else
                        {
                            ModelState.AddModelError("cedula", "Ya existe un cliente con esta cedula, agruegue una diferente");
                        }
                    }
                    else
                    {
                        cliente.estado = true;
                        db.cliente.Add(cliente);
                        db.SaveChanges();
                        return(RedirectToAction("Index"));
                    }
                }
                catch (Exception)
                {
                    ModelState.AddModelError("erroCliente", "Ocurrio un errror al guardar");
                }
            }

            return(View(cliente));
        }
示例#8
0
        //, HttpPostedFileBase img
        public ActionResult Index(usuario usuario)
        {
            usuario devolver = usuario;

            try
            {
                var user = db.usuario.Where(x => x.id_usuario == usuario.id_usuario).SingleOrDefault();
                //user.usuario_cedula = usuario.usuario_cedula;
                user.nombre_user    = usuario.nombre_user;
                user.apellido_user  = usuario.apellido_user;
                user.email          = usuario.email;
                user.usuario_cedula = usuario.usuario_cedula;

                usuario.contrasena = user.contrasena;
                usuario.id_rol     = user.id_rol;
                usuario.estado     = user.estado;

                //bool rpta = usuario.guardaImg(user, img);
                //string archivo = DateTime.Now.ToString("yyyymmddHHmmss") + Path.GetExtension(img.FileName);
                //string path = Server.MapPath("~/Uploads/");
                //if (Directory.Exists(path))
                //{
                //    Directory.CreateDirectory(path);
                //}
                //img.SaveAs(path + archivo);
                //user.imagen = archivo;

                db.Entry(user).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            catch (Exception)
            {
                ModelState.AddModelError("newcontrasena", "Hubo un error al guardar");
                return(View(devolver));
            }
        }
示例#9
0
        public JsonResult Create(int id_cliente, decimal subtotal, detalle_venta[] detalle)
        {
            ResponseModel result = new ResponseModel();

            result.Respuesta = false;
            detalle_producto detProducto = new detalle_producto();

            //string result = "Error! No se pudo guardar!";
            if (id_cliente != 0 && id_cliente >= 0 && subtotal != 0)
            {
                DateTime fecha_    = DateTime.Now;
                var      UserLogin = (usuario)Session["User"];
                int      idUser    = Convert.ToInt32(UserLogin.id_usuario);
                try
                {
                    var SaveVenta = new venta
                    {
                        id_usuario = idUser,
                        fecha      = fecha_,
                        total      = subtotal,
                        iva        = 0,
                        descuento  = 0,
                        id_cliente = id_cliente,
                        id_estado  = 3,
                    };
                    db.venta.Add(SaveVenta);

                    foreach (var item in detalle)
                    {
                        var Detalle = new detalle_venta
                        {
                            id_producto = item.id_producto,
                            cantidad    = item.cantidad,
                            precio      = item.precio,
                            subtotal    = item.cantidad * item.precio,
                            iva         = 0,
                            descuento   = 0
                        };
                        db.detalle_venta.Add(Detalle);
                        //debemos de bajar el stockdel detalle de producto correspondiente
                        //detProducto = db.detalle_producto.Where(x => x.id_producto == item.id_producto && x.estado==true && x.id_detalle_producto.min).SingleOrDefault();
                        var detProd = (from table in db.detalle_producto
                                       where table.id_producto == item.id_producto && table.stock != 0
                                       select new
                        {
                            id_detalle_producto = table.id_detalle_producto            //ya obtuvimos los de detalle con stock y activos, para luegos restarlos
                        }).ToArray();
                        int stockAct, comprobar = 0, reestante;
                        int CanTemp = item.cantidad;
                        ///vamos a ver cuanto tiene el primer registro con stock activo
                        ///var dp1= db.detalle_producto.Where(x=>x.id_detalle_producto==detProd[0]).
                        foreach (var d in detProd)
                        {
                            var detalle_productoreestar = db.detalle_producto.Where(x => x.id_detalle_producto == d.id_detalle_producto).SingleOrDefault();
                            stockAct = Convert.ToInt32(detalle_productoreestar.stock);
                            if (CanTemp == 0)
                            {
                                comprobar = 1;
                                break;
                            }
                            else
                            {//segui iterando
                                if (CanTemp <= stockAct)
                                {
                                    detalle_productoreestar.stock = detalle_productoreestar.stock - CanTemp;
                                    CanTemp = CanTemp - CanTemp;
                                }
                                else//quiere decir que la cantidad es mayor, para que luego itere al siguiente registro de detalleproducto
                                {
                                    CanTemp = CanTemp - stockAct;
                                    detalle_productoreestar.stock = 0;
                                }
                            }
                        }
                    }
                    db.SaveChanges();
                    result.Respuesta = true;
                    result.Error     = "Venta guardada con exito!";
                }
                catch (Exception)
                {
                    throw;
                    //result.Error = "La Venta no se pudo guardar.";
                }
            }
            else
            {
                result.Respuesta = false;
                result.Error     = "No se pudo guardar la venta";
            }

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
示例#10
0
        public ActionResult Create(int id_proveedor, string numerofactura, DateTime fecha, decimal iva, decimal subtotal, decimal descuento, detalle_compra[] detalle)
        {
            //string result = "Error! No se pudo guardar!";
            string  result    = "LLego al controlador";
            var     UserLogin = (usuario)Session["User"];
            int     idUser    = Convert.ToInt32(UserLogin.id_usuario);
            decimal iva15     = Convert.ToDecimal(0.15);


            var SaveCompra = new compra
            {
                id_proveedor = id_proveedor,
                id_usuario   = idUser,
                fecha        = fecha,
                num_fact     = numerofactura,
                iva          = iva,
                subtotal     = subtotal,
                descuento    = descuento,
                Total        = (subtotal + iva) - descuento,
                id_estado    = 1,
            };

            try
            {
                db.compra.Add(SaveCompra);
                foreach (var d in detalle)
                {
                    var SaveDetail = new detalle_compra()
                    {
                        id_producto    = d.id_producto,
                        cantidad_cajas = d.cantidad_cajas,
                        precio_compra  = d.precio_compra,
                        undxcajas      = d.undxcajas,
                        total_und      = d.cantidad_cajas * d.undxcajas,
                        enexposicion   = d.enexposicion,
                        descuento      = d.descuento,
                        // iva = (d.precio_compra * d.cantidad_cajas) * (iva15),
                        id_lote = d.id_lote,
                        estado  = true,
                    };
                    //SaveDetail.id_compra = d.id_producto;
                    //SaveDetail.cantidad_cajas = d.cantidad_cajas;
                    //SaveDetail.precio_compra = d.precio_compra;
                    //SaveDetail.undxcajas = d.undxcajas;
                    //SaveDetail.total_und = d.total_und;
                    //SaveDetail.enexposicion = d.enexposicion;
                    //SaveDetail.descuento = d.descuento;
                    //SaveDetail.id_lote = d.id_lote;
                    //SaveDetail.estado = true;
                    if (iva != 0)
                    {
                        SaveDetail.iva = (d.precio_compra * d.cantidad_cajas) * (iva15);
                    }
                    else
                    {
                        SaveDetail.iva = 0;
                    }
                    db.detalle_compra.Add(SaveDetail);
                }

                //foreach (var d in detalle)
                //{
                //    var SaveDetailProduct = new detalle_producto
                //    {
                //        id_producto = d.id_producto,
                //        id_lote = d.id_lote,
                //        numero_caja = d.cantidad_cajas,
                //        undxcajas = d.undxcajas,
                //        enexposicion = d.enexposicion,
                //        estado = true,
                //        iva = (d.precio_compra * d.cantidad_cajas) * (iva15),
                //        precio_compra = d.precio_compra,
                //        stock = d.cantidad_cajas * d.undxcajas,
                //    };
                //    if (iva != 0)
                //    {
                //        SaveDetailProduct.iva = (d.precio_compra * d.cantidad_cajas) * (iva15);
                //    }
                //    else
                //    {
                //        SaveDetailProduct.iva = 0;
                //    }
                //        db.detalle_producto.Add(SaveDetailProduct);
                //}

                db.SaveChanges();
                result = "La compra se guardado correcatmente";
            }
            catch (Exception)
            {
                throw;
            }

            return(Json(result, JsonRequestBehavior.AllowGet));
        }