package entity

import (
	"time"

	"github.com/google/uuid"
)

type Schedules struct {
	ID               uint       `json:"id" gorm:"primaryKey;type:int4;autoIncrement"`
	Title            string     `json:"title" gorm:"type:varchar"`
	Description      string     `json:"description" gorm:"type:varchar"`
	Location         string     `json:"location" gorm:"type:varchar"`
	IsLiveStreaming  *bool      `json:"is_live_streaming" gorm:"type:bool;default:false"`
	LiveStreamingUrl *string    `json:"live_streaming_url" gorm:"type:varchar"`
	TypeId           int        `json:"type_id" gorm:"type:int4"`
	StartDate        *time.Time `json:"start_date" gorm:"type:date"`
	EndDate          *time.Time `json:"end_date" gorm:"type:date"`
	StartTime        *string    `json:"start_time" gorm:"type:varchar"`
	EndTime          *string    `json:"end_time" gorm:"type:varchar"`
	Speakers         string     `json:"speakers" gorm:"type:varchar"`
	PosterImagePath  *string    `json:"poster_image_path" gorm:"type:varchar"`
	CreatedById      *uint      `json:"created_by_id" gorm:"type:int4"`
	StatusId         *int       `json:"status_id" gorm:"type:int4"`
	ClientId         *uuid.UUID `json:"client_id" gorm:"type:UUID"`
	IsActive         *bool      `json:"is_active" gorm:"type:bool;default:true"`
	CreatedAt        time.Time  `json:"created_at" gorm:"default:now()"`
	UpdatedAt        time.Time  `json:"updated_at" gorm:"default:now()"`
}
