|
@@ -12,6 +12,7 @@ import com.gis.common.base.mapper.IBaseMapper;
|
|
|
import com.gis.common.base.service.LogService;
|
|
|
import com.gis.common.base.service.impl.IBaseServiceImpl;
|
|
|
import com.gis.common.constant.MsgCode;
|
|
|
+import com.gis.common.util.Base64Converter;
|
|
|
import com.gis.common.util.JwtUtil;
|
|
|
import com.gis.common.util.PasswordUtils;
|
|
|
import com.gis.common.util.Result;
|
|
@@ -157,18 +158,27 @@ public class SysUserServiceImpl extends IBaseServiceImpl<SysUserEntity, Long> im
|
|
|
|
|
|
@Override
|
|
|
public Result updatePwd(PasswordDto param) {
|
|
|
+ // 密码加密了,需要解密
|
|
|
+ String newPassword = Base64Converter.decodePassword(param.getNewPassword());
|
|
|
+ String oldPassword = Base64Converter.decodePassword(param.getOldPassword());
|
|
|
+ param.setNewPassword(newPassword);
|
|
|
+ param.setOldPassword(oldPassword);
|
|
|
SysUserEntity user = this.findByUserName(JwtUtil.getUsername(getToken()));
|
|
|
- updatePwd(param, user);
|
|
|
+ updatePwd(param, user, true);
|
|
|
|
|
|
return Result.success();
|
|
|
}
|
|
|
|
|
|
- private void updatePwd(PasswordDto param, SysUserEntity user){
|
|
|
- // 验证原密码
|
|
|
- Boolean isBoolean = PasswordUtils.decrypt(user.getPassword(), param.getOldPassword(), PasswordUtils.getStaticSalt());
|
|
|
- if (!isBoolean) {
|
|
|
- log.error("原始密码错误");
|
|
|
- throw new BaseRuntimeException("原始密码错误");
|
|
|
+ private void updatePwd(PasswordDto param, SysUserEntity user, boolean flag){
|
|
|
+
|
|
|
+ if (flag){
|
|
|
+ // 验证原密码
|
|
|
+ Boolean isBoolean = PasswordUtils.decrypt(user.getPassword(), param.getOldPassword(), PasswordUtils.getStaticSalt());
|
|
|
+ if (!isBoolean) {
|
|
|
+ log.error("原始密码错误");
|
|
|
+ throw new BaseRuntimeException("原始密码错误");
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
|
|
|
user.setPassword(PasswordUtils.encrypt(user.getUserName(), param.getNewPassword(), PasswordUtils.getStaticSalt()));
|
|
@@ -270,11 +280,11 @@ public class SysUserServiceImpl extends IBaseServiceImpl<SysUserEntity, Long> im
|
|
|
String userName = param.getUserName();
|
|
|
SysUserEntity entity = entityMapper.findByUserName(param.getUserName());
|
|
|
if (entity == null) {
|
|
|
- return Result.success();
|
|
|
+ return Result.success(false);
|
|
|
}
|
|
|
|
|
|
if (!param.getRealName().equals(entity.getRealName())) {
|
|
|
- return Result.success();
|
|
|
+ return Result.success(false);
|
|
|
}
|
|
|
|
|
|
String redisKey = RESET_PASSWORD_KEY + userName;
|
|
@@ -282,7 +292,7 @@ public class SysUserServiceImpl extends IBaseServiceImpl<SysUserEntity, Long> im
|
|
|
|
|
|
// code 有效期5分钟
|
|
|
redisUtil.set(redisKey, code , 300);
|
|
|
- return Result.success(code);
|
|
|
+ return Result.success((Object) code);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -299,7 +309,7 @@ public class SysUserServiceImpl extends IBaseServiceImpl<SysUserEntity, Long> im
|
|
|
return Result.failure(MsgCode.e3005, "验证码失效");
|
|
|
}
|
|
|
|
|
|
- updatePwd(param, entity);
|
|
|
+ updatePwd(param, entity, false);
|
|
|
|
|
|
return Result.success();
|
|
|
}
|