Files
entity/src/entity/briva_accounts.ts
2025-02-07 01:01:02 +07:00

68 lines
1.3 KiB
TypeScript

import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn, DeleteDateColumn, Index, JoinColumn, ManyToOne, JoinTable } from 'typeorm';
import { Status } from '../types/status';
import { BrivaCompany } from './briva_companies';
@Entity('briva_accounts', { schema: 'brivas' })
export class BrivaAccount {
@PrimaryGeneratedColumn('uuid')
id: string;
@Column({
nullable: false,
unique: true,
length: 256
})
code: string;
@Column({
nullable: true,
length: 256
})
name: string;
@Column({
nullable: false,
length: 256
})
account_number: string;
@Column({
nullable: false,
length: 256
})
account_holder: string;
@ManyToOne(() => BrivaCompany, { onDelete: 'CASCADE', nullable: true })
@JoinTable()
company: BrivaCompany
@Column({
nullable: true
})
last_trans_at: Date;
@Column({
nullable: false,
length: 256
})
last_trans_ref_number: string;
@Column({
nullable: false,
type: 'float8'
})
last_trans_amount: number;
@Column()
@CreateDateColumn()
created_at: Date;
@Column({ nullable: true })
@UpdateDateColumn()
updated_at: Date;
@Column({ nullable: true })
@DeleteDateColumn()
deleted_at: Date;
}