Exemplo n.º 1
0
 public QueryUsersResponse QueryUsers([FromBody] QueryUsersRequest request)
 {
     if (request == null)
     {
         return(ResponseBase.InvalidInput <QueryUsersResponse>("参数错误"));
     }
     try {
         request.PagingTrim();
         var datas = AppRoot.UserSet.QueryUsers(request, out int total).Select(a => a.Clone()).ToList();
         foreach (var data in datas)
         {
             // 不在网络上传输私钥原文,传输的是密文
             data.Password   = Convert.ToBase64String(Cryptography.QuickUtil.TextEncrypt(data.Password, User.Password));
             data.PrivateKey = Convert.ToBase64String(Cryptography.QuickUtil.TextEncrypt(data.PrivateKey, User.Password));
         }
         return(new QueryUsersResponse {
             StateCode = 200,
             ReasonPhrase = "Ok",
             Description = "成功",
             Data = datas,
             Total = total
         });
     }
     catch (Exception e) {
         return(ResponseBase.ServerError <QueryUsersResponse>(e.Message));
     }
 }
Exemplo n.º 2
0
        public List <UserData> QueryUsers(QueryUsersRequest query, out int total)
        {
            if (!IsReadied)
            {
                total = 0;
                return(new List <UserData>());
            }
            if (query == null)
            {
                total = 0;
                return(new List <UserData>());
            }
            IQueryable <UserData> data = _dicByLoginName.Values.AsQueryable();

            if (!string.IsNullOrEmpty(query.LoginName))
            {
                data = data.Where(a => a.LoginName.Contains(query.LoginName));
            }
            switch (query.UserStatus)
            {
            case UserStatus.All:
                break;

            case UserStatus.IsEnabled:
                data = data.Where(a => a.IsEnabled == true);
                break;

            case UserStatus.IsDisabled:
                data = data.Where(a => a.IsEnabled == false);
                break;

            default:
                break;
            }
            if (!string.IsNullOrEmpty(query.Email))
            {
                data = data.Where(a => !string.IsNullOrEmpty(a.Email) && a.Email.Contains(query.Email));
            }
            if (!string.IsNullOrEmpty(query.Mobile))
            {
                data = data.Where(a => !string.IsNullOrEmpty(a.Mobile) && a.Mobile.Contains(query.Mobile));
            }
            if (!string.IsNullOrEmpty(query.Role))
            {
                data = data.Where(a => !string.IsNullOrEmpty(a.Roles) && a.Roles.Contains(query.Role));
            }
            total = data.Count();
            var results = data.OrderBy(a => a.LoginName).Skip((query.PageIndex - 1) * query.PageSize).Take(query.PageSize).ToList();

            return(results);
        }
Exemplo n.º 3
0
 public void QueryUsersAsync(QueryUsersRequest request, Action <QueryUsersResponse, Exception> callback)
 {
     RpcRoot.JsonRpc.SignPostAsync(RpcRoot.OfficialServerHost, RpcRoot.OfficialServerPort, _controllerName, nameof(IUserController.QueryUsers), data: request, callback: (QueryUsersResponse response, Exception e) => {
         if (response != null && response.Data != null && response.Data.Count != 0)
         {
             foreach (var user in response.Data)
             {
                 user.Password   = Cryptography.QuickUtil.TextDecrypt(Convert.FromBase64String(user.Password), RpcRoot.RpcUser.Password);
                 user.PrivateKey = Cryptography.QuickUtil.TextDecrypt(Convert.FromBase64String(user.PrivateKey), RpcRoot.RpcUser.Password);
             }
         }
         callback?.Invoke(response, e);
     }, timeountMilliseconds: 5000);
 }
Exemplo n.º 4
0
        public IQueryable <UserView> QueryUsers(QueryUsersRequest queryUsersRequest)
        {
            var usersQuery = _identityContext.Users as IQueryable <User>;

            if (queryUsersRequest.UserIds != null && queryUsersRequest.UserIds.Any())
            {
                var userIds = queryUsersRequest.UserIds;
                usersQuery = usersQuery.Where(u => userIds.Contains(u.UserId));
            }

            return(from u in usersQuery
                   select new UserView
            {
                UserId = u.UserId,
                Department = u.Department,
                FirstName = u.FirstName,
                LastName = u.LastName
            });
        }
Exemplo n.º 5
0
        public async Task <IEnumerable <QueryUserResponse> > Handle(QueryUsersRequest request, CancellationToken cancellationToken)
        {
            var users = await userAccountQueries.ListUsersAsync(cancellationToken);

            return(users);
        }
 public IHttpActionResult ReadUserDetails(QueryUsersRequest queryUsersRequest)
 {
     return(ApiOk(_identityService.ReadUserDetails(queryUsersRequest)));
 }
Exemplo n.º 7
0
 public DataSourceResult <DetailedUserView> ReadUserDetails(QueryUsersRequest queryUsersRequest)
 {
     return(_identityQueryRepository.QueryUsersDetailed(queryUsersRequest).ToDataSourceResult(queryUsersRequest));
 }