feat: 新增Model管理模块
- 添加 Model 实体定义 - 实现 Model CRUD 接口 - 添加 Model 仓储层和服务层 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
53
server/internal/repository/model_repo.go
Normal file
53
server/internal/repository/model_repo.go
Normal file
@@ -0,0 +1,53 @@
|
||||
package repository
|
||||
|
||||
import (
|
||||
"x-agents/server/internal/model"
|
||||
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
// ModelRepository 模型仓储
|
||||
type ModelRepository struct {
|
||||
db *gorm.DB
|
||||
}
|
||||
|
||||
func NewModelRepository(db *gorm.DB) *ModelRepository {
|
||||
return &ModelRepository{db: db}
|
||||
}
|
||||
|
||||
// FindAll 获取所有模型
|
||||
func (r *ModelRepository) FindAll() ([]model.ModelInfo, error) {
|
||||
var models []model.ModelInfo
|
||||
err := r.db.Order("created_at desc").Find(&models).Error
|
||||
return models, err
|
||||
}
|
||||
|
||||
// FindByID 根据 ID 获取模型
|
||||
func (r *ModelRepository) FindByID(id string) (*model.ModelInfo, error) {
|
||||
var model model.ModelInfo
|
||||
err := r.db.Where("id = ?", id).First(&model).Error
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return &model, nil
|
||||
}
|
||||
|
||||
// Create 创建模型
|
||||
func (r *ModelRepository) Create(info *model.ModelInfo) error {
|
||||
return r.db.Create(info).Error
|
||||
}
|
||||
|
||||
// Update 更新模型
|
||||
func (r *ModelRepository) Update(id string, info *model.ModelInfo) error {
|
||||
return r.db.Where("id = ?", id).Updates(info).Error
|
||||
}
|
||||
|
||||
// Delete 删除模型
|
||||
func (r *ModelRepository) Delete(id string) error {
|
||||
return r.db.Where("id = ?", id).Delete(&model.ModelInfo{}).Error
|
||||
}
|
||||
|
||||
// UpdateFields 更新指定字段
|
||||
func (r *ModelRepository) UpdateFields(id string, fields map[string]interface{}) error {
|
||||
return r.db.Model(&model.ModelInfo{}).Where("id = ?", id).Updates(fields).Error
|
||||
}
|
||||
Reference in New Issue
Block a user