diff --git a/src/main/java/com/example/demo/Util/JWTUtil.java b/src/main/java/com/example/demo/Util/JWTUtil.java index f68a974..cf10313 100644 --- a/src/main/java/com/example/demo/Util/JWTUtil.java +++ b/src/main/java/com/example/demo/Util/JWTUtil.java @@ -23,7 +23,7 @@ import java.util.UUID; public class JWTUtil { //有效期为 - public static final Long JWT_TTL = 1000*60 * 60 *1000L;// 60 * 60 *1000 一个小时 + public static final Long JWT_TTL = 2*60 * 60 *1000L;// 60 * 60 *1000 一个小时 //设置 密钥 public static final String JWT_KEY = "bobzyh"; diff --git a/src/main/java/com/example/demo/config/AppConfig.java b/src/main/java/com/example/demo/config/AppConfig.java new file mode 100644 index 0000000..c40f7fd --- /dev/null +++ b/src/main/java/com/example/demo/config/AppConfig.java @@ -0,0 +1,14 @@ +package com.example.demo.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.client.RestTemplate; + +@Configuration +public class AppConfig { + + @Bean + public RestTemplate restTemplate() { + return new RestTemplate(); + } +} diff --git a/src/main/java/com/example/demo/security/SecurityConfig.java b/src/main/java/com/example/demo/security/SecurityConfig.java index 1cd770f..2615897 100644 --- a/src/main/java/com/example/demo/security/SecurityConfig.java +++ b/src/main/java/com/example/demo/security/SecurityConfig.java @@ -38,8 +38,7 @@ public class SecurityConfig { @Autowired TokenFilter tokenFilter; -// @Autowired -// UploadFilter uploadFilter; + // 核心配置 配置一个过滤器链 @Bean @@ -67,7 +66,7 @@ public class SecurityConfig { ).permitAll() .anyRequest().authenticated() // 其它路径,必须要登录后才能访问 ); -// http.addFilterBefore(uploadFilter, UsernamePasswordAuthenticationFilter.class); // 确保UploadFilter是第一个 + http.addFilterBefore(tokenFilter, UsernamePasswordAuthenticationFilter.class); // 然后是TokenFilter return http.build(); diff --git a/src/main/java/com/example/demo/security/UploadFilter.java b/src/main/java/com/example/demo/security/UploadFilter.java deleted file mode 100644 index f607fa6..0000000 --- a/src/main/java/com/example/demo/security/UploadFilter.java +++ /dev/null @@ -1,44 +0,0 @@ -//package com.example.demo.security; -// -//import jakarta.servlet.FilterChain; -//import jakarta.servlet.ServletException; -//import jakarta.servlet.http.HttpServletRequest; -//import jakarta.servlet.http.HttpServletResponse; -//import org.springframework.core.annotation.Order; -//import org.springframework.stereotype.Component; -//import org.springframework.web.filter.OncePerRequestFilter; -//import org.springframework.web.multipart.MultipartResolver; -// -//import java.io.IOException; -// -// -//@Component -//public class UploadFilter extends OncePerRequestFilter { -// -// private final MultipartResolver multipartResolver; -// -// public UploadFilter(MultipartResolver multipartResolver) { -// this.multipartResolver = multipartResolver; -// } -// -// @Override -// protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) -// throws ServletException, IOException { -// -// // 检查请求是否为上传请求,这里假设上传请求的路径以 "/upload" 开头 -// boolean isUploadRequest = request.getRequestURI().startsWith("/upload"); -// System.out.println(isUploadRequest); -// System.out.println("MultipartResolver: " + multipartResolver); -// if (isUploadRequest ) { -// System.out.println("执行upload-------------------------------"); -// // 如果是上传请求且Content-Type为multipart/form-data,直接将请求传递给下一个过滤器或目标资源 -// filterChain.doFilter(request, response); -// } else { -// // 如果不是上传请求,执行一些自定义逻辑 -// // 例如,可以在这里添加令牌验证或其他安全检查 -// -// // 继续执行过滤器链 -// filterChain.doFilter(request, response); -// } -// } -//} \ No newline at end of file diff --git a/src/main/java/com/example/demo/serviceImpl/OtherServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/OtherServiceImpl.java index 70fdc86..d8be170 100644 --- a/src/main/java/com/example/demo/serviceImpl/OtherServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/OtherServiceImpl.java @@ -6,13 +6,17 @@ import com.example.demo.mapper.DetailYMapper; import com.example.demo.mapper.OtherMapper; import com.example.demo.sevice.OtherService; import lombok.RequiredArgsConstructor; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.annotation.CacheConfig; +import org.springframework.http.*; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.client.RestTemplate; import java.math.BigDecimal; import java.util.Set; import java.util.HashSet; +import java.util.Map; @Service @Transactional @@ -20,6 +24,9 @@ import java.util.HashSet; @CacheConfig(cacheNames = "other") public class OtherServiceImpl implements OtherService { + @Autowired + private RestTemplate restTemplate; + private static final Set typesToUpdateZero = new HashSet<>(); private static final Set typesToUpdateOne = new HashSet<>(); private static final Set typesToUpdateTwo = new HashSet<>(); @@ -108,6 +115,16 @@ public class OtherServiceImpl implements OtherService { String productName = erp.getProductName(); String remark = erp.getReamrk(); String Way = otherMapper.selectWay(type); +// +// // 调用 POST 接口获取 username 和 area +// HttpHeaders headers = new HttpHeaders(); +// headers.setContentType(MediaType.APPLICATION_JSON); +// HttpEntity entity = new HttpEntity<>(JwCode, headers); +// ResponseEntity response = restTemplate.exchange( +// "http://example.com/api/getUserDetails", HttpMethod.POST, entity, Map.class); +// String username = (String) response.getBody().get("username"); +// String area = (String) response.getBody().get("area"); + if (typesToUpdateZero.contains(type)) { detailY.setUpdateType(0);// 设置 updateType 为 0 detailY.setJwcode(JwCode);