mirror of
https://gitee.com/dromara/mayfly-go
synced 2025-11-04 00:10:25 +08:00
63 lines
1.8 KiB
Go
63 lines
1.8 KiB
Go
package api
|
|
|
|
import (
|
|
"mayfly-go/internal/machine/api/form"
|
|
"mayfly-go/internal/machine/api/vo"
|
|
"mayfly-go/internal/machine/application"
|
|
"mayfly-go/internal/machine/application/dto"
|
|
"mayfly-go/internal/machine/domain/entity"
|
|
"mayfly-go/internal/machine/imsg"
|
|
|
|
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"
|
|
)
|
|
|
|
type MachineCmdConf struct {
|
|
machineCmdConfApp application.MachineCmdConf `inject:"T"`
|
|
tagTreeRelateApp tagapp.TagTreeRelate `inject:"T"`
|
|
}
|
|
|
|
func (mcc *MachineCmdConf) ReqConfs() *req.Confs {
|
|
reqs := [...]*req.Conf{
|
|
req.NewGet("", mcc.MachineCmdConfs),
|
|
|
|
req.NewPost("", mcc.Save).Log(req.NewLogSaveI(imsg.LogMachineSecurityCmdSave)).RequiredPermissionCode("cmdconf:save"),
|
|
|
|
req.NewDelete(":id", mcc.Delete).Log(req.NewLogSaveI(imsg.LogMachineSecurityCmdDelete)).RequiredPermissionCode("cmdconf:del"),
|
|
}
|
|
|
|
return req.NewConfs("machine/security/cmd-confs", reqs[:]...)
|
|
}
|
|
|
|
func (m *MachineCmdConf) MachineCmdConfs(rc *req.Ctx) {
|
|
cond := req.BindQuery[*entity.MachineCmdConf](rc)
|
|
|
|
var vos []*vo.MachineCmdConfVO
|
|
err := m.machineCmdConfApp.ListByCondToAny(cond, &vos)
|
|
biz.ErrIsNil(err)
|
|
|
|
m.tagTreeRelateApp.FillTagInfo(tagentity.TagRelateTypeMachineCmd, collx.ArrayMap(vos, func(mvo *vo.MachineCmdConfVO) tagentity.IRelateTag {
|
|
return mvo
|
|
})...)
|
|
|
|
rc.ResData = vos
|
|
}
|
|
|
|
func (m *MachineCmdConf) Save(rc *req.Ctx) {
|
|
cmdForm, mcj := req.BindJsonAndCopyTo[*form.MachineCmdConfForm, *entity.MachineCmdConf](rc)
|
|
rc.ReqParam = cmdForm
|
|
|
|
err := m.machineCmdConfApp.SaveCmdConf(rc.MetaCtx, &dto.SaveMachineCmdConf{
|
|
CmdConf: mcj,
|
|
CodePaths: cmdForm.CodePaths,
|
|
})
|
|
biz.ErrIsNil(err)
|
|
}
|
|
|
|
func (m *MachineCmdConf) Delete(rc *req.Ctx) {
|
|
m.machineCmdConfApp.DeleteCmdConf(rc.MetaCtx, uint64(rc.PathParamInt("id")))
|
|
}
|