liuchengsen пре 1 месец
родитељ
комит
8aea9f2525

+ 7 - 7
zhijiayun-gateway/src/test/java/com/xuekairui/gateway/AdminControllerTest.java

@@ -268,7 +268,7 @@ class AdminControllerTest extends GatewayBaseTest {
                         .header("Authorization", "Bearer " + adminToken()))
                 .andExpect(status().isOk())
                 .andExpect(jsonPath("$.code").value(200))
-                .andExpect(jsonPath("$.data").isArray());
+                .andExpect(jsonPath("$.data.records").isArray());
     }
 
     @Test
@@ -278,7 +278,7 @@ class AdminControllerTest extends GatewayBaseTest {
         mockMvc.perform(get("/api/admin/crawler/grants?userId=1")
                         .header("Authorization", "Bearer " + adminToken()))
                 .andExpect(status().isOk())
-                .andExpect(jsonPath("$.data").isArray());
+                .andExpect(jsonPath("$.data.records").isArray());
     }
 
     @Test
@@ -288,7 +288,7 @@ class AdminControllerTest extends GatewayBaseTest {
         mockMvc.perform(get("/api/admin/crawler/grants?grantType=ADMIN")
                         .header("Authorization", "Bearer " + adminToken()))
                 .andExpect(status().isOk())
-                .andExpect(jsonPath("$.data").isArray());
+                .andExpect(jsonPath("$.data.records").isArray());
     }
 
     @Test
@@ -298,7 +298,7 @@ class AdminControllerTest extends GatewayBaseTest {
         mockMvc.perform(get("/api/admin/crawler/grants?grantType=INVITE")
                         .header("Authorization", "Bearer " + adminToken()))
                 .andExpect(status().isOk())
-                .andExpect(jsonPath("$.data").isArray());
+                .andExpect(jsonPath("$.data.records").isArray());
     }
 
     @Test
@@ -308,7 +308,7 @@ class AdminControllerTest extends GatewayBaseTest {
         mockMvc.perform(get("/api/admin/crawler/grants?grantType=PURCHASE")
                         .header("Authorization", "Bearer " + adminToken()))
                 .andExpect(status().isOk())
-                .andExpect(jsonPath("$.data").isArray());
+                .andExpect(jsonPath("$.data.records").isArray());
     }
 
     // ==================== 邀请记录查看 ====================
@@ -321,7 +321,7 @@ class AdminControllerTest extends GatewayBaseTest {
                         .header("Authorization", "Bearer " + adminToken()))
                 .andExpect(status().isOk())
                 .andExpect(jsonPath("$.code").value(200))
-                .andExpect(jsonPath("$.data").isArray());
+                .andExpect(jsonPath("$.data.records").isArray());
     }
 
     @Test
@@ -331,7 +331,7 @@ class AdminControllerTest extends GatewayBaseTest {
         mockMvc.perform(get("/api/admin/invite/rewards")
                         .header("Authorization", "Bearer " + adminToken()))
                 .andExpect(status().isOk())
-                .andExpect(jsonPath("$.data").isArray());
+                .andExpect(jsonPath("$.data.records").isArray());
     }
 
     @Test

+ 7 - 7
zhijiayun-gateway/src/test/java/com/xuekairui/gateway/AdminLicenseTest.java

@@ -27,7 +27,7 @@ class AdminLicenseTest extends GatewayBaseTest {
         String body = """
                 {
                     "storeName": "审核测试大药房",
-                    "terminalType": "SINGLE"
+                    "terminalType": "SINGLE",
                     "province": "广东省",
                     "city": "深圳市",
                     "district": "南山区",
@@ -115,7 +115,7 @@ class AdminLicenseTest extends GatewayBaseTest {
                 {
                     "userId": 3,
                     "storeName": "管理员新增药房",
-                    "terminalType": "SINGLE"
+                    "terminalType": "SINGLE",
                     "province": "广东省",
                     "city": "深圳市",
                     "district": "福田区",
@@ -140,7 +140,7 @@ class AdminLicenseTest extends GatewayBaseTest {
                         .header("Authorization", "Bearer " + adminToken()))
                 .andExpect(status().isOk())
                 .andExpect(jsonPath("$.code").value(200))
-                .andExpect(jsonPath("$.data").isArray());
+                .andExpect(jsonPath("$.data.records").isArray());
     }
 
     @Test
@@ -150,7 +150,7 @@ class AdminLicenseTest extends GatewayBaseTest {
         String body = """
                 {
                     "userId": 4,
-                    "terminalType": "SINGLE"
+                    "terminalType": "SINGLE",
                     "province": "广东省",
                     "city": "深圳市",
                     "district": "福田区",
@@ -175,7 +175,7 @@ class AdminLicenseTest extends GatewayBaseTest {
         String body = """
                 {
                     "storeName": "无客户药房",
-                    "terminalType": "SINGLE"
+                    "terminalType": "SINGLE",
                     "province": "广东省",
                     "city": "深圳市",
                     "district": "福田区",
@@ -239,7 +239,7 @@ class AdminLicenseTest extends GatewayBaseTest {
         String body = """
                 {
                     "storeName": "编辑测试药房",
-                    "terminalType": "SINGLE"
+                    "terminalType": "SINGLE",
                     "province": "广东省",
                     "city": "深圳市",
                     "district": "南山区",
@@ -263,7 +263,7 @@ class AdminLicenseTest extends GatewayBaseTest {
         String body = """
                 {
                     "storeName": "不存在的药房",
-                    "terminalType": "SINGLE"
+                    "terminalType": "SINGLE",
                     "province": "广东省",
                     "city": "深圳市",
                     "district": "南山区",

+ 1 - 1
zhijiayun-gateway/src/test/java/com/xuekairui/gateway/BusinessLicenseAndCouponTest.java

@@ -31,7 +31,7 @@ class BusinessLicenseAndCouponTest extends GatewayBaseTest {
         String body = """
                 {
                     "storeName": "测试大药房",
-                    "terminalType": "SINGLE"
+                    "terminalType": "SINGLE",
                     "province": "广东省",
                     "city": "深圳市",
                     "district": "南山区",

+ 1 - 2
zhijiayun-gateway/src/test/java/com/xuekairui/gateway/EndToEndBusinessFlowTest.java

@@ -291,8 +291,7 @@ public class EndToEndBusinessFlowTest extends GatewayBaseTest {
                 .header("Authorization", "Bearer " + adminToken)
                 .param("limit", "50"))
                 .andExpect(status().isOk())
-                .andExpect(jsonPath("$.data.records").isArray())
-                .andExpect(jsonPath("$.data.total").isNumber());
+                .andExpect(jsonPath("$.data").isArray());
 
         // 8.2 管理员分页查询所有操作日志
         mockMvc.perform(get("/api/admin/audit-log")

+ 12 - 0
zhijiayun-gateway/src/test/resources/test-schema.sql

@@ -457,6 +457,8 @@ CREATE TABLE IF NOT EXISTS t_business_license (
     show_verified_badge  TINYINT(1)    NOT NULL DEFAULT 0,
     sync_source          VARCHAR(20)   DEFAULT NULL COMMENT '来源:MANUAL/MINIAPP_SYNC',
     external_id          VARCHAR(64)   DEFAULT NULL COMMENT '外部系统记录ID',
+    status               INT           NOT NULL DEFAULT 0 COMMENT '第三方同步状态:0-未同步 1-同步成功 2-同步失败',
+    reward_granted       TINYINT(1)    NOT NULL DEFAULT 0 COMMENT '入驻奖励是否已发放:0-未发放 1-已发放',
     sync_status          VARCHAR(20)   NOT NULL DEFAULT 'NOT_SYNCED' COMMENT '第三方同步状态:NOT_SYNCED/SYNCED/SYNC_FAILED',
     create_time          TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
     update_time          TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
@@ -509,6 +511,16 @@ SET @col_exists = (SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_S
 SET @sql = IF(@col_exists = 0, 'ALTER TABLE t_business_license ADD COLUMN medical_device_class3_url VARCHAR(500) DEFAULT NULL COMMENT ''三类医疗器械备案'' AFTER medical_device_class2_url', 'SELECT 1');
 PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
 
+-- 兼容升级:为 t_business_license 添加 status 列
+SET @col_exists = (SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 't_business_license' AND COLUMN_NAME = 'status');
+SET @sql = IF(@col_exists = 0, 'ALTER TABLE t_business_license ADD COLUMN status INT NOT NULL DEFAULT 0 COMMENT ''第三方同步状态:0-未同步 1-同步成功 2-同步失败'' AFTER external_id', 'SELECT 1');
+PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
+
+-- 兼容升级:为 t_business_license 添加 reward_granted 列
+SET @col_exists = (SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = 't_business_license' AND COLUMN_NAME = 'reward_granted');
+SET @sql = IF(@col_exists = 0, 'ALTER TABLE t_business_license ADD COLUMN reward_granted TINYINT(1) NOT NULL DEFAULT 0 COMMENT ''入驻奖励是否已发放:0-未发放 1-已发放'' AFTER status', 'SELECT 1');
+PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;
+
 -- 操作审计日志表
 CREATE TABLE IF NOT EXISTS t_operation_audit_log (
     id               BIGINT        AUTO_INCREMENT PRIMARY KEY,