From a10a934b40bcfba738527c85220dc2b16b26a8c4 Mon Sep 17 00:00:00 2001
From: GYJ <1157756119@qq.com>
Date: Mon, 10 Feb 2025 10:44:46 +0800
Subject: [PATCH] =?UTF-8?q?cors=20=E5=BC=82=E5=B8=B8=E6=8B=A6=E6=88=AA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
cash-api/api-config/pom.xml | 8 ++++
.../main/java/com/czg/config/CorsFilter.java | 28 ++++++++++++
.../czg/exception/CzgControllerAdvice.java | 45 +++++++++++++++++++
cash-api/pom.xml | 6 +++
.../czg/controller/SysParamController.java | 43 ++++++++++++++++++
.../czg/service/system/dto/SysParamsDTO.java | 11 +++++
.../service/impl/SysParamsServiceImpl.java | 7 +--
7 files changed, 145 insertions(+), 3 deletions(-)
create mode 100644 cash-api/api-config/src/main/java/com/czg/config/CorsFilter.java
create mode 100644 cash-api/api-config/src/main/java/com/czg/exception/CzgControllerAdvice.java
create mode 100644 cash-api/system-server/src/main/java/com/czg/controller/SysParamController.java
diff --git a/cash-api/api-config/pom.xml b/cash-api/api-config/pom.xml
index 46d17c12..5f077a7b 100644
--- a/cash-api/api-config/pom.xml
+++ b/cash-api/api-config/pom.xml
@@ -19,7 +19,15 @@
+
+ org.projectlombok
+ lombok
+
+
+ com.czg
+ cash-common-tools
+
diff --git a/cash-api/api-config/src/main/java/com/czg/config/CorsFilter.java b/cash-api/api-config/src/main/java/com/czg/config/CorsFilter.java
new file mode 100644
index 00000000..38e0cac8
--- /dev/null
+++ b/cash-api/api-config/src/main/java/com/czg/config/CorsFilter.java
@@ -0,0 +1,28 @@
+package com.czg.config;
+
+import jakarta.servlet.*;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import org.springframework.context.annotation.Configuration;
+
+import java.io.IOException;
+
+/**
+ * @author GYJoker
+ */
+@Configuration
+public class CorsFilter implements Filter {
+ @Override
+ public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain)
+ throws IOException, ServletException {
+ HttpServletResponse response = (HttpServletResponse) resp;
+ HttpServletRequest reqs = (HttpServletRequest) req;
+ String curOrigin = reqs.getHeader("Origin");
+ response.setHeader("Access-Control-Allow-Origin", curOrigin == null ? "true" : curOrigin);
+ response.setHeader("Access-Control-Allow-Methods", "*");
+ response.setHeader("Access-Control-Max-Age", "3600");
+ response.setHeader("Access-Control-Allow-Headers", "token");
+ response.setHeader("Access-Control-Allow-Credentials", "true");
+ chain.doFilter(req, resp);
+ }
+}
diff --git a/cash-api/api-config/src/main/java/com/czg/exception/CzgControllerAdvice.java b/cash-api/api-config/src/main/java/com/czg/exception/CzgControllerAdvice.java
new file mode 100644
index 00000000..907b11a5
--- /dev/null
+++ b/cash-api/api-config/src/main/java/com/czg/exception/CzgControllerAdvice.java
@@ -0,0 +1,45 @@
+package com.czg.exception;
+
+import com.czg.resp.CzgRespCode;
+import com.czg.resp.CzgResult;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.context.support.DefaultMessageSourceResolvable;
+import org.springframework.http.HttpStatus;
+import org.springframework.validation.ObjectError;
+import org.springframework.web.bind.MethodArgumentNotValidException;
+import org.springframework.web.bind.annotation.ExceptionHandler;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.ResponseStatus;
+import org.springframework.web.bind.annotation.RestControllerAdvice;
+
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * @author GYJoker
+ */
+@RestControllerAdvice
+@Slf4j
+public class CzgControllerAdvice {
+ @ResponseBody
+ @ExceptionHandler(value = Exception.class)
+ @ResponseStatus(HttpStatus.OK)
+ public CzgResult