mirror of
https://gitee.com/lab1024/smart-admin.git
synced 2025-10-03 02:36:39 +08:00
adding toekn logic
This commit is contained in:
parent
a9ffb1c75b
commit
5769f3413d
@ -70,7 +70,7 @@ public class SmartAuthenticationInterceptor extends HandlerInterceptorAdapter {
|
||||
if (isNoNeedLogin) {
|
||||
return true;
|
||||
}
|
||||
Boolean noNeedLogin = request.getServletPath().startsWith("/royalcanin");
|
||||
Boolean noNeedLogin = request.getServletPath().startsWith("/royalcanin")&&request.getParameter("type").equals("get");
|
||||
if (noNeedLogin) {
|
||||
return true;
|
||||
}
|
||||
@ -93,7 +93,7 @@ public class SmartAuthenticationInterceptor extends HandlerInterceptorAdapter {
|
||||
|
||||
//根据token获取登录用户
|
||||
RequestTokenBO requestToken = loginTokenService.getEmployeeTokenInfo(xAccessToken);
|
||||
if (null == requestToken) {
|
||||
if (null == requestToken &&!request.getServletPath().startsWith("/royalcanin")) {
|
||||
this.outputResult(response, LoginResponseCodeConst.LOGIN_ERROR);
|
||||
return false;
|
||||
}
|
||||
@ -119,11 +119,13 @@ public class SmartAuthenticationInterceptor extends HandlerInterceptorAdapter {
|
||||
return true;
|
||||
}
|
||||
//需要验证权限
|
||||
if(!request.getServletPath().startsWith("/royalcanin")&&request.getParameter("type").equals("get")) {
|
||||
Boolean privilegeValidPass = privilegeEmployeeService.checkEmployeeHavePrivilege(requestToken, controllerName, methodName);
|
||||
if (!privilegeValidPass) {
|
||||
this.outputResult(response, LoginResponseCodeConst.NOT_HAVE_PRIVILEGES);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
SmartRequestTokenUtil.setUser(request, requestToken);
|
||||
return true;
|
||||
}
|
||||
|
@ -1,20 +1,45 @@
|
||||
package net.lab1024.smartadmin.module.system.royalcanin;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import io.jsonwebtoken.Claims;
|
||||
import io.jsonwebtoken.Jwts;
|
||||
import io.jsonwebtoken.SignatureAlgorithm;
|
||||
import net.lab1024.smartadmin.common.heartbeat.StringUtil;
|
||||
import net.lab1024.smartadmin.module.system.login.LoginTokenService;
|
||||
import net.lab1024.smartadmin.module.system.royalcanin.member.MemberAddEntity;
|
||||
import net.lab1024.smartadmin.module.system.royalcanin.member.MemberCheckEntity;
|
||||
import net.lab1024.smartadmin.module.system.royalcanin.member.MemberGetEntity;
|
||||
import net.lab1024.smartadmin.module.system.royalcanin.member.MemberUpdateMemberLevelEntity;
|
||||
import net.lab1024.smartadmin.util.SmartHttpUtil;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.ZoneId;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
|
||||
@Service
|
||||
public class MemberService {
|
||||
private String url = "http://miniapp-test.royalcanin.com.cn:7080/crm/member/";
|
||||
|
||||
@Autowired
|
||||
private LoginTokenService loginTokenService;
|
||||
|
||||
/**
|
||||
* 过期时间一天
|
||||
*/
|
||||
private static final int EXPIRE_SECONDS = 1 * 24 * 3600;
|
||||
/**
|
||||
* jwt加密字段
|
||||
*/
|
||||
private static final String CLAIM_ID_KEY = "id";
|
||||
|
||||
@Value("${jwt.key}")
|
||||
private String jwtKey;
|
||||
|
||||
public String memberGet(MemberGetEntity memberGetEntity)throws Exception {
|
||||
Map<String, String> paramMap = new HashMap<>();
|
||||
@ -22,7 +47,12 @@ public class MemberService {
|
||||
paramMap.put("id",StringUtil.toString(memberGetEntity.getId()));
|
||||
paramMap.put("mobile",memberGetEntity.getMobile());
|
||||
paramMap.put("unionId",memberGetEntity.getUnionId());
|
||||
return SmartHttpUtil.sendPostForm(url+"get",paramMap,null);
|
||||
String sb = SmartHttpUtil.sendPostForm(url+"get",paramMap,null);
|
||||
JSONObject jsonObject = JSONObject.parseObject(sb);
|
||||
JSONObject json = JSONObject.parseObject(jsonObject.getString("data"));
|
||||
String id = json.getString("id");
|
||||
jsonObject.put("xaccessToken",generateToken(id));
|
||||
return jsonObject.toJSONString();
|
||||
}
|
||||
public String memberCheck(MemberCheckEntity memberCheckEntity)throws Exception {
|
||||
Map<String, String> paramMap = new HashMap<>();
|
||||
@ -64,4 +94,31 @@ public class MemberService {
|
||||
paramMap.put("memberLevel",StringUtil.toString(memberUpdateMemberLevelEntity.getMemberLevel()));
|
||||
return SmartHttpUtil.sendPostForm(url+"check",paramMap,null);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 功能描述: 生成JWT TOKEN
|
||||
*
|
||||
* @return
|
||||
* @auther Carl
|
||||
* @date 2021/12/8 0012
|
||||
*/
|
||||
public String generateToken(String UserId) {
|
||||
Long id = Long.parseLong(UserId);
|
||||
/**将token设置为jwt格式*/
|
||||
String baseToken = UUID.randomUUID().toString();
|
||||
LocalDateTime localDateTimeNow = LocalDateTime.now();
|
||||
LocalDateTime localDateTimeExpire = localDateTimeNow.plusSeconds(EXPIRE_SECONDS);
|
||||
Date from = Date.from(localDateTimeNow.atZone(ZoneId.systemDefault()).toInstant());
|
||||
Date expire = Date.from(localDateTimeExpire.atZone(ZoneId.systemDefault()).toInstant());
|
||||
|
||||
Claims jwtClaims = Jwts.claims().setSubject(baseToken);
|
||||
jwtClaims.put(CLAIM_ID_KEY, id);
|
||||
String compactJws = Jwts.builder().setClaims(jwtClaims).setNotBefore(from).setExpiration(expire).signWith(SignatureAlgorithm.HS512, jwtKey).compact();
|
||||
|
||||
// EmployeeBO employeeBO = employeeService.getById(id);
|
||||
// RequestTokenBO tokenBO = new RequestTokenBO(employeeBO);
|
||||
|
||||
return compactJws;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user