예제 #1
0
 /**
  * Atualização de um registro
  */
 public function atualizar()
 {
     $this->load->model('configuracoes/niveis_acesso/niveisAcessoModel');
     $this->load->model('configuracoes/modulos/modulosModel');
     $this->load->model('configuracoes/modulos/paginasModel');
     $this->load->model('configuracoes/modulos/actionsModel');
     $id = $this->http->getRequest('id');
     $administrador = $this->http->getRequest('administrador');
     $permissoes = $this->http->getRequest('permissoes');
     $validate = new DataValidator();
     $validate->set('Permissões', $permissoes, 'permissoes')->is_required();
     if ($validate->validate()) {
         $_permissoes = json_decode($permissoes, true);
         $niveisAcesso = new niveisAcessoModel();
         $niveisAcesso->setId($id);
         if (is_null($administrador)) {
             $niveisAcesso = $this->getPermissoes($_permissoes, $niveisAcesso);
         }
         $this->load->dao('configuracoes/niveisAcessoDao');
         $niveisAcessoDao = new niveisAcessoDao();
         $this->http->response($niveisAcessoDao->atualizar($niveisAcesso));
     } else {
         $todos_erros = $validate->get_errors();
         echo json_encode($todos_erros);
     }
 }
예제 #2
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;
     }
 }
예제 #3
0
 public function getNivelAcesso(niveisAcessoModel $niveisAcessoModel, $modulos)
 {
     $this->load->model('configuracoes/niveis_acesso/niveisAcessoModel');
     $lv = new niveisAcessoModel();
     $this->db->clear();
     $this->db->setTabela('nivel_acesso');
     $this->db->setCondicao('id_nivel_acesso = ? ');
     $this->db->setParameter(1, $niveisAcessoModel->getId());
     if ($this->db->select()) {
         $nivel = $this->db->result();
         $lv->setId($nivel['id_nivel_acesso']);
         $lv->setNome($nivel['nome_nivel_acesso']);
         if ($nivel['tipo_permissao'] == tipopermissao::ADMINISTRADOR) {
             $lv->setTipoPermissaoAdministrador();
         } else {
             $lv->setTipoPermissaoUsuario();
         }
         $lv->setPermissoes($this->getPermissoes($lv, $modulos));
         $lv->setIndice($nivel['index_access_db_name']);
     }
     return $lv;
 }
예제 #4
0
 public function consultar(IUsuarios $iusuario, usuariosModel $usuario, $status)
 {
     $result = $iusuario->consultar($this->db, $usuario, $status);
     if ($result != null) {
         //niveis de acesso
         $nivelAcessoModel = new niveisAcessoModel();
         $nivelAcessoModel->setId($result['id_nivel_acesso']);
         //usuarios
         $usuariosModel = new usuariosModel();
         $usuariosModel->setId($result['id_usuario']);
         $usuariosModel->setNivelAcesso($nivelAcessoModel);
         $usuariosModel->setLogin($result['login_usuario']);
         $usuariosModel->setEmail($result['email_usuario']);
         $usuariosModel->setStatus(status::getAttribute($result['status_usuario']));
         $funcionariosModel = new funcionariosModel();
         $funcionariosModel->setId($result['id_funcionario']);
         $usuariosModel->setFuncionario($funcionariosModel);
         return $usuariosModel;
     } else {
         return null;
     }
 }
예제 #5
0
 /**
  * Cadastro de um novo registro
  */
 public function inserir()
 {
     $id_nivel = isset($_POST['id_nivel']) ? intval($_POST['id_nivel']) : '';
     $nome = isset($_POST['nome']) ? filter_var(trim($_POST['nome'])) : '';
     $permissoes = (isset($_POST['permissoes']) and $_POST['permissoes'] != '{}') ? $_POST['permissoes'] : '';
     $validate = new DataValidator();
     $validate->set('Nome do grupo', $nome, 'nome')->is_required()->min_length(2);
     $validate->set('Permissões', $permissoes, 'permissoes')->is_required();
     if ($validate->validate()) {
         $this->load->model('funcionarios/gruposFuncionariosModel');
         $gruposFuncionariosModel = new gruposFuncionariosModel();
         $gruposFuncionariosModel->setNome($nome);
         $gruposFuncionariosModel->setPermissao($permissoes);
         $this->load->model('configuracoes/niveis_acesso/niveisAcessoModel');
         $niveisAcessoModel = new niveisAcessoModel();
         $niveisAcessoModel->setId($id_nivel);
         $gruposFuncionariosModel->setNivel($niveisAcessoModel);
         $this->load->dao('funcionarios/gruposFuncionariosDao');
         $gruposFuncionariosDao = new gruposFuncionariosDao();
         echo $gruposFuncionariosDao->inserir($gruposFuncionariosModel);
     } else {
         $todos_erros = $validate->get_errors();
         echo json_encode($todos_erros);
     }
 }
예제 #6
0
 /**
  * Ação do editar
  */
 public function atualizar()
 {
     $id_usuario = (int) $this->http->getRequest('id_usuario');
     $nivel = $this->http->getRequest('nivel');
     $funcionario = $this->http->getRequest('funcionario');
     $email = $this->http->getRequest('email');
     //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();
     if ($this->load->dataValidator->validate()) {
         $this->load->model('configuracoes/niveis_acesso/niveisAcessoModel');
         $nivelAcesso = new niveisAcessoModel();
         $nivelAcesso->setId($nivel);
         //USUARIO
         $this->load->model('funcionarios/usuariosModel');
         $usuariosModel = new usuariosModel();
         $usuariosModel->setId($id_usuario);
         $usuariosModel->setNivelAcesso($nivelAcesso);
         $usuariosModel->setEmail($email);
         //USUARIO DAO
         $this->load->dao('funcionarios/usuariosDao');
         $usuariosDao = new usuariosDao();
         $this->http->response($usuariosDao->atualizar($usuariosModel));
     } else {
         $todos_erros = $this->load->dataValidator->get_errors();
         $this->http->response(json_encode($todos_erros));
     }
 }