import { Column, Entity, Index, JoinTable, ManyToMany } from "typeorm"; import { User } from "./User"; @Index("uq_role_code", ["code"], { unique: true }) @Index("PK_role", ["id"], { unique: true }) @Entity("role", { schema: "sec" }) export class Role { @Column("integer", { primary: true, name: "id" }) id: number; @Column("timestamp without time zone", { name: "created_date" }) createdDate: Date; @Column("integer", { name: "created_by" }) createdBy: number; @Column("timestamp without time zone", { name: "modified_date" }) modifiedDate: Date; @Column("integer", { name: "modified_by" }) modifiedBy: number; @Column("smallint", { name: "state" }) state: number; @Column("character varying", { name: "code", length: 128 }) code: string; @Column("character varying", { name: "name", length: 256 }) name: string; @ManyToMany(() => User, (user) => user.roles) @JoinTable({ name: "user_role", joinColumns: [{ name: "role_id", referencedColumnName: "id" }], inverseJoinColumns: [{ name: "user_id", referencedColumnName: "id" }], schema: "sec", }) users: User[]; }