aliYunMaven
diff --git a/src/main/java/com/gxwebsoft/common/core/config/SwaggerConfig.java b/src/main/java/com/gxwebsoft/common/core/config/SwaggerConfig.java
index 32c56c8..5f2023d 100644
--- a/src/main/java/com/gxwebsoft/common/core/config/SwaggerConfig.java
+++ b/src/main/java/com/gxwebsoft/common/core/config/SwaggerConfig.java
@@ -3,6 +3,7 @@ package com.gxwebsoft.common.core.config;
import cn.hutool.core.util.StrUtil;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Profile;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
@@ -24,6 +25,7 @@ import java.util.List;
*/
@EnableOpenApi
@Configuration
+@Profile("!test")
public class SwaggerConfig {
@Resource
private ConfigProperties config;
diff --git a/src/main/java/com/gxwebsoft/think/controller/SchedulingController.java b/src/main/java/com/gxwebsoft/think/controller/SchedulingController.java
index 2b908a3..bd45ea6 100644
--- a/src/main/java/com/gxwebsoft/think/controller/SchedulingController.java
+++ b/src/main/java/com/gxwebsoft/think/controller/SchedulingController.java
@@ -17,6 +17,7 @@ import com.gxwebsoft.think.service.ThinkOrderService;
import com.gxwebsoft.think.service.ThinkSiteService;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Profile;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@@ -35,7 +36,7 @@ import java.util.concurrent.TimeUnit;
@Api(tags = "定时任务")
@RestController
@RequestMapping("/api/scheduled")
-
+@Profile("!test")
public class SchedulingController extends BaseController {
@Resource
diff --git a/src/main/java/com/gxwebsoft/think/task/ThinkFaceAccessTask.java b/src/main/java/com/gxwebsoft/think/task/ThinkFaceAccessTask.java
index 22f033d..fb2ede4 100644
--- a/src/main/java/com/gxwebsoft/think/task/ThinkFaceAccessTask.java
+++ b/src/main/java/com/gxwebsoft/think/task/ThinkFaceAccessTask.java
@@ -9,6 +9,7 @@ import com.gxwebsoft.think.entity.*;
import com.gxwebsoft.think.service.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.springframework.context.annotation.Profile;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@@ -34,6 +35,7 @@ import java.util.stream.Collectors;
* @since 2026-03-13
*/
@Component
+@Profile("!test")
public class ThinkFaceAccessTask {
private static final Logger logger = LoggerFactory.getLogger(ThinkFaceAccessTask.class);
diff --git a/src/test/java/com/gxwebsoft/ContextLoadsIT.java b/src/test/java/com/gxwebsoft/ContextLoadsIT.java
new file mode 100644
index 0000000..36ab4a9
--- /dev/null
+++ b/src/test/java/com/gxwebsoft/ContextLoadsIT.java
@@ -0,0 +1,28 @@
+package com.gxwebsoft;
+
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.test.context.ActiveProfiles;
+
+import javax.sql.DataSource;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+/**
+ * 集成测试底座冒烟:只验证测试 profile 能启动上下文并连上共享测试库,不涉及业务表。
+ */
+@SpringBootTest
+@ActiveProfiles({"gxtyzx-test", "test"})
+class ContextLoadsIT {
+
+ @Autowired
+ private DataSource dataSource;
+
+ @Test
+ void connectsToTestDatabase() {
+ Integer result = new JdbcTemplate(dataSource).queryForObject("select 1", Integer.class);
+ assertThat(result).isEqualTo(1);
+ }
+}
diff --git a/src/test/java/com/gxwebsoft/TestMain.java b/src/test/java/com/gxwebsoft/TestMain.java
deleted file mode 100644
index 3f760bf..0000000
--- a/src/test/java/com/gxwebsoft/TestMain.java
+++ /dev/null
@@ -1,51 +0,0 @@
-package com.gxwebsoft;
-
-import cn.hutool.core.util.NumberUtil;
-import com.gxwebsoft.think.entity.ThinkOrder;
-import com.gxwebsoft.think.service.ThinkOrderService;
-import org.junit.jupiter.api.Test;
-import org.springframework.boot.test.context.SpringBootTest;
-
-import javax.annotation.Resource;
-import java.math.BigDecimal;
-import java.text.NumberFormat;
-import java.text.ParseException;
-
-/**
- * Created by WebSoft on 2020-03-23 23:37
- */
-@SpringBootTest
-public class TestMain {
- /**
- * 生成唯一的key用于jwt工具类
- */
- @Test
- public void testGenJwtKey() {
-
- BigDecimal bigDecimal = new BigDecimal(NumberUtil.decimalFormat("0.00", 1 * 0.01));
- System.out.println("实际付款金额 = " + bigDecimal);
-// System.out.println(JwtUtil.encodeKey(JwtUtil.randomKey()));
-
-// final String encrypt = CommonUtil.encrypt("123456");
-// System.out.println("encrypt = " + encrypt);
-//
-// final String decrypt = CommonUtil.decrypt(encrypt);
-// System.out.println("decrypt = " + decrypt);
- }
-
-
- private String fenToYuan(String amount){
- NumberFormat format = NumberFormat.getInstance();
- try{
- Number number = format.parse(amount);
- double temp = number.doubleValue() / 100.0;
- format.setGroupingUsed(false);
- // 设置返回的小数部分所允许的最大位数
- format.setMaximumFractionDigits(2);
- amount = format.format(temp);
- } catch (ParseException e){
- e.printStackTrace();
- }
- return amount;
- }
-}
diff --git a/src/test/java/com/gxwebsoft/WebSoftApplicationTests.java b/src/test/java/com/gxwebsoft/WebSoftApplicationTests.java
deleted file mode 100644
index 5a024f5..0000000
--- a/src/test/java/com/gxwebsoft/WebSoftApplicationTests.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.gxwebsoft;
-
-import org.junit.jupiter.api.Test;
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-public class WebSoftApplicationTests {
-
- @Test
- public void contextLoads() {
- }
-
-}
diff --git a/src/test/java/com/gxwebsoft/support/TestAuthentication.java b/src/test/java/com/gxwebsoft/support/TestAuthentication.java
new file mode 100644
index 0000000..21a2051
--- /dev/null
+++ b/src/test/java/com/gxwebsoft/support/TestAuthentication.java
@@ -0,0 +1,43 @@
+package com.gxwebsoft.support;
+
+import com.gxwebsoft.common.system.entity.Menu;
+import com.gxwebsoft.common.system.entity.User;
+import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
+import org.springframework.security.core.Authentication;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 测试用登录态构造器:MockMvc 直接注入 Authentication,不触发 JwtAuthenticationFilter 的远程 core 调用。
+ *
+ * 租户与用户固定为测试库中已存在的 10150 / 3673(admin);权限串由调用方传入。
+ */
+public final class TestAuthentication {
+
+ public static final int TENANT_ID = 10150;
+ public static final int USER_ID = 3673;
+
+ private TestAuthentication() {
+ }
+
+ public static Authentication admin(String... authorities) {
+ List