import {
  Entity,
  PrimaryGeneratedColumn,
  Column,
  CreateDateColumn,
  UpdateDateColumn,
  ManyToOne,
  JoinColumn,
} from "typeorm"
import { TeamMember } from "../../team-member/entities/team_member.entity"

@Entity("chat_conversations")
export class ChatConversation {
  @PrimaryGeneratedColumn()
  id: number

  @Column()
  dispatcher_id: number

  @Column()
  driver_id: number

  @Column({ default: 0 })
  dispatcher_unread_count: number

  @Column({ default: 0 })
  driver_unread_count: number

  @CreateDateColumn()
  created_at: Date

  @UpdateDateColumn()
  updated_at: Date

  @ManyToOne(() => TeamMember)
  @JoinColumn({ name: "dispatcher_id" })
  dispatcher: TeamMember

  @ManyToOne(() => TeamMember)
  @JoinColumn({ name: "driver_id" })
  driver: TeamMember
}
