package models

import "time"

type AstrologerStatus struct {
	ID            uint       `gorm:"primaryKey;column:id"`
	UserID        uint       `gorm:"column:user_id"`
	AstrologerID  uint       `gorm:"column:astrologer_id"`
	IsOnline      bool       `gorm:"column:is_online"`
	IsChatOnline  bool       `gorm:"column:is_chat_online"`
	IsCallOnline  bool       `gorm:"column:is_call_online"`
	IsBusy        bool       `gorm:"column:is_busy"`
	QuickDND      bool       `gorm:"column:quick_dnd"`
	CurrentStatus string     `gorm:"column:current_status"`
	ChatOnlineAt  *time.Time `gorm:"column:chat_online_at"`
	CallOnlineAt  *time.Time `gorm:"column:call_online_at"`
	OnlineAt      *time.Time `gorm:"column:online_at"`
	OfflineAt     *time.Time `gorm:"column:offline_at"`
	BusyAt        *time.Time `gorm:"column:busy_at"`
	DNDStartedAt  *time.Time `gorm:"column:dnd_started_at"`
	DNDEndedAt    *time.Time `gorm:"column:dnd_ended_at"`
	LastActiveAt  *time.Time `gorm:"column:last_active_at"`
	IsActive      bool       `gorm:"column:is_active"`
	IsDelete      bool       `gorm:"column:is_delete"`
	CreatedBy     *uint      `gorm:"column:created_by"`
	ModifiedBy    *uint      `gorm:"column:modified_by"`
	CreatedAt     *time.Time `gorm:"column:created_at"`
	UpdatedAt     *time.Time `gorm:"column:updated_at"`
}

func (AstrologerStatus) TableName() string {
	return "astrologer_status"
}
