mirror of
https://gitee.com/dromara/mayfly-go
synced 2025-11-02 23:40:24 +08:00
62 lines
1.7 KiB
Go
62 lines
1.7 KiB
Go
package api
|
|
|
|
import (
|
|
"mayfly-go/internal/flow/api/form"
|
|
"mayfly-go/internal/flow/api/vo"
|
|
"mayfly-go/internal/flow/application"
|
|
"mayfly-go/internal/flow/domain/entity"
|
|
tagapp "mayfly-go/internal/tag/application"
|
|
tagentity "mayfly-go/internal/tag/domain/entity"
|
|
"mayfly-go/pkg/biz"
|
|
"mayfly-go/pkg/req"
|
|
"mayfly-go/pkg/utils/collx"
|
|
"strconv"
|
|
"strings"
|
|
)
|
|
|
|
type Procdef struct {
|
|
ProcdefApp application.Procdef `inject:""`
|
|
TagTreeRelateApp tagapp.TagTreeRelate `inject:"TagTreeRelateApp"`
|
|
}
|
|
|
|
func (p *Procdef) GetProcdefPage(rc *req.Ctx) {
|
|
cond, page := req.BindQueryAndPage(rc, new(entity.Procdef))
|
|
var procdefs []*vo.Procdef
|
|
res, err := p.ProcdefApp.GetPageList(cond, page, &procdefs)
|
|
biz.ErrIsNil(err)
|
|
|
|
p.TagTreeRelateApp.FillTagInfo(tagentity.TagRelateTypeFlowDef, collx.ArrayMap(procdefs, func(mvo *vo.Procdef) tagentity.IRelateTag {
|
|
return mvo
|
|
})...)
|
|
|
|
rc.ResData = res
|
|
}
|
|
|
|
func (p *Procdef) GetProcdef(rc *req.Ctx) {
|
|
resourceType := rc.PathParamInt("resourceType")
|
|
resourceCode := rc.PathParam("resourceCode")
|
|
rc.ResData = p.ProcdefApp.GetProcdefByResource(rc.MetaCtx, int8(resourceType), resourceCode)
|
|
}
|
|
|
|
func (a *Procdef) Save(rc *req.Ctx) {
|
|
form := &form.Procdef{}
|
|
procdef := req.BindJsonAndCopyTo(rc, form, new(entity.Procdef))
|
|
rc.ReqParam = form
|
|
biz.ErrIsNil(a.ProcdefApp.SaveProcdef(rc.MetaCtx, &application.SaveProcdefParam{
|
|
Procdef: procdef,
|
|
CodePaths: form.CodePaths,
|
|
}))
|
|
}
|
|
|
|
func (p *Procdef) Delete(rc *req.Ctx) {
|
|
idsStr := rc.PathParam("id")
|
|
rc.ReqParam = idsStr
|
|
ids := strings.Split(idsStr, ",")
|
|
|
|
for _, v := range ids {
|
|
value, err := strconv.Atoi(v)
|
|
biz.ErrIsNilAppendErr(err, "string类型转换为int异常: %s")
|
|
biz.ErrIsNilAppendErr(p.ProcdefApp.DeleteProcdef(rc.MetaCtx, uint64(value)), "删除失败:%s")
|
|
}
|
|
}
|