import {
  Column,
  Entity,
  JoinColumn,
  ManyToOne,
  PrimaryGeneratedColumn,
  Unique,
} from "typeorm";
import { CosaTrae } from "../../catalogos/entities/cosa-trae.entity";
import { OrdenTrabajo } from "./orden-trabajo.entity";

@Entity("taller_ot_cosas_trae")
@Unique(["otId", "cosaTraeId"])
export class OtCosaTrae {
  @PrimaryGeneratedColumn()
  id: number;

  @Column({ name: "ot_id" })
  otId: number;

  @ManyToOne(() => OrdenTrabajo, (ot) => ot.cosasTrae, { onDelete: "CASCADE" })
  @JoinColumn({ name: "ot_id" })
  ordenTrabajo: OrdenTrabajo;

  @Column({ name: "cosa_trae_id" })
  cosaTraeId: number;

  @ManyToOne(() => CosaTrae)
  @JoinColumn({ name: "cosa_trae_id" })
  cosaTrae: CosaTrae;

  @Column({ default: 1 })
  cantidad: number;

  @Column({ length: 255, nullable: true })
  observacion: string;
}
