From f091284734b21f70273979cf1e8eb25d0a37b373 Mon Sep 17 00:00:00 2001 From: wayanrivan Date: Tue, 7 Apr 2026 17:21:40 +0700 Subject: [PATCH] update: add city, province, subdistrict,ward --- src/entity/city.ts | 32 ++++++++++++++++++++++++++++++++ src/entity/province.ts | 32 ++++++++++++++++++++++++++++++++ src/entity/subdistrict.ts | 32 ++++++++++++++++++++++++++++++++ src/entity/ward.ts | 31 +++++++++++++++++++++++++++++++ src/schema/public.ts | 4 ++++ 5 files changed, 131 insertions(+) create mode 100644 src/entity/city.ts create mode 100644 src/entity/province.ts create mode 100644 src/entity/subdistrict.ts create mode 100644 src/entity/ward.ts diff --git a/src/entity/city.ts b/src/entity/city.ts new file mode 100644 index 0000000..6edb08c --- /dev/null +++ b/src/entity/city.ts @@ -0,0 +1,32 @@ +import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn, DeleteDateColumn, Index, ManyToOne, JoinColumn } from 'typeorm'; + +@Entity('city') +export class City { + @PrimaryGeneratedColumn('uuid') + id: string; + + @Column({ + nullable: false, + length: 128, + unique: true + }) + code: string; + + @Column({ + nullable: false, + type: "text" + }) + name: string; + + @Column() + @CreateDateColumn() + created_at: Date; + + @Column({ nullable: true }) + @UpdateDateColumn() + updated_at: Date; + + @Column({ nullable: true }) + @DeleteDateColumn() + deleted_at: Date; +} \ No newline at end of file diff --git a/src/entity/province.ts b/src/entity/province.ts new file mode 100644 index 0000000..4b8225a --- /dev/null +++ b/src/entity/province.ts @@ -0,0 +1,32 @@ +import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn, DeleteDateColumn, Index, ManyToOne, JoinColumn } from 'typeorm'; + +@Entity('province') +export class Province { + @PrimaryGeneratedColumn('uuid') + id: string; + + @Column({ + nullable: false, + length: 128, + unique: true + }) + code: string; + + @Column({ + nullable: false, + type: "text" + }) + name: string; + + @Column() + @CreateDateColumn() + created_at: Date; + + @Column({ nullable: true }) + @UpdateDateColumn() + updated_at: Date; + + @Column({ nullable: true }) + @DeleteDateColumn() + deleted_at: Date; +} \ No newline at end of file diff --git a/src/entity/subdistrict.ts b/src/entity/subdistrict.ts new file mode 100644 index 0000000..044d9dc --- /dev/null +++ b/src/entity/subdistrict.ts @@ -0,0 +1,32 @@ +import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn, DeleteDateColumn, Index, ManyToOne, JoinColumn } from 'typeorm'; + +@Entity('subdistrict') +export class Subdistrict { + @PrimaryGeneratedColumn('uuid') + id: string; + + @Column({ + nullable: false, + length: 128, + unique: true +}) +code: string; + + @Column({ + nullable: false, + type:"text" + }) + name: string; + + @Column() + @CreateDateColumn() + created_at: Date; + + @Column({ nullable: true }) + @UpdateDateColumn() + updated_at: Date; + + @Column({ nullable: true }) + @DeleteDateColumn() + deleted_at: Date; +} \ No newline at end of file diff --git a/src/entity/ward.ts b/src/entity/ward.ts new file mode 100644 index 0000000..63cefc4 --- /dev/null +++ b/src/entity/ward.ts @@ -0,0 +1,31 @@ +import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn, DeleteDateColumn, Index, ManyToOne, JoinColumn } from 'typeorm'; + +@Entity('ward') +export class Ward { + @PrimaryGeneratedColumn('uuid') + id: string; + + @Column({ + nullable: false, + length: 128, + unique: true +}) +code: string; + @Column({ + nullable: false, + type:"text" + }) + name: string; + + @Column() + @CreateDateColumn() + created_at: Date; + + @Column({ nullable: true }) + @UpdateDateColumn() + updated_at: Date; + + @Column({ nullable: true }) + @DeleteDateColumn() + deleted_at: Date; +} \ No newline at end of file diff --git a/src/schema/public.ts b/src/schema/public.ts index fdb75c1..0a63ddc 100644 --- a/src/schema/public.ts +++ b/src/schema/public.ts @@ -41,6 +41,10 @@ export * from "../entity/faretype" export * from "../entity/card_type" export * from "../entity/payment_method" export * from "../entity/registrationfee" +export * from "../entity/province" +export * from "../entity/city" +export * from "../entity/subdistrict" +export * from "../entity/ward" export * from "../types/action"; export * from "../types/error";