private void productosVentaDataGridView_CellClick(object sender, DataGridViewCellEventArgs e) { productosCompra = (ProductosCompra)productosCompraBindingSource1.Current; productosCompraBindingSource.DataSource = productosCompra; idProductoClabel.Visible = true; idProductoCTextBox.Visible = true; }
private void btnEliminar_Click(object sender, EventArgs e) { productosCompraBindingSource.EndEdit(); productosCompra = (ProductosCompra)productosCompraBindingSource.Current; cProductosCompra.eliminarProductoC(productosCompra); cargarDatos(); }
private void txtBusqueda_KeyUp(object sender, KeyEventArgs e) { if (txtBusqueda.Text == "") { if (e.KeyCode == Keys.Enter) { btnBuscar.PerformClick(); } } else if (e.KeyCode == Keys.Enter) { using (RestauranteBDEntities1 bd = new RestauranteBDEntities1()) { ProductosCompra prod = new ProductosCompra(); int Buscar = int.Parse(txtBusqueda.Text); prod = bd.ProductosCompra.Where(idProducto => idProducto.idProductoC == Buscar).First(); txtIdProdC.Text = Convert.ToString(prod.idProductoC); txtNombreProdC.Text = Convert.ToString(prod.nombre); nupCantidad.Focus(); txtBusqueda.Text = ""; intentos = 2; } } }
private void productosCompraDataGridView_CellClick(object sender, DataGridViewCellEventArgs e) { productosCompra = (ProductosCompra)productosCompraBindingSource1.Current; productosCompraBindingSource.DataSource = productosCompra; idProductoClabel.Visible = true; idProductoCTextBox.Visible = true; btnGuardar.Enabled = false; btnModificar.Enabled = true; btnEliminar.Enabled = true; }
internal void eliminarProductoC(ProductosCompra PC) { IDbConnection con = Conexion.Conexion.Conectar(); String consulta = "sp_eliminarProductoCompra"; DynamicParameters parametros = new DynamicParameters(); parametros.Add("@idProductoC", PC.idProductoC, DbType.Int32); con.Open(); con.Execute(consulta, parametros, commandType: CommandType.StoredProcedure); con.Close(); }
internal void guardarProductoC(ProductosCompra PC) { IDbConnection con = Conexion.Conexion.Conectar(); String consulta = "sp_nuevoProductoCompra"; DynamicParameters parametros = new DynamicParameters(); parametros.Add("@nombre", PC.nombre, DbType.String); parametros.Add("@precio", PC.precio, DbType.Decimal); parametros.Add("@categoria", PC.categoria, DbType.String); parametros.Add("@idProveedor", PC.idProveedor, DbType.Int32); con.Open(); con.Execute(consulta, parametros, commandType: CommandType.StoredProcedure); con.Close(); }
private void btnGuardar_Click(object sender, EventArgs e) { if (nombreTextBox.Text.Equals("") || precioTextBox.Text.Equals("0") || idProveedorComboBox.SelectedValue == null || categoriaTextBox.Text.Equals("")) { MessageBox.Show("Ingrese todos los campos para Continuar"); } else { productosCompraBindingSource.EndEdit(); productosCompra = (ProductosCompra)productosCompraBindingSource.Current; cProductosCompra.guardarProductoC(productosCompra); cargarDatos(); } }
public ActionResult ListaProductos() { var lista = new List <ProductosCompra>(); var Producto1 = new ProductosCompra(); Producto1.Codigo = "CP_04"; Producto1.Producto = Session["Producto1"].ToString(); var Producto2 = new ProductosCompra(); Producto2.Codigo = "CP_08"; Producto2.Producto = Session["Producto2"].ToString(); lista.Add(Producto1); lista.Add(Producto2); return(View(lista)); }
private void btnEliminar_Click(object sender, EventArgs e) { using (RestauranteBDEntities1 bd = new RestauranteBDEntities1()) { DialogResult result = MessageBox.Show("¿Estás seguro que quieres eliminar?, \n¡la acción no se podrá deshacer!", "Confirmar", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); if (result == DialogResult.OK) { String id = lblCodigo.Text; prodC = bd.ProductosCompra.Find(int.Parse(id)); bd.ProductosCompra.Remove(prodC); bd.SaveChanges(); MessageBox.Show("¡Producto eliminado con éxito!", "Completado", MessageBoxButtons.OK, MessageBoxIcon.None); this.Close(); } } }
public ActionResult CrearPromocion(Promocion promo) { String[] listaProd; listaProd = serviciosWeb.listaProductosEst("1"); var lista = new List <ProductosCompra>(); Char delimiter = '/'; for (int i = 0; i < listaProd.Length; i++) { var Producto1 = new ProductosCompra(); String[] substrings = listaProd[i].Split(delimiter); Producto1.Codigo = substrings[0]; Producto1.Producto = substrings[1]; lista.Add(Producto1); } SelectList listaPro = new SelectList(lista, "Codigo", "Producto"); ViewBag.CrearPromocion = listaPro; if (ModelState.IsValid) { Boolean result = serviciosWeb.crearPromo(promo.NombreProducto, promo.Precio, promo.FechaI, promo.FechaF, Session["NIT"].ToString()); if (result) { return(RedirectToAction("ListaPromociones", "Admin")); } else { ModelState.AddModelError("", "Error en la creación de la Promoción"); return(View(promo)); } } else { return(View(promo)); } }
public ActionResult SelectListaProductos() { var lista = new List <ProductosCompra>(); var Producto1 = new ProductosCompra(); Producto1.Codigo = "CP_04"; Producto1.Producto = "Vino"; var Producto2 = new ProductosCompra(); Producto2.Codigo = "CP_08"; Producto2.Producto = "Cerveza"; lista.Add(Producto1); lista.Add(Producto2); SelectList listaPro = new SelectList(lista, "Codigo", "Producto"); ViewBag.CrearPromocion = listaPro; return(View()); }
public ActionResult Compra(Compra model) { String[] listaProd; listaProd = serviciosWeb.listaProductosEst("1"); var lista = new List <ProductosCompra>(); Char delimiter = '/'; for (int i = 0; i < listaProd.Length; i++) { var Producto1 = new ProductosCompra(); String[] substrings = listaProd[i].Split(delimiter); Producto1.Codigo = substrings[0]; Producto1.Producto = substrings[1]; lista.Add(Producto1); } SelectList listaPro = new SelectList(lista, "Codigo", "Producto"); ViewBag.Productos = listaPro; if (ModelState.IsValid) { //var user = new ApplicationUser { UserName = model.nombre, Email = model.Email }; var result = serviciosWeb.asignarPuntos(model.Codigo, "8"); if (result != null) { ModelState.AddModelError("", "Se registró correctamente la compra y carga de puntos de fidelidad al Cliente"); return(View(model)); } else { ModelState.AddModelError("", "Error en el registro de la compra"); return(View(model)); } } return(View(model)); }
private void loadInfoOrder(Ordenes currentOrder) { IEnumerable <ProductToBuy> productsResult = _orderPurchasePresenter.GetProductsByList(currentOrder.ProductosOrden.ToList()); productsResult = productsResult.Select(s => { ProductosCompra productoAux = (from producto in currentOrder.ProductosOrden where producto.idProducto.Equals(s.idProducto) select producto).SingleOrDefault(); s.idProveedor = currentOrder.idProveedor; s.quantity = productoAux.Cantidad; s.total = productoAux.Monto; return(s); }).ToList(); productsToBuyList.Clear(); productsToBuyList.AddRange(productsResult); if (currentOrder != null) { tabControlOrder.SelectedIndex = 1; if (currentOrder.estatus != 'S') { cancelOrder = true; generateOrderButton.Content = "CANCELAR"; } else { cancelOrder = false; generateOrderButton.Content = "GENERAR \nORDEN(ES)"; } } }
private void btnEditar_Click(object sender, EventArgs e) { using (RestauranteBDEntities1 bd = new RestauranteBDEntities1()) { String id2 = lblCodigo.Text; int idC = int.Parse(id2); decimal precioCon; if (decimal.TryParse(txtPrecioProd.Text, out precioCon) == false) { MessageBox.Show("¡Ingrese correctamente el precio!"); } else { try { DialogResult result = MessageBox.Show("¿Estás seguro que quieres editar?, \n¡la acción no se podrá deshacer!", "Confirmar", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); if (result == DialogResult.OK) { prodC = bd.ProductosCompra.Where(VerificarID => VerificarID.idProductoC == idC).First(); prodC.nombre = txtNombreProdCompra.Text; prodC.precio = decimal.Parse(txtPrecioProd.Text); prodC.idProveedor = int.Parse(provee); prodC.idCategoria = int.Parse(categ); bd.Entry(prodC).State = System.Data.Entity.EntityState.Modified; bd.SaveChanges(); MessageBox.Show("¡Producto editado con éxito!", "Completado", MessageBoxButtons.OK, MessageBoxIcon.None); this.Close(); } } catch (Exception ex) { MessageBox.Show("¡Verifique las listas desplegables!", "Verificación", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } } } }
public IActionResult CancelaVenta([FromBody] CancelacionDto cancelacion) { try { Ventas venta = PosUoW.VentasRepository.GetVentaByFolio(cancelacion.folioVenta); if (venta != null) { venta.Estatus = 'C'; venta.idUsuarioCancela = cancelacion.idUsuario; foreach (VentaLote lote in venta.Lotes) { ProductosCompra compra = PosUoW.ProductosCompraRepository.GetById(a => a.idCompraProducto.Equals(lote.idProductoCompra)); if (compra != null) { compra.Restante += lote.cantidad; } lote.estatus = false; } foreach (ProductosVenta producto in venta.Productos) { producto.Estatus = false; Productos currentProduct = PosUoW.ProductosRepository.GetById(x => x.idProducto.Equals(producto.idProducto)); Almacenes principalWarehouse = PosUoW.AlmacenesRepository.GetSingleByCriteria(x => x.Principal); ProductoAlmacen almacen = PosUoW.ProductoAlmacenRepository.GetSingleByCriteria(x => x.idProducto.Equals(currentProduct.idProducto) && x.idAlmacen.Equals(principalWarehouse.idAlmacen)); almacen.Existencia += producto.Cantidad; } PosUoW.Save(); return(Ok(venta)); } else { return(NotFound()); } } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, ex)); } }
internal void eliminarProductoC(ProductosCompra PC) { mProductoCompra.eliminarProductoC(PC); }
internal void actualizarProductoC(ProductosCompra PC) { mProductoCompra.actualizarProductoC(PC); }
internal void guardarProductoC(ProductosCompra PC) { mProductoCompra.guardarProductoC(PC); }
private void txtBusqueda_KeyUp(object sender, KeyEventArgs e) { if (txtBusqueda.Text == "") { if (e.KeyCode == Keys.Enter) { btnBuscar.PerformClick(); } } else if (e.KeyCode == Keys.Enter) { using (RestauranteBDEntities1 bd = new RestauranteBDEntities1()) { int idBusqueda = Int32.Parse(txtBusqueda.Text); var buscarProd = from producto in bd.ProductosCompra where producto.idProductoC == idBusqueda && producto.estado == "Activo" select producto; if (buscarProd.Count() > 0) { prodCompra = bd.ProductosCompra.Where(VerificarId => VerificarId.idProductoC == idBusqueda).First(); Categorias categorias = new Categorias(); categorias = bd.Categorias.Where(VerificarId => VerificarId.idCategoria == prodCompra.idCategoria).First(); Proveedores proveedores = new Proveedores(); proveedores = bd.Proveedores.Where(VerificarId => VerificarId.idProveedor == prodCompra.idProveedor).First(); if (categorias.estado == "Activo" && proveedores.estado == "Activo") { int idprovee = Int32.Parse(cmbProveedores.SelectedValue.ToString()); var buscarProdProveedor = from producto in bd.ProductosCompra where producto.idProductoC == idBusqueda && producto.estado == "Activo" where producto.idProveedor == idprovee select producto; if (buscarProdProveedor.Count() > 0) { ProductosCompra prod = new ProductosCompra(); int idProveedor = Int32.Parse(provee); int Buscar = int.Parse(txtBusqueda.Text); prod = bd.ProductosCompra.Where(idProducto => idProducto.idProductoC == Buscar && idProducto.idProveedor == idProveedor).First(); txtCodigoProd.Text = Convert.ToString(prod.idProductoC); txtNombreProd.Text = Convert.ToString(prod.nombre); txtPrecio.Text = Convert.ToString(prod.precio); nupCantidad.Focus(); txtBusqueda.Text = ""; intentos = 2; } else { MessageBox.Show("¡El producto no se encuentra en los Registros" + "\n o no pertenece al proveedor seleccionado!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); txtBusqueda.Text = ""; } } else { MessageBox.Show("¡La categoria o el Proveedor del Producto ingresado ha sido eliminada!", "Actualize Producto", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("¡El producto no se encuentra en los Registros!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); txtBusqueda.Text = ""; } } } }
private void btnComprar_Click(object sender, EventArgs e) { if (dtvDetallesCompra.Rows.Count == 0) { MessageBox.Show("¡Aún no hay nada en el carrito!", "Carrito Vacío", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else { DialogResult result = MessageBox.Show("¿Desea agregar algo más antes de comprar?", "Validación", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.No) { using (RestauranteBDEntities1 bd = new RestauranteBDEntities1()) { Compraas compra = new Compraas(); String nombre = lblUsuario.Text; compra.fechadeCompra = Convert.ToDateTime(dtpFecha.Text); compra.totalaPagar = Convert.ToDecimal(lblTotalAPagar.Text); compra.idProveedor = Convert.ToInt32(provee); compra.nombredeUsuario = nombre.ToString(); int idProv = int.Parse(provee); proveedor = bd.Proveedores.Where(Id => Id.idProveedor == idProv).First(); proveedor.estado = "Activo"; bd.Entry(proveedor).State = System.Data.Entity.EntityState.Modified; bd.SaveChanges(); bd.Compraas.Add(compra); bd.SaveChanges(); DetallesCompra detalleC = new DetallesCompra(); for (int i = 0; i < dtvDetallesCompra.RowCount; i++) { String idProdC = dtvDetallesCompra.Rows[i].Cells[0].Value.ToString(); int idProdConv = Convert.ToInt32(idProdC); String cantidad = dtvDetallesCompra.Rows[i].Cells[3].Value.ToString(); int cantiConver = Convert.ToInt32(cantidad); String precio = dtvDetallesCompra.Rows[i].Cells[2].Value.ToString(); Double precioConv = Convert.ToDouble(precio); String total = dtvDetallesCompra.Rows[i].Cells[4].Value.ToString(); Decimal totalConv = Convert.ToDecimal(total); detalleC.idCompra = Convert.ToInt32(lblCodigo.Text); detalleC.idProductoC = idProdConv; detalleC.cantidad = cantiConver; detalleC.precioCompra = precioConv; detalleC.totalProducto = totalConv; int idProd = idProdConv; prodCompra = bd.ProductosCompra.Where(Id => Id.idProductoC == idProd).First(); prodCompra.estado = "Activo"; bd.Entry(prodCompra).State = System.Data.Entity.EntityState.Modified; bd.SaveChanges(); bd.DetallesCompra.Add(detalleC); bd.SaveChanges(); Almacen almaceen = new Almacen(); var lista = from almacen in bd.Almacen where almacen.idProductoC == idProdConv select almacen; if (lista.Count() > 0) { int idA = int.Parse(dtvDetallesCompra.Rows[i].Cells[0].Value.ToString()); int CantidadProd = int.Parse(dtvDetallesCompra.Rows[i].Cells[3].Value.ToString()); almaceen = bd.Almacen.Where(VerificarID => VerificarID.idProductoC == idA).First(); almaceen.cantidadDisponible = almaceen.cantidadDisponible + CantidadProd; bd.Entry(almaceen).State = System.Data.Entity.EntityState.Modified; bd.SaveChanges(); } else { almaceen.idProductoC = idProdConv; almaceen.cantidadDisponible = int.Parse(dtvDetallesCompra.Rows[i].Cells[3].Value.ToString()); bd.Almacen.Add(almaceen); bd.SaveChanges(); } } MessageBox.Show("¡Venta Realizada con éxito! \n\nCON UN TOTAL DE: $" + lblTotalAPagar.Text, "Guardado", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); cmbProveedores.Enabled = true; dtvDetallesCompra.Rows.Clear(); } RetornoId(); txtCodigoProd.Text = ""; txtNombreProd.Text = ""; txtPrecio.Text = ""; nupCantidad.Value = 0; txtTotal.Text = ""; } } }
private void btnAgregar_Click(object sender, EventArgs e) { try { decimal precioCon; if (decimal.TryParse(txtPrecioProd.Text, out precioCon) == false) { MessageBox.Show("¡Ingrese correctamente el precio!"); } else { string nombre = txtNombreProdCompra.Text; using (RestauranteBDEntities1 bd = new RestauranteBDEntities1()) { var listaPV = from producto in bd.ProductosVenta where producto.nombre.Equals(nombre) && producto.estado == "Activo" select producto; if (listaPV.Count() > 0) { MessageBox.Show("¡El Producto ya existe!", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { var listaProveedor = from producto in bd.ProductosVenta where producto.nombre.Equals(nombre) && producto.estado == "Inactivo" select producto; if (listaProveedor.Count() > 0) { prodC = bd.ProductosCompra.Where(VerificarNombre => VerificarNombre.nombre == nombre).First(); prodC.precio = decimal.Parse(txtPrecioProd.Text); prodC.idProveedor = int.Parse(provee); prodC.idCategoria = int.Parse(categ); prodC.estado = "Activo"; bd.Entry(prodC).State = System.Data.Entity.EntityState.Modified; bd.SaveChanges(); MessageBox.Show("¡Producto insertado con éxito!", "Completado", MessageBoxButtons.OK, MessageBoxIcon.None); this.Close(); } else { prodC.nombre = txtNombreProdCompra.Text; prodC.precio = decimal.Parse(txtPrecioProd.Text); prodC.idProveedor = int.Parse(provee); prodC.idCategoria = int.Parse(categ); prodC.estado = "Activo"; bd.ProductosCompra.Add(prodC); bd.SaveChanges(); MessageBox.Show("¡Producto insertado con éxito!", "Completado", MessageBoxButtons.OK, MessageBoxIcon.None); this.Close(); } } } } } catch (Exception ex) { MessageBox.Show("¡Verifique las listas desplegables!", "Verificación", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } }
public IActionResult AddVenta([FromBody] Ventas venta) { try { if (ModelState.IsValid) { float utilidad = 0; foreach (ProductosVenta item in venta.Productos) { item.Estatus = true; Productos producto = PosUoW.ProductosRepository.GetById(a => a.idProducto.Equals(item.idProducto)); List <ProductosCompra> productosCompra = PosUoW.ProductosCompraRepository.GetAllByCriteria(x => x.idProducto.Equals(producto.idProducto) && x.Restante > 0, x => x.idCompraProducto).ToList(); float restante = item.Cantidad; for (int i = 0; i < productosCompra.Count(); i++) { VentaLote lote = new VentaLote(); ProductosCompra productoCompra = productosCompra.ElementAt(i); if (productoCompra.Restante == restante) { lote.idProducto = producto.idProducto; lote.idProductoCompra = productoCompra.idCompraProducto; lote.estatus = true; lote.cantidad = restante; restante = 0; utilidad += productoCompra.Restante * productoCompra.Costo; productoCompra.Restante = 0; i = productosCompra.Count(); } else if (productoCompra.Restante > restante) { lote.idProducto = producto.idProducto; lote.idProductoCompra = productoCompra.idCompraProducto; lote.estatus = true; lote.cantidad = restante; utilidad += restante * productoCompra.Costo; productoCompra.Restante -= restante; i = productosCompra.Count(); restante = 0; } else { lote.idProducto = producto.idProducto; lote.idProductoCompra = productoCompra.idCompraProducto; lote.estatus = true; lote.cantidad = productoCompra.Restante; utilidad += productoCompra.Restante * productoCompra.Costo; restante -= productoCompra.Restante; productoCompra.Restante = 0; } venta.Lotes.Add(lote); PosUoW.ProductosCompraRepository.Update(productoCompra); } if (restante > 0) { utilidad += restante * producto.PrecioCosto; } Almacenes principalWarehouse = PosUoW.AlmacenesRepository.GetSingleByCriteria(x => x.Principal); ProductoAlmacen almacen = PosUoW.ProductoAlmacenRepository.GetSingleByCriteria(x => x.idProducto.Equals(item.idProducto) && x.idAlmacen.Equals(principalWarehouse.idAlmacen)); if (almacen == null) { almacen = new ProductoAlmacen { idAlmacen = principalWarehouse.idAlmacen, idProducto = producto.idProducto, Existencia = 0 }; PosUoW.ProductoAlmacenRepository.Add(almacen); PosUoW.Save(); } almacen.Existencia -= item.Cantidad; PosUoW.ProductosRepository.Update(producto); } utilidad = (float)Math.Round((venta.Total - venta.Impuestos) - utilidad, 2); venta.Utilidad = utilidad; PosUoW.VentasRepository.Add(venta); PosUoW.Save(); return(Ok(new { venta = venta, totalEfectivo = totalEfectivo(venta.idUsuario) })); } else { return(BadRequest("Los datos de la venta son incorrectos")); } } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, ex)); } }