X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fdb%2FTransactionAccount.java;h=80b185bede2f69f3aaf727a7b01fee54136a64e1;hb=87a1e58f79757bb0257c911e9bd77eb5d77a3e40;hp=6d51fec9d44e5cb1c20b8f89fb6f5832b96b01e2;hpb=9ea5a330029c99e0eecf55aaa94d8689fa64fc92;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 6d51fec9..80b185be 100644 --- a/app/src/main/java/net/ktnx/mobileledger/db/TransactionAccount.java +++ b/app/src/main/java/net/ktnx/mobileledger/db/TransactionAccount.java @@ -22,19 +22,20 @@ 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) - }, indices = {@Index(name = "fk_tran_acc_prof_acc", value = {"profile", "account_name"})}) +@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; @ColumnInfo(name = "order_no") @@ -51,13 +52,13 @@ public class TransactionAccount { private String comment; @ColumnInfo(defaultValue = "0") private int generation = 0; - @NonNull - public String getProfile() { - return profile; + public long getId() { + return id; } - public void setProfile(@NonNull String profile) { - this.profile = profile; + public void setId(long id) { + this.id = id; } + @NonNull public int getTransactionId() { return transactionId; }