private void buttonConfirmar_Click(object sender, EventArgs e) { oPresup = bllP.SeleccionarPresupuestoPorId(oPresup.Id); // Actualizo datos del presupuesto por si fue aprobado por otro usuario DialogResult Respuesta = MessageBox.Show("Confirma " + comboBoxAccion.Text + "Presupuesto?", comboBoxAccion.Text, MessageBoxButtons.YesNo); if (Respuesta == DialogResult.Yes) { PresupuestoTipoAprobacionBE Tipo = new PresupuestoTipoAprobacionBE(); Tipo = bllP.SeleccionarAprobacionTipo("Tecnica"); PresupuestoAprobacionBE nAprob = new PresupuestoAprobacionBE(oPresup, Tipo, SesionSingleton.Instancia.Usuario); if (((comboBoxAccion.Text == "Aprobar" && oPresup.Estado.AprobacionTecnica() == true)) || ((comboBoxAccion.Text == "Rechazar" && oPresup.Estado.RechazoTecnico() == true))) { nAprob.Fecha = DateTime.Now; nAprob.Accion = comboBoxAccion.Text; nAprob.Observaciones = textBoxObs.Text; PresupuestoBLL bllAp = new PresupuestoBLL(); if (nAprob.Accion == "Aprobar") { PresupuestoEstadoBE nEstado = new ApComPend(); bllAp.ActualizarEstado(oPresup, nEstado); } else { PresupuestoEstadoBE nEstado = new ApTecRech(); bllAp.ActualizarEstado(oPresup, nEstado); } bllAp.AnalisisTecnico(nAprob); MessageBox.Show("Operación realizada correctamente"); this.Close(); } else { MessageBox.Show("No es posible realizar la acción en el Estado actual"); } } }
public List <PresupuestoBE> ListarPresupuestos() // Solo muestra la cabecera para el listado { List <PresupuestoBE> ListaPresupuestos = new List <PresupuestoBE>(); Acceso AccesoDB = new Acceso(); DataSet DS = new DataSet(); DS = AccesoDB.LeerDatos("sp_ListarPresupuestosCabecera", null); if (DS.Tables[0].Rows.Count > 0) { foreach (DataRow Item in DS.Tables[0].Rows) { ClienteBE Cliente = new ClienteBE(); Cliente.RazonSocial = Convert.ToString(Item["RazonSocial"]).Trim(); Cliente.Direccion = Convert.ToString(Item["Direccion"]).Trim(); PresupuestoBE oPres = new PresupuestoBE(Cliente); oPres.Id = Convert.ToInt32(Item["Id"]); oPres.Vendedor = new UsuarioBE(); oPres.Vendedor.Id = Convert.ToInt32(Item["IdVendedor"]); oPres.Vendedor.Nombre = Convert.ToString(Item["Nombre"]).Trim(); oPres.Vendedor.Apellido = Convert.ToString(Item["Apellido"]).Trim(); oPres.FechaEmision = Convert.ToDateTime(Item["FechaEmision"]); oPres.FechaEntrega = Convert.ToDateTime(Item["FechaEntrega"]); oPres.FechaValidez = Convert.ToDateTime(Item["FechaValidez"]); oPres.Descuento = Convert.ToDecimal(Item["Descuento"]); oPres.Total = Convert.ToDecimal(Item["Total"]); oPres.Observaciones = Convert.ToString(Item["Observaciones"]).Trim(); oPres.PorcDescuento = Convert.ToInt32(Item["PorcDescuento"]); oPres.Iva = Convert.ToDecimal(Item["Iva"]); PresupuestoEstadoBE Est; switch (Convert.ToString(Item["Estado"]).Trim()) { case "ApTecPend": { Est = new ApTecPend(); oPres.ActualizarEstado(Est); } break; case "ApTecRech": { Est = new ApTecRech(); oPres.ActualizarEstado(Est); } break; case "ApComPend": { Est = new ApComPend(); oPres.ActualizarEstado(Est); } break; case "ApComRech": { Est = new ApComRech(); oPres.ActualizarEstado(Est); } break; case "EnviarCli": { Est = new EnviarCli(); oPres.ActualizarEstado(Est); } break; case "ApCli": { Est = new ApCli(); oPres.ActualizarEstado(Est); } break; case "RechCli": { Est = new RechCli(); oPres.ActualizarEstado(Est); } break; case "Finalizado": { Est = new Finalizado(); oPres.ActualizarEstado(Est); } break; } oPres.Estado.Descripción = Convert.ToString(Item["Descripcion"]).Trim(); ListaPresupuestos.Add(oPres); } } return(ListaPresupuestos); }
public BE.PresupuestoBE SeleccionarPresupuestoPorId(int Id) { ClienteBE Cli = new ClienteBE(); PresupuestoBE oPres = new PresupuestoBE(Cli); Hashtable Parametros = new Hashtable(); Parametros.Add("@Id", Id); Acceso AccesoDB = new Acceso(); DataSet Ds = new DataSet(); Ds = AccesoDB.LeerDatos("sp_SeleccionarPresupuestoPorId", Parametros); if (Ds.Tables[0].Rows.Count > 0) { foreach (DataRow Item in Ds.Tables[0].Rows) { oPres.Id = Convert.ToInt32(Item["Id"]); oPres.Cliente.Id = Convert.ToInt32(Item["IdCliente"]); oPres.Cliente.RazonSocial = Convert.ToString(Item["RazonSocial"]).Trim();; oPres.Vendedor = new UsuarioBE(); oPres.Vendedor.Id = Convert.ToInt32(Item["IdVendedor"]); oPres.FechaEmision = Convert.ToDateTime(Item["FechaEmision"]); oPres.FechaEntrega = Convert.ToDateTime(Item["FechaEntrega"]); oPres.FechaValidez = Convert.ToDateTime(Item["FechaValidez"]); oPres.Descuento = Convert.ToDecimal(Item["Descuento"]); oPres.Total = Convert.ToDecimal(Item["Total"]); oPres.Observaciones = Convert.ToString(Item["Observaciones"]).Trim(); oPres.PorcDescuento = Convert.ToInt32(Item["PorcDescuento"]); oPres.Iva = Convert.ToDecimal(Item["Iva"]); PresupuestoEstadoBE Est; switch (Convert.ToString(Item["Estado"]).Trim()) { case "ApTecPend": { Est = new ApTecPend(); oPres.ActualizarEstado(Est); } break; case "ApTecRech": { Est = new ApTecRech(); oPres.ActualizarEstado(Est); } break; case "ApComPend": { Est = new ApComPend(); oPres.ActualizarEstado(Est); } break; case "ApComRech": { Est = new ApComRech(); oPres.ActualizarEstado(Est); } break; case "EnviarCli": { Est = new EnviarCli(); oPres.ActualizarEstado(Est); } break; case "ApCli": { Est = new ApCli(); oPres.ActualizarEstado(Est); } break; case "RechCli": { Est = new RechCli(); oPres.ActualizarEstado(Est); } break; case "Finalizado": { Est = new Finalizado(); oPres.ActualizarEstado(Est); } break; } oPres.Estado.Descripción = Convert.ToString(Item["Descripcion"]).Trim(); } } if (Ds.Tables[1].Rows.Count > 0) { foreach (DataRow Item in Ds.Tables[1].Rows) { PresupuestoItemBE oItemPres = new PresupuestoItemBE(); ProductoBE oProd = new ProductoBE(); oItemPres.Producto = oProd; oItemPres.Producto.Id = Convert.ToInt32(Item["IdProducto"]); oItemPres.Producto.Descripcion = Convert.ToString(Item["Descripcion"]).Trim(); oItemPres.Cantidad = Convert.ToInt32(Item["Cantidad"]); oItemPres.PrecioUnitario = Convert.ToDecimal(Item["PrecioUnitario"]); oItemPres.TotalItem = Convert.ToDecimal(Item["TotalItem"]); oItemPres.PorcIVA = Convert.ToDecimal(Item["PorcIva"]); oItemPres.IvaItem = Convert.ToDecimal(Item["IvaItem"]); oPres.Items.Add(oItemPres); } } return(oPres); }