Former-commit-id: 5d3b5e900c8fcd0ade6ff3e9d69496c04738b912
TangShanKaiPing
wanggang 6 years ago
parent 40504b9aa5
commit 737a34c132

@ -58,10 +58,9 @@ namespace UserCenter.Controllers
try try
{ {
var model = this._nodeRepo.ReadOnlyTable() var model = this._nodeRepo.ReadOnlyTable()
.Include(o => o.Devices) .Include(o => o.Scenes)
.ThenInclude(o => o.Product) .Include(o => o.Devices).ThenInclude(o => o.Product)
.Include(o => o.Devices) .Include(o => o.Devices).ThenInclude(o => o.Data)
.ThenInclude(o => o.Data)
.Where(o => o.Number == number) .Where(o => o.Number == number)
.FirstOrDefault(); .FirstOrDefault();
return Ok(model); return Ok(model);

@ -1,6 +1,8 @@
using Application.Domain.Entities; using Application.Domain.Entities;
using Application.Models;
using Infrastructure.Data; using Infrastructure.Data;
using Infrastructure.Extensions; using Infrastructure.Extensions;
using Infrastructure.Security;
using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
@ -15,10 +17,13 @@ namespace UserCenter.Controllers
public class UserController : ControllerBase public class UserController : ControllerBase
{ {
private readonly IRepository<User> _userRepo; private readonly IRepository<User> _userRepo;
private readonly IEncryptionService _encryptionService;
public UserController(IRepository<User> userRepo) public UserController(IRepository<User> userRepo,
IEncryptionService encryptionService)
{ {
this._userRepo = userRepo; this._userRepo = userRepo;
this._encryptionService = encryptionService;
} }
[HttpGet] [HttpGet]
@ -54,8 +59,7 @@ namespace UserCenter.Controllers
.FirstOrDefault(); .FirstOrDefault();
if (model == null) if (model == null)
{ {
ModelState.AddModelError("", "用户不存在"); return BadRequest(ModelState.AddModelError("用户不存在"));
return BadRequest(ModelState);
} }
return Ok(model); return Ok(model);
} }
@ -65,5 +69,36 @@ namespace UserCenter.Controllers
return Problem(ex.Message); return Problem(ex.Message);
} }
} }
[HttpPost]
[Authorize]
public ActionResult ChangePassword([FromBody]ChangePasswordModel model)
{
try
{
var userName = User.Identity.Name;
var user = this._userRepo.ReadOnlyTable().FirstOrDefault(o => o.UserName == userName);
if (user == null)
{
return BadRequest(ModelState.AddModelError("用户不存在"));
}
if (this._encryptionService.CreatePasswordHash(model.OldPassword, user.SecurityStamp) != user.PasswordHash)
{
return BadRequest(ModelState.AddModelError(o => model.OldPassword, "当前密码输入错误", 1));
}
if (model.OldPassword != model.ConfirmNewPassword)
{
return BadRequest(ModelState.AddModelError(o => model.OldPassword, "新密码确认输入错误", 2));
}
user.PasswordHash = this._encryptionService.CreatePasswordHash(model.NewPassword, user.SecurityStamp);
_userRepo.SaveChanges();
return Ok("密码修改成功");
}
catch (Exception ex)
{
ex.PrintStack();
return Problem(ex.Message);
}
}
} }
} }

@ -15,7 +15,7 @@ connection.on('Connected', function (id) {
console.log('signalR 连接Id:' + connectionId); console.log('signalR 连接Id:' + connectionId);
}); });
connection.on("ServerToClient", function (method, json, to, from) { connection.on("ServerToClient", function (method, json, to, from) {
console.log(method); console.log(method+' from:'+from+' to:'+to);
console.log(json); console.log(json);
var model = JSON.parse(json); var model = JSON.parse(json);
if (method === 'NodeEntityUpdated') { if (method === 'NodeEntityUpdated') {

Loading…
Cancel
Save