update: patient_guarantor.ts add faretype relation and update swagger builder

This commit is contained in:
wayanrivan
2026-03-30 09:40:20 +07:00
parent ab64ca370a
commit b00bd08565

View File

@ -1,74 +1,79 @@
import {
Entity,
PrimaryGeneratedColumn,
Column,
ManyToOne,
JoinColumn,
CreateDateColumn,
UpdateDateColumn,
DeleteDateColumn,
} from "typeorm";
import { PatientGroup } from "./patient_group"; // Import entity PatientGroup
Entity,
PrimaryGeneratedColumn,
Column,
ManyToOne,
JoinColumn,
CreateDateColumn,
UpdateDateColumn,
DeleteDateColumn,
} from "typeorm";
import { PatientGroup } from "./patient_group"; // Import entity PatientGroup
import { FareType } from "./faretype";
@Entity("patient_guarantor")
export class PatientGuarantor {
@PrimaryGeneratedColumn("uuid")
id!: string;
@Entity("patient_guarantor")
export class PatientGuarantor {
@PrimaryGeneratedColumn("uuid")
id!: string;
// Nama penjamin pasien
@Column({ type: "text", nullable: false })
guarantor_name!: string;
// Nama penjamin pasien
@Column({ type: "text", nullable: false })
guarantor_name!: string;
// Nomor telepon penjamin pasien
@Column({ type: "text", nullable: false })
phone!: string;
// Nomor telepon penjamin pasien
@Column({ type: "text", nullable: false })
phone!: string;
// Provinsi tempat tinggal penjamin pasien
@Column({ type: "text", nullable: false })
province!: string;
// Provinsi tempat tinggal penjamin pasien
@Column({ type: "text", nullable: false })
province!: string;
// Kota tempat tinggal penjamin pasien
@Column({ type: "text", nullable: false })
city!: string;
// Kota tempat tinggal penjamin pasien
@Column({ type: "text", nullable: false })
city!: string;
// Kode pos tempat tinggal penjamin pasien
@Column({ type: "text", nullable: false })
zip_code!: string;
// Kode pos tempat tinggal penjamin pasien
@Column({ type: "text", nullable: false })
zip_code!: string;
// Nomor perjanjian atau kontrak
@Column({ type: "text", nullable: false })
agreement_no!: string;
// Nomor perjanjian atau kontrak
@Column({ type: "text", nullable: false })
agreement_no!: string;
// Deskripsi perjanjian atau kontrak
@Column({ type: "text", nullable: true })
agreement_desc?: string;
// Deskripsi perjanjian atau kontrak
@Column({ type: "text", nullable: true })
agreement_desc?: string;
// Relasi ke PatientGroup, setiap penjamin dapat terhubung dengan satu grup pasien
@ManyToOne(() => PatientGroup, { nullable: false })
@JoinColumn({ name: "patient_group_id" })
patient_group!: PatientGroup;
// Relasi ke PatientGroup, setiap penjamin dapat terhubung dengan satu grup pasien
@ManyToOne(() => PatientGroup, { nullable: false })
@JoinColumn({ name: "patient_group_id" })
patient_group!: PatientGroup;
// Tanggal pembuatan
@CreateDateColumn()
created_at!: Date;
@ManyToOne(() => FareType, { nullable: false })
@JoinColumn()
faretype!: FareType;
// Kolom untuk tracking siapa yang membuat
@Column({ nullable: true, length: 256 })
created_by?: string;
// Tanggal pembuatan
@CreateDateColumn()
created_at!: Date;
// Tanggal pembaruan
@UpdateDateColumn({ nullable: true })
updated_at?: Date;
// Kolom untuk tracking siapa yang membuat
@Column({ nullable: true, length: 256 })
created_by?: string;
// Kolom untuk tracking siapa yang memperbarui
@Column({ nullable: true, length: 256 })
updated_by?: string;
// Tanggal pembaruan
@UpdateDateColumn({ nullable: true })
updated_at?: Date;
// Tanggal penghapusan
@DeleteDateColumn({ nullable: true })
deleted_at?: Date;
// Kolom untuk tracking siapa yang memperbarui
@Column({ nullable: true, length: 256 })
updated_by?: string;
// Kolom untuk tracking siapa yang menghapus
@Column({ nullable: true, length: 256 })
deleted_by?: string;
}
// Tanggal penghapusan
@DeleteDateColumn({ nullable: true })
deleted_at?: Date;
// Kolom untuk tracking siapa yang menghapus
@Column({ nullable: true, length: 256 })
deleted_by?: string;
}