Esempio n. 1
0
 public static function create($params, $currentUser, $con)
 {
     // check role's permission
     $permission = RolePermissionQuery::create()->select('create_unit')->findOneById($currentUser->role_id, $con);
     if (!$permission || $permission != 1) {
         throw new \Exception('Akses ditolak. Anda tidak mempunyai izin untuk melakukan operasi ini.');
     }
     // check whether unit is already exist
     $unit = UnitQuery::create()->filterByStatus('Active')->filterByName($params->name)->count($con);
     if ($unit != 0) {
         throw new \Exception('Satuan ' . $params->name . ' sudah ada dalam data');
     }
     // create new record
     $unit = new Unit();
     $unit->setName($params->name)->setStatus('Active')->save($con);
     // log history
     $rowHistory = new RowHistory();
     $rowHistory->setRowId($unit->getId())->setData('unit')->setTime(time())->setOperation('create')->setUserId($currentUser->id)->save($con);
     $params->id = $unit->getId();
     $results['success'] = true;
     $results['data'] = $params;
     return $results;
 }