feat:完善项目信息
This commit is contained in:
@ -4,19 +4,26 @@ import (
|
||||
"SciencesServer/app/api/admin/model"
|
||||
model2 "SciencesServer/app/common/model"
|
||||
"SciencesServer/app/session"
|
||||
"errors"
|
||||
)
|
||||
|
||||
type Instance struct{ *session.Admin }
|
||||
|
||||
type InstanceHandle func(session *session.Admin) *Instance
|
||||
|
||||
type InstanceParams struct {
|
||||
ID, ParentID uint64
|
||||
Kind, Sort int
|
||||
Name, Auth, Remark string
|
||||
}
|
||||
|
||||
// Index 列表信息
|
||||
func (c *Instance) Index() ([]*Tree, error) {
|
||||
mSysAuth := model.NewSysAuth()
|
||||
|
||||
where := []*model2.ModelWhereOrder{
|
||||
&model2.ModelWhereOrder{Order: model2.NewOrder("sort", model2.OrderModeToAsc)},
|
||||
&model2.ModelWhereOrder{Order: model2.NewOrder("parent_id", model2.OrderModeToAsc)},
|
||||
&model2.ModelWhereOrder{Order: model2.NewOrder("sort", model2.OrderModeToDesc)},
|
||||
}
|
||||
out := make([]*model2.SysAuth, 0)
|
||||
|
||||
@ -26,6 +33,44 @@ func (c *Instance) Index() ([]*Tree, error) {
|
||||
return tree(out, 0), nil
|
||||
}
|
||||
|
||||
// Form 数据操作
|
||||
func (c *Instance) Form(params *InstanceParams) error {
|
||||
mSysAuth := model.NewSysAuth()
|
||||
|
||||
if params.ID > 0 {
|
||||
mSysAuth.ID = params.ID
|
||||
|
||||
if isExist, err := model2.First(mSysAuth.SysAuth); err != nil {
|
||||
return err
|
||||
} else if !isExist {
|
||||
return errors.New("操作错误,权限信息不存在")
|
||||
}
|
||||
}
|
||||
mSysAuth.ParentID = params.ParentID
|
||||
mSysAuth.Kind = model2.SysAuthKind(params.Kind)
|
||||
mSysAuth.Name = params.Name
|
||||
mSysAuth.Auth = params.Auth
|
||||
mSysAuth.Sort = params.Sort
|
||||
mSysAuth.Remark = params.Remark
|
||||
|
||||
if mSysAuth.ID > 0 {
|
||||
return model2.Updates(mSysAuth.SysAuth, mSysAuth.SysAuth)
|
||||
}
|
||||
return model2.Create(mSysAuth.SysAuth)
|
||||
}
|
||||
|
||||
func (c *Instance) Delete(id uint64) error {
|
||||
mSysAuth := model.NewSysAuth()
|
||||
mSysAuth.ID = id
|
||||
|
||||
err := model2.Delete(mSysAuth.SysAuth)
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func NewInstance() InstanceHandle {
|
||||
return func(session *session.Admin) *Instance {
|
||||
return &Instance{Admin: session}
|
||||
|
Reference in New Issue
Block a user