add 企业管理员登录
This commit is contained in:
+15
@@ -79,6 +79,21 @@ public class JwtUtil {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成签名,5min后过期
|
||||
*
|
||||
* @param username 用户名
|
||||
* @param secret 用户的密码
|
||||
* @return 加密的token
|
||||
*/
|
||||
public static String signByCompanyManagement(String username,String phone, String secret) {
|
||||
Date date = new Date(System.currentTimeMillis() + EXPIRE_TIME);
|
||||
Algorithm algorithm = Algorithm.HMAC256(secret);
|
||||
// 附带username信息
|
||||
return JWT.create().withClaim("username", username).withClaim("phone", phone).withExpiresAt(date).sign(algorithm);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据request中的token获取用户账号
|
||||
*
|
||||
|
||||
+12
-1
@@ -12,8 +12,10 @@ import com.jero.common.system.util.JwtUtil;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.common.util.*;
|
||||
import com.jero.company.entity.PayCompanyManagement;
|
||||
import com.jero.company.entity.PayContactsManagement;
|
||||
import com.jero.company.entity.PayManagerManagement;
|
||||
import com.jero.company.service.IPayCompanyManagementService;
|
||||
import com.jero.company.service.IPayContactsManagementService;
|
||||
import com.jero.company.service.IPayManagerManagementService;
|
||||
import com.jero.company.vo.CompanyManagerLoginVO;
|
||||
import com.jero.modules.base.service.BaseCommonService;
|
||||
@@ -58,6 +60,8 @@ public class CompanyManagerLoginController {
|
||||
private BaseCommonService baseCommonService;
|
||||
@Value("${defaultPassword}")
|
||||
private String defaultPassword;
|
||||
@Autowired
|
||||
private IPayContactsManagementService payContactsManagementService;
|
||||
/**
|
||||
* 密码登录错误的次数前缀
|
||||
*/
|
||||
@@ -312,8 +316,15 @@ public class CompanyManagerLoginController {
|
||||
}else {
|
||||
managerManagement.setCompanyRole(one.getRoleCode());
|
||||
}
|
||||
PayContactsManagement management = payContactsManagementService.getManagementByCompanyId(one.getId());
|
||||
// 生成token
|
||||
String token = JwtUtil.sign(LoginUserTypeEnum.company_management_ + phone, syspassword);
|
||||
String token;
|
||||
if (management == null) {
|
||||
token = JwtUtil.sign(LoginUserTypeEnum.company_management_ + phone, syspassword);
|
||||
}else {
|
||||
token = JwtUtil.signByCompanyManagement(LoginUserTypeEnum.company_management_ + phone,management.getPhone(), syspassword);
|
||||
}
|
||||
|
||||
// 设置token缓存有效时间
|
||||
redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + LoginUserTypeEnum.company_management_ + phone, token);
|
||||
redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + LoginUserTypeEnum.company_management_ + phone, JwtUtil.EXPIRE_TIME * 2 / 1000);
|
||||
|
||||
+2
@@ -79,4 +79,6 @@ public interface IPayContactsManagementService extends IService<PayContactsManag
|
||||
void changePassword(CompanyLoginVO companyLoginVO);
|
||||
|
||||
void changePasswordWithToken(CompanyLoginVO companyLoginVO);
|
||||
|
||||
PayContactsManagement getManagementByCompanyId(String companyId);
|
||||
}
|
||||
|
||||
+10
@@ -2,6 +2,7 @@ package com.jero.company.service.impl;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
@@ -426,4 +427,13 @@ public class PayContactsManagementServiceImpl extends ServiceImpl<PayContactsMan
|
||||
|
||||
updatePassword(newPassword,verifyPassword,phone);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PayContactsManagement getManagementByCompanyId(String companyId) {
|
||||
LambdaQueryWrapper<PayContactsManagement> query = new LambdaQueryWrapper<>();
|
||||
query.eq(PayContactsManagement::getCompanyId,companyId);
|
||||
query.eq(PayContactsManagement::getRoleCode,PayContactsManagementCommon.ROLE_CODE2);
|
||||
PayContactsManagement payContactsManagement = baseMapper.selectOne(query);
|
||||
return payContactsManagement;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user