修改BegInfo UserVotes SubmitSeed实体类

Change-Id: I1a5996ac4a788e334e62e2d8be60b598c1e96935
diff --git a/src/main/java/entity/BegInfo.java b/src/main/java/entity/BegInfo.java
index fe3174d..405e352 100644
--- a/src/main/java/entity/BegInfo.java
+++ b/src/main/java/entity/BegInfo.java
@@ -27,5 +27,5 @@
     public Date endtime;
 
     @Column(name = "has_match", nullable = false)
-    public boolean hasseed;
+    public int hasseed;
 }
diff --git a/src/main/java/entity/SubmitSeed.java b/src/main/java/entity/SubmitSeed.java
index 2cec77d..98986d0 100644
--- a/src/main/java/entity/SubmitSeed.java
+++ b/src/main/java/entity/SubmitSeed.java
@@ -7,28 +7,23 @@
 public class SubmitSeed {
 
     @EmbeddedId
-    private SubmitSeedId id;
+    @AttributeOverrides({
+            @AttributeOverride(name = "begId", column = @Column(name = "beg_id")),
+            @AttributeOverride(name = "seedId", column = @Column(name = "seed_id"))
+    })
+    public SubmitSeedId id;
 
     @ManyToOne(optional = false)
-    @JoinColumn(name = "beg_id", referencedColumnName = "beg_id", foreignKey = @ForeignKey(name = "fk_ss_beg"))
-    private BegInfo begInfo;
+    @JoinColumn(name = "beg_id", referencedColumnName = "beg_id", foreignKey = @ForeignKey(name = "fk_ss_beg"), insertable = false, updatable = false)
+    public BegInfo begInfo;
 
     @ManyToOne(optional = false)
-    @JoinColumn(name = "seed_id", referencedColumnName = "seed_id", foreignKey = @ForeignKey(name = "fk_ss_seed"))
-    private Seed seed;
+    @JoinColumn(name = "seed_id", referencedColumnName = "seed_id", foreignKey = @ForeignKey(name = "fk_ss_seed"), insertable = false, updatable = false)
+    public Seed seed;
 
     @Column(name = "votes", nullable = false)
-    private int votes;
+    public int votes;
 
-    public SubmitSeed() {}
-
-    public SubmitSeedId getId() {
-        return id;
+    public SubmitSeed() {
     }
-
-    public void setId(SubmitSeedId id) {
-        this.id = id;
-    }
-
-    // getters and setters for begInfo, seed, and votes
-}
+}
\ No newline at end of file
diff --git a/src/main/java/entity/User.java b/src/main/java/entity/User.java
index 6cdafb8..8bc67ae 100644
--- a/src/main/java/entity/User.java
+++ b/src/main/java/entity/User.java
@@ -33,7 +33,7 @@
     public int detectedCount = 0;
 
     @Temporal(TemporalType.TIMESTAMP)
-    @Column(name = "lastDetectedTime",nullable = false)
+    @Column(name = "lastDetectedTime", nullable = false)
     public Date lastDetectedTime = new Date();
 
     @Column(name = "fake_detected_count", nullable = false)
diff --git a/src/main/java/entity/UserStar.java b/src/main/java/entity/UserStar.java
new file mode 100644
index 0000000..c0bf225
--- /dev/null
+++ b/src/main/java/entity/UserStar.java
@@ -0,0 +1,43 @@
+package entity;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.ForeignKey;
+import javax.persistence.Id;
+import javax.persistence.IdClass;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
+
+@Entity
+@Table(name = "UserFavorite")
+@IdClass(UserStarId.class)  
+public class UserStar {
+    @Id
+    @Column(name = "user_id", length = 36, nullable = false)
+    public String userid;  
+
+    @Id
+    @Column(name = "seed_id", length = 64, nullable = false)
+    public String seedid;
+
+    @OneToOne(optional = false)
+    @JoinColumn(
+        name = "user_id",
+        referencedColumnName = "user_id",
+        foreignKey = @ForeignKey(name = "fk_user_id"),
+        insertable = false, updatable = false
+    )
+    public User user;
+
+    @OneToOne(optional = false)
+    @JoinColumn(
+        name = "seed_id",
+        referencedColumnName = "seed_id",
+        foreignKey = @ForeignKey(name = "fk_seed_id"),
+        insertable = false, updatable = false
+    )
+    public Seed seed;
+
+    public UserStar() {}  
+}
\ No newline at end of file
diff --git a/src/main/java/entity/UserStarId.java b/src/main/java/entity/UserStarId.java
new file mode 100644
index 0000000..6cc362b
--- /dev/null
+++ b/src/main/java/entity/UserStarId.java
@@ -0,0 +1,29 @@
+package entity;
+
+import java.io.Serializable;
+import java.util.Objects;
+
+public class UserStarId implements Serializable {
+    public String userid;  
+    public String seedid;
+
+    public UserStarId() {}  
+
+    public UserStarId(String userid, String seedid) {
+        this.userid = userid;
+        this.seedid = seedid;
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+        UserStarId that = (UserStarId) o;
+        return Objects.equals(userid, that.userid) && Objects.equals(seedid, that.seedid);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(userid, seedid);
+    }
+}
\ No newline at end of file
diff --git a/src/main/java/entity/UserVotes.java b/src/main/java/entity/UserVotes.java
index af28e3c..ba7d950 100644
--- a/src/main/java/entity/UserVotes.java
+++ b/src/main/java/entity/UserVotes.java
@@ -8,37 +8,29 @@
 public class UserVotes {
 
     @EmbeddedId
-    private UserVotesId id;
+    @AttributeOverrides({
+            @AttributeOverride(name = "userId", column = @Column(name = "user_id")),
+            @AttributeOverride(name = "begId", column = @Column(name = "beg_id")),
+            @AttributeOverride(name = "seedId", column = @Column(name = "seed_id"))
+    })
+    public UserVotesId id;
 
     @ManyToOne(optional = false)
-    @JoinColumn(name = "user_id", referencedColumnName = "user_id", 
-                foreignKey = @ForeignKey(name = "fk_user_votes_user"))
-    private User user;
+    @JoinColumn(name = "user_id", referencedColumnName = "user_id", foreignKey = @ForeignKey(name = "fk_user_votes_user"), insertable = false, updatable = false)
+    public User user;
 
     @ManyToOne(optional = false)
-    @JoinColumn(name = "beg_id", referencedColumnName = "beg_id", 
-                foreignKey = @ForeignKey(name = "fk_user_votes_beg"))
-    private BegInfo begInfo;
+    @JoinColumn(name = "beg_id", referencedColumnName = "beg_id", foreignKey = @ForeignKey(name = "fk_user_votes_beg"), insertable = false, updatable = false)
+    public BegInfo begInfo;
 
     @ManyToOne(optional = false)
-    @JoinColumn(name = "seed_id", referencedColumnName = "seed_id", 
-                foreignKey = @ForeignKey(name = "fk_user_votes_seed"))
-    private Seed seed;
+    @JoinColumn(name = "seed_id", referencedColumnName = "seed_id", foreignKey = @ForeignKey(name = "fk_user_votes_seed"), insertable = false, updatable = false)
+    public Seed seed;
 
     @Column(name = "created_at", nullable = false)
     @Temporal(TemporalType.TIMESTAMP)
-    private Date createdAt;
+    public Date createdAt;
 
-    public UserVotes() {}
-
-    // getter and setter for the composite key and other fields
-    public UserVotesId getId() {
-        return id;
+    public UserVotes() {
     }
-
-    public void setId(UserVotesId id) {
-        this.id = id;
-    }
-
-    // getters and setters for user, begInfo, seed, createdAt
-}
+}
\ No newline at end of file
diff --git a/src/main/java/entity/VipSeed.java b/src/main/java/entity/VipSeed.java
new file mode 100644
index 0000000..72f8abf
--- /dev/null
+++ b/src/main/java/entity/VipSeed.java
@@ -0,0 +1,43 @@
+package entity;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.ForeignKey;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
+
+@Entity
+@Table(name = "VipSeed")
+public class VipSeed {
+    @Id
+    @Column(name = "seed_id", length = 64, nullable = false)
+    public String seedid;
+
+    @OneToOne(optional = false)
+    @JoinColumn(name = "seed_id", referencedColumnName = "seed_id", foreignKey = @ForeignKey(name = "fk_vip_seed"), insertable = false, updatable = false)
+    public Seed seed;
+
+    @Column(name = "seeder_count", nullable = false)
+    public int seedercount;
+
+    @Column(name = "reward_magic", nullable = false)
+    public int rewardmagic;
+
+    @Column(name = "stop_caching", nullable = false)
+    public int stopcaching;
+
+    @Column(name = "bonus", nullable = false)
+    public int bonus;
+
+    @Column(name = "cache_status", nullable = false)
+    public boolean cachestate;
+
+    @Column(name = "farmer_number", nullable = false)
+    public int farmernumber;
+
+    public VipSeed() {
+        // 默认构造函数
+    }
+}
\ No newline at end of file