public ReservationDetailViewModel(int hOfferId, int tOfferId)
 {
     _hOfferId                = hOfferId;
     _tOfferId                = tOfferId;
     HotelOffer               = new HotelOfferModel();
     TransportOffer           = new TransportOfferModel();
     SubmitReservationCommand = new Command(async(object context) => await MakeReservation(context));
 }
        public async Task Init()
        {
            try
            {
                var hOffer = await _hOfferService.GetById <HotelOfferDTO>(_hOfferId);

                var tOffer = await _tOfferService.GetById <TransportOfferDTO>(_tOfferId);


                var hotel = await _hotelService.GetById <HotelDTO>(hOffer.HotelId);

                var transportCompany = await _tCompanyService.GetById <TransportCompanyDTO>(tOffer.TransportCompanyId);

                HotelOffer = new HotelOfferModel {
                    hOffer = hOffer, Name = hotel.HotelName
                };
                TransportOffer = new TransportOfferModel {
                    tOffer = tOffer, Name = transportCompany.TransportCompanyName
                };
                //var hotelRoomsData = await _hRoomService.Get<List<HotelRoomsDTO>>(new HotelRoomsSearchRequest {HotelId = hotel.Id });
                //foreach (var hroom in hotelRoomsData)
                //{
                //    var roomTypeData = await _roomTypeService.GetById<RoomTypeDTO>(hroom.RoomTypeId );
                //    Rooms.Add(new RoomTypeModel {
                //        RoomTypeId =roomTypeData.Id,
                //        HotelId = hroom.HotelId,
                //        RoomTypeName = roomTypeData.RoomTypeName,
                //        RoomDetails = roomTypeData.RoomDetails,
                //        NumberOfRooms = hroom.NumberOfRooms,
                //        Available = hroom.Available,
                //        NumberOfPeople = roomTypeData.NumberOfPeople,
                //        Price = hroom.Price
                //    });
                //}
            }catch (Exception e)
            {
            }
        }
        public async Task Init()
        {
            try
            {
                List <TransportCompanyDTO> tCompanyData = null;
                List <TransportOfferDTO>   tOfferData   = null;

                var searchRequest = (_id.HasValue) ? new TransportOfferSearchRequest
                {
                    CityId    = _id.Value,
                    StartDate = DateTime.MinValue,
                    EndDate   = DateTime.MinValue,
                    IsActive  = true
                } : new TransportOfferSearchRequest
                {
                    StartDate = DateTime.MinValue,
                    EndDate   = DateTime.MinValue,
                    IsActive  = true
                };

                tOfferData = await _tOfferservice.Get <List <TransportOfferDTO> >(searchRequest);

                tCompanyData = await _tCompanyservice.Get <List <TransportCompanyDTO> >(null);

                foreach (var item in tOfferData)
                {
                    var model = new TransportOfferModel();

                    model.tOffer = item;
                    model.Name   = tCompanyData.FirstOrDefault(_ => _.Id == item.TransportCompanyId).TransportCompanyName;

                    transports.Add(model);
                }
            }
            catch (Exception)
            {
            }
        }
        //public ObservableCollection<RoomTypeModel> Rooms { get; set; }
        //= new ObservableCollection<RoomTypeModel>();

        public ReservationDetailViewModel()
        {
            HotelOffer               = new HotelOfferModel();
            TransportOffer           = new TransportOfferModel();
            SubmitReservationCommand = new Command(async(object context) => await MakeReservation(context));
        }