roleMenuService.go 783 B

123456789101112131415161718192021222324252627282930313233343536
  1. package service
  2. import "iot_manager_service/app/system/dao"
  3. // 角色菜单管理服务
  4. var RoleMenuService = new(roleMenuService)
  5. type roleMenuService struct{}
  6. func (s *roleMenuService) UpdateRoleMenus(roleIds, menuIds []int64) error {
  7. roleMenu := &dao.RoleMenu{}
  8. err := roleMenu.DeleteRoleIds(roleIds)
  9. if err != nil {
  10. return err
  11. }
  12. var roleMenus []dao.RoleMenu
  13. for _, roleId := range roleIds {
  14. for _, menuId := range menuIds {
  15. roleMenus = append(roleMenus, dao.RoleMenu{
  16. MenuId: menuId,
  17. RoleId: roleId,
  18. })
  19. }
  20. }
  21. return roleMenu.BatchSave(roleMenus)
  22. }
  23. func (s *roleMenuService) GetMenuByRole(roleId int64) []dao.RoleMenu {
  24. roleMenu := &dao.RoleMenu{RoleId: roleId}
  25. menus, err := roleMenu.GetByRole()
  26. if err != nil {
  27. return nil
  28. }
  29. return menus
  30. }