public ServicioGenerico<DetalleReservaEntity> getDetalleReserva(int tipo) { ServicioGenerico<DetalleReservaEntity> servicio; switch (tipo) { case Util.ACCESS: servicio = new DetalleReservaAccess(); break; case Util.SQL: servicio = new DetalleReservaSQL(); break; default: servicio = null; break; } return servicio; }
public List<DetalleReservaEntity> ListarPorReserva(int codigo) { // List<DetalleReservaEntity> listaDetalle = servicioDetalle.ListarTodos().Where(tx => tx.CodigoReserva == codigo).ToList(); List<DetalleReservaEntity> listaDetalle = new DetalleReservaAccess().ListarPorReserva(codigo); List<FiestaEntity> listaFiesta = servicioFiesta.ListarTodos(); ReservaEntity objReserva = servicioReserva.Consultar(codigo); var query = from detalle in listaDetalle join fiesta in listaFiesta on detalle.CodigoFiesta equals fiesta.Codigo select new { Codigo = detalle.Codigo, Fiesta = fiesta.Nombre }; List<DetalleReservaEntity> listaCompuesta = new List<DetalleReservaEntity>(); foreach (var resultado in query) { DetalleReservaEntity objDetalle = new DetalleReservaEntity(); objDetalle.Codigo = resultado.Codigo; objDetalle.NombreFiesta = resultado.Fiesta; listaCompuesta.Add(objDetalle); } List<AsignacionEntity> lista = servicioAsignacion.ListarFecha(objReserva.FechaCelebracion,objReserva.FechaCelebracion); var cantidad = lista.GroupBy(tx=>tx.CodigoDetalle) .Select(gp=>new {Detalle = gp.Key,Cuenta = gp.Count()}) .OrderBy(x=>x.Detalle); var query2 = from det in listaCompuesta from can in cantidad.Where(ca=>det.Codigo == ca.Detalle).DefaultIfEmpty() select new { Detalle = det, Cantidad = can }; List<DetalleReservaEntity> listaFinal = new List<DetalleReservaEntity>(); foreach (var result in query2) { DetalleReservaEntity obj = new DetalleReservaEntity(); obj.Codigo = result.Detalle.Codigo; obj.NombreFiesta = result.Detalle.NombreFiesta; if (result.Cantidad == null) { obj.CantidadAsignados = 0; } else { obj.CantidadAsignados = result.Cantidad.Cuenta; } listaFinal.Add(obj); } return listaFinal; }
public List<ReporteFacturacion> ListarFacturacion(DateTime fechaInicio, DateTime fechaFin) { DetalleReservaAccess objDetalle = new DetalleReservaAccess(); return objDetalle.ListarFacturacion(fechaInicio.Date, fechaFin.Date); }