public static List <RelacionCitaOrdenes> listarRelacionCitaOrdenes(SqlConnection serConn) { List <RelacionCitaOrdenes> relacionCitaOrdenesList = new List <RelacionCitaOrdenes>(); if (serConn == null) { return(relacionCitaOrdenesList); } Console.WriteLine("Consulta * from RelacionCitaOrdenes"); SqlCommand relacionCitaOrdenesCMD = new SqlCommand("select * from RelacionCitaOrdenes", serConn); DataTable dt = new DataTable(); dt.Load(relacionCitaOrdenesCMD.ExecuteReader()); foreach (DataRow dr in dt.Rows) { RelacionCitaOrdenes relacionCitaOrdenes = new RelacionCitaOrdenes(); relacionCitaOrdenes.idRelacionCitaOrdenes = int.Parse(dr["idRelacionCitaOrdenes"].ToString()); relacionCitaOrdenes.idCitaTalleres = int.Parse(dr["idCitaTalleres"].ToString()); relacionCitaOrdenes.idTrabajoTalleres = dr["idTrabajoTalleres"].ToString() == string.Empty ? 0 : int.Parse(dr["idTrabajoTalleres"].ToString()); relacionCitaOrdenes.idOrdenAseprot = int.Parse(dr["idOrdenesAseprot"].ToString()); relacionCitaOrdenesList.Add(relacionCitaOrdenes); Console.WriteLine("RelacionCitaOrdenes agregado a lista " + relacionCitaOrdenes); } return(relacionCitaOrdenesList); }
public List <PresupuestoOrden> listarPresupuestoOrden(SqlConnection serConn) { Console.WriteLine("Creacion de lista presupuestoOrden"); if (serConn.State != ConnectionState.Open) { serConn.Open(); } Presupuesto accederPresupuesto = new Presupuesto(); //List<Presupuesto> listaPresupuesto = accederPresupuesto.listarPresupuesto(serConn); List <ConsecutivoZona> listConsecutivoZona = ConsecutivoZona.listarConsecutivoZona(serConn); List <RelacionOsurPresupuesto> listaRelacionOsurPresupuesto = RelacionOsurPresupuesto.listarRelacionOsurPresupuesto(serConn); List <RelacionCitaOrdenes> listRelacionCitasOrdenes = RelacionCitaOrdenes.listarRelacionCitaOrdenes(serConn).Where(o => o.idTrabajoTalleres != null).ToList(); List <Ordenes> listOrdenes = Ordenes.listarOrdenes(serConn); List <Unidades> listUnidades = Unidades.listarUnidades(serConn); List <CentroTrabajos> listCentroTrabajo = CentroTrabajos.listarCentroTrabajos(serConn).Where(o => o.idOperacion == 3).ToList(); List <PresupuestoOrden> listPresupuestoOrden = new List <PresupuestoOrden>(); foreach (ConsecutivoZona consecutivoZona in listConsecutivoZona) { //Presupuesto presupuesto = listaPresupuesto.Find(o => o.Id == consecutivoZona.idOsur); RelacionOsurPresupuesto relacionOsurPresu = listaRelacionOsurPresupuesto.Find(o => o.idOsur == consecutivoZona.idOsur); RelacionCitaOrdenes relacionCitaOrdenes = listRelacionCitasOrdenes.Find(o => o.idTrabajoTalleres == consecutivoZona.idTrabajo); if (relacionCitaOrdenes == null) { Console.Write("no existe relación de ordenes"); } Ordenes orden = null; Unidades unidad = null; CentroTrabajos centroTrabajo = null; if (relacionCitaOrdenes != null) { orden = listOrdenes.Find(o => o.idOrden == relacionCitaOrdenes.idOrdenAseprot); if (orden != null) { unidad = listUnidades.Find(o => o.idUnidad == orden.idUnidad); if (unidad != null) { centroTrabajo = listCentroTrabajo.Find(o => o.idCentroTrabajo == unidad.idCentroTrabajo); } else { Console.Write("no existe unidad"); } } else { Console.Write("no existe orden"); } } else { Console.Write("no existe relación cita de ordenes"); } if (relacionOsurPresu != null && relacionCitaOrdenes != null && orden != null && unidad != null && centroTrabajo != null) { PresupuestoOrden presupuestoOrden = new PresupuestoOrden(); presupuestoOrden.idPresupuesto = relacionOsurPresu.idPresupuesto; presupuestoOrden.idOrden = relacionCitaOrdenes.idOrdenAseprot; presupuestoOrden.fechaAlta = consecutivoZona.fechaGeneracion; presupuestoOrden.idUsuario = 514; presupuestoOrden.consecutivo = consecutivoZona.numeroConsecutivo; presupuestoOrden.zona = consecutivoZona.idZona == 1 ? "N" : consecutivoZona.idZona == 2 ? "C" : consecutivoZona.idZona == 3 ? "P" : "G"; presupuestoOrden.folio = "RC-GLR" + presupuestoOrden.zona + "-" + centroTrabajo.extra1 + "-" + "00000" + consecutivoZona.numeroConsecutivo + "-" + presupuestoOrden.fechaAlta.Year; listPresupuestoOrden.Add(presupuestoOrden); } } return(listPresupuestoOrden); }