From a42fce5e1ff6aaf7cb5b0e10d19dae1f42303634 Mon Sep 17 00:00:00 2001 From: Einhornimmond Date: Fri, 24 Sep 2021 13:24:18 +0200 Subject: [PATCH] add more typeorm models --- backend/src/typeorm/entity/Transaction.ts | 23 ++++++++++++++ .../src/typeorm/entity/TransactionCreation.ts | 25 +++++++++++++++ .../src/typeorm/entity/TransactionSendCoin.ts | 31 +++++++++++++++++++ 3 files changed, 79 insertions(+) create mode 100644 backend/src/typeorm/entity/Transaction.ts create mode 100644 backend/src/typeorm/entity/TransactionCreation.ts create mode 100644 backend/src/typeorm/entity/TransactionSendCoin.ts 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 + +}