예제 #1
0
        public async Task <StoreListModel> PrepareStoreListModel(StoreSearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            //get stores
            var stores = await _storeService.GetAllStores(
                storeName : searchModel.SearchStoreName,
                areaCode : searchModel.SearchAreaCode,
                city : searchModel.SearchCity,
                state : searchModel.SearchState,
                pageIndex : searchModel.Page - 1,
                pageSize : searchModel.PageSize);

            var model = new StoreListModel
            {
                Data = stores.Select(store =>
                {
                    var storeModel = store.ToModel <StoreModel>();

                    storeModel.BranchNo       = store.P_BranchNo;
                    storeModel.Name           = store.P_BranchNo + " - " + store.P_Name;
                    storeModel.AreaCode       = store.P_AreaCode;
                    storeModel.Address1       = store.P_Addr1;
                    storeModel.Address2       = store.P_Addr2;
                    storeModel.Address3       = store.P_Addr3;
                    storeModel.City           = store.P_City;
                    storeModel.State          = store.P_State;
                    storeModel.Country        = store.P_Country;
                    storeModel.CountUserStore = store.UserStores.Count;

                    return(storeModel);
                }),
                Total = stores.TotalCount
            };

            if (searchModel.Sort != null && searchModel.Sort.Any())
            {
                foreach (var s in searchModel.Sort)
                {
                    model.Data = await model.Data.Sort(s.Field, s.Dir);
                }
            }

            if (searchModel.Filter != null && searchModel.Filter.Filters != null && searchModel.Filter.Filters.Any())
            {
                var filter = searchModel.Filter;
                model.Data = await model.Data.Filter(filter);

                model.Total = model.Data.Count();
            }

            return(model);
        }
예제 #2
0
        } //NOP 3.828

        #endregion

        #region Methods
        public ActionResult Index()
        {
            //var storeList = _storeListService.GetStoreList();

            var model = new StoreListModel();

            /*
             * foreach (var item in storeList)
             * {
             *  var storeListModel = new StoreListModel();
             *  storeListModel.Id = item.Id;
             *  storeListModel.Name = item.GetLocalized(x => x.Name);
             *  storeListModel.Published = item.Published;
             *  storeListModel.Description = item.GetLocalized(x => x.Description);
             *  storeListModel.Contact = item.Contact;
             *  storeListModel.Country = item.GetLocalized(x => x.Country);
             *  storeListModel.District = item.District;
             *  storeListModel.StateProvince = item.StateProvince;
             *
             *  model.Add(storeListModel);
             * }
             */
            model.AvailableCountries.Add(new SelectListItem {
                Text = _localizationService.GetResource("Address.SelectAll"), Value = ""
            });
            foreach (var c in _storeListService.GetCountryList())
            {
                var d = _localizationService.GetResource(c);
                model.AvailableCountries.Add(new SelectListItem
                {
                    Text     = d,
                    Value    = c,
                    Selected = c == "0"
                });
            }
            model.AvailableStates.Add(new SelectListItem {
                Text = _localizationService.GetResource("Address.SelectAll"), Value = ""
            });
            model.AvailableDistricts.Add(new SelectListItem {
                Text = _localizationService.GetResource("Address.SelectAll"), Value = ""
            });

            model.AvailableStoreTypes.Add(new SelectListItem {
                Text = _localizationService.GetResource("Address.SelectAll"), Value = ""
            });
            model.AvailableStoreTypes.Add(new SelectListItem {
                Text = _localizationService.GetResource("StoreList.Store"), Value = "Mağaza"
            });
            model.AvailableStoreTypes.Add(new SelectListItem {
                Text = _localizationService.GetResource("StoreList.Dealer"), Value = "Bayi"
            });

            return(View("~/Plugins/Misc.StoreList/Views/Index.cshtml", model));
        }
        public async Task <IActionResult> Index()
        {
            IQueryable <string> genreQuery = from m in _context.Stores orderby m.Name select m.Name;

            var stores = from m in _context.Stores select m;

            var storeVM = new StoreListModel
            {
                Stores = await stores.ToListAsync()
            };

            return(View(storeVM));
        }
예제 #4
0
        public IHttpActionResult UpdateStores(StoresViewModel stores)
        {
            StoreListModel model = new StoreListModel();

            model.Stores = JsonConvert.DeserializeObject <List <StoreModel> >(stores.Stores);

            foreach (var store in model.Stores)
            {
                StoreService.UpdateStores(store);
            }

            return(Ok(stores));
        }
        /// <summary>
        /// Prepare paged store list model
        /// </summary>
        /// <param name="searchModel">Store search model</param>
        /// <returns>
        /// A task that represents the asynchronous operation
        /// The task result contains the store list model
        /// </returns>
        public virtual async Task <StoreListModel> PrepareStoreListModelAsync(StoreSearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            //get stores
            var stores = (await _storeService.GetAllStoresAsync()).ToPagedList(searchModel);

            //prepare list model
            var model = new StoreListModel().PrepareToGrid(searchModel, stores, () =>
            {
                //fill in model values from the entity
                return(stores.Select(store => store.ToModel <StoreModel>()));
            });

            return(model);
        }
예제 #6
0
        /// <summary>
        /// Prepare paged store list model
        /// </summary>
        /// <param name="searchModel">Store search model</param>
        /// <returns>Store list model</returns>
        public virtual StoreListModel PrepareStoreListModel(StoreSearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            //get stores
            var stores = _storeService.GetAllStores(loadCacheableCopy: false);

            //prepare list model
            var model = new StoreListModel
            {
                //fill in model values from the entity
                Data  = stores.PaginationByRequestModel(searchModel).Select(store => store.ToModel <StoreModel>()),
                Total = stores.Count
            };

            return(model);
        }
예제 #7
0
        /// <summary>
        /// 店铺列表
        /// </summary>
        public ActionResult StoreList(string storeName, int storeRid = 0, int storeIid = 0, int state = -1, int pageNumber = 1, int pageSize = 15)
        {
            string condition = AdminStores.AdminGetStoreListCondition(storeName, storeRid, storeIid, state);

            PageModel pageModel = new PageModel(pageSize, pageNumber, AdminStores.AdminGetStoreCount(condition));

            List <SelectListItem> storeRankList = new List <SelectListItem>();

            storeRankList.Add(new SelectListItem()
            {
                Text = "全部等级", Value = "0"
            });
            foreach (StoreRankInfo storeRankInfo in AdminStoreRanks.GetStoreRankList())
            {
                storeRankList.Add(new SelectListItem()
                {
                    Text = storeRankInfo.Title, Value = storeRankInfo.StoreRid.ToString()
                });
            }

            List <SelectListItem> storeIndustryList = new List <SelectListItem>();

            storeIndustryList.Add(new SelectListItem()
            {
                Text = "全部行业", Value = "0"
            });
            foreach (StoreIndustryInfo storeIndustryInfo in AdminStoreIndustries.GetStoreIndustryList())
            {
                storeIndustryList.Add(new SelectListItem()
                {
                    Text = storeIndustryInfo.Title, Value = storeIndustryInfo.StoreIid.ToString()
                });
            }

            List <SelectListItem> storeStateList = new List <SelectListItem>();

            storeStateList.Add(new SelectListItem()
            {
                Text = "全部", Value = "-1"
            });
            storeStateList.Add(new SelectListItem()
            {
                Text = "营业", Value = ((int)StoreState.Open).ToString()
            });
            storeStateList.Add(new SelectListItem()
            {
                Text = "关闭", Value = ((int)StoreState.Close).ToString()
            });

            StoreListModel model = new StoreListModel()
            {
                PageModel         = pageModel,
                StoreList         = AdminStores.AdminGetStoreList(pageModel.PageSize, pageModel.PageNumber, condition),
                StoreName         = storeName,
                StoreRid          = storeRid,
                StoreRankList     = storeRankList,
                StoreIid          = storeIid,
                StoreIndustryList = storeIndustryList,
                State             = state,
                StoreStateList    = storeStateList
            };

            MallUtils.SetAdminRefererCookie(string.Format("{0}?pageNumber={1}&pageSize={2}&storeName={3}&storeRid={4}&storeIid={5}&state={6}",
                                                          Url.Action("storelist"),
                                                          pageModel.PageNumber, pageModel.PageSize,
                                                          storeName, storeRid, storeIid, state));
            return(View(model));
        }