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

@Entity("taller_cotizacion_locks")
export class CotizacionLock {
  @PrimaryGeneratedColumn()
  id: number;

  @Column({ name: "cotizacion_id", type: "int", unique: true })
  @Index()
  cotizacionId: number;

  @Column({ length: 36 })
  @Index()
  token: string;

  @Column({ name: "usuario_id", type: "int" })
  @Index()
  usuarioId: number;

  @Column({ name: "usuario_nombre", type: "varchar", length: 255, nullable: true })
  usuarioNombre: string | null;

  @Column({ name: "expires_at", type: "datetime" })
  @Index()
  expiresAt: Date;

  @CreateDateColumn({ name: "created_at" })
  createdAt: Date;

  @UpdateDateColumn({ name: "updated_at" })
  updatedAt: Date;
}
