protected void pCargaOrdenes(int pIdFlujo, int pIdCotizacion) { BD.CotizacionICRL.TipoOrdenTraer vTipoOrdenTraer; vTipoOrdenTraer = CotizacionICRL.OrdenTraer(pIdFlujo, pIdCotizacion); GridViewOrdenes.DataSource = vTipoOrdenTraer.Ordenes.Select(Ordenes => new { Ordenes.numero_orden, Ordenes.id_estado, Ordenes.descripcion, Ordenes.monto_bs, Ordenes.id_item }).ToList(); GridViewOrdenes.DataBind(); }
protected void ButtonGenerarOrden_Click(object sender, EventArgs e) { if (!VerificarPagina(true)) { return; } bool vResultado = false; int vIdFlujo = 0; int vIdCotizacion = 0; int vContador = 1; StringBuilder vSBNumeroOrden = new StringBuilder(); string vNumeroOrden = string.Empty; vIdFlujo = int.Parse(TextBoxIdFlujo.Text); vIdCotizacion = int.Parse(TextBoxNroCotizacion.Text); //generar numero de orden vNumeroOrden = string.Empty; vSBNumeroOrden.Clear(); vSBNumeroOrden.Append("OP-"); vNumeroOrden = TextBoxNroFlujo.Text.Trim(); vNumeroOrden = vNumeroOrden.PadLeft(6, '0'); vSBNumeroOrden.Append(vNumeroOrden); vSBNumeroOrden.Append("-PE-"); vNumeroOrden = vIdCotizacion.ToString(); vNumeroOrden = vNumeroOrden.PadLeft(6, '0'); vSBNumeroOrden.Append(vNumeroOrden); vSBNumeroOrden.Append("-"); vNumeroOrden = vContador.ToString(); vSBNumeroOrden.Append(vNumeroOrden.PadLeft(2, '0')); vNumeroOrden = vSBNumeroOrden.ToString(); CotizacionICRL.TipoOrden vTipoOrden = new CotizacionICRL.TipoOrden(); vTipoOrden.id_flujo = vIdFlujo; vTipoOrden.id_cotizacion = vIdCotizacion; vTipoOrden.tipo_origen = (short)AccesoDatos.TipoInspeccion.RCPersonas; vTipoOrden.numero_orden = vNumeroOrden; vTipoOrden.fecha_orden = DateTime.Today; vTipoOrden.descripcion = TextBoxPerNombreTer.Text.ToUpper(); vTipoOrden.monto_us = 0; vTipoOrden.id_estado = 1; //Sumar los gastos del detalle BD.CotizacionICRL.TipoRCPersonasTraer vTipoRCPersonasTraer; vTipoRCPersonasTraer = CotizacionICRL.RCPersonasTraer(vIdFlujo, vIdCotizacion); double vSumaGastos = 0; DataSet vDataSetPer = vTipoRCPersonasTraer.dsRCPersonas; int vIndiceDataTable = vDataSetPer.Tables.Count - 1; if (vIndiceDataTable >= 0) { for (int i = 0; i < vDataSetPer.Tables[vIndiceDataTable].Rows.Count; i++) { double vMontoGasto = 0; string vTextoMontoGasto = string.Empty; vTextoMontoGasto = vDataSetPer.Tables[vIndiceDataTable].Rows[i][5].ToString(); try { vMontoGasto = (double)vDataSetPer.Tables[vIndiceDataTable].Rows[i][5]; } catch (Exception) { vMontoGasto = 0; } vSumaGastos = vSumaGastos + vMontoGasto; } } vTipoOrden.monto_bs = vSumaGastos; //ajuste ordenes CotizacionICRL.TipoOrdenTraer vTipoOrdenTraer; CotizacionICRL.TipoOrden vTipoOrdenAux = new CotizacionICRL.TipoOrden(); vTipoOrdenTraer = CotizacionICRL.OrdenTraer(vIdFlujo, vIdCotizacion); if (vTipoOrdenTraer.Ordenes.Count > 0) { //si existe registro se borra vTipoOrdenAux = vTipoOrdenTraer.Ordenes.FirstOrDefault(); vResultado = CotizacionICRL.OrdenBorrar(vTipoOrdenAux.id_flujo, vTipoOrdenAux.id_cotizacion, vTipoOrdenAux.id_item); } vResultado = CotizacionICRL.OrdenRegistrar(vTipoOrden); if (vResultado) { LabelDatosPersonaMsj.Text = "Orden creada exitosamente"; } else { LabelDatosPersonaMsj.Text = "la Orden no se pudo crear"; } pCargaOrdenes(vIdFlujo, vIdCotizacion); }