From b7b128f9a75a3f99782b35699304d131510352ed Mon Sep 17 00:00:00 2001 From: Thilina Date: Sun, 27 Jun 2021 17:42:39 +0200 Subject: [PATCH] Getting sysdata and checking subordinates --- core/src/Classes/BaseService.php | 35 ++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/core/src/Classes/BaseService.php b/core/src/Classes/BaseService.php index ba5e7f24..59c550ee 100644 --- a/core/src/Classes/BaseService.php +++ b/core/src/Classes/BaseService.php @@ -22,6 +22,7 @@ use Metadata\Common\Model\CalculationHook; use Model\BaseModel; use Model\DataEntryBackup; use Model\Setting; +use Model\SystemData; use Modules\Common\Model\Module; use Permissions\Common\Model\Permission; use Users\Common\Model\User; @@ -1978,4 +1979,38 @@ END; $dbUser = $this->getCurrentDBUser(); return RestApiManager::getInstance()->getAccessTokenForUser($dbUser); } + + public function isSubordinateEmployee($supervisorId, $subordinateId) + { + $employee = new Employee(); + $employee->Load('id = ? and supervisor = ?', [$subordinateId, $supervisorId]); + + return ($supervisorId == $employee->supervisor && $subordinateId == $employee->id); + } + + public function setSystemData($name, $value) + { + $sysData = new SystemData(); + $sysData->Load('name = ?', [$name]); + + if (!empty($sysData->id)) { + $sysData->value = $value; + } else { + $sysData->name = $name; + $sysData->value = $value; + } + + return $sysData->Save(); + } + + public function getSystemData($name) + { + $sysData = new SystemData(); + $sysData->Load('name = ?', [$name]); + if (!empty($sysData->id) && $sysData->name === $name) { + return $sysData->value; + } + + return null; + } }