22 lines
974 B
Go
22 lines
974 B
Go
package model
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/google/uuid"
|
|
)
|
|
|
|
type UserCustomStrategy struct {
|
|
ID uuid.UUID `gorm:"type:uuid;primary_key;default:gen_random_uuid()" json:"id"`
|
|
UserID uuid.UUID `gorm:"type:uuid;not null;uniqueIndex:idx_user_strategy_key" json:"user_id"`
|
|
StrategyKey string `gorm:"type:varchar(100);not null;uniqueIndex:idx_user_strategy_key" json:"strategy_key"`
|
|
Label string `gorm:"type:varchar(255);not null" json:"label"`
|
|
Icon string `gorm:"type:varchar(10)" json:"icon"`
|
|
Description string `gorm:"type:text" json:"description"`
|
|
PromptTemplate string `gorm:"type:text" json:"prompt_template"`
|
|
FewShotExamples string `gorm:"type:jsonb;default:'[]'" json:"few_shot_examples"` // Stored as JSON string
|
|
IsActive bool `gorm:"default:true" json:"is_active"`
|
|
SortOrder int `gorm:"default:0" json:"sort_order"`
|
|
CreatedAt time.Time `json:"created_at"`
|
|
}
|