diff --git a/src/entity/bank_garansi.ts b/src/entity/bank_garansi.ts new file mode 100644 index 0000000..7535c83 --- /dev/null +++ b/src/entity/bank_garansi.ts @@ -0,0 +1,119 @@ +import { Column, CreateDateColumn, DeleteDateColumn, Entity, JoinColumn, ManyToOne, OneToMany, PrimaryGeneratedColumn, UpdateDateColumn } from "typeorm"; +import { BankGaransiType } from "./bank_garansi_type"; +import { BankGaransiStatus } from "./bank_garansi_status"; + +// import { CategorySource } from '../types/category_source'; +// import { Status } from '../types/status'; +// import { Target } from './targets'; + +@Entity("bank_garansi") +export class BankGaransi { + @PrimaryGeneratedColumn("uuid") + id: string; + + @Column({ + nullable: true, + }) + open_date: Date; + + @Column({ + nullable: true, + length: 256, + }) + name: string; + + @Column({ + nullable: true, + length: 256, + }) + phone: string; + + @Column({ + nullable: true, + length: 256, + }) + bg_number: string; + + @ManyToOne(() => BankGaransiType, (bank_garansi_type) => bank_garansi_type.bank_garansi) + @JoinColumn({ name: "bgTypeId" }) // Add foreign key column + bank_garansi_type: BankGaransiType; + + @Column({ nullable: false }) + bgTypeId: string; + + @Column({ + nullable: true, + length: 256, + }) + project_owner: string; + + @Column({ + type: "float8", + nullable: true, + }) + nominal: number; + + @Column({ + nullable: true, + }) + release_date: Date; + + @Column({ + nullable: true, + }) + due_date: Date; + + @Column({ + nullable: true, + }) + accounting_date: Date; + + @Column({ + type: "float8", + nullable: true, + }) + admin_fee: number; + + @Column({ + type: "float8", + nullable: true, + }) + provision: number; + + @ManyToOne(() => BankGaransiStatus, (bank_garansi_status) => bank_garansi_status.bank_garansi) + @JoinColumn({ name: "bgStatusId" }) // Add foreign key column + bank_garansi_status: BankGaransiStatus; + + @Column({ nullable: false }) + bgStatusId: string; + + @Column({ + nullable: true, + length: 4096, + }) + description: string; + + @Column() + @CreateDateColumn() + created_at: Date; + + @Column({ + nullable: true, + length: 256, + }) + created_by: string; + + @Column({ nullable: true }) + @UpdateDateColumn() + updated_at: Date; + + @Column({ + nullable: true, + length: 256, + }) + updated_by: string; + + @Column({ nullable: true }) + @DeleteDateColumn() + deleted_at: Date; +} diff --git a/src/entity/bank_garansi_status.ts b/src/entity/bank_garansi_status.ts new file mode 100644 index 0000000..fcb51c7 --- /dev/null +++ b/src/entity/bank_garansi_status.ts @@ -0,0 +1,40 @@ +import { Column, CreateDateColumn, DeleteDateColumn, Entity, JoinColumn, ManyToOne, OneToMany, PrimaryGeneratedColumn, UpdateDateColumn } from "typeorm"; + +// import { CategorySource } from '../types/category_source'; +import { Status } from "../types/status"; +import { BankGaransi } from "./bank_garansi"; +// import { Target } from './targets'; + +@Entity("bank_garansi_status") +export class BankGaransiStatus { + @PrimaryGeneratedColumn("uuid") + id: string; + + @Column({ + nullable: true, + length: 256, + }) + name: string; + + @Column({ + type: "enum", + enum: Status, + nullable: false, + }) + status: Status; + + @OneToMany(() => BankGaransi, (bank_garansi) => bank_garansi.bgStatusId) + bank_garansi: BankGaransi[]; + + @Column() + @CreateDateColumn() + created_at: Date; + + @Column({ nullable: true }) + @UpdateDateColumn() + updated_at: Date; + + @Column({ nullable: true }) + @DeleteDateColumn() + deleted_at: Date; +} diff --git a/src/entity/bank_garansi_type.ts b/src/entity/bank_garansi_type.ts new file mode 100644 index 0000000..651b493 --- /dev/null +++ b/src/entity/bank_garansi_type.ts @@ -0,0 +1,40 @@ +import { Column, CreateDateColumn, DeleteDateColumn, Entity, JoinColumn, ManyToOne, OneToMany, PrimaryGeneratedColumn, UpdateDateColumn } from "typeorm"; + +// import { CategorySource } from '../types/category_source'; +import { Status } from "../types/status"; +import { BankGaransi } from "./bank_garansi"; +// import { Target } from './targets'; + +@Entity("bank_garansi_type") +export class BankGaransiType { + @PrimaryGeneratedColumn("uuid") + id: string; + + @Column({ + nullable: true, + length: 256, + }) + name: string; + + @Column({ + type: "enum", + enum: Status, + nullable: false, + }) + status: Status; + + @OneToMany(() => BankGaransi, (bank_garansi) => bank_garansi.bgTypeId) + bank_garansi: BankGaransi[]; + + @Column() + @CreateDateColumn() + created_at: Date; + + @Column({ nullable: true }) + @UpdateDateColumn() + updated_at: Date; + + @Column({ nullable: true }) + @DeleteDateColumn() + deleted_at: Date; +} diff --git a/src/index.ts b/src/index.ts index 504f385..0602b8c 100644 --- a/src/index.ts +++ b/src/index.ts @@ -28,38 +28,44 @@ import { Category } from "./entity/categories"; import { CategorySource } from "./types/category_source"; import { PullerStatus } from "./entity/puller_status"; import { Target } from "./entity/targets"; +import { BankGaransi } from "./entity/bank_garansi"; +import { BankGaransiType } from "./entity/bank_garansi_type"; +import { BankGaransiStatus } from "./entity/bank_garansi_status"; export { - User, - UserRole, - UserActivity, - UserRefreshToken, - TrialBalanceBranch, - TrialBalanceConsolidation, - LNKOLEK, - CifAccount, - ActivityType, - ErrorType, - ErrorValidation, - Paging, - RoleList, - Status, - EmailBody, - Product, - Branch, - Menu, - Administrativu, - Aldeia, - ClassEconomi, - District, - IncomeTier, - Munisipo, - Suco, - LogPull, - LogPullType, - StatusLogPull, - Category, - CategorySource, - PullerStatus, - Target -}; \ No newline at end of file + User, // + UserRole, + UserActivity, + UserRefreshToken, + TrialBalanceBranch, + TrialBalanceConsolidation, + LNKOLEK, + CifAccount, + ActivityType, + ErrorType, + ErrorValidation, + Paging, + RoleList, + Status, + EmailBody, + Product, + Branch, + Menu, + Administrativu, + Aldeia, + ClassEconomi, + District, + IncomeTier, + Munisipo, + Suco, + LogPull, + LogPullType, + StatusLogPull, + Category, + CategorySource, + PullerStatus, + Target, + BankGaransi, + BankGaransiType, + BankGaransiStatus, +};