import {
  Entity,
  PrimaryGeneratedColumn,
  Column,
  CreateDateColumn,
  UpdateDateColumn,
} from "typeorm";

@Entity()
export class EntityBase {
  @PrimaryGeneratedColumn("uuid")
  id!: string;

  @CreateDateColumn({ comment: "สร้างข้อมูลเมื่อ" })
  createdAt!: Date;

  @Column({
    comment: "User Id ที่สร้างข้อมูล",
    length: 40,
    default: "00000000-0000-0000-0000-000000000000",
  })
  createdUserId!: String;

  @CreateDateColumn({ comment: "แก้ไขข้อมูลล่าสุดเมื่อ" })
  lastUpdatedAt!: Date;

  @Column({
    comment: "User Id ที่แก้ไขข้อมูล",
    length: 40,
    default: "00000000-0000-0000-0000-000000000000",
  })
  lastUpdateUserId!: String;

  @Column({ comment: "ชื่อ User ที่สร้างข้อมูล", length: 200, default: "System Administrator" })
  createdFullName!: String;

  @Column({ comment: "ชื่อ User ที่แก้ไขข้อมูลล่าสุด", length: 200, default: "System Administrator" })
  lastUpdateFullName!: String;
}
