Files
cid/controller/strategy_controller.go

78 lines
1.8 KiB
Go
Raw Permalink Normal View History

2025-12-06 10:38:48 +08:00
package controller
import (
"context"
2025-12-09 16:10:45 +08:00
"cid/model/dto"
"cid/service"
2025-12-06 15:24:30 +08:00
2025-12-06 10:38:48 +08:00
"github.com/gogf/gf/v2/errors/gerror"
)
2025-12-08 16:56:38 +08:00
var Strategy = new(strategy)
2025-12-06 10:38:48 +08:00
2025-12-06 15:24:30 +08:00
type strategy struct{}
2025-12-06 10:38:48 +08:00
// Create 创建策略
2025-12-06 15:24:30 +08:00
func (c *strategy) Create(ctx context.Context, req *dto.CreateStrategyReq) (res *dto.StrategyRes, err error) {
2025-12-06 10:38:48 +08:00
id, err := service.Strategy.CreateStrategy(ctx, req)
if err != nil {
return nil, err
}
strategy, err := service.Strategy.GetStrategyByID(ctx, id)
if err != nil {
return nil, err
}
return strategy, nil
}
// Update 更新策略
2025-12-06 15:24:30 +08:00
func (c *strategy) Update(ctx context.Context, req *dto.UpdateStrategyReq) (res *dto.StrategyRes, err error) {
2025-12-06 10:38:48 +08:00
affected, err := service.Strategy.UpdateStrategy(ctx, req)
if err != nil {
return nil, err
}
if affected == 0 {
return nil, gerror.New("策略更新失败")
}
strategy, err := service.Strategy.GetStrategyByID(ctx, req.Id)
if err != nil {
return nil, err
}
return strategy, nil
}
// Delete 删除策略
2025-12-06 15:24:30 +08:00
func (c *strategy) Delete(ctx context.Context, req *dto.DeleteStrategyReq) (res *dto.DeleteStrategyRes, err error) {
2025-12-06 10:38:48 +08:00
affected, err := service.Strategy.DeleteStrategy(ctx, req.Id)
if err != nil {
return nil, err
}
if affected == 0 {
return nil, gerror.New("策略删除失败")
}
return &dto.DeleteStrategyRes{
Success: true,
}, nil
}
// GetByID 根据ID获取策略
2025-12-06 15:24:30 +08:00
func (c *strategy) GetByID(ctx context.Context, req *dto.GetStrategyReq) (res *dto.StrategyRes, err error) {
2025-12-06 10:38:48 +08:00
strategy, err := service.Strategy.GetStrategyByID(ctx, req.Id)
if err != nil {
return nil, err
}
return strategy, nil
}
// GetList 获取策略列表
2025-12-06 15:24:30 +08:00
func (c *strategy) GetList(ctx context.Context, req *dto.GetStrategyListReq) (res *dto.GetStrategyListRes, err error) {
2025-12-06 10:38:48 +08:00
return service.Strategy.GetStrategyList(ctx, req)
}