コード例 #1
0
ファイル: UsersRepo.cs プロジェクト: ash2005/z
        public static UserInfo LogIn(string username, string password, bool updateState)
        {
            var _query = Query.And(
                Query.Or(
                    Query <User> .EQ(x => x.Email, username.ToLower()),
                    Query <User> .EQ(x => x.UserName, username.ToLower())),
                Query <User> .EQ(x => x.Pwd, password));
            var _u = MainDb.Instant.FindOne <User>(_query);

            if (_u != null)
            {
                var _info = new UserInfo
                {
                    Pwd      = _u.Pwd,
                    Avatar   = _u.Avatar,
                    UserName = _u.UserName,
                    Id       = _u.Id.ToString(),
                    Status   = _u.Status
                };

                var _role = RoleRepo.Info(_u.RoleId);

                if (!ObjectId.Empty.Equals(_u.RoleId) && _role != null)
                {
                    _info.IsAdmin = _role.IsAdmin;
                    _info.Access  = _role.Access;
                }
                return(_info);
            }

            return(null);
        }