package v1

import (
	"database/sql"
	"time"
)

type KBAnswer struct {
	ID                string       `json:"id" gorm:"primary_key;column:id"` // answerMsgOpenID
	CreatedAt         time.Time    `json:"createdAt" gorm:"column:createdAt"`
	UpdatedAt         sql.NullTime `json:"updatedAt" gorm:"column:updatedAt"`
	SenderLarkID      string       `json:"senderLarkID" gorm:"column:senderLarkID"`
	QuestionMsgOpenID string       `json:"questionMsgOpenID" gorm:"column:questionMsgOpenID"`
	Question          string       `json:"question" gorm:"column:question"`
	Answer            string       `json:"answer" gorm:"column:answer"`
	AnswerMsgOpenID   string       `json:"answerMsgOpenID" gorm:"column:answerMsgOpenID"`
	KBRefs            string       `json:"kbRefs" gorm:"column:kbRefs"`
	Reaction          string       `json:"reaction" gorm:"column:reaction"`
	LarkChatID        string       `json:"larkChatID" gorm:"column:larkChatID"`
	Principal         string       `json:"principal" gorm:"column:principal"`
}

func (k *KBAnswer) TableName() string {
	return "kb_answer"
}

const (
	ReactionGood = "good"
	ReactionBad  = "bad"
)

type KBReaction struct {
	V          string `json:"v"`
	UserLarkID string `json:"userLarkID"`
}
