| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 | package serviceimport (	"github.com/druidcaesa/gotool"	dao2 "ulink-admin/modules/system/dao"	"ulink-admin/modules/system/models/model")type PermissionService struct {	RoleDao *dao2.RoleDao `inject:""`	MenuDao *dao2.MenuDao `inject:""`}// GetRolePermissionByUserId 查询用户角色集合func (s PermissionService) GetRolePermissionByUserId(user *model.SysUser) *[]string {	admin := model.SysUser{}.IsAdmin(user.Id)	roleKeys := s.RoleDao.GetRolePermissionByUserId(user.Id)	if admin && roleKeys != nil {		*roleKeys = append(*roleKeys, "admin")	}	duplication := gotool.StrArrayUtils.ArrayDuplication(*roleKeys)	return &duplication}// GetMenuPermission 获取菜单数据权限func (s PermissionService) GetMenuPermission(user *model.SysUser) *[]string {	flag := model.SysUser{}.IsAdmin(user.Id)	//查询菜单数据权限	permission := s.MenuDao.GetMenuPermission(user.Id)	if flag && permission != nil {		*permission = append(*permission, "*:*:*")	}	var ret []string	duplication := gotool.StrArrayUtils.ArrayDuplication(*permission)	for i := 0; i < len(duplication); i++ {		if (i > 0 && duplication[i-1] == duplication[i]) || len(duplication[i]) == 0 {			continue		}		ret = append(ret, duplication[i])	}	return &ret}// GetAllPermission 获取菜单数据权限func (s PermissionService) GetAllPermission() *[]string {	//查询菜单数据权限	permission := s.MenuDao.GetAllPermission()	return permission}
 |