import {
  Entity,
  PrimaryGeneratedColumn,
  Column,
  ManyToOne,
  OneToMany,
  CreateDateColumn,
  UpdateDateColumn
} from 'typeorm'
import { Tipo } from './Tipo'
import { Reservacion } from './Reservacion'
import { Equipo } from './Equipo'

@Entity()
export class Carrito {
  @PrimaryGeneratedColumn()
  id: number

  @Column()
  alias: number

  @Column()
  kiosko: number

  @OneToMany(
    (type) => Reservacion,
    (reservacion) => reservacion.carrito
  )
  reservaciones: Reservacion[]

  @OneToMany(
    (type) => Equipo,
    (equipo) => equipo.carrito
  )
  equipos: Equipo[]

  @ManyToOne(
    (type) => Tipo,
    (tipo) => tipo.carritos
  )
  tipo: Tipo

  @Column()
  @CreateDateColumn()
  createdAt: Date

  @Column()
  @UpdateDateColumn()
  updatedAt: Date
}
