public ApiResult <LoginUserModel> Login([FromBody] object values) {//string userCode, string userPassword) { var jObject = Newtonsoft.Json.Linq.JObject.Parse(values.ToString()); string userCode = jObject["userCode"].ToString(); //string userCode = this.GetPropertyValue(values, "userCode") + string.Empty; string userPassword = jObject["userPassword"].ToString(); ApiResult <LoginUserModel> result = new ApiResult <LoginUserModel>(); valiableUserResult <User> valiableUser = userManager.valiableUser(userCode, userPassword); if (!valiableUser.success) { result.Code = ApiResultStatu.Error; result.Msg = valiableUser.Msg; result.Success = false; result.Data = null; } else { result.Code = ApiResultStatu.OK; result.Msg = valiableUser.Msg; result.Success = true; LoginUserModel loginUser = new LoginUserModel(); loginUser.userCode = valiableUser.Data.userCode; loginUser.userId = valiableUser.Data.id; loginUser.userName = valiableUser.Data.userName; loginUser.userLoginTime = System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); //给用户派发令牌 30分钟过期 loginUser.userToken = "FPLDQBearer " + userManager.getuserToken(valiableUser.Data, new TimeSpan(0, 30, 0)); result.Data = loginUser; } return(result); }
/// <summary> /// 通过用户账号和密码验证用户是否合法 /// </summary> /// <param name="userCode"></param> /// <param name="userPassword"></param> /// <returns></returns> public valiableUserResult <User> valiableUser(string userCode, string userPassword) { valiableUserResult <User> result = new valiableUserResult <User>(); if (string.IsNullOrEmpty(userCode)) { result.success = false; result.Msg = "用户账号为空"; result.Data = null; return(result); } if (string.IsNullOrEmpty(userPassword)) { result.success = false; result.Msg = "用户密码为空"; result.Data = null; return(result); } User user = this.getUserByCode(userCode); if (user == null || string.IsNullOrEmpty(user.userCode)) { result.success = false; result.Msg = "用户不存在"; result.Data = null; return(result); } if (string.IsNullOrEmpty(user.password)) { result.success = false; result.Msg = "密码为空"; result.Data = null; return(result); } string md5str = Common.SecurityHelper.MD5(userPassword, Encoding.UTF8); string password = Common.SecurityHelper.Base64Encode(md5str); if (password != user.password) { result.success = false; result.Msg = "用户账号密码不正确"; result.Data = user; return(result); } result.success = true; result.Msg = "成功"; result.Data = user; return(result); }