Ejemplo n.º 1
0
        public async Task <HotelRoomRS> GetRoom(string country, string city, int id, DateTime checkIn, DateTime checkOut, string locale, string currency, string rooms)
        {
            HotelRoomRQ request = new HotelRoomRQ()
            {
                CheckIn   = checkIn,
                CheckOut  = checkOut,
                Currency  = currency,
                Locale    = locale,
                HotelId   = id,
                Suppliers = new List <string> {
                    "EAN"
                },
                Occupancies = rooms.Split('|').ToList().Select(r =>
                {
                    var occu = new RoomOccupancy
                    {
                        AdultCount = Convert.ToInt32(r.Split(',')[0])
                    };

                    if (r.Split(',').Length > 1)
                    {
                        occu.ChildAges = r.Split(',').Skip(1).Select(c => Convert.ToInt32(c)).ToList();
                    }

                    return(occu);
                }).ToList(),
            };

            return(await _HotelService.HotelRoomAsync(request));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// </summary>
        /// <param name="type"></param>
        /// <param name="date">DateTime date is a date, no time</param>
        /// <returns></returns>
        public int GetRoomOccupancyByDate(ROOM_TYPE type, DateTime date)
        {
            RoomOccupancy roomOccupancy =
                _context.RoomOccupancies.FirstOrDefault(ro => ro.Date == date && ro.RoomType == type);

            return(roomOccupancy?.Occupancy ?? 0);
        }
Ejemplo n.º 3
0
        public void UpdateRoomOccupancy(ROOM_TYPE type, DateTime date, int quantity)
        {
            // check if record exists
            RoomOccupancy roomOccupancy =
                _context.RoomOccupancies.FirstOrDefault(ro => ro.Date == date && ro.RoomType == type);

            if (roomOccupancy != null)
            {
                // update the existing RoomOccupancy record
                roomOccupancy.Occupancy += quantity;
                UpdateRoomOccupancy(roomOccupancy);
            }
            else
            {
                RoomType roomType = GetRoomType(type);
                // create new and add it into RoomOccupancy
                roomOccupancy = new RoomOccupancy
                {
                    Id        = Guid.NewGuid(),
                    Date      = date,
                    Occupancy = quantity,
                    RoomType  = type
                };
                _context.RoomOccupancies.Add(roomOccupancy);
            }
        }
Ejemplo n.º 4
0
 public void UpdateRoomOccupancy(RoomOccupancy roomOccupancy)
 {
     _context.Entry(roomOccupancy).State = EntityState.Modified;
 }