PasswordSetType

This commit is contained in:
MaxKey 2021-07-31 22:12:17 +08:00
parent 8210d11fa3
commit 494b2b01d0
4 changed files with 16 additions and 12 deletions

View File

@ -214,9 +214,10 @@ public class UserInfoService extends JpaBaseService<UserInfo> {
}
public boolean changePassword(String oldPassword,
String newPassword,
String confirmPassword) {
public boolean changePassword( String oldPassword,
String newPassword,
String confirmPassword,
int passwordSetType) {
try {
WebContext.setAttribute(PasswordPolicyValidator.PASSWORD_POLICY_VALIDATE_RESULT, "");
UserInfo userInfo = WebContext.getUserInfo();
@ -225,6 +226,7 @@ public class UserInfoService extends JpaBaseService<UserInfo> {
changeUserInfo.setPassword(newPassword);
changeUserInfo.setId(userInfo.getId());
changeUserInfo.setDecipherable(userInfo.getDecipherable());
changeUserInfo.setPasswordSetType(passwordSetType);
if(newPassword.equals(confirmPassword)){
if(oldPassword==null ||

View File

@ -95,12 +95,12 @@
<update id="changePassword" parameterType="UserInfo" >
update mxk_userinfo set
<if test="password != null">
password = #{password},
decipherable = #{decipherable},
</if>
passwordsettype = 0,
passwordlastsettime = current_timestamp
<if test="password != null">
password = #{password},
decipherable = #{decipherable},
passwordsettype = #{passwordSetType},
</if>
passwordlastsettime = current_timestamp
where
id = #{id}
</update>

View File

@ -64,7 +64,7 @@ public class SafeController {
@RequestParam("newPassword") String newPassword,
@RequestParam("confirmPassword") String confirmPassword) {
if(userInfoService.changePassword(oldPassword,newPassword,confirmPassword)) {
if(userInfoService.changePassword(oldPassword,newPassword,confirmPassword,ConstantsPasswordSetType.PASSWORD_NORMAL)) {
return new Message(WebContext.getI18nValue(ConstantsOperateMessage.UPDATE_SUCCESS),MessageType.success);
}else {
return new Message(
@ -82,7 +82,7 @@ public class SafeController {
ModelAndView modelAndView=new ModelAndView("passwordExpired");
if(newPassword ==null ||newPassword.equals("")) {
}else if(userInfoService.changePassword(oldPassword,newPassword,confirmPassword)){
}else if(userInfoService.changePassword(oldPassword,newPassword,confirmPassword,ConstantsPasswordSetType.PASSWORD_NORMAL)){
WebContext.getSession().setAttribute(WebConstants.CURRENT_LOGIN_USER_PASSWORD_SET_TYPE,ConstantsPasswordSetType.PASSWORD_NORMAL);
return WebContext.redirect("/index");
}
@ -103,7 +103,7 @@ public class SafeController {
ModelAndView modelAndView=new ModelAndView("passwordInitial");
if(newPassword ==null ||newPassword.equals("")) {
}else if(userInfoService.changePassword(oldPassword,newPassword,confirmPassword)){
}else if(userInfoService.changePassword(oldPassword,newPassword,confirmPassword,ConstantsPasswordSetType.PASSWORD_NORMAL)){
WebContext.getSession().setAttribute(WebConstants.CURRENT_LOGIN_USER_PASSWORD_SET_TYPE,ConstantsPasswordSetType.PASSWORD_NORMAL);
return WebContext.redirect("/index");
}

View File

@ -27,6 +27,7 @@ import javax.validation.Valid;
import org.apache.mybatis.jpa.persistence.JpaPageResults;
import org.maxkey.constants.ConstantsOperateMessage;
import org.maxkey.constants.ConstantsPasswordSetType;
import org.maxkey.crypto.ReciprocalUtils;
import org.maxkey.entity.ExcelImport;
import org.maxkey.entity.UserInfo;
@ -264,6 +265,7 @@ public class UserInfoController {
@RequestMapping(value="/changePassword")
public Message changePassword( @ModelAttribute("userInfo")UserInfo userInfo) {
_logger.debug(userInfo.getId());
userInfo.setPasswordSetType(ConstantsPasswordSetType.PASSWORD_NORMAL);
if(userInfoService.changePassword(userInfo,true)) {
return new Message(WebContext.getI18nValue(ConstantsOperateMessage.UPDATE_SUCCESS),MessageType.success);