X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fdb%2FTransactionAccount.java;h=d556731f7ac709164cd296b5e5b4758ee0dafc9c;hb=5df10dc0b58df4d4be4e9ab34f1e0f477ca46766;hp=671e5d015dc3503b489b0b07044ed199c3b89b90;hpb=d5218337e111a377a3661f0ae4a5049edc055705;p=mobile-ledger.git diff --git a/app/src/main/java/net/ktnx/mobileledger/db/TransactionAccount.java b/app/src/main/java/net/ktnx/mobileledger/db/TransactionAccount.java index 671e5d01..d556731f 100644 --- a/app/src/main/java/net/ktnx/mobileledger/db/TransactionAccount.java +++ b/app/src/main/java/net/ktnx/mobileledger/db/TransactionAccount.java @@ -21,21 +21,23 @@ import androidx.annotation.NonNull; import androidx.room.ColumnInfo; import androidx.room.Entity; import androidx.room.ForeignKey; +import androidx.room.Index; +import androidx.room.PrimaryKey; -@Entity(tableName = "transaction_accounts", primaryKeys = {"profile", "transaction_id", "order_no"}, - foreignKeys = {@ForeignKey(entity = Transaction.class, parentColumns = {"profile", "id"}, - childColumns = {"profile", "transaction_id"}, - onDelete = ForeignKey.CASCADE, onUpdate = ForeignKey.RESTRICT), - @ForeignKey(entity = Account.class, parentColumns = {"profile", "name"}, - childColumns = {"profile", "account_name"}, - onDelete = ForeignKey.CASCADE, onUpdate = ForeignKey.RESTRICT) - }) +@Entity(tableName = "transaction_accounts", foreignKeys = { + @ForeignKey(entity = Transaction.class, parentColumns = {"id"}, + childColumns = {"transaction_id"}, onDelete = ForeignKey.CASCADE, + onUpdate = ForeignKey.RESTRICT) +}, indices = {@Index(name = "fk_trans_acc_trans", value = {"transaction_id"}), + @Index(name = "un_transaction_accounts", unique = true, + value = {"transaction_id", "order_no"}) +}) public class TransactionAccount { @ColumnInfo - @NonNull - private String profile; + @PrimaryKey(autoGenerate = true) + private long id; @ColumnInfo(name = "transaction_id") - private int transactionId; + private long transactionId; @ColumnInfo(name = "order_no") private int orderNo; @ColumnInfo(name = "account_name") @@ -49,18 +51,18 @@ public class TransactionAccount { @ColumnInfo private String comment; @ColumnInfo(defaultValue = "0") - private int generation = 0; - @NonNull - public String getProfile() { - return profile; + private long generation = 0; + public long getId() { + return id; } - public void setProfile(@NonNull String profile) { - this.profile = profile; + public void setId(long id) { + this.id = id; } - public int getTransactionId() { + @NonNull + public long getTransactionId() { return transactionId; } - public void setTransactionId(int transactionId) { + public void setTransactionId(long transactionId) { this.transactionId = transactionId; } public int getOrderNo() { @@ -95,10 +97,10 @@ public class TransactionAccount { public void setComment(String comment) { this.comment = comment; } - public int getGeneration() { + public long getGeneration() { return generation; } - public void setGeneration(int generation) { + public void setGeneration(long generation) { this.generation = generation; } }