testes/js/page/Modulo_Construcao/Funcao/Config/User/PopUser_Func.js

221 lines
8.4 KiB
JavaScript

// Pop up desenvolvido para alinhar os Grupos de usuário de um ambiente respectivamente
// Pop up dedicado para direcionar o manual do ambiente do usuário
InicializandoPopUser();
function InicializandoPopUser() {
const interval_ConfigUser = 500; // Tempo em milissegundos (1 segundo)
try {
const checkElements_ConfigUser = setInterval(() => {
try {
const ConfigUserConstruida = document.getElementById('EstruturaUser');
if (ConfigUserConstruida) {
const IntegridadePopUp = document.getElementById('Pop_up_Config');
let TelaHtmlRecor = null;
PainelApresentacao()
function PainelApresentacao() {
let TelaHtmlRecor = "Apresentacao";
SeletorEmpresa(TelaHtmlRecor);
function ApresentacaoUser() { }
}
async function PainelCricao() {
let TelaHtmlRecor = "Criacao";
IntegridadePopUp.innerHTML = Estrututura_html_User_Criacao();
SeletorEmpresa(TelaHtmlRecor);
const SeletorEmpresaElement = document.getElementById('SeletorEmpresa');
const ButtoEnviarUser = document.getElementById('CriarUsuario');
const DominioEmpresaElement = document.getElementById('DominioEmpresa');
await Empresasconsulta();
let dominio_empresa = 'Vazio';
async function Empresasconsulta() {
const { Empresinhas } = await ConsultasEmpresas();
const EmpresinhasPDf = await Empresinhas.json();
console.log(EmpresinhasPDf);
let htmlContentConfig = '';
htmlContentConfig += `<option value="0"> Escolha uma empresa</option>`
const seletorEmpresa = document.getElementById('SeletorEmpresa');
for (let EstadoEmpresa of EmpresinhasPDf) {
const Empresas = EstadoEmpresa.nome; // "2025-01-14"
const IdEmpresas = EstadoEmpresa.idempresa;
const Dominio = EstadoEmpresa.dominio;
htmlContentConfig += `<option value="${IdEmpresas}" data-dominio="${Dominio}" > ${Empresas}</option>`;
}
seletorEmpresa.innerHTML = htmlContentConfig;
// Evento para atualizar o domínio ao mudar a seleção
seletorEmpresa.addEventListener('change', function () {
const selectedOption = seletorEmpresa.options[seletorEmpresa.selectedIndex];
const dominio = selectedOption.getAttribute('data-dominio') || 'Dominio';
DominioEmpresaElement.textContent = dominio;
dominio_empresa = dominio;
});
}
ButtoEnviarUser.addEventListener('click', CapitacaodeInformacao);
async function CapitacaodeInformacao() {
const NomeCompletoElement = document.getElementById('NomeUser');
const UsuarioADElement = document.getElementById('UserAdUser');
const values = [
NomeCompletoElement, UsuarioADElement, SeletorEmpresaElement
];
// Verifica se todos os elementos existem, meio que uma validação de todos as informações do formulario estão sendo enviadas.
for (const el of values) {
if (!el) {
console.error('Elemento não encontrado:', el);
alert('Um ou mais elementos não foram encontrados.');
return;
}
}
// Alinhar cada um dos campos do formulario á sua variavel, para receber os dados que estão sendo prenchidos
const nome_completo = NomeCompletoElement.value.trim(); // Alinha o valor de um input
const usuario_ad = UsuarioADElement.value.trim();
const id_empresa = SeletorEmpresaElement.value;
// Valida se todos os capos foram preenchidos
if (!nome_completo || !usuario_ad || id_empresa === '0') {
alert('Por favor, preencha todos os campos obrigatórios corretamente!');
return;
}
// Criação do objeto json do extintor, será enviado para o back end
const novoUser = {
nome_completo,
usuario_ad,
id_empresa,
dominio_empresa
};
console.log(novoUser)
EnvioInformacao(novoUser)
}
async function EnvioInformacao(novoUser) {
try {
await NovoUser(novoUser);
alert('usuário criado com sucesso');
} catch (error) {
console.error('Erro:', error);
alert('Erro ao criar ao usuário. Tente novamente mais tarde.');
}
}
}
function PainelEdicao() {
let TelaHtmlRecor = "Edicao";
SeletorEmpresa(TelaHtmlRecor);
}
function SeletorEmpresa(Seletor) {
if (Seletor == "Criacao") {
const ButtonRetornarUser = document.getElementById('VoltarPopup');
const ButtonFecharUser = document.getElementById('EncerrarPopup');
ButtonRetornarUser.addEventListener('click', Retonar);
ButtonFecharUser.addEventListener('click', Fechar);
}
if (Seletor == "Apresentacao") {
const ButtonFecharUser = document.getElementById('EncerrarPopup');
const ButtonCriarUser = document.getElementById('NovoUsuarioPopup');
const ButtonEditarUser = document.getElementById('');
ButtonCriarUser.addEventListener('click', PainelCricao);
ButtonFecharUser.addEventListener('click', Fechar);
}
if (Seletor == "Edicao") {
const ButtonRetornarUser = document.getElementById('VoltarPopup');
const ButtonFecharUser = document.getElementById('EncerrarPopup');
ButtonRetornarUser.addEventListener('click', Retonar);
ButtonFecharUser.addEventListener('click', Fechar);
}
function Retonar() {
IntegridadePopUp.innerHTML = Estrututura_html_User_home();
PainelApresentacao();
}
function Fechar() {
IntegridadePopUp.style.display = "none"
IntegridadePopUp.innerHTML = '';
}
}
clearInterval(checkElements_ConfigUser); // Para o setInterval
}
} catch (error) {
console.error('Houve algo inesperado dentro da tela home' + error)
clearInterval(checkElements_ConfigUser); // Para o setInterval
return false
}
}, interval_ConfigUser);
} catch (error) {
console.error('Houve algo inesperado fora da tela home' + error)
}
}