コード例 #1
0
ファイル: LoginService.cs プロジェクト: skey111/corecms
        /// <summary>
        /// 登录
        /// </summary>
        /// <param name="username"></param>
        /// <param name="password"></param>
        /// <param name="code"></param>
        /// <returns></returns>
        public LoginResult Login(string username, string password, string code)
        {
            LoginResult result = new LoginResult();

            string cmd = string.Format(" where UserName = '******' and UserPwd='{1}'", username, CryptographyHelper.MD5(password));

            var list = _accountInterface.GetList(cmd).ToList();


            if (list != null && list.Count == 1)
            {
                var user = list[0];

                result.UserName = user.UserName;
                result.UserId   = user.Id;

                BaseUserData userData = new BaseUserData();

                userData.UserId       = user.Id;
                userData.DepartmentId = user.DepartmentId;
                userData.CompanyId    = user.CompanyId;
                userData.UserName     = user.UserName;
                userData.UserType     = user.UserType;

                result.UserData = userData;
                result.Status   = true;
            }

            return(result);
        }
コード例 #2
0
ファイル: LoginService.cs プロジェクト: skey111/corecms
        /// <summary>
        /// 注册用户
        /// </summary>
        /// <param name="username"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        public LoginResult Reg(string username, string password)
        {
            var rcount = _accountInterface.RecordCount();

            LoginResult result = new LoginResult();
            string      cmd    = string.Format(" where UserName = '******'", username);

            var list = _accountInterface.GetList(cmd).ToList();

            if (list.Count == 0)
            {
                AccountInfo account = new AccountInfo();
                account.UserName      = username;
                account.UserPwd       = CryptographyHelper.MD5(password);
                account.LastLoginDate = DateTime.Now;
                account.LastMoneyDate = DateTime.Now;
                account.RegDate       = DateTime.Now;
                account.NickName      = username;

                account.RegIp       = ClientHelper.ClientIp;
                account.LastLoginIp = ClientHelper.ClientIp;

                if (rcount == 0)
                {
                    //第一个用户是超级管理员
                    account.UserType = 100;
                }

                var uid = _accountInterface.Insert(account);
                if (uid.HasValue)
                {
                    account.Id = uid.Value;
                }

                var user = account;

                result.UserName = user.UserName;
                result.UserId   = user.Id;

                BaseUserData userData = new BaseUserData();
                userData.UserId       = user.Id;
                userData.DepartmentId = user.DepartmentId;
                userData.CompanyId    = user.CompanyId;
                userData.UserName     = user.UserName;

                result.UserData = userData;
                result.Status   = true;
            }
            else
            {
                result.Msg = "己经存在该用户名,请重新更换用户名。";
            }


            return(result);
        }
コード例 #3
0
 public async Task <IActionResult> PostCreateUser(BaseUserData value)
 {
     if (await UserModule.CreateUser(value))
     {
         return(Ok("User registered."));
     }
     else
     {
         return(Ok("User already registered."));
     }
 }
コード例 #4
0
 public async Task <IActionResult> UpdateUser(BaseUserData value)
 {
     if (await UserModule.UpdateUser(value))
     {
         return(Ok("User updated."));
     }
     else
     {
         return(Ok("User does not exist"));
     }
 }
コード例 #5
0
ファイル: UserDataManager.cs プロジェクト: LiuFeng1011/Diablo
    //======================================================

    public void LoadData(BaseUserData userdata, UserDataType type)
    {
        string dataname = type + "";
        string filepath = GameConst.GetPersistentDataPath(dataname);

        byte[] gzipdata = GameCommon.ReadByteToFile(filepath);

        if (gzipdata == null)
        {
        }
        else
        {
            byte[]     data       = GameCommon.UnGZip(gzipdata);
            DataStream datastream = new DataStream(data, true);

            userdata.Deserialize(datastream);
        }
    }
コード例 #6
0
ファイル: BaseViewModel.cs プロジェクト: skey111/corecms
        public void SetBase(HttpContext httpContext)
        {
            _httpContext = httpContext;

            if (_httpContext != null)
            {
                var claims = _httpContext.User.Claims;
                var uid    = claims.SingleOrDefault(p => p.Type == ClaimTypes.UserData);
                if (uid != null)
                {
                    if (!string.IsNullOrEmpty(uid.Value))
                    {
                        BaseUserData userData = SerializeHelper.DeserializeJSON <BaseUserData>(uid.Value);

                        UserId       = userData.UserId;
                        DepartmentId = userData.DepartmentId;
                        CompanyId    = userData.CompanyId;
                        Url          = _httpContext.Request.Path.ToUriComponent();
                    }
                }
            }
        }
コード例 #7
0
        public ActionResult Callback(string id)
        {
            string absoluteUri = string.Format("{0}://{1}", Request.Url.Scheme, Request.Url.Authority);
            var    service     = BaseOauth2Service.GetService(id, absoluteUri);

            if (service != null)
            {
                BaseUserData userData    = null;
                var          redirectUrl = service.ValidateLogin(Request);

                switch (id)
                {
                case "Facebook":
                    userData = service.GetUserInfo <FacebookUserData>();
                    break;

                case "Google":
                    userData = service.GetUserInfo <GoogleUserData>();
                    break;

                case "Twitter":
                    userData = service.GetUserInfo <TwitterUserData>();
                    break;
                }

                if (redirectUrl != null)
                {
                    return(Redirect(redirectUrl));
                }

                return(RedirectToAction("LoginSuccess"));
            }
            else
            {
                return(RedirectToAction("LoginFail"));
            }
        }