feat: sync AI compose and ChatBot features

This commit is contained in:
A 2026-07-03 19:43:20 +08:00
parent 35e5d38f4d
commit b7269b135f
75 changed files with 5426 additions and 123 deletions

21
internal/store/ai.go Normal file
View file

@ -0,0 +1,21 @@
package store
import (
"context"
"telesrv/internal/domain"
)
// AIComposeStore 持久化用户自定义 AI tone 与每用户已保存列表。
// 默认 tone 是代码目录配置,不进 store;memory 与 postgres 行为必须一致。
type AIComposeStore interface {
CreateAIComposeTone(ctx context.Context, tone domain.AIComposeTone) error
UpdateAIComposeTone(ctx context.Context, tone domain.AIComposeTone) error
DeleteAIComposeTone(ctx context.Context, ownerUserID, toneID int64) error
GetAIComposeToneByID(ctx context.Context, id, accessHash int64) (domain.AIComposeTone, bool, error)
GetAIComposeToneBySlug(ctx context.Context, slug string) (domain.AIComposeTone, bool, error)
ListAIComposeTonesForUser(ctx context.Context, userID int64) ([]domain.AIComposeTone, error)
SaveAIComposeTone(ctx context.Context, userID, toneID int64) error
UnsaveAIComposeTone(ctx context.Context, userID, toneID int64) error
SavedAIComposeToneCount(ctx context.Context, userID int64) (int, error)
}