Выполните проверку иерархии ролей перед сохранением в базе данных в гнезде - PullRequest
1 голос
/ 22 января 2020

У меня есть таблица роли, которая содержит имя роли и ее приоритет.


id  role_name    priority
1   SuperAdmin     1
2   User           2


... so on

Условие состоит в том, что всякий раз, когда пользователь выполняет какую-либо операцию создания или обновления любого объекта, он должен следовать иерархии, такой как SuperAdmin. может создать пользователя, но пользователь не может создать SuperAdmin

Я создал функцию checkHierarchy и импортировал ее в различные модули, где это необходимо, и явно проверил ее следующим образом:

commonfile.ts

function checkHierarchy(rolePriority1, rolePriority2) { 
  return true // if can create 
  return false // cannot create
}

Другой файл user.ts

import checkHierarchy from common


function createUser() {
 const status = checkHierarchy(rp1 , rp2)
 if(!status) throw err(Dont have permission to create)
 userRepository.create(user)
}

Я хочу знать, есть ли какая-то техника в гнезде js, чтобы я мог выполнить такую ​​операцию

this.checkHierarchy().userRepository.create(User)

#if checkHierarchy method return false then entire operation fails.
...