Esempio n. 1
0
        public ActionResult Search(string search, int?page, int pageSize)
        {
            RolesSearchViewModel model = new RolesSearchViewModel();

            model.TotalCount = _iRolesService.GetAll(search).Count();
            var pager = new Pager(model.TotalCount, page, pageSize);

            model.LstRoles = _iRolesService.GetAll(search)
                             .Skip((pager.CurrentPage - 1) * pager.PageSize).Take(pager.PageSize).ToList();
            model.Pager = pager;
            return(PartialView("_RolesList", model));
        }
Esempio n. 2
0
        public async Task <IActionResult> Index(RolesSearchViewModel searchModel)
        {
            var model = await _roleRepository.LoadAsyncCount(
                this.CurrentPage,
                this.PageSize,
                searchModel);

            this.TotalNumber = model.Item1;

            ViewBag.SearchModel = searchModel;

            return(View(model.Item2));


//            var model = await _roleRepository.TableNoTracking.Where(a => a.NormalizedName != ImportantNames.AdminNormalTitle()).ProjectTo<RoleManageDTO>().ToListAsync();
        }
Esempio n. 3
0
        //public async Task<SweetAlertExtenstion> CheckAndSync(params Assembly[] assemblies)
        //{
        //    var controllerInfo = GetDisplayAndNameController(assemblies);

        //    var roles = TableNoTracking.Select(a => a.Name).ToList();

        //    var roleList = new List<Roles>();

        //    foreach (var item in controllerInfo)
        //    {
        //        roleList.Add(new Roles()
        //        {
        //            Name = item.Name,
        //            ConcurrencyStamp = Guid.NewGuid().ToString(),
        //            NormalizedName = item.Name.ToUpper().Trim(),
        //            RoleTitle = item.GetCustomAttribute<ControllerRoleAttribute>()?.GetName()
        //        });
        //    }

        //    roleList = roleList.Where(a => !roles.Contains(a.Name)).ToList();

        //    await AddRangeAsync(roleList);

        //    return SweetAlertExtenstion.Ok("تمامی اطلاعات ثبت شد");
        //}


        ///// <summary>
        ///// گرفتن تایپ کنترلر هایی مورد نظر
        ///// </summary>
        ///// <param name="assemblies"></param>
        ///// <returns></returns>
        //public List<Type> GetDisplayAndNameController(params Assembly[] assemblies)
        //      => typeof(ControllerRoleAttribute).GetTypesHasAttribute(assemblies).ToList();



        public async Task <Tuple <int, List <RoleManageDTO> > > LoadAsyncCount(
            int skip = -1,
            int take = -1,
            RolesSearchViewModel model = null)
        {
            var query = Entities.Where(a => a.NormalizedName != ImportantNames.AdminNormalTitle()).ProjectTo <RoleManageDTO>();



            if (!string.IsNullOrEmpty(model.RoleTitle))
            {
                query = query.Where(x => x.RoleTitle.Contains(model.RoleTitle));
            }


            if (!string.IsNullOrEmpty(model.Name))
            {
                query = query.Where(x => x.Name.Contains(model.Name));
            }



            int Count = query.Count();

            query = query.OrderByDescending(x => x.Id);


            if (skip != -1)
            {
                query = query.Skip((skip - 1) * take);
            }

            if (take != -1)
            {
                query = query.Take(take);
            }



            return(new Tuple <int, List <RoleManageDTO> >(Count, await query.ToListAsync()));
        }
Esempio n. 4
0
        public ActionResult Index(int?page)
        {
            if (TempData["Message"] != null)
            {
                ViewBag.Message = TempData["Message"];
            }
            RolesSearchViewModel model = new RolesSearchViewModel();

            try
            {
                model.TotalCount = _iRolesService.GetAll().Count();
                var pager = new Pager(model.TotalCount, page);
                model.LstRoles = _iRolesService.GetAll()
                                 .Skip((pager.CurrentPage - 1) * pager.PageSize).Take(pager.PageSize).ToList();
                model.Pager = pager;
                return(View(model));
            }
            catch (Exception ex)
            {
                ViewBag.Message = helper.GenerateMessage(" " + ex.Message, MessageType.Error);
            }
            return(View(model));
        }