public static void Guardar(ClsPedido Pedido, bool EsNuevo) { string Procedimiento = string.Empty; ClsNSQLParametro[] parametros; if (!EsNuevo) { Procedimiento = "ActualizarPedido"; parametros = new ClsNSQLParametro[7]; parametros[0] = new ClsNSQLParametro(Pedido.Id, "@Id", SqlDbType.VarChar); parametros[1] = new ClsNSQLParametro(Pedido.IdCliente, "@IdCliente", SqlDbType.VarChar); parametros[2] = new ClsNSQLParametro(Pedido.IdEmpleado, "@IdEmpleado", SqlDbType.VarChar); parametros[3] = new ClsNSQLParametro(Pedido.TipoPedido, "@TipoPedido", SqlDbType.Bit); parametros[4] = new ClsNSQLParametro(Pedido.FechaPedido, "@FechaPedido", SqlDbType.Date); parametros[5] = new ClsNSQLParametro(Pedido.Total, "@Total", SqlDbType.Decimal); parametros[6] = new ClsNSQLParametro(Pedido.Estado, "@Estado", SqlDbType.Int); } else { Procedimiento = "CrearPedido"; parametros = new ClsNSQLParametro[7]; parametros[0] = new ClsNSQLParametro(Pedido.Id, "@Id", SqlDbType.VarChar); parametros[1] = new ClsNSQLParametro(Pedido.IdCliente, "@IdCliente", SqlDbType.VarChar); parametros[2] = new ClsNSQLParametro(Pedido.IdEmpleado, "@IdEmpleado", SqlDbType.VarChar); parametros[3] = new ClsNSQLParametro(Pedido.TipoPedido, "@TipoPedido", SqlDbType.Bit); parametros[4] = new ClsNSQLParametro(Pedido.FechaPedido, "@FechaPedido", SqlDbType.Date); parametros[5] = new ClsNSQLParametro(Pedido.Total, "@Total", SqlDbType.Decimal); parametros[6] = new ClsNSQLParametro(Pedido.Estado, "@Estado", SqlDbType.Int); } ClsNConexion.EjecutarProcedimiento(Procedimiento, parametros); }
private void BtnGuardar_Click(object sender, EventArgs e) { if (MesaId != null && ClienteId != null && DgvPedidosMesa.Rows.Count > 0 && TxtNumero.Text != null && CmbSerie.SelectedIndex > -1) { int Estado = RdnEstadoAtendido.Checked ? 1 : RdnEstadoEspera.Checked ? 2 : 3; ClsPedido Pedido = new ClsPedido ( TxtIdPedido.Text, ClienteId, EmpleadoId, false,// FALSE indica pedido mesa Convert.ToDateTime(DtpFechaPedido.Text), Convert.ToDouble(TxtTotalNumerico.Text), Estado ); ClsNPedido.Guardar(Pedido, true); foreach (DataGridViewRow Fila in DgvPedidosMesa.Rows) { ClsDetallePedido Detalle = new ClsDetallePedido ( TxtIdPedido.Text, Fila.Cells[0].Value.ToString(), Convert.ToDouble(Fila.Cells[3].Value), Convert.ToInt32(Fila.Cells[2].Value), Convert.ToDouble(Fila.Cells[4].Value) ); ClsNDetallePedido.Guardar(Detalle); DataTable TablaDetalleProducto = ClsNDetalleProducto.ObtenerPorProducto(Detalle.IdProducto); if (CmbTipoComprobante.SelectedIndex == 0) { ClsBoleta Boleta = new ClsBoleta( CmbSerie.SelectedItem.ToString(), TxtNumero.Text, Convert.ToDateTime(DtpFechaPedido.Text), TxtIdPedido.Text ); ClsNInsumo.CrearBoleta(Boleta); } else { ClsFactura Factura = new ClsFactura( CmbSerie.SelectedItem.ToString(), TxtNumero.Text, Convert.ToDateTime(DtpFechaPedido.Text), ("GR" + TxtNumero.Text), TxtIdPedido.Text ); ClsNInsumo.CrearFactura(Factura); } foreach (DataRow FilaDetalleProducto in TablaDetalleProducto.Rows) { ClsDetalleProducto DetalleProducto = new ClsDetalleProducto( FilaDetalleProducto["IdInsumo"].ToString(), FilaDetalleProducto["IdProducto"].ToString(), Convert.ToDouble(FilaDetalleProducto["Cantidad"]) ); if (CmbTipoComprobante.SelectedIndex == 0) { ClsNInsumo.SalidaBoleta(DetalleProducto, CmbSerie.SelectedItem.ToString(), TxtNumero.Text); } else { ClsNInsumo.SalidaFactura(DetalleProducto, CmbSerie.SelectedItem.ToString(), TxtNumero.Text); } } } LimpiarControles(); AjustarControles(false); TxtTotalLiteral.Text = string.Empty; TxtTotalNumerico.Text = 0.ToString(); } else { MessageBox.Show("Llene la Pedido correctamente"); } }