public async Task <SolicitudesConDetallesDto> ObtenerSolicitudConDetallePorId(int id) { var solicitud = (await EncontrarSolicitudes(t => t.Id == id)).FirstOrDefault(); if (solicitud != default(Solicitudes)) { var listaDetallesDto = new List <DetalleSolicitudDto>(); var listaDetalles = (await EncontrarDetallesSolicitudes(t => t.SolicitudesId == solicitud.Id)).ToList(); foreach (var detalle in listaDetalles) { var prendaClasificacion = (await _clasificacionPrendasAccesoBd.EncontrarPrendasClasificacion(t => t.Id == detalle.PrendasClasificacionId)).FirstOrDefault(); var prenda = (await _clasificacionPrendasAccesoBd.EncontrarPrenda(t => t.Id == prendaClasificacion.PrendasId)).FirstOrDefault(); var clasificacion = (await _clasificacionPrendasAccesoBd.EncontrarClasificacion(t => t.Id == prendaClasificacion.ClasificacionId)).FirstOrDefault(); var detalleDto = new DetalleSolicitudDto { Id = detalle.Id, Estado = detalle.Estado, Doblado = detalle.Doblado, LavadoPlanchado = detalle.LavadoPlanchado, LavadoSeco = detalle.LavadoSeco, Planchado = detalle.Planchado, CantidadPrendas = detalle.CantidadPrendas, PrendasClasificacionId = detalle.PrendasClasificacionId, SolicitudesId = detalle.SolicitudesId, Prenda = prenda.Nombre, Clasificacion = clasificacion.Nombre }; listaDetallesDto.Add(detalleDto); } var listadoDetalles = new ListadoDetallesSolicitudDto { DetalleSolicitud = listaDetallesDto }; var cliente = await _clienteAccesoBd.ObtenerClientePorId(solicitud.ClienteId); var solicitudConDetalle = new SolicitudesConDetallesDto { ClienteId = solicitud.ClienteId, Estado = solicitud.Estado, Fecha = solicitud.Fecha, Id = solicitud.Id, SuplementoEntrega = solicitud.SuplementoEntrega, ListadoDetallesSolicitud = listadoDetalles, Habitacion = cliente.Habitacion, Nombres = cliente.Nombres }; return(solicitudConDetalle); } return(default(SolicitudesConDetallesDto)); }
public async Task <ClienteDto> ObtenerClientePorId(int id) { return(await _clientesAccesoBd.ObtenerClientePorId(id)); }
public async Task <FacturasConDetalleDto> ObtenerFacturaConDetallesPorId(int id) { var factura = (await EncontrarFactura(t => t.Id == id)).FirstOrDefault(); if (factura != default(Factura)) { var listaDetallesFacturaDto = new List <ObtenerDetalleFacturaDto>(); var listaDetallesFactura = (await EncontrarDetallesFactura(t => t.FacturaId == factura.Id)).ToList(); var cliente = await _clientesAccesoBd.ObtenerClientePorId(factura.ClientesId); var solicitud = await _solicitudesAccesoBd.ObtenerSolicitudPorId(factura.SolicitudesId); foreach (var detalleFactura in listaDetallesFactura) { var detalleSolicitud = await _solicitudesAccesoBd.ObtenerDetalleSolicitud(detalleFactura.DetalleSolicitudId); var prendaClasificacion = (await _clasificacionPrendasAccesoBd.EncontrarPrendasClasificacion(t => t.Id == detalleSolicitud.PrendasClasificacionId)).FirstOrDefault(); var prenda = (await _clasificacionPrendasAccesoBd.EncontrarPrenda(t => t.Id == prendaClasificacion.PrendasId)).FirstOrDefault(); var clasificacion = (await _clasificacionPrendasAccesoBd.EncontrarClasificacion(t => t.Id == prendaClasificacion.ClasificacionId)).FirstOrDefault(); var detalleFacturaDto = new ObtenerDetalleFacturaDto { Id = detalleFactura.Id, Clasificacion = clasificacion.Nombre, Prenda = prenda.Nombre, CantidadPrendasDetalle = detalleSolicitud.CantidadPrendas, DobladoDetalle = detalleSolicitud.Doblado, EstadoDetalle = detalleSolicitud.Estado, LavadoPlanchadoDetalle = detalleSolicitud.LavadoPlanchado, LavadoSecoDetalle = detalleSolicitud.LavadoSeco, PlanchadoDetalle = detalleSolicitud.Planchado, Doblado = detalleFactura.Doblado, LavadoPlanchado = detalleFactura.LavadoPlanchado, LavadoSeco = detalleFactura.LavadoSeco, Planchado = detalleFactura.Planchado, Total = detalleFactura.Total }; listaDetallesFacturaDto.Add(detalleFacturaDto); } var listadoDetallesFacturas = new ListadoObtenerDetallesFacturaDto { DetallesFactura = listaDetallesFacturaDto }; var facturaConDetalleDto = new FacturasConDetalleDto { Id = factura.Id, Nombre = cliente.Nombres, Identificacion = cliente.Identificacion, Habitacion = cliente.Habitacion, SuplementoEntrega = solicitud.SuplementoEntrega, Fecha = solicitud.Fecha, Doblado = factura.Doblado, Estado = factura.Estado, Suplemento = factura.Suplemento, TotalGlobal = factura.TotalGlobal, TotalParcial = factura.TotalParcial, DetallesFacturas = listadoDetallesFacturas }; return(facturaConDetalleDto); } return(default(FacturasConDetalleDto)); }