public function consultar(db $db, funcionariosModel $funcionario, $status)
 {
     $db->clear();
     $db->setTabela('funcionarios');
     $db->setCondicao("id_funcionario = ? and status_funcionario in ('" . implode("','", $status) . "')");
     $db->setParameter(1, $funcionario->getId());
     if ($db->select()) {
         return $db->result();
     } else {
         return null;
     }
 }
Exemplo n.º 2
0
 /**
  * Lista os registros das Requisicoes
  * @return Array
  */
 public function listar()
 {
     $this->load->model('suprimentos/requisicoes/requisicoesModel');
     $this->load->model('funcionarios/funcionariosModel');
     $this->load->model('funcionarios/usuariosModel');
     $requisicoes = array();
     $this->db->clear();
     $this->db->setTabela('requisicoes');
     $this->db->setCondicao(" status_requisicao in('" . statusRequisicoes::NOVO . "','" . statusRequisicoes::PENDENTE . "','" . statusRequisicoes::APROVADO . "','" . statusRequisicoes::REPROVADO . "','" . statusRequisicoes::APROVADO . "', '" . statusRequisicoes::CANCELADO . "') ");
     $this->db->select();
     if ($this->db->rowCount() > 0) {
         $result = $this->db->resultAll();
         foreach ($result as $value) {
             $requisicoesModel = new requisicoesModel();
             $requisicoesModel->setId($value['id_requisicao']);
             $requisicoesModel->setCodigo($value['codigo_requisicao']);
             $requisicoesModel->setTitulo($value['titulo_requisicao']);
             $requisicoesModel->setObservacoes($value['observacoes_requisicao']);
             $requisicoesModel->setData($value['data_requisicao']);
             $requisicoesModel->setStatus(statusRequisicoes::getAttribute($value['status_requisicao']));
             $this->db->clear();
             $this->db->setTabela('sys_usuarios as a , requisicao_usuario as b, funcionarios as c');
             $this->db->setCondicao("a.id_usuario = b.id_usuario and a.id_funcionario = c.id_funcionario and b.id_requisicao = ?");
             $this->db->setParameter(1, $requisicoesModel->getId());
             $usuariosModel = new usuariosModel();
             $funcionariosModel = new funcionariosModel();
             if ($this->db->select()) {
                 $user = $this->db->result();
                 $funcionariosModel->setId($user['id_funcionario']);
                 $funcionariosModel->setNome($user['nome_funcionario']);
                 $funcionariosModel->setSobrenome($user['sobrenome_funcionario']);
                 $usuariosModel->setId($user['id_usuario']);
             }
             $usuariosModel->setFuncionario($funcionariosModel);
             $requisicoesModel->setUsuarioCadastrado($usuariosModel);
             array_push($requisicoes, $requisicoesModel);
             unset($requisicoesModel);
         }
     }
     return $requisicoes;
 }
Exemplo n.º 3
0
 /**
  *validLogin
  *@return boolean | string
  * Validação do login e senha
  */
 public function validLogin(usuariosModel $usuariosModel)
 {
     $this->db->clear();
     $this->db->setTabela('sys_usuarios as A, funcionarios as B, nivel_acesso AS C');
     $this->db->setCondicao('A.login_usuario = "' . $usuariosModel->getLogin() . '" AND A.status_usuario = "' . status::ATIVO . '"  AND B.status_funcionario = "' . status::ATIVO . '" AND A.id_nivel_acesso = C.id_nivel_acesso AND A.id_funcionario = B.id_funcionario');
     if ($this->db->select()) {
         $res = $this->db->result();
         if (Bcrypt::check($usuariosModel->getSenha(), $res['senha_usuario'])) {
             $this->load->model('funcionarios/funcionariosModel');
             $this->load->model('configuracoes/niveis_acesso/niveisAcessoModel');
             //funcionario
             $funcionarios = new funcionariosModel();
             $funcionarios->setId($res['id_funcionario']);
             $funcionarios->setNome($res['nome_funcionario']);
             $funcionarios->setSobrenome($res['sobrenome_funcionario']);
             $funcionarios->setFoto($res['foto_funcionario']);
             //nivel de acesso
             $nivelAcesso = new niveisAcessoModel();
             $nivelAcesso->setId($res['id_nivel_acesso']);
             // $nivelAcesso->setPermissoes($res['permissoes']);
             $nivelAcesso->setIndice($res['index_access_db_name']);
             $usuariosModel->setId($res['id_usuario']);
             $usuariosModel->setEmail($res['email_usuario']);
             $usuariosModel->setId($res['id_usuario']);
             $usuariosModel->setFuncionario($funcionarios);
             $usuariosModel->setNivelAcesso($nivelAcesso);
             $usuariosModel->setHash($this->updateHashAcesso($usuariosModel));
             return $usuariosModel;
         } else {
             return null;
         }
     } else {
         return null;
     }
 }
Exemplo n.º 4
0
 /**
  * Atualiza o status
  * @return boolean
  */
 public function atualizarStatus(funcionariosModel $funcionario)
 {
     try {
         $this->db->clear();
         $this->db->setTabela('funcionarios');
         $this->db->setCondicao("id_funcionario = ?");
         $this->db->setParameter(1, $funcionario->getId());
         $data = array('status_funcionario' => $funcionario->getStatus());
         if ($this->db->update($data)) {
             return true;
         } else {
             return false;
         }
     } catch (dbException $e) {
         return $e->getMessageError();
     }
 }
Exemplo n.º 5
0
 public function checkFuncionarioDuplicado(funcionariosModel $funcionarioModel, $id_usuario = null)
 {
     $cond = "";
     if ($id_usuario != null) {
         $cond = " and id_usuario not in ('" . $id_usuario . "')";
     }
     $this->db->clear();
     $this->db->setTabela('sys_usuarios');
     $this->db->setCondicao("id_funcionario = ? {$cond}");
     $this->db->setParameter(1, $funcionarioModel->getId());
     try {
         if ($this->db->select()) {
             return true;
         } else {
             return false;
         }
     } catch (Exception $e) {
         return $e->getMessageError();
     }
 }
Exemplo n.º 6
0
 /**
  * Ãção de atualizar status
  */
 public function atualizarStatus()
 {
     $idFuncionario = (int) $this->http->getRequest('id');
     $status = filter_var($this->http->getRequest('status'));
     //FUNCIONARIO MODEL
     $this->load->model('funcionarios/funcionariosModel');
     $funcionariosModel = new funcionariosModel();
     $funcionariosModel->setId($idFuncionario);
     if (status::getAttribute($status) == status::EXCLUIDO) {
         $funcionariosModel->excluir();
     } else {
         if (status::getAttribute($status) == status::INATIVO) {
             $funcionariosModel->inativar();
         } else {
             $funcionariosModel->ativar();
         }
     }
     //FUNCIONARIO DAO
     $this->load->dao('funcionarios/funcionariosDao');
     $funcionariosDao = new funcionariosDao();
     if (!$funcionariosDao->isFuncionarioAdministrador($funcionariosModel)) {
         $this->http->response($funcionariosDao->atualizarStatus($funcionariosModel));
     } else {
         $this->http->response("Alteração de status ou exclusão de funcionário administrador não permitida");
     }
 }
Exemplo n.º 7
0
 /**
  * Atualiza o status
  * @return boolean
  */
 public function atualizarStatus(funcionariosModel $funcionario)
 {
     $data = array('status_funcionario' => $funcionario->getStatus());
     $this->db->clear();
     $this->db->setTabela('funcionarios');
     $this->db->setCondicao("id_funcionario = '" . $funcionario->getId() . "'");
     $this->db->update($data);
     if ($this->db->rowCount() > 0) {
         return true;
     } else {
         return false;
     }
 }
Exemplo n.º 8
0
 /**
  * Ãção de atualizar status
  */
 public function atualizarStatus()
 {
     $idFuncionario = (int) $this->http->getRequest('id');
     $status = filter_var($this->http->getRequest('status'));
     //FUNCIONARIO MODEL
     $funcionariosModel = new funcionariosModel();
     $funcionariosModel->setId($idFuncionario);
     if (status::getAttribute($status) == status::EXCLUIDO) {
         $funcionariosModel->excluir();
     } else {
         if (status::getAttribute($status) == status::INATIVO) {
             $funcionariosModel->inativar();
         } else {
             $funcionariosModel->ativar();
         }
     }
     //USUARIOS DAO -- consultando o usuario pelo funcionário
     $usuariosDao = new usuariosDao();
     $usuariosModel = $usuariosDao->consultar(new consultaUsuarioPorFuncionario($funcionariosModel), new usuariosModel(), array(status::ATIVO, status::INATIVO));
     //setando o usuario em funcionario caso tenha um usuario
     if ($usuariosModel != null) {
         $modulosDao = new modulosDao();
         $modulosModel = $modulosDao->listar();
         //obtendo os niveis de acesso
         $niveisAcessoDao = new niveisAcessoDao();
         $niveisAcessoModel = $niveisAcessoDao->getNivelAcesso($usuariosModel->getNivelAcesso(), $modulosModel);
         if ($niveisAcessoModel != null) {
             $usuariosModel->setNivelAcesso($niveisAcessoModel);
         }
         $funcionariosModel->setUsuario($usuariosModel);
     }
     //FUNCIONARIO DAO -- verificando se é permitido realizar ação ao funcionario
     $funcionariosDao = new funcionariosDao();
     if ($funcionariosModel->getUsuario() == null || $funcionariosModel->getUsuario()->getNivelAcesso()->getTipoPermissao() == tipopermissao::USUARIO) {
         $this->http->response($funcionariosDao->atualizarStatus($funcionariosModel));
     } else {
         $this->http->response("Alteração de status ou exclusão de funcionário administrador não é permitida");
     }
 }
Exemplo n.º 9
0
 /**
  * Ação do cadastrar
  */
 public function inserir()
 {
     $nivel = (int) $this->http->getRequest('nivel');
     $funcionario = $this->http->getRequest('funcionario');
     $email = $this->http->getRequest('email');
     $login = $this->http->getRequest('login');
     $senha = $this->http->getRequest('senha');
     //validação dos dados
     $this->load->library('dataValidator', null, true);
     $this->load->dataValidator->set('Nível de acesso', $nivel, 'nivel')->is_required();
     $this->load->dataValidator->set('Funcionário', $funcionario, 'funcionario')->is_required();
     $this->load->dataValidator->set('Email', $email, 'email')->is_required()->is_email();
     $this->load->dataValidator->set('Login', $login, 'login')->is_required();
     $this->load->dataValidator->set('Senha', $senha, 'senha')->is_required();
     if ($this->load->dataValidator->validate()) {
         $this->load->model('funcionarios/funcionariosModel');
         $funcionariosModel = new funcionariosModel();
         $funcionariosModel->setId($funcionario);
         //USUARIO
         $this->load->model('funcionarios/usuariosModel');
         $usuariosModel = new usuariosModel();
         $usuariosModel->setNivelAcesso($nivel);
         $usuariosModel->setFuncionario($funcionariosModel);
         $usuariosModel->setEmail($email);
         $usuariosModel->setLogin($login);
         $usuariosModel->setSenha($senha);
         $usuariosModel->setDataCadastro(date('Y-m-d h:i:s'));
         $this->load->dao('funcionarios/usuariosDao');
         $usuariosDao = new usuariosDao();
         if ($usuariosDao->checkFuncionarioDuplicado($funcionariosModel)) {
             $this->http->response("Funcionário já possui um usuário cadastrado");
         } else {
             $this->http->response($usuariosDao->inserir($usuariosModel));
         }
     } else {
         $todos_erros = $this->load->dataValidator->get_errors();
         $this->http->response(json_encode($todos_erros));
     }
 }
Exemplo n.º 10
0
 /**
  * Ãção de atualizar status
  */
 public function atualizarStatus()
 {
     $idFuncionario = intval($_POST['id']);
     $status = filter_var($_POST['status']);
     //FUNCIONARIO MODEL
     $this->load->model('funcionarios/funcionariosModel');
     $funcionariosModel = new funcionariosModel();
     $funcionariosModel->setId($idFuncionario);
     $funcionariosModel->setStatus($status);
     //FUNCIONARIO DAO
     $this->load->dao('funcionarios/funcionariosDao');
     $funcionariosDao = new funcionariosDao();
     echo $funcionariosDao->atualizarStatus($funcionariosModel);
 }