feat: roles, permissions
This commit is contained in:
@@ -8,7 +8,7 @@ import (
|
||||
|
||||
type UIRoutesRepo interface {
|
||||
GetRoutes(langId uint) ([]model.Route, error)
|
||||
GetTopMenu(id uint) ([]model.B2BTopMenu, error)
|
||||
GetTopMenu(id uint, roleId uint) ([]model.B2BTopMenu, error)
|
||||
}
|
||||
|
||||
type RoutesRepo struct{}
|
||||
@@ -26,12 +26,16 @@ func (p *RoutesRepo) GetRoutes(langId uint) ([]model.Route, error) {
|
||||
return routes, nil
|
||||
}
|
||||
|
||||
func (p *RoutesRepo) GetTopMenu(id uint) ([]model.B2BTopMenu, error) {
|
||||
func (p *RoutesRepo) GetTopMenu(langId uint, roleId uint) ([]model.B2BTopMenu, error) {
|
||||
var menus []model.B2BTopMenu
|
||||
|
||||
err := db.Get().
|
||||
Where("active = ?", 1).
|
||||
Order("parent_id ASC, position ASC").
|
||||
err := db.
|
||||
Get().
|
||||
Model(model.B2BTopMenu{}).
|
||||
Joins("JOIN b2b_top_menu_roles tmr ON tmr.top_menu_id = b2b_top_menu.menu_id").
|
||||
Where(model.B2BTopMenu{Active: 1}).
|
||||
Where("tmr.role_id = ?", roleId).
|
||||
Order("b2b_top_menu.parent_id ASC, b2b_top_menu.position ASC").
|
||||
Find(&menus).Error
|
||||
|
||||
return menus, err
|
||||
|
||||
Reference in New Issue
Block a user