import { Movimiento } from 'src/movimiento/entities/movimiento.entity';
import {
  Column,
  Entity,
  JoinColumn,
  ManyToOne,
  OneToMany,
  PrimaryGeneratedColumn,
} from 'typeorm';

@Entity()
export class Tipo_Usuario {
  @PrimaryGeneratedColumn()
  id_tipo_usuario: number;

  @Column({ type: 'varchar', length: 50, nullable: true })
  tipo_usuario: string;

  @OneToMany(() => Usuario, (usuarios) => usuarios.tipoUsuario)
  usuarios: Usuario[];
}

@Entity()
export class Usuario {
  @PrimaryGeneratedColumn()
  id_usuario: number;

  @Column({ type: 'varchar', length: 100, nullable: true })
  nombre: string;

  @Column({ type: 'varchar', length: 100, nullable: true })
  contraseña: string;

  @JoinColumn({ name: 'id_tipo_usuario' })
  @ManyToOne(() => Tipo_Usuario, (tipoUsuario) => tipoUsuario.usuarios)
  tipoUsuario: Tipo_Usuario;

  @OneToMany(() => Movimiento, (movimiento) => movimiento.id_movimiento)
  movimiento: Movimiento[];
}
