public async Task <IActionResult> Login(UserViewModel model) { if (model.UserName.NullOrEmpty()) { return(Ok("用户名不能为空".Error())); } if (model.Password.NullOrEmpty()) { return(Ok("密码不能为空".Error())); } var user = await _dbContext.User.FirstOrDefaultAsync(x => x.Name == model.UserName); if (user == null) { return(Ok("用户名不正确".Error())); } if (user.HashPassword != model.Password.MD5Encrypt()) { return(Ok("密码不正确".Error())); } var claims = new List <Claim> { new Claim(ClaimTypes.Name, user.Name.ToString()), new Claim(ClaimTypes.NameIdentifier, user.Id.ToString()), new Claim("display_name", user.DisplayName.ToString()), }; await HttpContext.SignInAsync(new ClaimsPrincipal(new ClaimsIdentity(claims, "CoreJobCookie"))); return(Ok(EmptyJson.Success())); }
public async Task <IActionResult> AddUser(UserViewModel model) { var dbUser = await _dbContext.User.FirstOrDefaultAsync(x => x.Name == model.UserName); if (dbUser != null) { return(Ok("用户已存在".Error())); } var newUser = new DashboardUser() { DisplayName = model.UserDisplayName, Disabled = false, HashPassword = model.Password.MD5Encrypt(), InTime = DateTime.Now, UpdateTime = DateTime.Now, Name = model.UserName, }; await _dbContext.User.AddAsync(newUser); await _dbContext.SaveChangesAsync(); return(Ok(EmptyJson.Success())); }
public void WithEmptyJsonAsParam_ReturnsStringifiedJson() { var emptyJson = new EmptyJson(); var objectInfoLines = emptyJson.Stringify().ToLines(); Assert.AreEqual("$type : Swan.Test.Mocks.EmptyJson", objectInfoLines[0]); }
protected override bool OnObjectPropertyDetected(string propertyName, JsonReader reader) { if (string.Compare(propertyName, "data1", StringComparison.OrdinalIgnoreCase) == 0) { var x = new EmptyJson { Accumulate = true }; x.ReadJson(reader); Data = "{" + x.JsonString + "}"; return(true); } return(false); }
protected override bool OnObjectItemDetected(JsonReader reader) { var x = Activator.CreateInstance <TDataItem>(); var jsonModel = x as JsonModel; if (jsonModel != null) { jsonModel.ReadJson(reader); } else { var emptyReader = new EmptyJson(); emptyReader.Accumulate = true; emptyReader.ReadJson(reader); x = (TDataItem)JsonConvert.DeserializeObject(emptyReader.JsonString, typeof(TDataItem)); } items.Add(x); return(true); }
public async Task <IActionResult> ChangePassword(UserViewModel model) { var user = await _dbContext.User.FindAsync(GetCurrentUserId()); if (user == null) { return(Ok("用户不存在".Error())); } if (model.Password.NullOrEmpty()) { return(Ok("密码不能为空".Error())); } if (user.HashPassword != model.Password.MD5Encrypt()) { return(Ok("密码不正确".Error())); } var newHashPassword = model.NewPassword.MD5Encrypt(); if (user.HashPassword == newHashPassword) { return(Ok("新密码不能与旧密码一致".Error())); } user.HashPassword = newHashPassword; _dbContext.Entry(user).Property(nameof(DashboardUser.HashPassword)).IsModified = true; await _dbContext.SaveChangesAsync(); // await _dbContext.Database.ExecuteSqlInterpolatedAsync($@"Update {nameof(DashboardUser)} //set {nameof(DashboardUser.HashPassword)}={newHashPassword} Where Id={user.Id}"); return(Ok(EmptyJson.Success())); }