package entities

import (
	"time"

	"github.com/google/uuid"
)

type DispositionAction struct {
	ID           uuid.UUID `gorm:"type:uuid;primary_key;default:gen_random_uuid()" json:"id"`
	Code         string    `gorm:"uniqueIndex;not null" json:"code"`
	Label        string    `gorm:"not null" json:"label"`
	Description  *string   `json:"description,omitempty"`
	RequiresNote bool      `gorm:"not null;default:false" json:"requires_note"`
	GroupName    *string   `json:"group_name,omitempty"`
	SortOrder    *int      `json:"sort_order,omitempty"`
	IsActive     bool      `gorm:"not null;default:true" json:"is_active"`
	CreatedAt    time.Time `gorm:"autoCreateTime" json:"created_at"`
	UpdatedAt    time.Time `gorm:"autoUpdateTime" json:"updated_at"`
}

func (DispositionAction) TableName() string { return "disposition_actions" }
