From c4a9cad1c50e89365e2a58b50e259af642ed3b8c Mon Sep 17 00:00:00 2001
From: Codex Assistant <codex@example.com>
Date: 星期二, 07 十月 2025 16:12:20 +0800
Subject: [PATCH] feat(review): 调整评审详情展示顺序与样式,描述支持多行,项目信息列宽40/60 fix(auth): 登录页与首页循环跳转保护;api.ts 在登录页不再重定向;401分支在登录页不跳转 fix(router): /login 放行策略优化,避免死循环;评审列表跳转到 /project-review/:id/detail fix(frontend): 补齐 utils/appConfig.ts,避免启动白屏 fix(review): 详情页提交评分缺少stageId时回退使用项目详情的stageId feat(backend): ActivityPlayerDetailResponse.playerInfo 补充 avatarUrl/avatar,服务组装时填充用户头像 chore(dev): 启动脚本注入本地JWT密钥,重启前后端

---
 backend/src/main/java/com/rongyichuang/judge/entity/Judge.java |   65 ++++++++++++++++++++++++++------
 1 files changed, 52 insertions(+), 13 deletions(-)

diff --git a/backend/src/main/java/com/rongyichuang/judge/entity/Judge.java b/backend/src/main/java/com/rongyichuang/judge/entity/Judge.java
index 8597aa1..8b02dd4 100644
--- a/backend/src/main/java/com/rongyichuang/judge/entity/Judge.java
+++ b/backend/src/main/java/com/rongyichuang/judge/entity/Judge.java
@@ -1,11 +1,15 @@
 package com.rongyichuang.judge.entity;
 
 import com.rongyichuang.common.entity.BaseEntity;
+import com.rongyichuang.tag.entity.Tag;
 import jakarta.persistence.*;
-import java.util.List;
+import org.hibernate.annotations.Where;
+import java.util.HashSet;
+import java.util.Set;
 
 @Entity
 @Table(name = "t_judge")
+@Where(clause = "state = 1")
 public class Judge extends BaseEntity {
 
     @Column(name = "name", length = 64, nullable = false)
@@ -20,23 +24,34 @@
     @Column(name = "gender")
     private Integer gender; // 0-濂�, 1-鐢�
 
-    @Column(name = "state", nullable = false)
-    private Integer state = 1; // 鐘舵�侊細1-姝e父
-
     @Column(name = "role_id")
     private Long roleId;
 
-    @Column(name = "description", length = 255)
+    @Column(name = "description")
     private String description;
 
-    // 涓撲笟鏍囩锛堝瀵瑰鍏崇郴锛�
-    @ManyToMany
+    @Column(name = "title")
+    private String title;
+
+    @Column(name = "company")
+    private String company;
+
+    @Column(name = "introduction")
+    private String introduction;
+
+    /**
+     * 鐘舵�侊細1-姝e父锛�0-鍒犻櫎
+     */
+    @Column(name = "state", nullable = false)
+    private Integer state = 1;
+
+    @ManyToMany(fetch = FetchType.LAZY)
     @JoinTable(
-        name = "t_judge_tag",
-        joinColumns = @JoinColumn(name = "judge_id"),
-        inverseJoinColumns = @JoinColumn(name = "tag_id")
+            name = "t_judge_tag",
+            joinColumns = @JoinColumn(name = "judge_id"),
+            inverseJoinColumns = @JoinColumn(name = "tag_id")
     )
-    private List<Tag> specialties;
+    private Set<Tag> specialties = new HashSet<>();
 
     // Getter and Setter methods
     public String getName() {
@@ -95,11 +110,35 @@
         this.description = description;
     }
 
-    public List<Tag> getSpecialties() {
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+
+    public String getCompany() {
+        return company;
+    }
+
+    public void setCompany(String company) {
+        this.company = company;
+    }
+
+    public String getIntroduction() {
+        return introduction;
+    }
+
+    public void setIntroduction(String introduction) {
+        this.introduction = introduction;
+    }
+
+    public Set<Tag> getSpecialties() {
         return specialties;
     }
 
-    public void setSpecialties(List<Tag> specialties) {
+    public void setSpecialties(Set<Tag> specialties) {
         this.specialties = specialties;
     }
 }
\ No newline at end of file

--
Gitblit v1.8.0