Esempio n. 1
0
        public RestaurantVM GetRestaurant()
        {
            var location = Shared.APIs.IRestaurant.GetLocation(Shared.RestaurantLocation);

            RestaurantVM restaurant = new RestaurantVM();

            restaurant.LocationId       = location.ID;
            restaurant.AddressObj       = location.Address;
            restaurant.Address          = location.Address.Line1 + " " + location.Address.City + ", " + location.Address.StateProv + " " + location.Address.ZipCode;
            restaurant.Address          = restaurant.Address.Replace(".", "").Replace(" ", "-").Replace("#", "");
            restaurant.RestaurantID     = location.RestaurantID;
            restaurant.SearchResultData = location.SearchResultData;
            restaurant.Location         = location;
            restaurant.labelTimeZone    = location.TimeZone;

            if (!string.IsNullOrEmpty(location.LogoUrl))
            {
                restaurant.LogoURL = location.LogoUrl;
            }
            else
            {
                restaurant.LogoURL = "";
            }

            return(restaurant);
        }
Esempio n. 2
0
        public RestaurantVM GetMenus(string address, int locid, string date = null)
        {
            var locationAddress = address.Replace("-", " ");

            DateTime selectedDate = Convert.ToDateTime(date);
            var      dayOfWeek    = selectedDate.DayOfWeek.ToString();
            var      holidays     = Shared.APIs.IRestaurant.GetLocationHolidays(locid, date, date);

            //Add Restaurant in RestaurantVM
            RestaurantVM result = new RestaurantVM();

            result.LocationId = locid;

            var restaurant = new RestaurantVM();

            foreach (var res in restaurants)
            {
                if (res.LocationId == locid)
                {
                    restaurant = res;
                }
            }

            //a tempararaly work around for restaurant logos.
            if (!string.IsNullOrEmpty(restaurant.LogoURL))
            {
                result.LogoURL = restaurant.LogoURL;
            }
            else
            {
                result.LogoURL = "";
            }


            result.SearchResultData = restaurant.SearchResultData;
            result.AddressObj       = restaurant.AddressObj;

            result.Address = locationAddress;
            if (holidays.Count > 0 || !restaurant.Location.DaysOfWeekOpen.ToString().Contains(dayOfWeek))
            {
                result.Closed = true;
            }


            //Add Menus of Restaurant in MenuVM
            List <RMenuVM> Menus = new List <RMenuVM>();
            var            menus = Shared.APIs.IRestaurant.GetMenus(locid);

            foreach (var menu in menus)
            {
                RMenuVM             Menu       = new RMenuVM();
                List <RMenuGroupVM> MenuGroups = new List <RMenuGroupVM>();
                var menusgroup = Shared.APIs.IRestaurant.GetMenuGroups(locid, menu.ID);
                foreach (var group in menusgroup)
                {
                    var          menuItems = Shared.APIs.IRestaurant.GetChildMenuItems(locid, menu.ID, group.ID);
                    RMenuGroupVM GroupMenu = new RMenuGroupVM
                    {
                        Group     = group,
                        MenuItems = menuItems.Select(s => MapMenuItemBasePrice(new RMenuItemVM {
                            LocationId = locid, MenuId = menu.ID, MenuItem = s
                        })).ToList()
                    };
                    MenuGroups.Add(GroupMenu);
                }
                Menu.Menu       = menu;
                Menu.MenuGroups = MenuGroups;
                Menus.Add(Menu);
            }
            result.Menus = Menus;

            return(result);
        }