package flow import ( flowDao "ai-agent/workflow/dao/flow" flowDto "ai-agent/workflow/model/dto/flow" "context" "github.com/gogf/gf/v2/util/gconv" ) var FlowTemplateService = &flowTemplateService{} type flowTemplateService struct{} func (s *flowTemplateService) Create(ctx context.Context, req *flowDto.CreateFlowTemplateReq) (res *flowDto.CreateFlowTemplateRes, err error) { req.NodeInputParams = ExtractFlowNodeFrom(req.FlowContent) id, err := flowDao.FlowTemplateDao.Insert(ctx, req) if err != nil { return } return &flowDto.CreateFlowTemplateRes{Id: id}, nil } func (s *flowTemplateService) Update(ctx context.Context, req *flowDto.UpdateFlowTemplateReq) (err error) { req.NodeInputParams = ExtractFlowNodeFrom(req.FlowContent) _, err = flowDao.FlowTemplateDao.Update(ctx, req) return } func (s *flowTemplateService) Delete(ctx context.Context, req *flowDto.DeleteFlowTemplateReq) (err error) { _, err = flowDao.FlowTemplateDao.Delete(ctx, req) return } func (s *flowTemplateService) Get(ctx context.Context, req *flowDto.GetFlowTemplateReq) (res *flowDto.FlowTemplateVO, err error) { flowInfo, err := flowDao.FlowTemplateDao.Get(ctx, req) if err != nil { return } res = new(flowDto.FlowTemplateVO) err = gconv.Struct(flowInfo, res) return } func (s *flowTemplateService) List(ctx context.Context, req *flowDto.ListFlowTemplateReq) (res *flowDto.ListFlowTemplateRes, err error) { list, total, err := flowDao.FlowTemplateDao.List(ctx, req) if err != nil { return } res = &flowDto.ListFlowTemplateRes{ Total: total, } err = gconv.Struct(list, &res.List) return }