function DASH_login($paramPOST, $paramREMOTE) { // Recupera os dados $usuario = trim($paramPOST['usuario']); $senha = trim($paramPOST['senha']); $id_app = trim($paramPOST['id_app']); $msg = ""; $code = 0; // Parametro Padrao $device = trim($paramPOST['device']); $ipaddress = $paramREMOTE['REMOTE_ADDR']; auditoriaLog('Begin - DASH_login()', $sql, $device, $usuario, $ipaddress); // Valida se tem conteudo if (hasContent($usuario) == 0 || hasContent($senha) == 0) { returnJson(-1, 'Usuário ou Senha devem tem conteúdo'); } if (hasContent($id_app) == 0) { returnJson(-1, "Deve ser informado qual APP está sendo executada."); } if (hasContent($device) == 0) { returnJson(-1, "Tentativa de acesso não autorizado."); } // Pesquisa o usuario e senha $sql = "SELECT * "; $sql = $sql . "FROM colaborador "; $sql = $sql . "WHERE upper(login) = upper('{$usuario}') "; $sql = $sql . "AND upper(senha) = upper('{$senha}') "; $sql = $sql . "LIMIT 1; "; //echo $sql; $login = query($sql); // Valida se o login/senha estao corretos if (sizeof($login) == 0) { returnJson(-1, "Usuário ou Senha não conferem."); } $sql = "SELECT * FROM "; $sql = $sql . "((colaborador JOIN (concessionaria JOIN grupo "; $sql = $sql . "ON concessionaria.id_grupo_financeiro=grupo.id_grupo) "; $sql = $sql . "ON colaborador.id_concessionaria=concessionaria.id_concessionaria) "; $sql = $sql . "JOIN (colaborador_aplicacao JOIN aplicacao ON "; $sql = $sql . "colaborador_aplicacao.id_aplicacao=aplicacao.id_aplicacao) "; $sql = $sql . "ON colaborador.id_colaborador=colaborador_aplicacao.id_colaborador) "; $sql = $sql . "WHERE ativo='S' AND upper(colaborador.login) = upper('{$usuario}') "; $sql = $sql . "AND upper(colaborador.senha) = upper('{$senha}') "; $sql = $sql . "AND upper(aplicacao.aplicacao) LIKE upper('%{$id_app}%');"; //returnJson(-1, $sql); $login = query($sql); // Valida se o usuario tem acesso a APP if (sizeof($login) == 0) { returnJson(-1, "Usuário não tem autorização para acessar esta aplicação."); } auditoriaLog('DASH_login()', $sql, $device, $usuario, $ipaddress); // Valida se encontrar pelo menos 1 app permitido if (isset($login) && sizeof($login) > 0) { $dbdevice = trim($login[0]['device']); // Valida se ja não esta logado if (hasContent($dbdevice) == 0) { // Cria a tabela de controle para os deltas dos regitros APP_create_table_control($device); $msg = "Autenticação efetuada com sucesso."; } else { if ($device == $dbdevice) { $msg = "Reautenticação no mesmo iPad realizada com sucesso."; } else { $msg = "Atenção, seu login está ativo em outro iPad. Solicite seu desbloqueio."; } } // Atualiza informacao que logou na aplicacao $sql = "UPDATE colaborador "; $sql = $sql . "SET data_hora_login = CURRENT_TIMESTAMP(), "; $sql = $sql . "device = '{$device}', ip_ipad = '{$ipAddress}' "; $sql = $sql . "WHERE login = '******'"; // returnJson(-1, $sql); $update = query($sql); if ($update['error']) { $code = -1; $msg = "Erro ao liberar login."; } // coloca na sessao para controle dos apps session_start(); $_SESSION['volvo']['apps'] = $login; returnJson(0, $msg, $login); } }
function APP_login($paramPOST, $paramREMOTE) { // Recupera os dados $usuario = trim($paramPOST['usuario']); $senha = trim($paramPOST['senha']); $app = trim($paramPOST['app']); $msg = ""; $code = 0; // Parametro Padrao $device = trim($paramPOST['device']); $ipaddress = $paramREMOTE['REMOTE_ADDR']; auditoriaLog('Begin - APP_login()', $sql, $device, $usuario, $nome_completo, $ipaddress); // Valida se tem conteudo if (hasContent($usuario) == 0 || hasContent($senha) == 0) { auditoriaLog('APP_login()', $sql, $device, $usuario, $nome_completo, $ipaddress); returnJson(-1, 'Usuário ou Senha devem tem conteúdo'); } if (hasContent($app) == 0) { returnJson(-1, "Deve ser informado qual APP está sendo executada."); } if (hasContent($device) == 0) { returnJson(-1, "Tentativa de acesso não autorizado."); } // Pesquisa o usuario e senha $sql = "SELECT * "; $sql = $sql . "FROM colaborador "; $sql = $sql . "WHERE upper(login) = upper('{$usuario}') "; $sql = $sql . "AND upper(senha) = upper('{$senha}') "; $sql = $sql . "AND ativo = 'S' "; $sql = $sql . "LIMIT 1; "; $login = query($sql); // Valida se o login/senha estao corretos if (sizeof($login) == 0) { returnJson(-1, "Usuário ou Senha não conferem."); } /*$sql = "SELECT * "; $sql = $sql . "FROM (SELECT ap.id_aplicacao FROM aplicacao ap WHERE upper(ap.aplicacao) LIKE upper('%$app%')) apl, "; $sql = $sql . "colaborador_aplicacao ca "; $sql = $sql . "LEFT JOIN colaborador co "; $sql = $sql . "ON ca.id_colaborador = co.id_colaborador "; $sql = $sql . "WHERE upper(ca.id_aplicacao) = upper(apl.id_aplicacao) "; $sql = $sql . "AND upper(co.login) = upper('$usuario') "; $sql = $sql . "AND upper(co.senha) = upper('$senha'); ";*/ // alterado por Suzane Machado -> alteracao: coringa(%) app + insercao id_grupo $sql = "SELECT * "; $sql = $sql . "FROM (SELECT ap.id_aplicacao FROM aplicacao ap WHERE upper(ap.aplicacao) LIKE upper('{$app}%')) apl, "; $sql = $sql . "colaborador_aplicacao "; $sql = $sql . "LEFT JOIN (colaborador JOIN (concessionaria JOIN grupo ON concessionaria.id_grupo_financeiro=grupo.id_grupo) "; $sql = $sql . "ON colaborador.id_concessionaria=concessionaria.id_concessionaria) "; $sql = $sql . "ON colaborador_aplicacao.id_colaborador = colaborador.id_colaborador "; $sql = $sql . "WHERE upper(colaborador_aplicacao.id_aplicacao) = upper(apl.id_aplicacao) "; $sql = $sql . "AND upper(colaborador.login) = upper('{$usuario}') "; $sql = $sql . "AND upper(colaborador.senha) = upper('{$senha}'); "; // SELECT * // FROM (SELECT ap.id_aplicacao FROM aplicacao ap WHERE upper(ap.aplicacao) LIKE upper('crm%')) apl, // colaborador_aplicacao // LEFT JOIN (colaborador JOIN (concessionaria JOIN grupo ON concessionaria.id_grupo_financeiro=grupo.id_grupo) // ON colaborador.id_concessionaria=concessionaria.id_concessionaria) // ON colaborador_aplicacao.id_colaborador = colaborador.id_colaborador // WHERE upper(colaborador_aplicacao.id_aplicacao) = upper(apl.id_aplicacao) // AND upper(colaborador.login) = upper('waldir') // AND upper(colaborador.senha) = upper('con'); // -- id_cargo = 3 gerente que ve todas as informacoes do grupo //returnJson(-1, $sql); $login = query($sql); // Valida se o usuario tem acesso a APP if (sizeof($login) == 0) { returnJson(-1, "Usuário não tem autorização para acessar esta aplicação."); } auditoriaLog('APP_login()', $sql, $device, $usuario, $nome_completo, $ipaddress); // Valida se retornou 1 usuario encontrado if (isset($login) && sizeof($login) == 1) { $dbdevice = trim($login[0]['device']); // Valida se ja não esta logado if (hasContent($dbdevice) == 0) { // Cria a tabela de controle para os deltas dos regitros APP_create_table_control($device); $msg = "Autenticação efetuada com sucesso."; } else { if ($device == $dbdevice) { $msg = "Reautenticação no mesmo iPad realizada com sucesso."; } else { $msg = "Atenção, seu login está ativo em outro iPad. Solicite seu desbloqueio."; } } // Atualiza informacao que logou na aplicacao $sql = "UPDATE colaborador "; $sql = $sql . "SET data_hora_login = CURRENT_TIMESTAMP(), "; $sql = $sql . "device = '{$device}', ip_ipad = '{$ipAddress}' "; $sql = $sql . "WHERE login = '******'"; // returnJson(-1, $sql); $update = query($sql); if ($update['error']) { $code = -1; $msg = "Erro ao liberar login."; } returnJson(0, $msg, $login); } }