提交 e467aef0 authored 作者: 孙于凯's avatar 孙于凯

feat:新增定时更新人员部门

上级 45b4be1a
...@@ -62,6 +62,13 @@ public class GlobalExceptionHandler { ...@@ -62,6 +62,13 @@ public class GlobalExceptionHandler {
return e.getResponseObj(); return e.getResponseObj();
} }
// @ExceptionHandler(ApiException.class)
// public ResponseObj errorMessage(ApiException e) {
// log.warn("[自定义异常]"+e.getResponseObj().getMessage());
// return e.getResponseObj();
// }
/** /**
* 数据合法性验证报错会通过这个方法处理并通过统一的返回方式进行返回 * 数据合法性验证报错会通过这个方法处理并通过统一的返回方式进行返回
* *
......
...@@ -132,7 +132,7 @@ public class Sm4Util { ...@@ -132,7 +132,7 @@ public class Sm4Util {
// System.out.println("解密:" + decryptStr); // System.out.println("解密:" + decryptStr);
String decrypt = decrypt("No3E5a0/73I+/TMJZ43eVQ==", KEY); String decrypt = decrypt("6nAW06JHV+7aPxIj1XYJmw==", KEY);
System.out.println(decrypt); System.out.println(decrypt);
} }
......
...@@ -116,7 +116,7 @@ public class PickUpServiceImpl implements PickUpService { ...@@ -116,7 +116,7 @@ public class PickUpServiceImpl implements PickUpService {
userVO.setUserName(specificUser.getEmployeeName()); userVO.setUserName(specificUser.getEmployeeName());
KxAdmin kxAdmin = kxAdmins.stream().filter(a -> a.getUsername().equals(specificUser.getEmployeeName())).findFirst().orElse(new KxAdmin()); KxAdmin kxAdmin = kxAdmins.stream().filter(a -> a.getUsername().equals(specificUser.getEmployeeName())).findFirst().orElse(new KxAdmin());
if (kxAdmin.getAccount() == null) { if (kxAdmin.getAccount() == null) {
throw new ApiException(specificUser.getEmployeeName() + "该用户没有从钉钉免登请先从钉钉登入"); throw new ApiException(specificUser.getEmployeeName() + "该用户没有从钉钉免登请先从钉钉登入,或者对该用户进行停用处理");
} }
userVO.setAccountId(kxAdmin.getAccount()); userVO.setAccountId(kxAdmin.getAccount());
userVOS.add(userVO); userVOS.add(userVO);
...@@ -145,7 +145,7 @@ public class PickUpServiceImpl implements PickUpService { ...@@ -145,7 +145,7 @@ public class PickUpServiceImpl implements PickUpService {
pickUp.setStatus(1); pickUp.setStatus(1);
pickUp.setOrganizationCode(currentUser.getOrganizationCode()); pickUp.setOrganizationCode(currentUser.getOrganizationCode());
pickUpDAO.save(pickUp); pickUpDAO.save(pickUp);
throw new ApiException("该用户被启用"); throw new ApiException("该用户被启用");
} }
SendWorkMessageDTO sendWorkMessageDTO = new SendWorkMessageDTO(); SendWorkMessageDTO sendWorkMessageDTO = new SendWorkMessageDTO();
sendWorkMessageDTO.setContent(notificationDTO.getContent()); sendWorkMessageDTO.setContent(notificationDTO.getContent());
......
...@@ -5,7 +5,7 @@ spring.datasource.url=jdbc:mysql://localhost:3306/zzd?serverTimezone=Asia/Shangh ...@@ -5,7 +5,7 @@ spring.datasource.url=jdbc:mysql://localhost:3306/zzd?serverTimezone=Asia/Shangh
spring.datasource.username=root spring.datasource.username=root
spring.datasource.password=root spring.datasource.password=root
spring.jpa.show-sql=true spring.jpa.show-sql=false
spring.jpa.hibernate.ddl-auto=update spring.jpa.hibernate.ddl-auto=update
spring.main.allow-bean-definition-overriding=true spring.main.allow-bean-definition-overriding=true
......
...@@ -5,7 +5,7 @@ spring.datasource.username=root ...@@ -5,7 +5,7 @@ spring.datasource.username=root
spring.datasource.password=tykj@2022 spring.datasource.password=tykj@2022
spring.jpa.show-sql=true spring.jpa.show-sql=false
spring.jpa.hibernate.ddl-auto=update spring.jpa.hibernate.ddl-auto=update
spring.main.allow-bean-definition-overriding=true spring.main.allow-bean-definition-overriding=true
......
package com.tykj.zydd.user.init;
import com.tykj.zydd.user.service.ZyddUserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import javax.annotation.Resource;
@Component
@Slf4j
public class UserAndDepartmentInit {
@Resource
private ZyddUserService zyddUserService;
@PostConstruct
@Scheduled(cron = "0 0 12 * * ?")
public void init(){
log.info("开始更新部门人员");
zyddUserService.cacheUnit();
log.info("部门人员已更新");
}
}
package com.tykj.zydd.user.jwt; package com.tykj.zydd.user.jwt;
import com.tykj.zydd.misc.exception.ApiException;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
import org.springframework.util.AntPathMatcher; import org.springframework.util.AntPathMatcher;
...@@ -27,40 +28,69 @@ public class JwtTokenAuthenticationFilter extends GenericFilterBean { ...@@ -27,40 +28,69 @@ public class JwtTokenAuthenticationFilter extends GenericFilterBean {
this.jwtTokenProvider = jwtTokenProvider; this.jwtTokenProvider = jwtTokenProvider;
} }
// @Override
// public void doFilter(ServletRequest req, ServletResponse res, FilterChain filterChain)
// throws IOException, ServletException {
// HttpServletRequest request = (HttpServletRequest) req;
// HttpServletResponse response = (HttpServletResponse) res;
// try {
// String token = jwtTokenProvider.resolveToken(request);
// if (token != null){
// //验证token
// Boolean aBoolean = jwtTokenProvider.redisValidToken(token);
// if (aBoolean) {
// //说明token存在
// jwtTokenProvider.getAuthentication(token);
// //同时刷新token
// jwtTokenProvider.flashToken(token);
// }else {
//// response.setStatus(HttpStatus.FORBIDDEN.value());
//// response.setContentType("application/json");
//// response.setCharacterEncoding("utf-8");
//// response.getWriter().println("{\"code\":403,\"msg\":\"token不合法\"}");
//// response.getWriter().flush();
//// response.getWriter().close();
// throw new ApiException("token不合法", String.valueOf(HttpStatus.FORBIDDEN.value()));
//// return;
// }
// }
//
// } catch (InvalidJwtAuthenticationException e) {
//// response.setStatus(HttpStatus.FORBIDDEN.value());
//// response.setContentType("application/json");
//// response.setCharacterEncoding("utf-8");
//// response.getWriter().println("{\"code\":403,\"msg\":\"token不合法\"}");
//// response.getWriter().flush();
//// response.getWriter().close();
// throw new ApiException("token不合法", String.valueOf(HttpStatus.FORBIDDEN.value()));
// return;
// }
// filterChain.doFilter(request,response);
// }
@Override @Override
public void doFilter(ServletRequest req, ServletResponse res, FilterChain filterChain) public void doFilter(ServletRequest req, ServletResponse res, FilterChain filterChain)
throws IOException, ServletException { throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) req; HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res; HttpServletResponse response = (HttpServletResponse) res;
try { String token = jwtTokenProvider.resolveToken(request);
String token = jwtTokenProvider.resolveToken(request); if (token != null){
if (token != null){ //验证token
//验证token Boolean aBoolean = jwtTokenProvider.redisValidToken(token);
Boolean aBoolean = jwtTokenProvider.redisValidToken(token); if (aBoolean) {
if (aBoolean) { //说明token存在
//说明token存在 jwtTokenProvider.getAuthentication(token);
jwtTokenProvider.getAuthentication(token); //同时刷新token
//同时刷新token jwtTokenProvider.flashToken(token);
jwtTokenProvider.flashToken(token); }else {
}else { response.setStatus(HttpStatus.OK.value());
response.setStatus(HttpStatus.FORBIDDEN.value());
response.setContentType("application/json"); response.setContentType("application/json");
response.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8");
response.getWriter().println("{\"code\":403,\"msg\":\"token不合法\"}"); response.getWriter().println("{\"code\":403,\"msg\":\"token不合法\"}");
response.getWriter().flush(); response.getWriter().flush();
response.getWriter().close(); response.getWriter().close();
return; return;
}
} }
} catch (InvalidJwtAuthenticationException e) {
response.setStatus(HttpStatus.FORBIDDEN.value());
response.setContentType("application/json");
response.setCharacterEncoding("utf-8");
response.getWriter().println("{\"code\":403,\"msg\":\"token不合法\"}");
response.getWriter().flush();
response.getWriter().close();
return;
} }
filterChain.doFilter(request,response); filterChain.doFilter(request,response);
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论