fix: 修正
This commit is contained in:
parent
13e1180230
commit
a994b7d56b
@ -9,13 +9,19 @@ import com.flyfish.framework.domain.po.User;
|
|||||||
import com.flyfish.framework.service.UserService;
|
import com.flyfish.framework.service.UserService;
|
||||||
import com.flyfish.framework.utils.Assert;
|
import com.flyfish.framework.utils.Assert;
|
||||||
import org.springframework.security.core.context.ReactiveSecurityContextHolder;
|
import org.springframework.security.core.context.ReactiveSecurityContextHolder;
|
||||||
|
import org.springframework.security.crypto.password.PasswordEncoder;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import reactor.core.publisher.Mono;
|
import reactor.core.publisher.Mono;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/users")
|
@RequestMapping("/users")
|
||||||
public class UserController extends BaseController<User, UserQo> {
|
public class UserController extends BaseController<User, UserQo> {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private PasswordEncoder passwordEncoder;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改密码逻辑
|
* 修改密码逻辑
|
||||||
*
|
*
|
||||||
@ -26,13 +32,13 @@ public class UserController extends BaseController<User, UserQo> {
|
|||||||
@PutMapping("/passwords")
|
@PutMapping("/passwords")
|
||||||
public Result<Void> changePassword(@RequestBody UserPasswordDto passwordDto, @CurrentUser User user) {
|
public Result<Void> changePassword(@RequestBody UserPasswordDto passwordDto, @CurrentUser User user) {
|
||||||
// 检查原密码
|
// 检查原密码
|
||||||
Assert.isTrue(user.getPassword().equals(passwordDto.getOldPassword()), "原密码不正确!");
|
Assert.isTrue(passwordEncoder.matches(passwordDto.getOldPassword(), user.getPassword()), "原密码不正确!");
|
||||||
Assert.isTrue(!user.getPassword().equals(passwordDto.getPassword()), "新密码和旧密码一致,输入个新的吧!");
|
Assert.isTrue(!passwordEncoder.matches(passwordDto.getPassword(), user.getPassword()), "新密码和旧密码一致,输入个新的吧!");
|
||||||
userContext.setUser(user);
|
userContext.setUser(user);
|
||||||
// 更新密码
|
// 更新密码
|
||||||
User updating = new User();
|
User updating = new User();
|
||||||
updating.setId(user.getId());
|
updating.setId(user.getId());
|
||||||
updating.setPassword(passwordDto.getPassword());
|
updating.setPassword(passwordEncoder.encode(passwordDto.getPassword()));
|
||||||
service.updateSelectiveById(updating);
|
service.updateSelectiveById(updating);
|
||||||
return Result.ok();
|
return Result.ok();
|
||||||
}
|
}
|
||||||
|
@ -3,6 +3,8 @@ package com.flyfish.framework.domain;
|
|||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotBlank;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改密码dto
|
* 修改密码dto
|
||||||
* @author wangyu
|
* @author wangyu
|
||||||
@ -11,7 +13,9 @@ import lombok.Setter;
|
|||||||
@Setter
|
@Setter
|
||||||
public class UserPasswordDto {
|
public class UserPasswordDto {
|
||||||
|
|
||||||
|
@NotBlank(message = "旧密码不可为空!")
|
||||||
private String oldPassword;
|
private String oldPassword;
|
||||||
|
|
||||||
|
@NotBlank(message = "新密码不可为空!")
|
||||||
private String password;
|
private String password;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user