Ejemplo n.º 1
0
        public JsonResult MenusOrSaucers(int?dealerId, string date)
        {
            List <int> saucerIds;
            SaucerConfigurationPage saucerConfigurationPage;
            SaucerMultimediaPage    saucerMultimediaPage;

            if (dealerId.GetValue().IsGreaterThanZero())
            {
                var menuResponse = _menuService.Filter(new MenuFilter {
                    DealerId = dealerId.GetValue(), Date = date, OnlyStatusActivated = true, Sort = "ASC", SortBy = "Name"
                });
                saucerIds = menuResponse.Menus.Select(x => x.SaucerId).ToList();
                saucerConfigurationPage = _saucerConfigurationService.Filter(new SaucerConfigurationFilter {
                    OnlyStatusActivated = true, SaucerIds = string.Join(",", saucerIds)
                });
                saucerMultimediaPage = _saucerMultimediaService.Filter(new SaucerMultimediaFilter {
                    OnlyStatusActivated = true, SaucerIds = string.Join(",", saucerIds)
                });
                foreach (var menu in menuResponse.Menus)
                {
                    menu.Saucer.SaucerMultimedias    = saucerMultimediaPage.SaucerMultimedias.Where(x => x.SaucerId.IsEqualTo(menu.SaucerId)).ToList();
                    menu.Saucer.SaucerConfigurations = saucerConfigurationPage.SaucerConfigurations.Where(x => x.SaucerId.IsEqualTo(menu.SaucerId)).ToList();
                }
                return(new JsonFactory().Success(menuResponse.Menus, menuResponse.TotalRecords));
            }

            var saucerResponse = _saucerService.Filter(new SaucerFilter {
                OnlyStatusActivated = true, Sort = "ASC", SortBy = "Name"
            });

            saucerIds = saucerResponse.Saucers.Select(x => x.Id).ToList();
            saucerConfigurationPage = _saucerConfigurationService.Filter(new SaucerConfigurationFilter {
                OnlyStatusActivated = true, SaucerIds = string.Join(",", saucerIds)
            });
            saucerMultimediaPage = _saucerMultimediaService.Filter(new SaucerMultimediaFilter {
                OnlyStatusActivated = true, SaucerIds = string.Join(",", saucerIds)
            });
            foreach (var saucer in saucerResponse.Saucers)
            {
                saucer.SaucerMultimedias    = saucerMultimediaPage.SaucerMultimedias.Where(x => x.SaucerId.IsEqualTo(saucer.Id)).ToList();
                saucer.SaucerConfigurations = saucerConfigurationPage.SaucerConfigurations.Where(x => x.SaucerId.IsEqualTo(saucer.Id)).ToList();
            }
            return(new JsonFactory().Success(saucerResponse.Saucers, saucerResponse.TotalRecords));
        }
Ejemplo n.º 2
0
        public JsonResult Filter(SaucerMultimediaFilter filter)
        {
            var response = _saucerMultimeddiaService.Filter(filter);

            return(new JsonFactory().Success(response.SaucerMultimedias, response.TotalRecords));
        }