private void datosBuscar(tbInventario inventario) { listainve.Remove(inventarioGlo); listainve.Add(inventario); cargarLista(listainve); banderalis = 1; }
private void ltvCargar_SelectedIndex(object sender, MouseEventArgs e) { string idProd = string.Empty; if (ltvCargar.SelectedItems.Count > 0) { ListViewItem listItem = ltvCargar.SelectedItems[0]; idProd = listItem.Text; } foreach (tbInventario item in listainve) { if (item.idProducto == idProd) { inventarioGlo = item; break; } } if (inventarioGlo != null) { frmModificarInventario cargar = new frmModificarInventario(); cargar.inventarioGlobal = inventarioGlo; cargar.pasarDatosEvent += datosBuscar; cargar.ShowDialog(); } //cargarLista(listainve); //ss }
public tbCompras GuardarCompra(tbCompras entity) { try { using (dbSisSodInaEntities context = new dbSisSodInaEntities()) { context.tbCompras.Add(entity); if ((bool)Global.Usuario.tbEmpresa.tbParametrosEmpresa.First().manejaInventario&& entity.reportaInventario) { foreach (var detalle in entity.tbDetalleCompras) { tbInventario inven = new tbInventario(); inven.idProducto = detalle.idProducto; inven = inventarioIns.GetEntity(inven); if (inven != null) { inven.cantidad = inven.cantidad + detalle.cantidad; } context.Entry(inven).State = System.Data.Entity.EntityState.Modified; } } context.SaveChanges(); } return(entity); } catch (Exception ex) { throw new SaveEntityException("Error en Factura"); } }
private bool guardarProducto() { bool isOK = false; if (validarCampos()) { tbProducto productoNuevo = new tbProducto(); try { //Instanciamos las entidades que ocupamos para almacenar un producto nuevo. productoNuevo.idProducto = txtCodigoProducto.Text; //Almacenamos el nuevo producto productoNuevo.nombre = txtNombreProducto.Text.ToUpper().Trim(); productoNuevo.id_categoria = (int)cboCategoriaProducto.SelectedValue; productoNuevo.idMedida = (int)cboMedida.SelectedValue; //proveedor if (txtIdProveedor.Text != string.Empty) { productoNuevo.idProveedor = proveedor.id; proveedor.tipoId = proveedor.tipoId; } //costo productoNuevo.precio_real = decimal.Parse(txtCosto.Text); productoNuevo.precioVariable = chkPrecioVariable.Checked; //precio + utlilidad productoNuevo.utilidad1Porc = decimal.Parse(txtUtilidad1.Text); productoNuevo.utilidad2Porc = decimal.Parse(txtUtilidad2.Text); productoNuevo.utilidad3Porc = decimal.Parse(txtUtilidad3.Text); productoNuevo.precioUtilidad1 = decimal.Parse(txtPrecio1.Text); productoNuevo.precioUtilidad2 = decimal.Parse(txtPrecio2.Text); productoNuevo.precioUtilidad3 = decimal.Parse(txtPrecio3.Text); //precio utilidad+ impuestos**precio venta productoNuevo.esExento = chkExento.Checked; productoNuevo.idTipoImpuesto = (int)cboImpuesto.SelectedValue; productoNuevo.precioVenta1 = decimal.Parse(txtPrecioVenta1.Text); productoNuevo.precioVenta2 = decimal.Parse(txtPrecioVenta2.Text); productoNuevo.precioVenta2 = decimal.Parse(txtPrecioVenta3.Text); //descuento productoNuevo.aplicaDescuento = chkDescuento.Checked; productoNuevo.descuento_max = chkDescuento.Checked ? int.Parse(txtDescuentoMax.Text) : 0; //Atributos de Auditoria productoNuevo.estado = true; productoNuevo.fecha_crea = Utility.getDate(); productoNuevo.fecha_ult_mod = Utility.getDate(); productoNuevo.usuario_crea = Global.Usuario.nombreUsuario.Trim().ToUpper(); // Global.Usuario.nombreUsuario; productoNuevo.usuario_ult_mod = Global.Usuario.nombreUsuario.Trim().ToUpper(); // Global.Usuario.nombreUsuario; //string destinoImage = ""; //string destino = "C:\\temp\\productos\\"; //if (nombreImage != "") //{ // //Recuperamos el nombre de la imagen nueva. // string nombreImg = Path.GetFileName(nombreImage); // //Unimos le nombre de la image con la ruta. // destinoImage = Path.Combine(destino, nombreImg); //} //inventario tbInventario inventario = new tbInventario(); inventario.idProducto = productoNuevo.idProducto; inventario.cantidad = txtCantidadActual.Text == string.Empty ? 0 : decimal.Parse(txtCantidadActual.Text); inventario.cant_max = txtCantMax.Text == string.Empty ? 0 : decimal.Parse(txtCantMax.Text); inventario.cant_min = txtCantMin.Text == string.Empty ? 0 : decimal.Parse(txtCantMin.Text); inventario.estado = true; inventario.fecha_crea = Utility.getDate(); inventario.fecha_ult_mod = Utility.getDate(); inventario.usuario_crea = Global.Usuario.nombreUsuario.Trim().ToUpper(); // Global.Usuario.nombreUsuario; inventario.usuario_ult_mod = Global.Usuario.nombreUsuario.Trim().ToUpper(); // Global.Usuario.nombreUsuario; productoNuevo.tbInventario = inventario; //productoNuevo.foto = destinoImage; productoNuevo = productoIns.guardarProducto(productoNuevo); MessageBox.Show("Los datos han sido almacenada en la base de datos.", "Guardar", MessageBoxButtons.OK, MessageBoxIcon.Information); isOK = true; } catch (SaveEntityException ex) { MessageBox.Show(ex.Message); isOK = false; } catch (EntityExistException ex) { if (MessageBox.Show("Datos ya existe en la base datos, ¿Desea actualizarlos?", "Datos Existentes", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { productoGlo = productoIns.GetEntity(productoNuevo); actualizarProducto(); isOK = true; } } catch (EntityDisableStateException ex) { MessageBox.Show(ex.Message); isOK = false; } } else { isOK = false; } return(isOK); }
public tbDocumento Guardar(tbDocumento entity) { try { entity.tbClientes = null; using (dbSisSodInaEntities context = new dbSisSodInaEntities()) { foreach (var item in entity.tbDetalleDocumento) { if (item.tbProducto != null) { item.tbProducto = null; } context.Entry(item).State = System.Data.Entity.EntityState.Added; } context.tbDocumento.Add(entity); if (entity.tipoDocumento == (int)Enums.TipoDocumento.NotaCreditoElectronica || entity.tipoDocumento == (int)Enums.TipoDocumento.NotaDebitoElectronica) { if (entity.claveRef != null) { var docActualizar = GetEntityByClave(entity.claveRef); docActualizar.estado = false;//elimino logicamente docActualizar.fecha_ult_mod = Utility.getDate(); docActualizar.usuario_ult_mod = Global.Usuario.nombreUsuario.Trim(); context.Entry(docActualizar).State = System.Data.Entity.EntityState.Modified; } } if ((bool)Global.Usuario.tbEmpresa.tbParametrosEmpresa.First().manejaInventario&& entity.tipoDocumento != (int)Enums.TipoDocumento.Proforma) { foreach (tbDetalleDocumento detalle in entity.tbDetalleDocumento) { if (detalle.idProducto != "SM") { tbInventario inven = new tbInventario(); inven.idProducto = detalle.idProducto; inven = inventarioIns.GetEntity(inven); //si guardo factura desde 0, y el estado es cancelado, actualizo el inventario if (entity.tipoDocumento == (int)Enums.TipoDocumento.FacturaElectronica) { inven.cantidad = inven.cantidad - detalle.cantidad; } if (entity.tipoDocumento == (int)Enums.TipoDocumento.NotaCreditoElectronica || entity.tipoDocumento == (int)Enums.TipoDocumento.NotaDebitoElectronica) { inven.cantidad = inven.cantidad + detalle.cantidad; } context.Entry(inven).State = System.Data.Entity.EntityState.Modified; } } } context.SaveChanges(); } return(entity); } catch (Exception ex) { throw new SaveEntityException("Error en Factura"); } }