Example #1
0
        public IViewComponentResult Invoke(string active = "main")
        {
            var warehouses      = _shippingService.GetActiveWarehouses();
            var activeWarehouse = warehouses.FirstOrDefault(x => x.City?.ToLower() == active?.ToLower() || _localizationService.GetLocalized(x, u => u.City)?.ToLower() == active?.ToLower());

            if (activeWarehouse != null)
            {
                ViewBag.Active = _localizationService.GetLocalized(activeWarehouse, c => c.City);
            }
            else
            {
                ViewBag.Active = active;
            }

            var viewWarehouseModelList = new List <ViewWarehouseModel>();

            warehouses.ToList().ForEach(x =>
            {
                viewWarehouseModelList.Add(new ViewWarehouseModel()
                {
                    Id                   = x.Id,
                    Name                 = _localizationService.GetLocalized(x, u => u.Name),
                    WorkTime             = _localizationService.GetLocalized(x, u => u.WorkTime),
                    WarehouseDescription = _localizationService.GetLocalized(x, u => u.WarehouseDescription),
                    StreetAddress        = _localizationService.GetLocalized(x, u => u.StreetAddress),
                    Phone                = _localizationService.GetLocalized(x, u => u.Phone),
                    City                 = _localizationService.GetLocalized(x, u => u.City)
                });
            });

            WarehouseInfoModel model = new WarehouseInfoModel
            {
                Cities = warehouses
                         .Where(x => x.City != null)
                         .Select(x => new LocalizedCityModel()
                {
                    City          = x.City,
                    LocalizedCity = _localizationService.GetLocalized(x, u => u.City)
                }).DistinctBy(x => x.City),
                Warehouses = viewWarehouseModelList
            };

            return(View(model));
        }
Example #2
0
        public virtual IActionResult OurStores()
        {
            var warehouses = _shippingService.GetActiveWarehouses();

            var viewWarehouseModelList = new List <ViewWarehouseModel>();

            warehouses.ToList().ForEach(x =>
            {
                viewWarehouseModelList.Add(new ViewWarehouseModel()
                {
                    Id                   = x.Id,
                    Name                 = _localizationService.GetLocalized(x, u => u.Name),
                    WorkTime             = _localizationService.GetLocalized(x, u => u.WorkTime),
                    WarehouseDescription = _localizationService.GetLocalized(x, u => u.WarehouseDescription),
                    StreetAddress        = _localizationService.GetLocalized(x, u => u.StreetAddress),
                    Phone                = _localizationService.GetLocalized(x, u => u.Phone),
                    City                 = _localizationService.GetLocalized(x, u => u.City),
                    Latitude             = x.Latitude,
                    Longitude            = x.Longitude,
                    Pictures             = _shippingService.GetWarehousePictures(x.Id).Select(u => new ViewWarehouseModel.WarehousePicture()
                    {
                        PictureUrl = _pictureService.GetPictureUrl(u.PictureId)
                    }).ToList()
                });
            });

            viewWarehouseModelList.Where(x => x.Pictures.Count == 0).ToList().ForEach(x =>
            {
                x.Pictures.Add(new ViewWarehouseModel.WarehousePicture()
                {
                    PictureUrl = _pictureService.GetPictureUrl(0)
                });
            });

            WarehouseInfoModel model = new WarehouseInfoModel
            {
                Warehouses = viewWarehouseModelList
            };

            ViewBag.GoogleMapsApiKey = _shippingSettings.GoogleMapsApiKey;

            return(View(model));
        }