import { Column, Entity, JoinColumn, ManyToOne, PrimaryGeneratedColumn, Unique, } from "typeorm"; import { Country } from "./Country"; @Entity({ comment: "Tabla creada para guardar los tipos de bancos que hay en la plataforma por país.", }) @Unique("unique_code_per_country", ["code", "country"]) export class Bank { @PrimaryGeneratedColumn({ type: "int", comment: "Número de identificación (ID) único de cada registro.", }) id: number; @Column({ length: 20, type: "varchar", comment: "Código identificador de la entidad bancaria.\r\n\r\nEste código es único y no se puede repetir por país.", }) code: string; @ManyToOne(() => Country, (country) => country.banks, { onDelete: "RESTRICT", onUpdate: "NO ACTION", }) @JoinColumn({ name: "country" }) country: Country; @Column({ type: "varchar", length: 50, comment: "Nombre de la entidad bancaria.\r\n\r\nEste nombre es el que se mostrará en la plataforma.", }) name: string; @Column({ default: 1, type: "int", width: 1, comment: "Estado del registro, es decir:\r\n1. Activo: Es visible en la plataforma.\r\n0. Inactivo: No será visible en la plataforma.", }) status: number; }