public ActionResult Update(Productos objetoProductos, int[] caracteristicaAnadirProducto)
        {
            Usuarios usuarioSesionActual = (Usuarios)Session["usuarioSesion"];

            if (usuarioSesionActual == null)
            {
                return(RedirectToAction("IniciarSesion", "Usuario"));
            }

            cargaInicial();
            List <DetalleProductos> listaDetalleProductos = new List <DetalleProductos>();

            foreach (var idDetalleProductoCaracteristica in caracteristicaAnadirProducto)
            {
                DetalleProductos objetoDetalleProductos = new DetalleProductos();
                objetoDetalleProductos.idCaracteristica = idDetalleProductoCaracteristica;
                objetoDetalleProductos.idProducto       = objetoProductos.idProducto;
                listaDetalleProductos.Add(objetoDetalleProductos);
            }

            objetoProductos.DetalleProductos = listaDetalleProductos;
            bool banderaActualizar = ProductosDB.actualizarProductos(objetoProductos);

            MostrarMensajes(banderaActualizar);

            return(RedirectToAction("Index"));
        }
예제 #2
0
 /// <summary>
 /// Constructor por defecto que instancia las 3 listas y setea el valor estatico iva
 /// </summary>
 public Negocio()
 {
     this.clientes         = ClientesDB.SelectAll();
     this.productos        = ProductosDB.SelectAll();
     this.ventas           = new List <Venta>();
     Negocio.porcentajeIva = 21;
 }
예제 #3
0
        private void CBProveedor_SelectedIndexChanged(object sender, EventArgs e)
        {
            ProductosDB productosDB = new ProductosDB();

            try
            {
                Proveedor proveedor = new Proveedor();
                proveedor = (Proveedor)CBProveedor.SelectedItem;
                if (productosDB.Listar(proveedor.Id).Count != 0)
                {
                    CBProductos.Enabled    = true;
                    CBProductos.DataSource = productosDB.Listar(proveedor.Id);
                }
                else
                {
                    CBProductos.DataSource = null;
                    CBProductos.Enabled    = false;
                    btnAgregar.Enabled     = false;
                }

                dgvCompras.Focus();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
        public ActionResult generarActaDescargo(int[] listaProductosSeleccionados, string numeroIdentificacionCustodio, bool actaDescargoExcel)
        {
            List <Productos> listaProductos = new List <Productos>();

            TempData["objetoUsuario"] = UsuariosDB.recuperarUsuarioPorCedula(numeroIdentificacionCustodio);

            foreach (int idProducto in listaProductosSeleccionados)
            {
                Productos objetoProducto = ProductosDB.recuperarProductosPorID(idProducto);
                listaProductos.Add(objetoProducto);
                bool banderaEliminar = ActasDB.eliminarDetalleActaProductosPorIDProducto(Convert.ToInt32(idProducto));
            }

            if (actaDescargoExcel)
            {
                generarArchivoActaEliminarExcelPorCustodio(listaProductos, numeroIdentificacionCustodio);

                return(View(listaProductos));
            }
            else
            {
                TempData["listaProductosTemporal"] = listaProductos;
                return(View("generarActaDescargo", listaProductos));
            }
        }
예제 #5
0
        private void btnAgregarCliente_Click(object sender, EventArgs e)
        {
            ProductosDB productosDB = new ProductosDB();

            try
            {
                if (producto == null)
                {
                    producto = new Producto();
                }

                producto.Nombre             = TBNombreProd.Text.Trim();
                producto.Nombre             = producto.Nombre.ToUpper();
                producto.PrecioCompra       = Double.Parse(TBPrecCompraProd.Text.Trim().Replace(".", ","));
                producto.PorcentajeGanancia = Convert.ToDouble(TBPorcentajeGanProd.Text.Trim());
                producto.Marca = (Marca)CBMarcaProd.SelectedItem;
                producto.Tipo  = (Tipo)CBCategoriaProd.SelectedItem;

                if (Text != "Modificar")
                {
                    productosDB.Agregar(producto);
                    MessageBox.Show("Agregado con éxito");
                }
                else
                {
                    productosDB.Modificar(producto);
                    MessageBox.Show("Modificado con éxito");
                }
                Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
        public ActionResult Create(Productos objetoProductos, int[] caracteristicaAnadirProducto)
        {
            ProductosDB objProductoDB       = new ProductosDB();
            Usuarios    usuarioSesionActual = (Usuarios)Session["usuarioSesion"];

            if (usuarioSesionActual == null)
            {
                return(RedirectToAction("IniciarSesion", "Usuario"));
            }


            cargaInicial();
            List <DetalleProductos> listaDetalleProductos = new List <DetalleProductos>();

            foreach (var idDetalleProductoCaracteristica in caracteristicaAnadirProducto)
            {
                DetalleProductos objetoDetalleProductos = new DetalleProductos();
                objetoDetalleProductos.idCaracteristica = idDetalleProductoCaracteristica;
                listaDetalleProductos.Add(objetoDetalleProductos);
            }
            try
            {
                objetoProductos.DetalleProductos = listaDetalleProductos;
                bool banderaCrear = ProductosDB.guardarProductos(objetoProductos);

                MostrarMensajes(banderaCrear);
            }
            catch (Exception)
            {
                throw new Exception("Accion no definida..");
            }

            return(RedirectToAction("Index"));
        }
예제 #7
0
        private void btnEliminarClie_Click(object sender, EventArgs e)
        {
            ProductosDB productosDB = new ProductosDB();

            try
            {
                if (dgvProductos.SelectedRows.Count > 0)
                {
                    if (MessageBox.Show("Está seguro que desea eliminar el registro?", "No apto para inseguros", MessageBoxButtons.YesNo) == DialogResult.Yes)
                    {
                        Producto aux = (Producto)dgvProductos.CurrentRow.DataBoundItem;
                        productosDB.Eliminar(aux.IdProducto);
                        WFProductos_Load(sender, e);
                    }
                }
                else
                {
                    MessageBox.Show("Por favor seleccione un registro");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
        public ActionResult Update(int id)
        {
            var objetoProductos = ProductosDB.recuperarProductosPorID(id);

            cargaInicial(objetoProductos.Modelos.idMarca);

            return(View(objetoProductos));
        }
예제 #9
0
 /// <summary>
 /// Constructor, instancia los campos de tipo lista.
 /// Asocia el evento de cambios en la tabla de productos para actualizar la lista.
 /// </summary>
 public Comiqueria()
 {
     /* PUNTO 4D:
      * Cree también un método que retorne la lista de productos (List<Producto>) almacenada en la tabla de productos.
      * Utilice este método para cargar la lista de productos en la clase Comiqueria cuando se instancie una nueva comiquería.
      */
     this.productos = ProductosDB.SelecctAll();
     ProductosDB.ProductosDBChanged += ActualizarListaProductos;
     this.ventas = new List <Venta>();
 }
예제 #10
0
        private void WFProductos_Load(object sender, EventArgs e)
        {
            ProductosDB productosDB = new ProductosDB();

            try
            {
                dgvProductos.DataSource = productosDB.Listar();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
        public ActionResult Index()
        {
            Usuarios usuarioSesionActual = (Usuarios)Session["usuarioSesion"];

            if (usuarioSesionActual == null)
            {
                return(RedirectToAction("IniciarSesion", "Usuario"));
            }

            List <Productos> listaProductos = ProductosDB.recuperarListaProductos();

            return(View(listaProductos));
        }
        private void BtnAgregar_Click(object sender, EventArgs e)
        {
            if (Validar())
            {
                string nuevaDescripcion = this.txtDescripcion.Text;
                double nuevoPrecio      = Convert.ToDouble(this.txtPrecio.Text);
                int    nuevoStock       = (int)this.txtStock.Value;

                ProductosDB.Insert(nuevaDescripcion, nuevoPrecio, nuevoStock);

                this.Close();
            }
        }
        /// <summary>
        /// Manejador del evento OnClick del btnEliminar.
        /// Elimina el producto seleccionado de la lista de productos.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnEliminar_Click(object sender, EventArgs e)
        {
            try
            {
                DialogResult result = MessageBox.Show("¿Seguro desea eliminar el producto?", "Eliminar Producto", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);

                if (result == DialogResult.Yes)
                {
                    ProductosDB.Delete(productoSeleccionado.Codigo);
                }
            }
            catch (Exception ex)
            {
                this.ManejarExcepciones(ex);
            }
        }
        public ActionResult DeleteProducto(Productos objetoProductos)
        {
            Usuarios usuarioSesionActual = (Usuarios)Session["usuarioSesion"];

            if (usuarioSesionActual == null)
            {
                return(RedirectToAction("IniciarSesion", "Usuario"));
            }

            cargaInicial();
            bool banderaEliminar = ProductosDB.eliminarProducto(objetoProductos.idProducto);

            MostrarMensajes(banderaEliminar);

            return(RedirectToAction("Index"));
        }
        public ActionResult FindProductoPorTipoBusqueda(string tipoBusqueda, string datoBusqueda)
        {
            List <Productos> listaProductos = new List <Productos>();

            datoBusqueda = datoBusqueda.Trim();
            switch (tipoBusqueda)
            {
            case "Serie":
                listaProductos = ProductosDB.recuperarListaProductoPorNumeroSerie(datoBusqueda);
                break;

            case "CodigFinanzas":
                listaProductos = ProductosDB.recuperarProductoPorCodigoFinanzas(datoBusqueda);
                break;

            case "CodigoSecob":
                listaProductos = ProductosDB.recuperarProductoPorCodigoSecob(datoBusqueda);
                break;
            }

            if (listaProductos.Count() <= 0)
            {
                TempData["mensajeProductoActaNoEncontrado"] = "No se encontró el producto " + datoBusqueda;
            }
            else
            {
                foreach (var objetoProductoTemporal in listaProductos)
                {
                    DetalleActaProductos objetoDetalleProducto = DetalleProductosDB.recuperarDetalleActaProducto(objetoProductoTemporal.idProducto);

                    if (objetoDetalleProducto != null)
                    {
                        var    objetoUsuarioTemporal = objetoDetalleProducto.ActasProductosUsuarios.Usuarios;
                        string mensajeTemporal       = "El producto que esta añadiendo ya se encuentra asignado a otro funcionario: " + objetoUsuarioTemporal.Nombres + " " + objetoUsuarioTemporal.Apellidos + ", con identificación: " + objetoUsuarioTemporal.Cedula + ". Si generá el acta con este producto, este prodcuto se eliminará de su cedula censal.";
                        TempData["productoYaExsiste"] = mensajeTemporal;
                        break;
                    }
                    else
                    {
                        TempData["productoYaExsiste"] = "";
                    }
                }
            }

            return(View("DetalleProductoActa", listaProductos));
        }
        private void OnModificarClick(object sender, EventArgs e)
        {
            double nuevoPrecio;

            if (Double.TryParse(this.txtNuevoPrecio.Text, out nuevoPrecio))
            {
                DialogResult result = MessageBox.Show("¿Seguro desea modificar el producto?", "Modificar Producto", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);

                if (result == DialogResult.Yes)
                {
                    ProductosDB.Update(this.productoSeleccionado.Codigo, nuevoPrecio);
                    this.Close();
                }
            }
            else
            {
                this.lblError.Text = "Error. Debe ingresar un precio válido.";
            }
        }
예제 #17
0
        private void WFComprar_Load(object sender, EventArgs e)
        {
            ProveedoresDB proveedoresDB = new ProveedoresDB();
            ProductosDB   productosDB   = new ProductosDB();
            TipoFcDB      tipoFcDB      = new TipoFcDB();

            try
            {
                Proveedor proveedor = new Proveedor();
                CBProveedor.DataSource = proveedoresDB.Listar();
                proveedor = (Proveedor)CBProveedor.SelectedItem;
                CBProductos.DataSource = productosDB.Listar(proveedor.Id);
                CBTipoFc.DataSource    = tipoFcDB.Listar();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
예제 #18
0
        private void btnAgregarCompra_Click(object sender, EventArgs e)
        {
            ComprasDB        comprasDB        = new ComprasDB();
            DetalleComprasDB detalleComprasDB = new DetalleComprasDB();
            ProductosDB      productosDB      = new ProductosDB();

            try
            {
                if (dgvCompras.Rows.Count > 0)
                {
                    Proveedor proveedor = new Proveedor();
                    TipoFC    tipoFC    = new TipoFC();

                    tipoFC = (TipoFC)CBTipoFc.SelectedItem;

                    proveedor = (Proveedor)CBProveedor.SelectedItem;
                    compranueva.IdProveedor = proveedor.Id;
                    compranueva.PrefijoFc   = Int32.Parse(TBPrefijoFC.Text.Trim());
                    compranueva.Factura     = Int32.Parse(TBFactura.Text.Trim());
                    compranueva.idTipoFC    = tipoFC.idTipoFC;
                    compranueva.Fecha       = DTPFechaFC.Value;

                    comprasDB.Agregar(compranueva);
                    int ultimacompra = comprasDB.UltimaCompra();

                    for (int i = 0; i < listacompras.Count; i++)
                    {
                        listacompras[i].IdCompra = ultimacompra;
                        detalleComprasDB.Agregar(listacompras[i]);
                        productosDB.LevantarStock(listacompras[i].IdProducto, listacompras[i].Cantidad);
                    }

                    MessageBox.Show("Compra agregada con éxito", "Compra exitosa!");
                    this.Close();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
예제 #19
0
        private void WFProdXProv_Load(object sender, EventArgs e)
        {
            ProductosDB productosDB = new ProductosDB();

            try
            {
                TextNombreProv.Text = "Proveedor: " + Proveedor.NombreApellido;

                listaprodActual     = productosDB.Listar(Proveedor.Id);
                listaprodPendientes = productosDB.ListarNegado(Proveedor.Id);

                dgvProductosActivos.DataSource = listaprodActual;
                CBProductos.DataSource         = listaprodPendientes;

                dgvProductosActivos.Columns[0].Visible = false;
                dgvProductosActivos.Columns[2].Visible = false;
                dgvProductosActivos.Columns[3].Visible = false;
                dgvProductosActivos.Columns[4].Visible = false;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
예제 #20
0
 /// <summary>
 /// Metodo para actualizar la lista de productos desde la base de datos
 /// </summary>
 public void ActualizarListaProductos()
 {
     this.Productos = ProductosDB.SelectAll();
 }
예제 #21
0
 public void ActualizarListaProductos(AccionesDB accion)
 {
     this.productos = ProductosDB.SelecctAll();
 }
예제 #22
0
 /// <summary>
 /// Constructor, instancia los campos de tipo lista.
 /// Asocia el evento de cambios en la tabla de productos para actualizar la lista.
 /// </summary>
 public Comiqueria()
 {
     this.productos = ProductosDB.SelectAll();
     ProductosDB.ProductosDBChanged += ActualizarListaProductos;
     this.ventas = new List <Venta>();
 }
예제 #23
0
 private void ActualizarListaProductos(AccionesDB accion)
 {
     this.Productos = ProductosDB.SelectAll();
 }