Exemplo n.º 1
0
        public ActionResult ActualizarDatos(Producto Product)
        {
            String ValueBack = "";
            int    resultado = -1;

            if (!Session["almacen"].Equals(Product.Almacen) && !Session["almacen"].Equals("Admin"))
            {
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                ValueBack           = "No pertenece al almacen, no es posible registrar producto";
                return(Content(ValueBack, MediaTypeNames.Text.Plain));
            }


            try
            {
                var contextoDB = new InventarioGammaEntities();
                //Actualiza producto
                var producto = (from prod in contextoDB.Productos
                                where prod.IdProducto == Product.IdProducto &&
                                (prod.Estatus == 1 || prod.Estatus == 2)
                                select prod).FirstOrDefault();
                producto.Almacen            = Product.Almacen;
                producto.Clave              = Product.Clave;
                producto.Descripcion        = Product.Descripcion;
                producto.Importe_Inventario = Product.Importe_Inventario;
                producto.Precio_Costo       = Product.Precio_Costo;
                producto.Presentacion       = Product.Presentacion;
                producto.Ubicacion          = Product.Ubicacion;
                resultado = contextoDB.SaveChanges();
                logger.Info("Producto actualizado");
                ///Crea registro de historial
                Historial hist = new Historial();
                hist.Producto          = producto.IdProducto;
                hist.Fecha_Movimiento  = DateTime.Parse(DateTime.Now.ToString("MM/dd/yyyy"));
                hist.Tipo_Movimiento   = "Modificacion";
                hist.Origen            = producto.Almacen;
                hist.Destino           = producto.Almacen;
                hist.Cantidad          = 0;
                hist.Cantidad_Anterior = producto.Existencia;
                hist.Cantidad_Actual   = producto.Existencia;
                contextoDB.Historials.Add(hist);
                contextoDB.SaveChanges();
                logger.Info("Historial creado");
                ValueBack = "Registro actualizado correctamente";
            }
            catch (System.Data.EntityException ex)
            {
                logger.Error("Error:" + ex.InnerException);
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                ValueBack           = "Ocurrió un error durante actualización, verifique los datos y vuelva a intentarlo";
                return(Content(ValueBack, MediaTypeNames.Text.Plain));
            }
            return(Content(ValueBack));
        }
Exemplo n.º 2
0
        public ActionResult Eliminar(int idProducto)
        {
            String ValueBack = "";
            int    resultado = -1;

            try
            {
                var contextoDB = new InventarioGammaEntities();
                //Elimina producto/baja
                var producto = (from prod in contextoDB.Productos
                                where prod.IdProducto == idProducto &&
                                prod.Estatus != 0
                                select prod).FirstOrDefault();


                if (!Session["almacen"].Equals(producto.Almacen) && !Session["almacen"].Equals("Admin"))
                {
                    Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                    ValueBack           = "No pertenece al almacen, no es posible registrar producto";
                    return(Content(ValueBack, MediaTypeNames.Text.Plain));
                }


                producto.Estatus = 0;
                resultado        = contextoDB.SaveChanges();
                ///Crea registro de historial
                Historial hist = new Historial();
                hist.Producto          = producto.IdProducto;
                hist.Fecha_Movimiento  = DateTime.Parse(DateTime.Now.ToString("MM/dd/yyyy"));
                hist.Tipo_Movimiento   = "Eliminacion";
                hist.Origen            = producto.Almacen;
                hist.Destino           = producto.Almacen;
                hist.Cantidad          = 0;
                hist.Cantidad_Anterior = 0;
                hist.Cantidad_Actual   = 0;
                contextoDB.Historials.Add(hist);
                contextoDB.SaveChanges();
                ValueBack = "Registro eliminado!";
            }
            catch (System.Data.EntityException ex)
            {
                logger.Error("Error:" + ex.InnerException);
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                ValueBack           = "Ocurrió un error durante eliminación, verifique los datos y vuelva a intentarlo";
                return(Json(new { mensaje = ValueBack }, JsonRequestBehavior.AllowGet));
            }
            Response.StatusCode = (int)System.Net.HttpStatusCode.OK;
            return(Json(new { mensaje = ValueBack }, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 3
0
        public ActionResult ActualizarExistencia(int IdProducto, int Cantidad)
        {
            String ValueBack        = "";
            int    resultado        = -1;
            double CantidadAnterior = 0;


            try
            {
                var contextoDB = new InventarioGammaEntities();
                //Actualiza existencia/actualizacion
                var producto = (from prod in contextoDB.Productos
                                where prod.IdProducto == IdProducto &&
                                prod.Estatus != 0
                                select prod).FirstOrDefault();

                if (!Session["almacen"].Equals(producto.Almacen) && !Session["almacen"].Equals("Admin"))
                {
                    Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                    ValueBack           = "No pertenece al almacen, no es posible registrar producto";
                    return(Content(ValueBack, MediaTypeNames.Text.Plain));
                }

                CantidadAnterior    = producto.Existencia;
                producto.Existencia = producto.Existencia + Cantidad;
                resultado           = contextoDB.SaveChanges();
                ///Crea registro de historial
                Historial hist = new Historial();
                hist.Producto          = producto.IdProducto;
                hist.Fecha_Movimiento  = DateTime.Parse(DateTime.Now.ToString("MM/dd/yyyy"));
                hist.Tipo_Movimiento   = "Alta";
                hist.Origen            = "Distribuidor";
                hist.Destino           = producto.Almacen;
                hist.Cantidad          = Cantidad;
                hist.Cantidad_Anterior = CantidadAnterior;
                hist.Cantidad_Actual   = producto.Existencia;
                contextoDB.Historials.Add(hist);
                contextoDB.SaveChanges();
                ValueBack = "Actualizado";
            }
            catch (System.Data.EntityException ex)
            {
                logger.Error("Error:" + ex.InnerException);
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                ValueBack           = "Ocurrió un error durante alta de inventario, verifique los datos y vuelva a intentarlo";
                return(Content(ValueBack, MediaTypeNames.Text.Plain));
            }
            return(Content(ValueBack));
        }
Exemplo n.º 4
0
        public ActionResult ResetUser(String usuario)
        {
            var    contexDBUser = new InventarioGammaEntities();
            var    newPass      = Convert.ToBase64String(Encoding.UTF8.GetBytes(usuario));
            String valueBack    = "";

            try
            {
                var thisUser = (from user in contexDBUser.Usuarios
                                where
                                user.NombreUsuario == usuario
                                select user).FirstOrDefault();


                thisUser.Llave = newPass;
                contexDBUser.SaveChanges();
                valueBack = "200";
                logger.Info("Done");
                Response.StatusCode = (int)System.Net.HttpStatusCode.OK;
            }
            catch (InvalidOperationException ex)
            {
                logger.Error("Error:" + ex.InnerException);
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                valueBack           = "Ocurrió un error durante registro, verifique los datos";
            }

            return(Content(valueBack));
        }
Exemplo n.º 5
0
        public ActionResult nuevo(Producto producto)
        {
            var      contextoDB = new InventarioGammaEntities();
            String   valueBack  = "";
            Producto prod       = producto;

            prod.Estatus    = 1;
            prod.Existencia = 0;
            Historial hist = new Historial();

            if (!Session["almacen"].Equals(producto.Almacen) && !Session["almacen"].Equals("Admin"))
            {
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                valueBack           = "No pertenece al almacen, no es posible registrar producto";
                return(Content(valueBack, MediaTypeNames.Text.Plain));
            }
            try
            {
                //alta el producto
                contextoDB.Productos.Add(prod);
                contextoDB.SaveChanges();
                //genera historial
                hist.Producto          = prod.IdProducto;
                hist.Fecha_Movimiento  = DateTime.Parse(DateTime.Now.ToString("MM/dd/yyyy"));
                hist.Tipo_Movimiento   = "Registro";
                hist.Origen            = "Distribuidor";
                hist.Destino           = prod.Almacen;
                hist.Cantidad          = 0;
                hist.Cantidad_Anterior = 0;
                hist.Cantidad_Actual   = 0;
                contextoDB.Historials.Add(hist);
                contextoDB.SaveChanges();
                valueBack = "Alta exitosa!";
            }
            catch (System.Data.EntityException ex)
            {
                logger.Error("Error:" + ex.InnerException);
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                valueBack           = "Ocurrió un error durante registro, verifique los datos y vuelva a intentarlo";
                return(Content(valueBack, MediaTypeNames.Text.Plain));
            }

            return(Content(valueBack, MediaTypeNames.Text.Plain));
        }
Exemplo n.º 6
0
        public ActionResult Actualizar(String Password, String newPassword)
        {
            var    usuario   = Session["usuario"];
            String ValueBack = "";


            try
            {
                var oldPass    = Convert.ToBase64String(Encoding.UTF8.GetBytes(Password));
                var newPass    = Convert.ToBase64String(Encoding.UTF8.GetBytes(newPassword));
                var contextoDB = new InventarioGammaEntities();
                var thisUser   = (from usuarios in contextoDB.Usuarios
                                  where
                                  usuario == usuarios.NombreUsuario && oldPass == usuarios.Llave
                                  select usuarios).FirstOrDefault();

                if (thisUser != null)
                {
                    thisUser.Llave = newPass;
                    contextoDB.SaveChanges();
                    ValueBack = "Contraeseña actualizada!";
                }
                else
                {
                    Response.StatusCode = (int)System.Net.HttpStatusCode.Forbidden;
                    ValueBack           = "La contraseña actual es incorrecta, verifique y vuelva a intentarlo";
                    return(Content(ValueBack, System.Net.Mime.MediaTypeNames.Text.Plain));
                }
            }
            catch (System.Data.EntityException ex)
            {
                logger.Error("Error:" + ex.InnerException);
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                ValueBack           = "Ocurrió un error durante la operación, verifique los datos y vuelva a intentarlo";
                return(Json(new { mensaje = ValueBack }, JsonRequestBehavior.AllowGet));
            }

            Response.StatusCode = (int)System.Net.HttpStatusCode.OK;
            return(Json(new { mensaje = ValueBack }, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 7
0
        public ActionResult AltUser(Usuario user)
        {
            var     contexDBUser = new InventarioGammaEntities();
            String  valueBack    = "";
            Usuario users        = user;

            users.Llave = Convert.ToBase64String(Encoding.UTF8.GetBytes(user.Llave));
            try
            {
                contexDBUser.Usuarios.Add(users);
                contexDBUser.SaveChanges();
                valueBack = "Alta exitosa";
            }
            catch (InvalidOperationException ex)
            {
                logger.Error("Error:" + ex.InnerException);
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                valueBack           = "Ocurrió un error durante registro, verifique los datos";
            }

            return(Content(valueBack));
        }
Exemplo n.º 8
0
        public ActionResult DelUser(String usuario)
        {
            var    contexDBUser = new InventarioGammaEntities();
            String valueBack    = "";

            try
            {
                var user = new Usuario {
                    NombreUsuario = usuario
                };
                contexDBUser.Entry(user).State = System.Data.Entity.EntityState.Deleted;
                contexDBUser.SaveChanges();
                valueBack           = "200";
                Response.StatusCode = (int)System.Net.HttpStatusCode.OK;
            }
            catch (InvalidOperationException ex)
            {
                logger.Error("Error:" + ex.InnerException);
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                valueBack           = "Ocurrió un error durante registro, verifique los datos";
            }

            return(Content(valueBack));
        }
Exemplo n.º 9
0
        public ActionResult TransferenciaAlmacen(int idProducto, String Almacen, int Cantidad, String ClaveT)
        {
            String ValueBack = "";
            int    resultado = -1;


            try
            {
                var      contextoDB = new InventarioGammaEntities();
                Producto PodTrans   = new Producto();
                ///Realiza actualizacion/transferencia
                var producto = (from prod in contextoDB.Productos
                                where prod.IdProducto == idProducto &&
                                (prod.Estatus == 1 || prod.Estatus == 2)
                                select prod).FirstOrDefault();
                if (!Session["almacen"].Equals(producto.Almacen) && !Session["almacen"].Equals("Admin"))
                {
                    Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                    ValueBack           = "No pertenece al almacen, no es posible registrar producto";
                    return(Content(ValueBack, MediaTypeNames.Text.Plain));
                }
                if (!(producto.Existencia >= Cantidad))
                {
                    Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                    ValueBack           = "No hay cantidad suficiente para transferir";
                    return(Content(ValueBack, MediaTypeNames.Text.Plain));
                }
                if (producto.Almacen == Almacen)
                {
                    Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                    ValueBack           = "Ha seleccionado el mismo almacén, Debe seleccionar otro almacén de destino";
                    return(Content(ValueBack, MediaTypeNames.Text.Plain));
                }

                var productoD = (from prod in contextoDB.Productos
                                 where prod.Clave == ClaveT && prod.Almacen == Almacen &&
                                 (prod.Estatus == 1 || prod.Estatus == 2)
                                 select prod).FirstOrDefault();
                if (productoD != null)
                {
                    productoD.Existencia = productoD.Existencia + Cantidad;
                    ValueBack            = "El producto ya existía en esa sucursal, se actualizó existencia!";
                }
                else
                {
                    PodTrans.Almacen            = Almacen;
                    PodTrans.Clave              = producto.Clave;
                    PodTrans.Descripcion        = producto.Descripcion;
                    PodTrans.Estatus            = 2;
                    PodTrans.Existencia         = Cantidad;
                    PodTrans.Importe_Inventario = producto.Importe_Inventario;
                    PodTrans.Marca              = producto.Marca;
                    PodTrans.Nombre             = producto.Nombre;
                    PodTrans.Precio_Costo       = producto.Precio_Costo;
                    PodTrans.Presentacion       = producto.Presentacion;
                    PodTrans.Ubicacion          = "NA";
                    contextoDB.Productos.Add(PodTrans);
                    logger.Info("Transferencia realizada");
                    ValueBack = "Transferencia realizada!";
                }


                producto.Existencia = producto.Existencia - Cantidad;
                if (producto.Estatus == 2 && producto.Existencia == 0)
                {
                    producto.Estatus = 0;
                }


                resultado = contextoDB.SaveChanges();
                ///Crea registro de historial
                Historial hist = new Historial();
                hist.Producto          = producto.IdProducto;
                hist.Fecha_Movimiento  = DateTime.Parse(DateTime.Now.ToString("MM/dd/yyyy"));
                hist.Tipo_Movimiento   = "Transferencia entre sucursales";
                hist.Origen            = producto.Almacen;
                hist.Destino           = Almacen;
                hist.Cantidad          = 0;
                hist.Cantidad_Anterior = producto.Existencia;
                hist.Cantidad_Actual   = producto.Existencia;
                contextoDB.Historials.Add(hist);
                contextoDB.SaveChanges();
            }
            catch (System.Data.EntityException ex)
            {
                logger.Error("Error:" + ex.InnerException);
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                ValueBack           = "Ocurrió un error durante transferencia, verifique los datos y vuelva a intentarlo";
                return(Content(ValueBack, MediaTypeNames.Text.Plain));
            }
            return(Content(ValueBack));
        }
Exemplo n.º 10
0
        public ActionResult Venta(int IdProducto, int Cantidad)
        {
            String ValueBack = "";


            int resultado = -1;

            try
            {
                var      contextoDB = new InventarioGammaEntities();
                Producto PodTrans   = new Producto();
                ///Realiza actualizacion/transferencia
                var producto = (from prod in contextoDB.Productos
                                where prod.IdProducto == IdProducto &&
                                (prod.Estatus == 1 || prod.Estatus == 2)
                                select prod).FirstOrDefault();

                if (!Session["almacen"].Equals(producto.Almacen) && !Session["almacen"].Equals("Admin"))
                {
                    Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                    ValueBack           = "No pertenece al almacen, no es posible registrar producto";
                    return(Content(ValueBack, MediaTypeNames.Text.Plain));
                }

                if (!(producto.Existencia >= Cantidad))
                {
                    Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                    ValueBack           = "No hay cantidad suficiente para vender";
                    return(Content(ValueBack, MediaTypeNames.Text.Plain));
                }

                producto.Existencia = producto.Existencia - Cantidad;
                if (producto.Estatus == 2 && producto.Existencia == 0)
                {
                    producto.Estatus = 0;
                }
                resultado = contextoDB.SaveChanges();

                ValueBack = "Venta realizada!";
                ///Crea registro de historial
                Historial hist = new Historial();
                hist.Producto          = producto.IdProducto;
                hist.Fecha_Movimiento  = DateTime.Parse(DateTime.Now.ToString("MM/dd/yyyy"));
                hist.Tipo_Movimiento   = "Venta";
                hist.Origen            = producto.Almacen;
                hist.Destino           = producto.Almacen;
                hist.Cantidad          = Cantidad;
                hist.Cantidad_Anterior = producto.Existencia + Cantidad;
                hist.Cantidad_Actual   = producto.Existencia;
                contextoDB.Historials.Add(hist);
                contextoDB.SaveChanges();
            }
            catch (System.Data.EntityException ex)
            {
                logger.Error("Error:" + ex.InnerException);
                Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
                ValueBack           = "Ocurrió un error durante la venta, verifique los datos y vuelva a intentarlo";
                return(Content(ValueBack, MediaTypeNames.Text.Plain));
            }
            return(Content(ValueBack));
        }