コード例 #1
0
 public function infoUserAction($cpf = null)
 {
     try {
         if (is_null($cpf)) {
             $cpf = $this->request->getPost('cpf', 'alphanum');
         }
         $colaborador = new Colaboradores();
         $return = $colaborador->getDadosFuncionario($cpf);
         if ($this->request->isAjax()) {
             $this->view->disable();
             if (is_null($return)) {
                 echo 'Não encontrado';
             } else {
                 echo json_encode($return);
             }
         } else {
             return $return;
         }
     } catch (Exception $exc) {
         echo $exc->getMessage();
     }
 }
コード例 #2
0
ファイル: Auth.php プロジェクト: denners777/api-phalcon
 /**
  *
  * @param type $id
  * @throws Exception
  */
 public function authUserById($id)
 {
     $user = Users::findFirstById($id);
     if ($user == false) {
         throw new Exception('The user does not exist');
     }
     $this->checkUserFlags($user);
     $userInfo['id'] = $user->id;
     $userInfo['cpf'] = $user->cpf;
     $userInfo['email'] = $user->email;
     $userInfo['userName'] = explode('@', $user->email)[0];
     $colaboradores = new Colaboradores();
     $colaborador = $colaboradores->getDadosFuncionario($user->cpf);
     $funcionarios = new Pfunc();
     $funcionario = $funcionarios->getDadosFuncionario($user->cpf);
     $infoColaborador = [];
     if ($funcionario) {
         $infoColaborador = array_merge($colaborador, $funcionario);
     }
     $profile = [];
     $userGroups = UsersGroups::find('userId = ' . $user->id);
     if (count($userGroups) > 0) {
         foreach ($userGroups as $userGroup) {
             $perfils = Perfils::find('groupId = ' . $userGroup->groupId);
             if (count($perfils) > 0) {
                 foreach ($perfils as $perfil) {
                     $profile[$perfil->modules->slug][$perfil->controllers->slug][$perfil->actions->slug] = $perfil->permission;
                 }
             }
         }
     }
     $perfils = Perfils::find('userId = ' . $user->id);
     if (count($perfils) > 0) {
         foreach ($perfils as $perfil) {
             $profile[$perfil->modules->slug][$perfil->controllers->slug][$perfil->actions->slug] = $perfil->actions->permission;
         }
     }
     $this->session->set('auth-identity', ['userInfo' => $userInfo, 'dadosERP' => $infoColaborador, 'profile' => $profile]);
 }
コード例 #3
0
 /**
  *
  * @return boolean
  * @throws Exception
  */
 private function makeRegister()
 {
     $cpf = $this->request->getPost('cpf', 'alphanum');
     $dataAdmissao = $this->request->getPost('dataAdmissao');
     $empresa = $this->request->getPost('empresa', 'int');
     $colaboradores = new Colaboradores();
     $funcionarioProtheus = $colaboradores->validaDadosFuncionario($cpf, $empresa, $dataAdmissao);
     if (empty($funcionarioProtheus)) {
         throw new Exception('Não foi encontrado esse CPF na base de dados.');
     }
     $user = new Users();
     $user->setId($user->autoincrement());
     $user->setName($this->request->getPost('name', 'string'));
     $user->setCpf($cpf);
     $email = $this->request->getPost('email', 'email');
     $user->setEmail($email);
     $user->setUserName(explode('@', $email)[0]);
     $user->setPassword($this->security->hash($this->request->getPost('password')));
     $user->setMustChangePassword('S');
     $user->setStatus('A');
     if (!$user->create()) {
         $msg = '';
         foreach ($user->getMessages() as $message) {
             $msg .= $message . '<br>';
         }
         throw new Exception($msg);
     }
     $userGroup = new UsersGroups();
     $userGroup->setId($userGroup->autoincrement());
     $userGroup->setUserId($user->getId());
     $userGroup->setGroupId(3);
     if (!$userGroup->save()) {
         $msg = '';
         foreach ($userGroup->getMessages() as $message) {
             $msg .= $message . '<br>';
         }
         throw new Exception($msg);
     }
     return true;
 }