public object listarDetallesComprobante(ClsEdetallecomprobante detalleComprobante) { ArrayList detalleComprobantes = new ArrayList(); foreach (var item in datos.listarDetalleComprobantes(detalleComprobante.Serie, detalleComprobante.Numero)) { ClsEdetallecomprobante _DetalleComprobante = ClsEdetallecomprobante.crear(item.Serie, item.Numero, item.CodigoLote, item.Descripcion, item.Cantidad, item.Precio, item.Importe); detalleComprobantes.Add(_DetalleComprobante); } return(detalleComprobantes); }
private void pictureBox1_Click(object sender, EventArgs e) { if (MessageBox.Show("¿Seguro que desea concluir la venta?", "JeaNET - Pregunta", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { //para la venta string cliente = (lblCliente.Text.Length == 8) ? lblCliente.Text : txtCliente.Text; ClsEcomprobante E = ClsEcomprobante.crear(lblSerie.Text, lblNumero.Text, lblDNI.Text, Convert.ToDateTime(DateTime.Now.ToShortDateString()), cliente, Convert.ToDecimal(lblSubtotal.Text), Convert.ToDecimal(lblIGV.Text), Convert.ToDecimal(lblTotal.Text), "1"); ClsNcomprobante N = new ClsNcomprobante(); N.agregarComprobante(E); //para el detalle foreach (DataGridViewRow item in dgvVenta.Rows) { //para guardar detalle ClsEdetallecomprobante Ed = ClsEdetallecomprobante.crear(lblSerie.Text, lblNumero.Text, item.Cells[0].Value.ToString(), item.Cells[1].Value.ToString(), Convert.ToInt32(item.Cells[2].Value), Convert.ToDecimal(item.Cells[3].Value), Convert.ToDecimal(item.Cells[4].Value)); N.agregarDetalleComprobante(Ed); //listar dispositivos disponibles ClsNdispositivo Ne = new ClsNdispositivo(); ArrayList disponibles = Ne.listarDispositivosDisponibles(Ed.CodigoLote); DataTable Ddisponibles = new DataTable(); Ddisponibles.Columns.Add("SerieDispositivo"); Ddisponibles.Columns.Add("CodLote"); Ddisponibles.Columns.Add("Estado"); foreach (ClsEdispositivo dispositivo in disponibles) { Ddisponibles.Rows.Add(dispositivo.SerieDispositivo, dispositivo.CodLote, dispositivo.Estado); } //para agregar en cliente_dispositivo ClsNclientedispositivo Neg = new ClsNclientedispositivo(); Neg.agregarClienteDispositivo(E.DniCliente, Ed, Ddisponibles); //para guardar kardex ClsNkardex Nk = new ClsNkardex(); ClsEkardex objEKardex = ClsEkardex.crear(item.Cells[0].Value.ToString(), lblDNI.Text, "SALIDA", Convert.ToInt32(item.Cells[2].Value), Convert.ToDecimal(item.Cells[3].Value), "1", DateTime.Now.ToShortTimeString(), Convert.ToDateTime(DateTime.Now.ToShortDateString())); Nk.agregarKardex(objEKardex); //para cambiar el estado de cada dispositivo Ne.desactivarDispositivos(Ed, Ddisponibles); } //para el decremento int cantidad = 0; foreach (DataGridViewRow fila in dgvVenta.Rows) { ClsNlote Neg = new ClsNlote(); foreach (ClsElote item in Neg.listarLotes()) { if (item.CodLote.Equals(fila.Cells[0].Value.ToString())) { cantidad = Convert.ToInt32(item.Cantidad); break; } } ClsElote En = ClsElote.decrementar(fila.Cells[0].Value.ToString(), cantidad - Convert.ToInt32(fila.Cells[2].Value.ToString())); Neg.decrementarCantidad(En); } MtdReiniciar(); MessageBox.Show("Venta registrada con exito", "JeaNET - Informa", MessageBoxButtons.OK, MessageBoxIcon.Information); frmLoginAdmin.MtdAuditoria(frmAdministrador.data.Rows[0][0].ToString(), "Realizo una venta"); } else { frmLoginAdmin.MtdAuditoria(frmAdministrador.data.Rows[0][0].ToString(), "No pudo realizar una venta"); } }