修改增加上传量下载量逻辑
Change-Id: I5dc30fd08feabca1e2acffb647966e4060d76bd3
diff --git a/src/main/java/entity/SeedHash.java b/src/main/java/entity/SeedHash.java
new file mode 100644
index 0000000..0ca07ab
--- /dev/null
+++ b/src/main/java/entity/SeedHash.java
@@ -0,0 +1,19 @@
+package entity;
+
+import javax.persistence.*;
+
+@Entity
+@Table(name = "SeedHash")
+public class SeedHash {
+ @Id
+ @Column(name = "seed_id", length = 64)
+ public String seedId;
+
+ @Column(name = "info_hash", length = 40, nullable = false)
+ public String infoHash;
+
+ // optional back‐ref
+ @ManyToOne
+ @JoinColumn(name = "seed_id", insertable = false, updatable = false)
+ public Seed seed;
+}
diff --git a/src/main/java/entity/TransRecord.java b/src/main/java/entity/TransRecord.java
index cf7ac7f..f19155e 100644
--- a/src/main/java/entity/TransRecord.java
+++ b/src/main/java/entity/TransRecord.java
@@ -4,51 +4,55 @@
import javax.persistence.Entity;
import javax.persistence.ForeignKey;
import javax.persistence.Id;
-import javax.persistence.IdClass;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
@Entity
@Table(name = "Transport")
-@IdClass(TransportId.class)
public class TransRecord{
@Id
@Column(name = "task_id", length = 64, nullable = false)
public String taskid;
- @Id
- @Column(name = "uploader_id", length = 36, nullable = false)
+ @Column(name = "uploader_id", length = 36, nullable = true)
public String uploaduserid;
- @ManyToOne(optional = false)
+ @ManyToOne(optional = true)
@JoinColumn(name = "uploader_id", referencedColumnName = "user_id", foreignKey = @ForeignKey(name = "fk_tr_user_up"), insertable = false, updatable = false)
public User uploader;
- @Id
- @Column(name = "downloader_id", length = 36, nullable = false)
+ @Column(name = "downloader_id", length = 36, nullable = true)
public String downloaduserid;
- @ManyToOne(optional = false)
+ @ManyToOne(optional = true)
@JoinColumn(name = "downloader_id", referencedColumnName = "user_id", foreignKey = @ForeignKey(name = "fk_tr_user_down"), insertable = false, updatable = false)
public User downloader;
- @Column(name = "seed_id", length = 64, nullable = false)
+ @Column(name = "seed_id", length = 64, nullable = true)
public String seedid;
- @ManyToOne(optional = false)
+ @ManyToOne(optional = true)
@JoinColumn(name = "seed_id", referencedColumnName = "seed_id", foreignKey = @ForeignKey(name = "fk_tr_seed"), insertable = false, updatable = false)
public Seed seed;
- @Column(name = "uploaded", nullable = false)
- public long upload;
+ @Column(name = "uploaded", nullable = true)
+ public Long upload = 0L;
- @Column(name = "downloaded", nullable = false)
- public long download;
+ @Column(name = "downloaded", nullable = true)
+ public Long download = 0L;
- @Column(name = "upload_peak", nullable = false)
- public long maxupload;
+ @Column(name = "upload_peak", nullable = true)
+ public Long maxupload = 0L;
- @Column(name = "download_peak", nullable = false)
- public long maxdownload;
+ @Column(name = "download_peak", nullable = true)
+ public Long maxdownload = 0L;
+
+ // 默认构造函数,确保字段初始化
+ public TransRecord() {
+ this.upload = 0L;
+ this.download = 0L;
+ this.maxupload = 0L;
+ this.maxdownload = 0L;
+ }
}
\ No newline at end of file