lrj
2 天以前 c61d4fe27c97d2ecc907756aa571a4ef14a7b9b6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package com.rongyichuang.judge;
 
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 java.util.List;
import java.util.Map;
 
@SpringBootTest
@ActiveProfiles("test")
public class JudgeDataFinalVerificationTest {
 
    @Autowired
    private JdbcTemplate jdbcTemplate;
 
    @Test
    public void verifyCompleteJudgeFlow() {
        System.out.println("=== 最终数据验证 ===");
        
        // 获取最新评委ID
        Integer latestJudgeId = jdbcTemplate.queryForObject(
            "SELECT MAX(id) FROM t_judge", Integer.class);
        System.out.println("最新评委ID: " + latestJudgeId);
        
        // 1. 验证评委基本信息
        Map<String, Object> judge = jdbcTemplate.queryForMap(
            "SELECT * FROM t_judge WHERE id = ?", latestJudgeId);
        System.out.println("✅ 评委信息: " + judge.get("name") + " - " + judge.get("phone"));
        
        // 2. 验证评委标签关联 (应该有2个)
        Integer tagCount = jdbcTemplate.queryForObject(
            "SELECT COUNT(*) FROM t_judge_tag WHERE judge_id = ?", 
            Integer.class, latestJudgeId);
        System.out.println("✅ 标签关联数: " + tagCount + " (期望: 2)");
        
        // 3. 验证媒体记录 (target_type=1表示JUDGE)
        Integer mediaCount = jdbcTemplate.queryForObject(
            "SELECT COUNT(*) FROM t_media WHERE target_id = ? AND target_type = 1", 
            Integer.class, latestJudgeId);
        System.out.println("✅ 媒体记录数: " + mediaCount + " (期望: 1)");
        
        // 4. 获取媒体详细信息
        if (mediaCount > 0) {
            Map<String, Object> media = jdbcTemplate.queryForMap(
                "SELECT * FROM t_media WHERE target_id = ? AND target_type = 1", 
                latestJudgeId);
            System.out.println("✅ 媒体路径: " + media.get("path"));
            System.out.println("✅ 文件大小: " + media.get("file_size") + " bytes");
        }
        
        // 5. 验证完整性
        boolean isComplete = (tagCount == 2) && (mediaCount == 1);
        System.out.println("\n=== 验证结果 ===");
        if (isComplete) {
            System.out.println("🎉 评委创建流程完全成功!");
            System.out.println("✅ 评委信息已保存到 t_judge 表");
            System.out.println("✅ 标签关联已保存到 t_judge_tag 表");
            System.out.println("✅ 头像已上传到腾讯云COS");
            System.out.println("✅ 媒体记录已保存到 t_media 表");
            System.out.println("✅ 所有数据关联正确");
        } else {
            System.out.println("❌ 数据验证失败");
        }
    }
}