/** * * @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; }