feat: 百科知识库存入向量
This commit is contained in:
@@ -8,4 +8,5 @@ type ServiceGroup struct {
|
||||
MenuService
|
||||
OperationRecordService
|
||||
OssService
|
||||
SysAiConfigService
|
||||
}
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
package system
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"go.uber.org/zap"
|
||||
"sundynix-go/global"
|
||||
"sundynix-go/model/system"
|
||||
)
|
||||
|
||||
type SysAiConfigService struct{}
|
||||
|
||||
// Create 创建AI配置
|
||||
func (s *SysAiConfigService) Create(cfg *system.SysAiConfig) error {
|
||||
return global.DB.Create(cfg).Error
|
||||
}
|
||||
|
||||
// Update 更新AI配置
|
||||
func (s *SysAiConfigService) Update(cfg *system.SysAiConfig) error {
|
||||
return global.DB.Updates(cfg).Error
|
||||
}
|
||||
|
||||
// SetActive 设置激活配置
|
||||
func (s *SysAiConfigService) SetActive(id string) error {
|
||||
// 先将所有的设为 0
|
||||
err := global.DB.Model(&system.SysAiConfig{}).Where("1 = 1").Update("is_active", 0).Error
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
// 再将指定的设为 1
|
||||
return global.DB.Model(&system.SysAiConfig{}).Where("id = ?", id).Update("is_active", 1).Error
|
||||
}
|
||||
|
||||
// GetActiveAiConfig 获取当前激活的AI配置
|
||||
func (s *SysAiConfigService) GetActiveAiConfig() (*system.SysAiConfig, error) {
|
||||
var cfg system.SysAiConfig
|
||||
err := global.DB.Where("is_active = 1").First(&cfg).Error
|
||||
if err != nil {
|
||||
global.Logger.Error("No active AI Config found", zap.Error(err))
|
||||
return nil, errors.New("无激活状态的AI配置")
|
||||
}
|
||||
return &cfg, nil
|
||||
}
|
||||
|
||||
// GetList 获取所有配置
|
||||
func (s *SysAiConfigService) GetList() ([]system.SysAiConfig, error) {
|
||||
var list []system.SysAiConfig
|
||||
err := global.DB.Order("created_at desc").Find(&list).Error
|
||||
return list, err
|
||||
}
|
||||
Reference in New Issue
Block a user