Ejemplo n.º 1
0
        public async Task <IEnumerable <UserOutput> > GetUsers(UserQueryInput input)
        {
            int    pageIndex = input.Page - 1;
            int    Per_Page  = input.Per_Page;
            string sortBy    = input.SortBy;

            IQueryable <User> query = dbContext.Users
                                      .Include(q => q.Organazition)
                                      .Include(q => q.Role)
                                      .AsQueryable <User>();

            query = query.Where(q => string.IsNullOrEmpty(input.Name) || q.Name.Contains(input.Name));
            query = query.OrderBy(sortBy);

            var totalCount = query.Count();
            var totalPages = (int)Math.Ceiling((double)totalCount / Per_Page);

            HttpContext.Response.Headers.Add("X-TotalCount", JsonConvert.SerializeObject(totalCount));
            HttpContext.Response.Headers.Add("X-TotalPage", JsonConvert.SerializeObject(totalPages));

            query = query.Skip(pageIndex * Per_Page).Take(Per_Page);

            List <User> users = await query.ToListAsync();

            List <UserOutput> list = mapper.Map <List <UserOutput> >(users);

            return(list);
        }
Ejemplo n.º 2
0
 public QueryRequestOut <UserItem> GetAll(UserQueryInput input)
 {
     return(_userRepository.GetAll()
            .Where(m => !m.IsDeleted)
            .WhereIf(!input.Keywords.IsNullOrWhiteSpace(), m => m.LoginName.Contains(input.Keywords))
            .ToOutPut <UserItem>(input));
 }
        public PagedResultOutput<UserDto> GetUsers(UserQueryInput input)
        {
            int totalCount;
            return new PagedResultOutput<UserDto>
            {
                TotalCount = userManager.Users.Count(),
                Items = userManager.Users.FilterBy(input, out totalCount).OrderByDescending(u => u.CreationTime).PageBy(input).ToList().MapTo<List<UserDto>>()

            };
        }
        public PagedResultOutput <UserDto> GetUsers(UserQueryInput input)
        {
            int totalCount;

            return(new PagedResultOutput <UserDto>
            {
                TotalCount = userManager.Users.Count(),
                Items = userManager.Users.FilterBy(input, out totalCount).OrderByDescending(u => u.CreationTime).PageBy(input).ToList().MapTo <List <UserDto> >()
            });
        }
Ejemplo n.º 5
0
        public JsonResult GetList(UserQueryInput input)
        {
            var list = UserService.GetAll(input);

            var json = new
            {
                total = list.total,
                rows = list.rows
            };
            return Json(json, JsonRequestBehavior.AllowGet);
        }
Ejemplo n.º 6
0
        public async Task <List <UserItemDto> > GetAllUserItem(UserQueryInput input)
        {
            var users = await _stateManager.GetOrAddAsync <IReliableDictionary <ItemId, UserItem> >(DictionaryName);

            List <UserItemDto> list = new List <UserItemDto>();

            using (var tx = _stateManager.CreateTransaction())
            {
                var enumerator       = (await users.CreateEnumerableAsync(tx)).GetAsyncEnumerator();
                CancellationToken ct = default(CancellationToken);
                while (await enumerator.MoveNextAsync(ct))
                {
                    var currentUser = enumerator.Current.Value;
                    if (input.CheckCriteria(currentUser))
                    {
                        list.Add(_mapper.Map <UserItemDto>(currentUser));
                    }
                }
            }
            return(list);
        }
 public JsonResult List(UserQueryInput input)
 {
     var list = _userService.GetAll(input);
     return ToJson(list);
 }
Ejemplo n.º 8
0
 public QueryRequestOut<UserDto> GetAll(UserQueryInput input)
 {
     return UserRepository.Get().ToOutPut<UserDto>(input);
 }
Ejemplo n.º 9
0
 //[AntiDuplicateRequest(GlobalLockKey = "User_GetPagedList", Interval = 5, Type = LockType.User)]
 public async Task <Paged <UserOutput> > GetPagedList([FromQuery] UserQueryInput queryInput) => await _userAppService.GetPaged(queryInput);
Ejemplo n.º 10
0
 public async Task <UserExcelOutput> Export([FromQuery] UserQueryInput queryInput) => await _userAppService.Export(queryInput);
Ejemplo n.º 11
0
        public JsonResult List(UserQueryInput input)
        {
            var list = _userService.GetAll(input);

            return(ToJson(list));
        }
Ejemplo n.º 12
0
        public void Test_CheckCreatedCriteria()
        {
            var inputs = new List <UserItem>();

            for (int i = 0; i < 12; i++)
            {
                var item = new UserItem(null, "test" + i, null, "TestUser" + i, null, null, null, null, null, null, null);
                item.SetCreated(new DateTimeOffset(2018, i + 1, 1, 1, 1, 1, TimeSpan.Zero));
                inputs.Add(item);
            }
            var result = new List <UserItem>();

            // StartCreated != null && EndCreated != null
            var query = new UserQueryInput
            {
                StartCreated = new DateTimeOffset(2018, 3, 1, 1, 1, 1, TimeSpan.Zero),
                EndCreated   = new DateTimeOffset(2018, 8, 1, 1, 1, 1, TimeSpan.Zero)
            };

            result = new List <UserItem>();
            foreach (var item in inputs)
            {
                if (query.CheckCriteria(item))
                {
                    result.Add(item);
                }
            }
            Assert.AreEqual(6, result.Count);

            // StartCreated = null
            query = new UserQueryInput
            {
                StartCreated = null,
                EndCreated   = new DateTimeOffset(2018, 8, 1, 1, 1, 1, TimeSpan.Zero)
            };
            result = new List <UserItem>();
            foreach (var item in inputs)
            {
                if (query.CheckCriteria(item))
                {
                    result.Add(item);
                }
            }
            Assert.AreEqual(8, result.Count);

            // EndCreated = null

            result = new List <UserItem>();
            query  = new UserQueryInput
            {
                StartCreated = new DateTimeOffset(2018, 8, 1, 1, 1, 1, TimeSpan.Zero),
                EndCreated   = null
            };
            foreach (var item in inputs)
            {
                if (query.CheckCriteria(item))
                {
                    result.Add(item);
                }
            }
            Assert.AreEqual(5, result.Count);

            // StartCreated = null and EndCreated = null
            query = new UserQueryInput
            {
                StartCreated = null,
                EndCreated   = null
            };
            result = new List <UserItem>();
            foreach (var item in inputs)
            {
                if (query.CheckCriteria(item))
                {
                    result.Add(item);
                }
            }
            Assert.AreEqual(12, result.Count);
        }
Ejemplo n.º 13
0
 public QueryRequestOut<UserItem> GetAll(UserQueryInput input)
 {
     return _userRepository.GetAll()
         .Where(m=>!m.IsDeleted)
         .WhereIf(!input.Keywords.IsNullOrWhiteSpace(), m => m.LoginName.Contains(input.Keywords))
         .ToOutPut<UserItem>(input);
 }