package flow_definition import ( "approveflow/app/http/base" "approveflow/app/provider/flow_definition" "approveflow/app/utils" "github.com/Superdanda/hade/framework/gin" "net/http" ) type flowDefinitionSaveParam struct { Name string `json:"name"` // 流程名称 Description string `json:"description"` // 流程描述 } // DefinitionSave 保存流程定义 // @Summary 保存新的流程定义 // @Description 创建一个新的流程定义 // @ID flow-definition-save // @Tags flow-definition // @Accept json // @Produce json // @Param flowDefinitionSaveParam body flowDefinitionSaveParam true "流程定义保存请求参数" // @Success 200 {object} base.Result "返回成功信息" // @Failure 500 {object} base.Result "操作失败" // @Router /definition/save [post] func (a *FlowDefinitionApi) DefinitionSave(context *gin.Context) { param := utils.QuickBind[flowDefinitionSaveParam](context) definitionService := context.MustMake(flow_definition.FlowDefinitionKey).(flow_definition.Service) approvalFlow := flow_definition.NewApprovalFlow(param.Name, param.Description) err := definitionService.CreateFlow(context, approvalFlow) if err != nil { context.ISetStatus(http.StatusInternalServerError).IJson(base.Fail("操作失败")) return } context.ISetOkStatus().IJson(base.SuccessWithOKMessage()) }