feat(db): add doctor favorite and item package entities
This commit is contained in:
41
src/entity/doctor_favorite_item.ts
Normal file
41
src/entity/doctor_favorite_item.ts
Normal file
@ -0,0 +1,41 @@
|
||||
import {
|
||||
Entity,
|
||||
PrimaryGeneratedColumn,
|
||||
ManyToOne,
|
||||
JoinColumn,
|
||||
CreateDateColumn,
|
||||
UpdateDateColumn,
|
||||
DeleteDateColumn,
|
||||
Column,
|
||||
Index,
|
||||
} from "typeorm";
|
||||
|
||||
import { User } from "./users";
|
||||
import { ItemMaster } from "./pharmacy/item_master";
|
||||
|
||||
@Entity("doctor_favorite_item")
|
||||
@Index(["doctor", "item_master"], { unique: true })
|
||||
export class DoctorFavoriteItem {
|
||||
@PrimaryGeneratedColumn("uuid")
|
||||
id!: string;
|
||||
|
||||
@ManyToOne(() => User, { nullable: false, onDelete: "CASCADE" })
|
||||
@JoinColumn({ name: "doctor_id" })
|
||||
doctor!: User;
|
||||
|
||||
@ManyToOne(() => ItemMaster, { nullable: false, onDelete: "CASCADE" })
|
||||
@JoinColumn({ name: "item_master_id" })
|
||||
item_master!: ItemMaster;
|
||||
|
||||
@CreateDateColumn()
|
||||
created_at!: Date;
|
||||
|
||||
@Column({ nullable: true, length: 256 })
|
||||
created_by?: string;
|
||||
|
||||
@UpdateDateColumn({ nullable: true })
|
||||
updated_at?: Date;
|
||||
|
||||
@Column({ nullable: true, length: 256 })
|
||||
updated_by?: string;
|
||||
}
|
||||
56
src/entity/doctor_item_package.ts
Normal file
56
src/entity/doctor_item_package.ts
Normal file
@ -0,0 +1,56 @@
|
||||
import {
|
||||
Entity,
|
||||
PrimaryGeneratedColumn,
|
||||
ManyToOne,
|
||||
JoinColumn,
|
||||
ManyToMany,
|
||||
JoinTable,
|
||||
CreateDateColumn,
|
||||
UpdateDateColumn,
|
||||
DeleteDateColumn,
|
||||
Column,
|
||||
Index,
|
||||
} from "typeorm";
|
||||
|
||||
import { User } from "./users";
|
||||
import { ItemMaster } from "./pharmacy/item_master";
|
||||
|
||||
@Entity("doctor_item_package")
|
||||
@Index(["doctor", "name"], { unique: true })
|
||||
export class DoctorItemPackage {
|
||||
@PrimaryGeneratedColumn("uuid")
|
||||
id!: string;
|
||||
|
||||
@ManyToOne(() => User, { nullable: false, onDelete: "CASCADE" })
|
||||
@JoinColumn({ name: "doctor_id" })
|
||||
doctor!: User;
|
||||
|
||||
@Column({ type: "text", nullable: false })
|
||||
name!: string;
|
||||
|
||||
@Column({ type: "text", nullable: true })
|
||||
description?: string;
|
||||
|
||||
@ManyToMany(() => ItemMaster)
|
||||
@JoinTable({
|
||||
name: "doctor_item_package_items",
|
||||
joinColumn: { name: "doctor_item_package_id", referencedColumnName: "id" },
|
||||
inverseJoinColumn: { name: "item_master_id", referencedColumnName: "id" },
|
||||
})
|
||||
items!: ItemMaster[];
|
||||
|
||||
@Column({ type: "boolean", default: true })
|
||||
active!: boolean;
|
||||
|
||||
@CreateDateColumn()
|
||||
created_at!: Date;
|
||||
|
||||
@Column({ nullable: true, length: 256 })
|
||||
created_by?: string;
|
||||
|
||||
@UpdateDateColumn({ nullable: true })
|
||||
updated_at?: Date;
|
||||
|
||||
@Column({ nullable: true, length: 256 })
|
||||
updated_by?: string;
|
||||
}
|
||||
@ -20,6 +20,8 @@ export * from "../entity/service_fare"
|
||||
export * from "../entity/service_package"
|
||||
export * from "../entity/department"
|
||||
export * from "../entity/doctor_schedule"
|
||||
export * from "../entity/doctor_favorite_item"
|
||||
export * from "../entity/doctor_item_package"
|
||||
export * from "../entity/measurement_unit"
|
||||
export * from "../entity/reference_range"
|
||||
export * from "../entity/queue_monitoring"
|
||||
|
||||
Reference in New Issue
Block a user