sortPoliciesByPriority 按优先级排序策略
(policies []*AccessPolicy)
| 736 | |
| 737 | // sortPoliciesByPriority 按优先级排序策略 |
| 738 | func (ac *AccessController) sortPoliciesByPriority(policies []*AccessPolicy) []*AccessPolicy { |
| 739 | // 简单排序,优先级数值越小优先级越高 |
| 740 | sorted := make([]*AccessPolicy, len(policies)) |
| 741 | copy(sorted, policies) |
| 742 | |
| 743 | for i := range len(sorted) - 1 { |
| 744 | for j := i + 1; j < len(sorted); j++ { |
| 745 | if sorted[i].Priority > sorted[j].Priority { |
| 746 | sorted[i], sorted[j] = sorted[j], sorted[i] |
| 747 | } |
| 748 | } |
| 749 | } |
| 750 | |
| 751 | return sorted |
| 752 | } |
| 753 | |
| 754 | // getUserPermissions 获取用户的所有权限 |
| 755 | func (ac *AccessController) getUserPermissions(userID string) []string { |
no test coverage detected