diff --git a/backend/src/typeorm/entity/Transaction.ts b/backend/src/typeorm/entity/Transaction.ts new file mode 100644 index 000000000..4fdaf6eb8 --- /dev/null +++ b/backend/src/typeorm/entity/Transaction.ts @@ -0,0 +1,23 @@ +import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, Timestamp } from 'typeorm' + +@Entity('transactions') +export class Transaction extends BaseEntity { + @PrimaryGeneratedColumn() + id: number + + @Column({ name: 'transaction_type_id' }) + transactionTypeId: number + + @Column({ name: 'tx_hash', type: 'binary', length: 48 }) + txHash: Buffer + + @Column() + memo: string + + @Column({ type: 'timestamp' }) + received: Timestamp + + @Column({ name: 'blockchain_type_id' }) + blockchainTypeId: number + +} diff --git a/backend/src/typeorm/entity/TransactionCreation.ts b/backend/src/typeorm/entity/TransactionCreation.ts new file mode 100644 index 000000000..ec473a13b --- /dev/null +++ b/backend/src/typeorm/entity/TransactionCreation.ts @@ -0,0 +1,25 @@ +import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, Timestamp, OneToOne, JoinColumn } from 'typeorm' +import { Transaction } from './Transaction' + +@Entity('transaction_creations') +export class TransactionCreation extends BaseEntity { + @PrimaryGeneratedColumn() + id: number + + @Column({ name: 'transaction_id' }) + transactionId: number + + @Column({ name: 'state_user_id' }) + userId: number + + @Column() + amount: number + + @Column({ name: 'target_date', type: 'timestamp' }) + targetDate: Timestamp + + @OneToOne(() => Transaction) + @JoinColumn() + transaction: Transaction + +} diff --git a/backend/src/typeorm/entity/TransactionSendCoin.ts b/backend/src/typeorm/entity/TransactionSendCoin.ts new file mode 100644 index 000000000..b5b675d42 --- /dev/null +++ b/backend/src/typeorm/entity/TransactionSendCoin.ts @@ -0,0 +1,31 @@ +import { BaseEntity, Entity, PrimaryGeneratedColumn, Column, OneToOne, JoinColumn } from 'typeorm' +import { Transaction } from './Transaction' + +@Entity('transaction_send_coins') +export class TransactionSendCoin extends BaseEntity { + @PrimaryGeneratedColumn() + id: number + + @Column({ name: 'transaction_id' }) + transactionId: number + + @Column({ name: 'sender_public_key', type: 'binary', length: 32 }) + senderPublic: Buffer + + @Column({ name: 'state_user_id' }) + userId: number + + @Column({ name: 'receiver_public_key', type: 'binary', length: 32}) + recipiantPublic: Buffer + + @Column({ name: 'receiver_user_id' }) + recipiantUserId: number + + @Column() + amount: number + + @OneToOne(() => Transaction) + @JoinColumn() + transaction: Transaction + +}