private List <OrderSearchFullResponseDto> GetOrderSearchFullResponseDtoList(Booking booking, ICollection <Order> invitedItemOrder) { var result = new List <OrderSearchFullResponseDto>(); try { foreach (var order in invitedItemOrder) { result.Add(new OrderSearchFullResponseDto { booking = BookingConverter.EntityToApiFullResponse(booking), invitedGuest = GetInvitedguestFullResponse(null), order = GetOrderFullResponse(null, order.Id), orderLines = order.OrderLine.Select(OrderLineConverter.EntityToApi).ToList(), host = new HostFullResponse() }); } } catch (Exception ex) { var msg = $"{ex.Message} : {ex.InnerException}"; } return(result); }
public async Task <List <BookingSearchResponse> > GetBookingSearch(string bookingToken, string email) { var result = new List <BookingSearchResponse>(); var includeList = new List <string> { "Order", "InvitedGuest", "User", "Table" }; try { Expression <Func <Booking, bool> > expression = !string.IsNullOrEmpty(email) ? b => b.Email == email : (Expression <Func <Booking, bool> >)null; var bookings = !string.IsNullOrEmpty(bookingToken) ? GetBookingList(bookingToken, includeList) : await UoW.Repository <Booking>().GetAllIncludeAsync(includeList, expression); foreach (var booking in bookings.ToList()) { var orders = booking.Order; var invitedList = booking.InvitedGuest; result.Add(new BookingSearchResponse { booking = BookingConverter.EntityToApi(booking), invitedGuests = invitedList.Select(InvitedGuestConverter.EntityToApi).ToList(), orders = booking.Order != null ? orders.Select(OrderSearchConverter.EntityToApi).ToList() : new List <OrderSearchDto>(), order = booking.Order != null ? orders != null ? OrderSearchConverter.EntityToApi(orders.FirstOrDefault()) : new OrderSearchDto() : new OrderSearchDto(), table = new TableSearchDto(), user = booking.User != null ? new UserSearchDto { id = booking.User.Id, modificationCounter = 0, revision = null, email = booking.Email, password = null, userRoleId = booking.User.IdRole, username = booking.User.UserName } : new UserSearchDto() }); } } catch (Exception ex) { var msg = $"{ex.Message} : {ex.InnerException}"; Console.WriteLine(msg); } return(result); }