Example #1
0
        public void TakeFee(BE.Order order)
        {
            // find matching GuestRequest to given order
            List <BE.GuestRequest>        GuestRequestsList = _dal.GetAllRequests();
            IEnumerable <BE.GuestRequest> req = from guestRequest in GuestRequestsList
                                                where guestRequest.GuestRequestKey == order.GuestRequestKey
                                                select guestRequest;
            int days = 0;

            BE.GuestRequest gReq = null;
            try
            {
                gReq = req.Single();
            }
            // handle exceptions
            catch (ArgumentNullException exc)
            {
                Console.WriteLine(exc.Message);
            }
            catch (InvalidOperationException exc)
            {
                Console.WriteLine(exc.Message);
            }
            // get number of vacation days
            days = (gReq.ReleaseDate - gReq.EntryDate).Days;


            // find matching HostingUnit to given order
            List <BE.HostingUnit>        HostingUnitsList = _dal.GetAllHostingUnits();
            IEnumerable <BE.HostingUnit> units            = from hostingUnit in HostingUnitsList
                                                            where hostingUnit.HostingUnitKey == order.HostingUnitKey
                                                            select hostingUnit;

            BE.HostingUnit unit = null;
            try
            {
                unit = units.Single();
            }
            // handle exceptions
            catch (ArgumentNullException exc)
            {
                Console.WriteLine(exc.Message);
            }
            catch (InvalidOperationException exc)
            {
                Console.WriteLine(exc.Message);
            }
            // take fee
            unit.Owner.Balance -= days * BE.Configuration.Fee;
            _dal.UpdateHostingUnit(unit); // update DS
        }
Example #2
0
        /// <summary>
        /// test Idal's HostingUnit functions
        /// </summary>
        private static void HostingUnit()
        {
            List <BE.HostingUnit> unitsList = _dal.GetAllHostingUnits();

            //add
            BE.HostingUnit unit = new BE.HostingUnit()
            {
                HostingUnitKey  = ++BE.Configuration.HostingUnitKey,
                HostingUnitName = "hotel california",
                Owner           = unitsList[0].Owner,
                type            = BE.Enums.UnitType.Hotel,
                Area            = BE.Enums.Area.Center,
                Diary           = new bool[BE.Configuration._month, BE.Configuration._days],
            };
            _dal.AddHostingUnit(unit.Clone());
            PrintHostingUnits();

            // update
            unit.Owner = unitsList[2].Owner;
            _dal.UpdateHostingUnit(unit.Clone());
            Console.WriteLine("after update:");
            PrintHostingUnits();

            //delete
            _dal.DeleteHostingUnit(unit.Clone());
            Console.WriteLine("after delete:");
            PrintHostingUnits();
        }