github.com/SupenBysz/gf-admin-community@v0.7.4/utility/permission/permission.go (about) 1 package permission 2 3 import ( 4 "github.com/SupenBysz/gf-admin-community/sys_model" 5 "github.com/SupenBysz/gf-admin-community/sys_model/sys_entity" 6 "github.com/SupenBysz/gf-admin-community/utility/idgen" 7 "github.com/kysion/base-library/utility/base_permission" 8 ) 9 10 func initFactory() { 11 if base_permission.Factory == nil { 12 base_permission.Factory = func() base_permission.IPermission { 13 return &sys_model.SysPermissionTree{ 14 SysPermission: &sys_entity.SysPermission{}, 15 } 16 } 17 } 18 } 19 20 func New(id int64, identifier string, name string, description ...string) base_permission.IPermission { 21 var desc string 22 if len(description) > 0 { 23 desc = description[0] 24 } 25 26 initFactory() 27 28 return base_permission.Factory().SetId(id).SetIdentifier(identifier).SetName(name).SetDescription(desc) 29 } 30 31 // NewInIdentifier 构造权限信息 32 func NewInIdentifier(identifier string, name string, description ...string) base_permission.IPermission { 33 var desc string 34 35 if len(description) > 0 { 36 desc = description[0] 37 } 38 39 initFactory() 40 41 return base_permission.Factory().SetId(idgen.NextId()).SetIdentifier(identifier).SetName(name).SetDescription(desc) 42 }