update 企业端 修改密码增加旧密码
This commit is contained in:
+24
-5
@@ -120,15 +120,13 @@ public class PayContactsManagementServiceImpl extends ServiceImpl<PayContactsMan
|
|||||||
@Override
|
@Override
|
||||||
public void changePassword(CompanyLoginVO companyLoginVO) {
|
public void changePassword(CompanyLoginVO companyLoginVO) {
|
||||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
updatePassword(companyLoginVO, loginUser);
|
String oldPassword = companyLoginVO.getPassword();
|
||||||
}
|
|
||||||
|
|
||||||
private void updatePassword(CompanyLoginVO companyLoginVO, LoginUser loginUser) {
|
|
||||||
String newPassword = companyLoginVO.getNewPassword();
|
String newPassword = companyLoginVO.getNewPassword();
|
||||||
String verifyPassword = companyLoginVO.getVerifyPassword();
|
String verifyPassword = companyLoginVO.getVerifyPassword();
|
||||||
String RSAPublicKey = companyLoginVO.getRsaPublicKey();
|
String RSAPublicKey = companyLoginVO.getRsaPublicKey();
|
||||||
String RSAPrivateKey = String.valueOf(redisUtil.get(RSAPublicKey));
|
String RSAPrivateKey = String.valueOf(redisUtil.get(RSAPublicKey));
|
||||||
try {
|
try {
|
||||||
|
oldPassword = CommonUtils.decryptBtRsaPriKey(oldPassword, RSAPrivateKey);
|
||||||
newPassword = CommonUtils.decryptBtRsaPriKey(newPassword, RSAPrivateKey);
|
newPassword = CommonUtils.decryptBtRsaPriKey(newPassword, RSAPrivateKey);
|
||||||
verifyPassword = CommonUtils.decryptBtRsaPriKey(verifyPassword, RSAPrivateKey);
|
verifyPassword = CommonUtils.decryptBtRsaPriKey(verifyPassword, RSAPrivateKey);
|
||||||
}catch (Exception e){
|
}catch (Exception e){
|
||||||
@@ -139,6 +137,15 @@ public class PayContactsManagementServiceImpl extends ServiceImpl<PayContactsMan
|
|||||||
queryWrapper.eq(PayContactsManagement::getPhone, phone);
|
queryWrapper.eq(PayContactsManagement::getPhone, phone);
|
||||||
PayContactsManagement contactsManagement = this.getOne(queryWrapper);
|
PayContactsManagement contactsManagement = this.getOne(queryWrapper);
|
||||||
|
|
||||||
|
String passwordEncode = PasswordUtil.encrypt(PasswordUtil.decrypt(phone), oldPassword, contactsManagement.getSalt());
|
||||||
|
if (!contactsManagement.getPassword().equals(passwordEncode)) {
|
||||||
|
throw new JeroBootException("旧密码输入错误!");
|
||||||
|
}
|
||||||
|
|
||||||
|
updatePassword(newPassword,verifyPassword,phone);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void updatePassword(String newPassword,String verifyPassword,String phone) {
|
||||||
if (oConvertUtils.isEmpty(newPassword)) {
|
if (oConvertUtils.isEmpty(newPassword)) {
|
||||||
throw new JeroBootException("新密码不允许为空!");
|
throw new JeroBootException("新密码不允许为空!");
|
||||||
}
|
}
|
||||||
@@ -155,6 +162,18 @@ public class PayContactsManagementServiceImpl extends ServiceImpl<PayContactsMan
|
|||||||
String token = companyLoginVO.getPassword();
|
String token = companyLoginVO.getPassword();
|
||||||
String username = JwtUtil.getUsername(token);
|
String username = JwtUtil.getUsername(token);
|
||||||
LoginUser loginUser = sysBaseAPI.getUserByName(username);
|
LoginUser loginUser = sysBaseAPI.getUserByName(username);
|
||||||
updatePassword(companyLoginVO, loginUser);
|
String newPassword = companyLoginVO.getNewPassword();
|
||||||
|
String verifyPassword = companyLoginVO.getVerifyPassword();
|
||||||
|
String RSAPublicKey = companyLoginVO.getRsaPublicKey();
|
||||||
|
String RSAPrivateKey = String.valueOf(redisUtil.get(RSAPublicKey));
|
||||||
|
try {
|
||||||
|
newPassword = CommonUtils.decryptBtRsaPriKey(newPassword, RSAPrivateKey);
|
||||||
|
verifyPassword = CommonUtils.decryptBtRsaPriKey(verifyPassword, RSAPrivateKey);
|
||||||
|
}catch (Exception e){
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
String phone = loginUser.getPhone();
|
||||||
|
|
||||||
|
updatePassword(newPassword,verifyPassword,phone);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user