102 lines
2.0 KiB
TypeScript
102 lines
2.0 KiB
TypeScript
import { Column, CreateDateColumn, DeleteDateColumn, Entity, JoinColumn, ManyToOne, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm';
|
|
|
|
import { CreditApplicationStatus } from '../types/credit';
|
|
import { CreditCompany } from './credit_companies';
|
|
import { CreditDebtor } from './credit_debtors';
|
|
import { CreditCompanyUser } from './credit_company_users';
|
|
|
|
@Entity('credit_applications')
|
|
export class CreditApplication {
|
|
@PrimaryGeneratedColumn('uuid')
|
|
id: string;
|
|
|
|
@ManyToOne(() => CreditDebtor, { onDelete: "RESTRICT" })
|
|
@JoinColumn()
|
|
debtor: CreditDebtor
|
|
|
|
@ManyToOne(() => CreditCompany, { onDelete: "RESTRICT" })
|
|
@JoinColumn()
|
|
company: CreditCompany
|
|
|
|
@ManyToOne(() => CreditCompanyUser)
|
|
@JoinColumn()
|
|
user: CreditCompanyUser
|
|
|
|
@Column({
|
|
nullable: true,
|
|
length: 256
|
|
})
|
|
code: string;
|
|
|
|
@Column({
|
|
type: 'date',
|
|
nullable: true,
|
|
})
|
|
application_date: Date;
|
|
|
|
@Column({
|
|
nullable: true,
|
|
length: 256
|
|
})
|
|
cif: string;
|
|
|
|
@Column({
|
|
nullable: true,
|
|
length: 256
|
|
})
|
|
account_number: string;
|
|
|
|
@Column({
|
|
type: 'float8',
|
|
nullable: true,
|
|
})
|
|
amount: number;
|
|
|
|
@Column({
|
|
nullable: true,
|
|
length: 256
|
|
})
|
|
period_type: string;
|
|
|
|
@Column({
|
|
type: 'int2',
|
|
nullable: false,
|
|
})
|
|
period_amount: number;
|
|
|
|
@Column({
|
|
nullable: false,
|
|
length: 64
|
|
})
|
|
status: CreditApplicationStatus;
|
|
|
|
@Column({
|
|
nullable: true,
|
|
length: 1024
|
|
})
|
|
finalize_by: string;
|
|
|
|
@Column({
|
|
nullable: true,
|
|
type: 'jsonb'
|
|
})
|
|
simulation: string[];
|
|
|
|
@Column({
|
|
nullable: true,
|
|
type: 'jsonb'
|
|
})
|
|
scoring: string[];
|
|
|
|
@Column()
|
|
@CreateDateColumn()
|
|
created_at: Date;
|
|
|
|
@Column({ nullable: true })
|
|
@UpdateDateColumn()
|
|
updated_at: Date;
|
|
|
|
@Column({ nullable: true })
|
|
@DeleteDateColumn()
|
|
deleted_at: Date;
|
|
} |