{"version":3,"sources":["template/dependencies/jquery/jquery.js","template/dependencies/popper/popper.js","routes/routePrivate.jsx","template/validators/validators.js","template/img/logo.png","template/img/estacionamento.png","context/userContext.js","auth/isAuthenticated.js","auth/auth.jsx","template/sidebar/sidebar.jsx","template/img/LogoSemParar.png","template/Error/notFound.jsx","user/userCreate.jsx","user/list.jsx","table/table.jsx","main/home.jsx","user/updateProfile.jsx","user/userEdit.jsx","routes/routes.js","App.js","index.js"],"names":["window","jQuery","$","Popper","RoutePrivate","props","RouteComponent","component","other","isLoggedIn","sessionStorage","getItem","localStorage","currentUser","render","routeProps","to","validaEmail","strEmail","usuario","substring","indexOf","dominio","length","search","lastIndexOf","passwordValidator","strPassword","exec","UserContext","createContext","UserProvider","children","useState","user","setUser","Provider","value","baseURL","process","a","token","axios","post","params","response","console","error","isAuthenticated","Auth","context","useContext","useUser","userNameAuth","setUserNameAuth","password","setPassworAuth","remember","setRemember","history","useHistory","RedirectTo","push","addUser","setItem","userName","email","isAdmin","cleanState","useEffect","document","title","verifyAuthenticated","data","Swal","close","removeItem","clear","fire","icon","showConfirmButton","text","timer","login","basicAuth","btoa","footer","showLoading","setTimeout","then","catch","className","style","margin","marginTop","height","onSubmit","event","preventDefault","src","logo","alt","width","marginLeft","marginBottom","logoEsta","htmlFor","id","faUser","type","name","placeholder","aria-label","aria-describedby","onChange","e","target","required","faUnlock","checked","require","SideBar","userCurrent","welcomeUser","position","location","reload","body","headers","Logout","showDenyButton","confirmButtonText","denyButtonText","result","isDenied","hide","show","button","getElementById","wrapper","addEventListener","classList","toggle","eventClick","faHome","faUsersCog","faUserEdit","faListUl","display","onClick","faPowerOff","backgroundColor","href","faBars","data-toggle","aria-haspopup","aria-expanded","faChevronDown","aria-labelledby","NotFound","align","fontSize","color","faUserLock","userRole","RoleCurrent","activeOrDisabled","UserCreate","setName","setEmail","setPassword","confirmPassword","setConfirmPassword","setIsAdmin","optsUser","Add","map","disabledButton","disabled","createUser","stringEmail","stringSenha","faEnvelope","faUnlockAlt","faUserShield","handleOptionsIsAdmin","key","faUserPlus","DataTable","table","undefined","ListUser","updateList","userListTable","state","list","$tableUsers","tableUsers","row","targets","dateTime","datahora","dttime_year","substr","dttime_month","convertDate","decimal","emptyTable","info","infoEmpty","infoFiltered","infoPostFix","thousands","lengthMenu","loadingRecords","processing","zeroRecords","paginate","first","last","next","previous","aria","sortAscending","sortDescending","get","setState","log","on","tr","this","closest","rowData","nome","ref","Component","date","Date","toISOString","Table","newSearch","Estabelecimento","Dispositivo","Placa","Igualdade","destroy","disabledDatatableButton","onSubmitPassages","DataInicial","DataFinal","searchPassages","exportCsvPassages","blob","Blob","saveAs","timerInterval","willOpen","setInterval","content","getContent","b","querySelector","textContent","getTimerLeft","willClose","clearInterval","dismiss","DismissReason","$tablePassages","tablePassages","createdRow","index","eq","addClass","ajax","url","dataType","contentType","DateIni","DateEnd","Place","Device","SemPararPlate","Match","JSON","stringify","errors","msg","status","responseText","regex","dateInitialDom","dateEndDom","attr","open","faStore","faBarcode","faCar","maxLength","faBroadcastTower","defaultValue","faSearch","faFileDownload","faSearchPlus","Home","userEmail","UpdateProfile","nameProfile","setNameProfile","emailProfile","setEmailProfile","passwordProfile","setPasswordProfile","confirmPasswordProfile","setConfirmPasswordProfile","oldPasswordProfile","setOldPasswordProfile","isAdminProfile","setIsAdminProfile","oldPassword","setOldPassword","setComponent","UpdateUserCurrent","UserEdit","nameEdit","setNameEdit","emailEdit","setEmailEdit","passwordEdit","setPasswordEdit","isAdminEdit","setIsAdminEdit","userNameModalSearch","setUserNameModalSearch","userEmailModalSearch","setUserEmailModalSearch","handleSubmit","getUserEdit","modal","data-target","tabIndex","role","aria-hidden","data-dismiss","faRedo","Routes","basename","exact","path","from","App","ReactDOM","StrictMode"],"mappings":"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","file":"static/js/main.35685c5c.chunk.js","sourcesContent":["import * as $ from 'jquery'\r\n\r\nwindow.jQuery = window.$ = $\r\n\r\n//CARREGAMOS O JQUERY DESSA FORMA PARA QUE O SIFRÃO SEJA UTILIZADO NO JQUERY COMO SELETOR NA NOSSA APLICAÇÃO","import Popper from 'popper.js'\r\n\r\nwindow.Popper = Popper","import React from 'react';\r\nimport { Route, Redirect } from 'react-router-dom';\r\n\r\nconst RoutePrivate = (props) => {\r\n const { component: RouteComponent, ...other } = props;\r\n const isLoggedIn = !!sessionStorage.getItem(\"isLoggedIn\") || !!localStorage.getItem(\"isLoggedIn\");\r\n const currentUser = !!localStorage.getItem(\"user\") && !!localStorage.getItem(\"email\") && !!localStorage.getItem(\"isAdmin\");\r\n\r\n return(\r\n isLoggedIn && currentUser ? ( ) : ( )\r\n }\r\n />\r\n );\r\n};\r\n\r\nexport default RoutePrivate;","/************** VALIDADORES *************************/\r\nexport function validaEmail (strEmail) {\r\n var usuario = strEmail.substring(0, strEmail.indexOf(\"@\"));\r\n var dominio = strEmail.substring(\r\n strEmail.indexOf(\"@\") + 1,\r\n strEmail.length\r\n );\r\n\r\n if (\r\n usuario.length >= 1 &&\r\n dominio.length >= 3 &&\r\n usuario.search(\"@\") === -1 &&\r\n dominio.search(\"@\") === -1 &&\r\n usuario.search(\" \") === -1 &&\r\n dominio.search(\" \") === -1 &&\r\n dominio.search(\".\") !== -1 &&\r\n dominio.indexOf(\".\") >= 1 &&\r\n dominio.lastIndexOf(\".\") < dominio.length - 1\r\n ) {\r\n return true;\r\n }\r\n return false;\r\n}\r\n\r\nexport function passwordValidator (strPassword) {\r\n\r\n var regex = /^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$%^&*-]).{8,}$/;\r\n if(strPassword.length < 8)\r\n {\r\n return false;\r\n }\r\n else if(!regex.exec(strPassword))\r\n { \r\n return false;\r\n }\r\n return true;\r\n}","export default __webpack_public_path__ + \"static/media/logo.0c353c37.png\";","export default __webpack_public_path__ + \"static/media/estacionamento.5e496e64.png\";","import React, { createContext, useState, useContext } from 'react'\r\n\r\nconst UserContext = createContext();\r\n\r\nexport default function UserProvider({ children }) {\r\n\r\n const [ user, setUser ] = useState(\"\");\r\n\r\n return(\r\n \r\n {children}\r\n \r\n )\r\n}\r\n\r\n\r\nexport function useUser(){\r\n const context = useContext(UserContext)\r\n const { user, setUser } = context;\r\n return { user, setUser }\r\n}","import axios from 'axios';\r\n\r\nconst baseURL = process.env.REACT_APP_URL_VALIDATE_TOKEN;\r\n\r\nasync function isAuthenticated(){\r\n \r\n const token = sessionStorage.getItem(\"token\");\r\n\r\n try {\r\n const response = await axios.post(baseURL, null, {\r\n params:{\r\n token: token != null ? token : null\r\n }\r\n });\r\n return response\r\n }catch(error) {\r\n console.error(error);\r\n return false;\r\n } \r\n}\r\n\r\nexport default isAuthenticated;","import React, { useState, useEffect } from 'react'\r\nimport './auth.css'\r\n\r\n\r\nimport axios from 'axios'\r\nimport Swal from 'sweetalert2/dist/sweetalert2.js'\r\nimport 'sweetalert2/dist/sweetalert2.min.css'\r\nimport { faUser, faUnlock } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\n\r\nimport { useHistory } from 'react-router-dom';\r\nimport { passwordValidator } from '../template/validators/validators';\r\nimport logo from '../template/img/logo.png';\r\nimport logoEsta from '../template/img/estacionamento.png';\r\n\r\n//AQUI ESTAMOS IMPORTANDO NOSSO HOOCK CONTEXT PARA USO GLOBAL DO USUÁRIO LOGADO\r\nimport { useUser } from '../context/userContext';\r\nimport isAuthenticated from './isAuthenticated';\r\n\r\nconst baseURL = process.env.REACT_APP_AUTH_USER;\r\n\r\nfunction Auth(props) {\r\n\r\n const { setUser } = useUser();\r\n const [userNameAuth, setUserNameAuth] = useState(\"\");\r\n const [password, setPassworAuth] = useState(\"\");\r\n const [remember, setRemember] = useState(false);\r\n\r\n const history = useHistory();\r\n\r\n const RedirectTo = () => {\r\n history.push(\"/home\")\r\n }\r\n\r\n const addUser = (user) => {\r\n setUser(user);\r\n localStorage.setItem(\"user\", user.userName)\r\n localStorage.setItem(\"email\", user.email)\r\n localStorage.setItem(\"isAdmin\", user.isAdmin)\r\n localStorage.setItem(\"welcome\", true)\r\n }\r\n\r\n const cleanState = () => {\r\n setUserNameAuth(\"\");\r\n setPassworAuth(\"\");\r\n }\r\n\r\n const onSubmit = (event) => {\r\n event.preventDefault();\r\n login(userNameAuth, password);\r\n }\r\n\r\n useEffect(() => {\r\n document.title = \"OCR | Login\";\r\n });\r\n\r\n const verifyAuthenticated = async (user) => {\r\n const response = await isAuthenticated();\r\n if (response.data) {\r\n Swal.close();\r\n cleanState();\r\n addUser(user);\r\n sessionStorage.removeItem(\"token\");\r\n if (remember) {\r\n localStorage.setItem(\"isLoggedIn\", true);\r\n RedirectTo();\r\n } else {\r\n sessionStorage.setItem(\"isLoggedIn\", true);\r\n RedirectTo();\r\n }\r\n } else {\r\n cleanState();\r\n localStorage.clear();\r\n sessionStorage.clear();\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops...',\r\n text: 'Token Inválido, tente novamente ou contate o administrador!',\r\n timer: 4000,\r\n })\r\n return;\r\n }\r\n }\r\n\r\n\r\n const login = (email, password) => {\r\n\r\n const basicAuth = btoa(email + ':' + password);\r\n const stringSenha = passwordValidator(password);\r\n\r\n if (stringSenha) {\r\n Swal.fire({\r\n title: 'Entrando...'\r\n });\r\n Swal.showLoading();\r\n setTimeout(() => {\r\n axios.post(baseURL, null, {\r\n params: {\r\n 'infoUser': 'Basic ' + basicAuth\r\n }\r\n\r\n }).then(response => {\r\n sessionStorage.setItem(\"token\", response.data.token)\r\n verifyAuthenticated(response.data);\r\n }).catch(error => {\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops...',\r\n text: 'Usuário ou senha invalido!',\r\n footer: 'Todos os campos são obrigatórios o preenchimento',\r\n timer: 3000,\r\n })\r\n return false;\r\n });\r\n }, 5000)\r\n } else {\r\n\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops...',\r\n text: 'Número de caracteres inválido para senha.',\r\n footer: 'Verifique o requerimento para o campo senha.',\r\n timer: 5000,\r\n })\r\n return false;\r\n }\r\n }\r\n\r\n return (\r\n
\r\n
\r\n
\r\n \"SemParar\"\r\n \"SemParar\"\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setUserNameAuth(e.target.value)}\r\n value={userNameAuth}\r\n required />\r\n
\r\n Seus dados serão mantidos em sigilo.\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setPassworAuth(e.target.value)}\r\n value={password}\r\n required />\r\n
\r\n Mínimo de 8 caracteres, letra maiúscula, letra minúscula, um dígito e um caractere especial .\r\n
\r\n
\r\n setRemember(e.target.checked)}/>\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default Auth;","import React, { useEffect } from 'react'\r\n\r\nimport axios from 'axios'\r\n\r\nimport './sidebar.css'\r\nimport Swal from 'sweetalert2/dist/sweetalert2.js'\r\nimport 'sweetalert2/dist/sweetalert2.min.css'\r\n\r\nimport { useHistory, Link } from 'react-router-dom';\r\n// import { useUser } from '../../context/userContext'\r\nimport { faUsersCog, faBars, faHome, faPowerOff, faListUl, faUserEdit, faChevronDown } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport logoSemparar from '../img/LogoSemParar.png'\r\n\r\nconst baseAddressLogAws = process.env.REACT_APP_URL_LOG_AWS;\r\n\r\nconst $ = require('jquery');\r\n\r\nfunction SideBar(props) {\r\n\r\n // const { user } = useUser();\r\n const history = useHistory();\r\n const userCurrent = localStorage.getItem(\"user\");\r\n\r\n function RedirectTo() {\r\n history.push(\"/login\")\r\n }\r\n\r\n const isAdminOrUser = () => {\r\n if (localStorage.getItem(\"isAdmin\") === \"false\") {\r\n $('#userCreate').hide()\r\n $('#userlist').hide()\r\n $('#userEdit').hide()\r\n } else if (localStorage.getItem(\"isAdmin\") === \"true\") {\r\n $('#userCreate').show()\r\n $('#userlist').hide()\r\n } else {\r\n $('#userCreate').show()\r\n $('#userlist').show()\r\n $('#userEdit').show()\r\n }\r\n }\r\n\r\n const refreshPage = () => {\r\n window.location.reload();\r\n }\r\n\r\n const welcomeUser = () => {\r\n if (localStorage.getItem(\"welcome\") === \"true\") {\r\n localStorage.setItem(\"welcome\", false)\r\n setTimeout(() => {\r\n Swal.fire({\r\n position: 'center',\r\n icon: 'success',\r\n title: 'Bem-vindo
Autenticado com sucesso',\r\n showConfirmButton: false,\r\n timer: 4000\r\n })\r\n ;\r\n }, 100);\r\n setTimeout(() => { refreshPage(); }, 1300);\r\n //Parâmetro Endpoint Produção\r\n const url = baseAddressLogAws;\r\n // Headres Produção\r\n const _headersAws = {\r\n \"x-api-key\": \"MqFwGon7DU5HrxyUt6hP2XdEoTa5GCL9wZOZvL2j\",\r\n \"Content-Type\": \"application/json\",\r\n };\r\n let body = {\r\n 'user': userCurrent\r\n }\r\n axios.post(url, body, {\r\n headers: _headersAws\r\n }).then(function (response) {\r\n return true\r\n }).catch(function (error) {\r\n return false;\r\n })\r\n }\r\n }\r\n\r\n const eventClick = () => {\r\n const button = document.getElementById('sidebar-toggle');\r\n const wrapper = document.getElementById('wrapper');\r\n\r\n button.addEventListener('click', (e) => {\r\n e.preventDefault();\r\n wrapper.classList.toggle('toggled');\r\n });\r\n }\r\n\r\n useEffect(() => {\r\n isAdminOrUser();\r\n welcomeUser();\r\n eventClick();\r\n });\r\n\r\n function Logout() {\r\n\r\n Swal.fire({\r\n title: 'Tem certeza que deseja sair?',\r\n icon: 'info',\r\n showDenyButton: true,\r\n confirmButtonText: `Sim`,\r\n denyButtonText: `Não`,\r\n }).then(result => {\r\n if (result.value) {\r\n sessionStorage.clear()\r\n localStorage.clear()\r\n RedirectTo();\r\n } else if (result.isDenied) {\r\n return;\r\n }\r\n })\r\n\r\n }\r\n\r\n return (\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default SideBar;","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFwAAABLCAYAAAD9POB7AAAWrElEQVR4Xu2dC5hdVXXH/+veZCYJJlaNCFpfVVoxFlDquxakaqU2KITBBwWBoiJgVZT4thG1vqmiFmqroihYY4gFLIhWVCyofVilQD+tIlVpoZRUEsLMnbl3+f3O7HXZc+ac+5jMjaHN/j4+SO695+zz32uv9V//tfbBtHv0RcB16Pj25rJnNr3xVpnube7nTHX87FXa/D99f1z6gg37g/9v33dNjE0220c2ZOdI2iM9f8vlnxxvbzvNdPkdw2CyG/AeaGHZU40VJ8j8DJPdR1KO150mXTDZ7qxfqc23meSDAL8b8AqUXLIf6+Dx+zVXP6cp/7Cke5XAjl9NufwvW23fsFL7bzFt6PQDfTfgJYQAW5pYOtlsH9uQvV/Sihqw45czkp8/1p5+qXTgZD/QdwM+D/BZN2Km9wwAdvy6I/mnWm0/faU239LLyncDnqHjmlg+3ZyZcDVwIwTIYfCZlnTeVLv1mlW6+NY60Ie5YD/3dLf+/AYdt2zvxtaTzfRmSauGBLt4dpNNuvziyXbjpHtq421VgMwD3N0bksYk8e/8c6IwqzhjZvMisrvz3fJv+i0C1+nE9dK9uUZ5zPnevA9735vr1wazWZ+9dvlUY+xEM22Q9CsLATvmNAt6Z9NMW6ev0H43l316F1B3XypppaRfk/RcSb8p6R7p5m1J/yXpi5IulwThn8wfxN357UHJ7/UDOj4HyH+Q9B/pPo+UtG/Fj1noq82MOcxfDfe9JT1R0pKKj6+TdL2Z8QxzxizYh45NN5a/UNY40+XBswedf833bFrqbBprN0+S1mzNQS8Ad/empBdKOl3SPpL4c934uaS/lXSqmXW3jbu/StKfpt0x6IQB4fOSjpa0TNI/pwUv/35G0iZJLyhba9oVfy3pOTWA/1DSgWbGvOeMH+jQ8Yc09nh5xxzLXj7opAf8HsZ00Vi78SJp463B0wPwl0h6V7Lwqi2d34MLAdQ/SVor6VZcgru/Xiq2JDtl0MF1LpV0ZHrgayXdv8qIJf1E0sPNsJ67hrvj/n6UflcVk26StMbM/nfuQxyzx1TjjhPM7J3p3qOIZzMd+aZlbb3adOFPuT9IsY2/KolMqh/Y+ZwnJWHV52B1Iwac+3I/3M2Nmc8HpIdKYqHYIVVjHuCwkamGn2zmbx2BZZfn0HLZl8bb4y8wffp2AD9J0p9VTBiN4F8k/bekJ0jas7QgWCcu4In4xxrAi2CX/qkCg2tcLOkPk++vs3B+25J0OHEk/HFyhb8v6XM9XNkcwG/S2hX3aixd3zR7hUv3HHQr7uD3plz6ynjbXwzgn5D0/JIrAIjTJH08MRNSWwLmmhLo2yTdz8y21wAOSFy/kiIRPiRdIumbyZ31AhxX8jpJZ4VbSYGeeWKpda5sDuDTSw4/qOMN4gZspN/Ynq5bd+2OSXf4XeSi1/Va7joHwL8m6clZoAQEJvkbZlYoYclPwk9fUwpMUwAu6fYERtmH8/dPNrN/7fdk7g4AvQAncLJ4p5gZ92Ve47i0tEOqGApfmwP4ZGPdB8zErsb3142CAnfU/qOGN98m04NrvjjZkb2s4Z03yOxBfVxyR+4/A/CrJD2uBPi/S9rfzO5MD8YKv1zSO36JgOOaMI5nZfOCWVwm6bd7POwcwKea69jNf9Wbvhrx4vh2u/ONRkNfNbOH1QC+fUYzE0vaYz9Ro3OhrKDUdXFwxqVLAfzKxGGDCrK6+O2HmRkuA0sC8D+WRETPLWnUFv4tdlra/swLvg7jiJ0Hb75e0q8mHo/r+jdJT8oAmgO46+hVread50r2rBorv22m3TlhhbZ8Qbrv6lajc6VMD68D3K2z7uqZLV9+nFbtuaSx9BKZ9q8AnRj3Q+vYEQAOhz2iBCTWhCVsxl+m4AR1RNAJfwYA7IAHmtnWGh++oy4FX4t1kYQx8OOwEkBkADSUMIzge4k+AmaMEuCyrVp7n/Hm0ndLBv/vuhaTft6RjhlvN75o2tjapom9lvYBfNo66/aY2Xz5LCO+dp9Wo/05mcH8wtLbcn3PO42jxrXmRwC+XtIZkvCH+fixpGdLIlMjiOJjmWAAzqJgTV/qQQt3FPAvJFf3zGxiGAfMhgFr+Wz2GQkZ9PCQOsCLHVtkmM/fs9VskXus4x4mbZ+Rn7K8vfpC00cKrj8M4CZ1XBsaLV2zrxr+CZnta7Bu+TXWbp+6VAd8h4wTwAmYPFiZImHB35f0B5JuqEqN89UZkYUDLBb64kzfQMmD/zPQqwmACccigJIpP60X4HeBPrF0cok/qdnxNdOdpZtXqH2zaWNXAhgW8NnrbmhIVy1vNVce1pGad7YbF5+ljVs3zNLjIvFhSwH4UytSekAngB5uZjCI2jEiwP8mBUosMXbWdyT9TprINwju6b+xSqQJePkz+gHe61nis4UA3u+6kdo/ANdQIxyx4qTFaC2X1Vl6DeD8Fm0YPl4eaBzPM7ObC8uopoUwkA9JIs6EsPSfkh6fLJ6gule6MIEUieCVdwfACTpYDf6QFL88AA7GciL+M3hw/qU+qX1VgRXl7yAz+0EPwFEmYUdXp7oiX0WEwmUQlDAStGsGDIWMmAXatS08PTBbFj5LcvHACtABjYd6u6SzzQqu2h0L0FICcOJEnYUD+DFJUUR+ZbBbCJzszgszV/P3KYh+6m4BeHpouPijJF0g6ddrZFqo4BskfdjMuq5ihIA/T9KbkquIBSadZ67Q1BjvTnkC7ufp2d9XqoUVBjXvr0bmw0uWiuWgnSBc4durMqdwL5/NlLsqeZZdEf+UH4gk5qlmdmMfC8cvAyB6eIxzE+BYfwwo7BVJm4mgyme7NuDp4QH93pI+Ripdw17QdwHi+z30cBYGrkyALA+CHFp6QZdqgiYuhd+T/CBBUIFioFJi4cFQtqbs8oZUHLl7AZ6BzgOeVUp4AjjcCZz41X0SH+LCPPGqXBetAfzLKfm6b6KHCEQYQ3BlQGcHkaQdnEp/JD+7LuDu/tqUmUXFg4dBFQQkrI8Mk0BKAlQuKkMXHyIJC0M6XWy18OuJV5MFIw8fWFHgBfB/lPR7KaDu8oATBHmgAJMEgkTjjKSj8PdkoSQcyJQ56Fg5heNvS2LhRgU4C497o7hdLoUB+KclvSi5mV0ecEDLBXYAJ/q/JViIu6NP8MBHlfw53yUh2igJTWZUgDPHUyS9ryKIsxhIx3+RhKidBrjJ7mhZ+8j3zmy+PFL3fuyH1H4QwEn/EbjQMHJ5FsDROeC+owScXXhAaqkosyYAf3RygejjX0n6fjz7KFnKto51nr1sZvMVA3fPDgE4ZSz4704HHP3bvegZgULCnsKt4E6QDh5MUSJ9Z6cB7tIt1tYhY9p03TCAU0TIy02UsuC59J1EKQvLOS/1fuQ9K+wOJNvNKdAutkuhOHJoApw483cpfY85EOBJ+5/GXHcy4B25rtvSWfGEvXTewE35uBS6qPL+Z7YoHaAkHFRTGLADss/cuvh7FoTP+F5V0MQVUM7q1VGKz/1uTRGZYHxIApw484Gk50TMwaXhu09LAZ5dsLMsnOLxUcvam5j/wAPA6UmBK5e7rdiuARQtEmV2wMIANLXPujaJfhPBQpGGCcbsonIROQccV/ZSSe/NdiQL/goW1cxmdqKFT5vpgzfObH/9Prq08AKDjuhLQcgvV3z6XQPx6gSk0xE2AuWAYxC/m4SsaEtjBx2GVac5YOGk94/NJr/4QdN1/lincaJpY1FkH2YAOG4CmRMWMGjnFX6easyxWaF5FK1uOeDsMJKsazJtHN+J2FZ0Y7k7mXFelACLxQS8466Pjnfa66UDbu932qFqIaIAQecrPJtqCdZT12eHm6FOSQB9XYCdpAB8+FuGbOZk4fCBuBS4PmDm0jD6yTNK/TEwFVwcg2LEQ7PGICycVgriSgxEsv2qmjn7WeYtmrjHqmbnMpvtApg217m3dlqv3HuAoyV1187blQEdrQI/iWBFYOLzUPtgJPBt/vlp9IbEhX22ZRgZta7Hr24OBGPcAD4anTuvR6LVXFOSgan2wP0Z9DXS7lyMVC7cT9LJ2c3YvXQfzNHv+4GdPjfXEQ+YauhUdXTlVs18fbUu2jYoBay18AFvvvtri4DAKFp0F2Fa/3cvQaQh+tf15eVPDoWDCnrVkZNsW7OIXK8qAHONdt3v3Z3f9ToM0L1Nkmi7x1V6LVE6DlM7Jyhl3e8Xe04ATi/HxAAMBQpEwRcplMzyqorTCIBNEZr6YgS2/Fl+RqHAzAi8c0bi0FR18NH9BnGFgIl8i///fO7nK65NuxzFjCg4l+cE3bylQqNHJaVu+ph+E0qxjjkR6MltoMvzFhLAOckwDCXEyqPERjDqXjTtFoIe7Q1VA6BgEN+tWKx+3bNV12MuJB4YzRtpm64AGyOAfdHjUrV7mD8nOeggm3MOyN1pwUBeqOst7DUnJO53lA1hIYDHTchCsYxrs7ommgxM5Y09LAIGQWZYPjqyEMDjNhgA7XAcvJpzYi3rIacRtWoAMnN+XxmcBQLOPTAsWBFFm6/lC1kHeJzj4d9xHLDsk6GJZ1LBz+qSHJO+KC1EHeb0vhxXQSvrAOc+0R3AHMiIq44notm8rKJ9g7yCHIPqf51FQk1PrPhtnYUzHwwGfNg1VccsuRe7ioNg3Z1XBTgXoRhLEQJroeeZ6nj5sBOf0a3KCbEoBOO3yQ7rGtiZBIkLicgcP96jIZ+TcaiQ3IMH+2RK58sN9bTkPYZO3hxVd8dvc8Ki6jgiX+W6ZKdrK+ZUBzjlROQQQCcYn50OBZRPSqANIb51xbsqwJkAoFGRxz9iTaiJBCd6VcLSWRi6oPbKZFweikyPom/d4DePjY6r+FIfwN+ULSqBjJNv0RgUl0AXf6SZ0dveHe7OnHmeuvM80T/JSY3yb3sBjguilRsPwKKSJUefetwfI6AVpDjBxqgDnJ49VqbIzlKJjbohvR954OHzPcOq3J1qOWDgWhhYAC0S+dlP2A4aNwuTA1PnUrDwHHDu/5kkH+eXoCvsERWgIW7hMmJOBElUzkdkpUWM4FE5MOm5ewF+ZikDxpUSnHN86F0HcOSFoQDHb6I7c9osv2B+AoKVRkPn4WIX4LtwAcdnaiQPTB30gpyGDWHh3IfFxyfniVsd4JT+3paBS4Cl/5A6aKiOWDlt298qna4eBnDmhCaU5zQjBZwb0QL3J5nZ4acpy+HvoomHj2Ex78yj9ygAT6eUoYw0ocbi0NMIU6KqlfNy5vmhnD31YCn48LKFozHRVbDTAMdaWGWOYMdAGkUIozSGDByDPpeX5F24IwKcwEqSxlaPQfMorpHCB4QgBt87OmdPv2zAP5Lql3UuBbUR5Y4gFQOgqXmS5aHixSBGUIcsDm0xFgnwfXNGkPRxEhcSuxgwFozi/NLRFI6Ww566R8QXAXDiFz6caxdjmKDJIVkkgHmAozW7OwyFh8m3KX0kVPupReK3Y0CTHm1mcThqGMDrgiZUlmt2X2Lg7qsTe4imfe4PX6fdg25bDorFwP093sw4txRGMIwPh3OX+zA5HwX5KA4d9AOcLBIWgu/D/5Kuo3PkCRCcl5PItCigZePH8rcyHJuahI5LXDXuS6XmMDOj4BsPNyhLYUEpWhDkuj+P7qs8eXF3Cgfo4cFQ+D4NRR9NQZPsM3w77ImjNbTUDQx4ooXgA7h0G+ctHDC2iX6JDzycVmUYCbSOyTJJQMuTDb6HP4ROUUTmpDLBMK+oPyWJXb+V2hliMrAbqF63v7uHS6FoDMuAScCWaGmjuoQLY/D3LDy9hd8usQzO/LDDol7LdzklgQAHo6ByFUEO9sQBrY9lUkWdhZOIfZCX9WRz4vnz+2CsnMT4Zq437YiWwmKwPU9ND04gxF8HqLRfPMXMrnd3Vh4LCHeDfgF9pCZaHEfpATiWxz98D0vKi938HbuFE9LvL4tX7k5gZCHCDXKd++On3Z1DZHye70g4/5uzlyfUAQ7djQoSc8oNMZ/Te8qa0Y4ATnBBMCKLAwQmn5+PJGAcTDLh7mSeNOzACmJB+HOeXPUSr0LTybxI8Z/sFAIgWXCrxOvZaQSraPFgRyIv4+dxgSQ+BO885pBQHZ8lfAtRC8lW6WmHQEyXJd+FAs7qwlpemyYPWLABKuixzem2hYlscfdIx/MYgMUTwQudYYCXG5TB5s+ASMID10YKLUSi5FcpRpNu57sK/3xE6tJCt6clOw+oSNXMqdBjFqgWsnv5PYThXYNaeK4W5oEJlQzxCffx51k1HWELgKPowO9DKcOaiANwdNLsCLowFE6xoTf0AhxQQ6dmd+AeyqXBLenayLPEE+6B1gLAcdwQfxtdWq00p7KyiXUeEOypB+BR/WLqVXPi+Vl8PEBfH86XAQOemgvybE/0D/69vVR44PQBLiXYANcgWL0dvSFV0wl8cRiKicLBn25mUMlegFM9wWUwEIdgQ+yYclmQBS0k1lQI4Ug3hhFdBBgLwbbIJtOrPwh+/F0M4gFMBWbTy8LJK6js8JzsJBIrXmNSLnDA7NhR3YahgXh41V7O/87do+gQwYOJ8MDQNywLf0pAxcJiUvjfV5kZrRDD8HCqL1wXQSwf6BbIs+QELAaNSUgNMSfuh8yMVTMnvoMF8gKFGCwKffEEz16Ad1P7tJuIB/GSnXxOQ/HwbkAbAHAsIj86DuCIQ/GGSrYdAZNGoXApPPRnzKw4iTZEpsniUfukLJYPfHmRaaYqDzlB/pYMWBU6Dy6xYEap/soZpnBRuC/KhohwAwGevsfv2f3w/tzKF5Zp9gI8bU1cUPkNxFhLPBiXYFLRXMSfgzUAEm1qgyY+fdXC5MKIKVhert9HlSYeic/KRQNOyEFnea3UMJkmLphMfMfFqzrAExvg/SVUfhbykkV8JpZPsMIvV72CqayH9wQ87SoYCJbcq22v7rEI4gTzm4YEfPHUwh6AYyEcqionEP28UHwOvYS7Bx9eDMBxLWxtAu0gPS7luaJ7IGvgfwmEVVX70cqzPQDngZAACIZ5Wot/rnrfK9/PaR1uhz5BGAYZ22IATkKG3g0Pzl8rVTQhVTwLRoMbCD/OrkO+RefZ5QDH/0Gt0CxyDYWKCklEDjoPRkMNUkAwB3wqqh3BFJe0GICTdMB80H7Cf7OToKkoivlgQSgL0ueesycYDu9y3OUABzjSYRKamDAPh35B6l4GnJMW9JXnyQiMA+m26gQE4Azrw6F/JF0AGYCTzfLnIsnKBnPGJUIzcxGLbitKeLsc4LgRzufAifM6JuyAluYuS0kBlu/lFfRQJpFaSVAWw8JxDfhv9PlwE6ia6Dq0onVHmhPCGvQtdh1zgtPzDGhAu4YPT5NF4A82UFDSdC7oQRVdTNFOgIAUbRR8H59LHwsWhrZR7n8ZxsIBOd7SnB8AIyiT1c7pWUkcGlcI4HmLA5lhvKuQ/sVyq9sOBU1ULQ6W5kfxyJoQnmqb2FOGhYsguEQnFMHyCjPL38hTtih8O+W2eDEBoPNnGj0BHIuLwWchmUazEQsHBWPL58WQoi8lAccuiuDM70ixKXjMf4f4bFbK61hhJvw398Qt0SPJQgTgcTiBuQXg3XY9d0dbp4icv2aQ35NAzimxofrl5X0mSDta95WjVSwlAc77BPOKCpax3swox1UOd+fUGVJAsBpYAS4FP8sR8nIlh4z14yX3xMsXSNsDcMCge4rnQNvACPLeGBo9CwmhPJLuQoGF4B9uhZ1A2k8/CS8Szjt6WTRiziUlPQlmlBc7uBWG+1wz6/4frX4BIJRzYyIOMoMAAAAASUVORK5CYII=\"","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\n\r\nimport { faUserLock } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\n\r\nconst NotFound = () => (\r\n
\r\n
\r\n
\r\n

Não autorizado

\r\n Home\r\n
\r\n
\r\n
\r\n);\r\n\r\nexport default NotFound;","import React, { useState, useEffect } from 'react';\r\nimport '../auth/auth.css';\r\n\r\nimport axios from 'axios'\r\nimport Swal from 'sweetalert2/dist/sweetalert2.js';\r\nimport 'sweetalert2/dist/sweetalert2.min.css';\r\nimport { faUser, faEnvelope, faUnlockAlt, faUserShield, faUserPlus } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport { validaEmail, passwordValidator } from '../template/validators/validators';\r\n\r\nimport logo from '../template/img/logo.png';\r\n\r\n\r\nimport SideBar from '../template/sidebar/sidebar';\r\nimport NotFound from '../template/Error/notFound';\r\n\r\nconst userRole = localStorage.getItem(\"isAdmin\");\r\nconst RoleCurrent = userRole === \"true\" ? true : userRole === \"null\" ? null : false;\r\nconst activeOrDisabled = userRole === \"true\" ? \"admin.empresa\" : userRole === \"null\" ? \"admin.geral\" : \"user.comum\";\r\nconst baseURL = process.env.REACT_APP_CREATE_USER;\r\n\r\nfunction UserCreate(props) {\r\n\r\n const [name, setName] = useState(\"\");\r\n const [email, setEmail] = useState(\"\");\r\n const [password, setPassword] = useState(\"\");\r\n const [confirmPassword, setConfirmPassword] = useState(\"\");\r\n const [isAdmin, setIsAdmin] = useState(false);\r\n const [optsUser] = useState([\"Não\", \"Sim\"]);\r\n\r\n\r\n const Add = optsUser.map(optsUser => optsUser)\r\n\r\n const handleOptionsIsAdmin = (e) => {\r\n e.preventDefault();\r\n const isAdmin = optsUser[e.target.value]\r\n isAdmin === \"Sim\" ? setIsAdmin(true) : setIsAdmin(false)\r\n }\r\n\r\n /*******************************\r\n * HandleSubmit Create User *\r\n *******************************/\r\n const handleSubmit = (e) => {\r\n e.preventDefault();\r\n createUser();\r\n }\r\n\r\n const disabledButton = (data) => {\r\n document.getElementById(\"usercreate\").disabled = data;\r\n }\r\n\r\n useEffect(() => {\r\n document.title = \"OCR | Novo usuário\";\r\n if(activeOrDisabled === \"admin.empresa\" || activeOrDisabled === \"admin.geral\"){\r\n disabledButton(true);\r\n }else{\r\n return false;\r\n }\r\n if(name && email && password && confirmPassword){\r\n disabledButton(false);\r\n }\r\n }, [name, email, password, confirmPassword])\r\n\r\n\r\n /*******************************\r\n * Clean State Current *\r\n *******************************/\r\n const clearState = () => {\r\n setName(\"\")\r\n setEmail(\"\")\r\n setPassword(\"\")\r\n setConfirmPassword(\"\")\r\n setIsAdmin(\"\")\r\n }\r\n\r\n\r\n /*******************************\r\n * Create Use Current *\r\n *******************************/\r\n const createUser = () => {\r\n const stringEmail = validaEmail(email);\r\n const stringSenha = passwordValidator(password);\r\n\r\n if (stringEmail) {\r\n if (stringSenha) {\r\n if (password === confirmPassword) {\r\n\r\n Swal.fire({\r\n title: 'Criando...'\r\n });\r\n Swal.showLoading();\r\n setTimeout(function () {\r\n axios.post(baseURL, null, {\r\n params: {\r\n \"nome\": name,\r\n \"email\": email,\r\n \"password\": password,\r\n \"isAdmin\": isAdmin\r\n }\r\n \r\n }).then(response => {\r\n Swal.close()\r\n setTimeout(function () {\r\n Swal.fire({\r\n position: 'center',\r\n icon: 'success',\r\n title: response.data,\r\n showConfirmButton: false,\r\n timer: 4000\r\n })\r\n clearState();\r\n }, 2000);\r\n }).catch(error => {\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops...',\r\n text: error.response.data,\r\n timer: 3000,\r\n })\r\n });\r\n }, 5000);\r\n } else {\r\n\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops...',\r\n text: 'As senhas devem ser iguais no campo confirma senha.',\r\n footer: 'Todos os campos são obrigatórios o preenchimento.',\r\n timer: 3000,\r\n })\r\n\r\n }\r\n } else {\r\n\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops...',\r\n text: 'Caracteres inválido para senha.',\r\n footer: 'Todos os campos são obrigatórios o preenchimento.',\r\n timer: 3000,\r\n })\r\n }\r\n }\r\n else {\r\n\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops...',\r\n text: 'Email invalido!',\r\n footer: 'Todos os campos são obrigatórios o preenchimento',\r\n timer: 3000,\r\n })\r\n }\r\n }\r\n\r\n\r\n return (\r\n <>\r\n { RoleCurrent || RoleCurrent === null ?\r\n\r\n (\r\n <>\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"SemParar\"\r\n
\r\n Novo usuário\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setName(e.target.value)}\r\n value={name}\r\n className=\"form-control\"\r\n id=\"name\"\r\n name=\"name\"\r\n placeholder=\"Enter User Name\"\r\n aria-label=\"name\"\r\n aria-describedby=\"addon-wrapping\"\r\n required\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setEmail(e.target.value)}\r\n value={email}\r\n className=\"form-control\"\r\n id=\"email\"\r\n name=\"email\"\r\n placeholder=\"Enter email\"\r\n aria-label=\"email\"\r\n aria-describedby=\"addon-wrapping\"\r\n required\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setPassword(e.target.value)}\r\n value={password}\r\n name=\"password\"\r\n className=\"form-control\"\r\n id=\"senha\"\r\n placeholder=\"Password\"\r\n required\r\n />\r\n
\r\n Mínimo de 8 caracteres, letra maiúscula, letra minúscula, um dígito e um caractere especial .\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setConfirmPassword(e.target.value)}\r\n value={confirmPassword}\r\n className=\"form-control\"\r\n name=\"confirmPassword\"\r\n id=\"senhaConfirm\"\r\n placeholder=\"Confirm Password\"\r\n required\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n )\r\n :\r\n (\r\n \r\n )\r\n }\r\n \r\n )\r\n\r\n}\r\nexport default UserCreate;","import React, { Component } from 'react';\r\n\r\nimport './list.css';\r\n\r\nimport axios from 'axios';\r\nimport Swal from 'sweetalert2/dist/sweetalert2.js';\r\nimport 'sweetalert2/dist/sweetalert2.min.css';\r\n\r\nimport SideBar from '../template/sidebar/sidebar';\r\nimport NotFound from '../template/Error/notFound';\r\n\r\n\r\nconst $ = require('jquery');\r\n$.DataTable = require('datatables.net-bs4');\r\n\r\n\r\nconst convertDate = (datahora) => {\r\n\r\n var dttime_year = datahora.substr(0, 4);\r\n var dttime_month = datahora.substr(5, 2);\r\n var dttime_day = datahora.substr(8, 2);\r\n var dttime_hour = datahora.substr(11, 2);\r\n var dttime_min = datahora.substr(14, 2);\r\n return dttime_day + '/' + dttime_month + '/' + dttime_year + ' ' + dttime_hour + ':' + dttime_min;\r\n}\r\n\r\nconst userRole = localStorage.getItem(\"isAdmin\");\r\nconst RoleCurrent = userRole === \"null\" ? null : false;\r\nconst baseAddressList = process.env.REACT_APP_LIST_USER;\r\nconst baseAddressDeleteUser = process.env.REACT_APP_USER_DELETE;\r\nconst baseAddressResetPassword = process.env.REACT_APP_USER_RESET_PASSWORD;\r\nlet table = undefined;\r\n\r\nclass ListUser extends Component {\r\n\r\n constructor(props) {\r\n super(props)\r\n this.state = {\r\n list: [],\r\n }\r\n }\r\n\r\n updateList = () => {\r\n this.userListTable(this.state.list)\r\n }\r\n\r\n componentDidMount() {\r\n\r\n /*******************************\r\n * *\r\n * Title Component Load *\r\n * *\r\n *******************************/\r\n document.title = \"OCR | Lista de usuários\";\r\n /*******************************\r\n * *\r\n * Get Users List Backend *\r\n * *\r\n *******************************/\r\n axios.get(baseAddressList, null, {\r\n }).then(response => {\r\n this.setState({ list: response.data })\r\n this.updateList()\r\n }).catch(error => {\r\n console.log(error)\r\n });\r\n\r\n /*******************************\r\n * Delete User on the *\r\n * event click *\r\n *******************************/\r\n $('table').on('click', 'button.delete', function () {\r\n var tr = $(this).closest('tr');\r\n var row = table.row(tr);\r\n var rowData = row.data();\r\n Swal.fire({\r\n title: 'Deseja excluir esse usuário ?',\r\n icon: 'warning',\r\n showDenyButton: true,\r\n confirmButtonText: `Sim`,\r\n denyButtonText: `Não`,\r\n }).then(result => {\r\n if (result.value) {\r\n Swal.fire({\r\n title: 'Deletendo...'\r\n });\r\n Swal.showLoading();\r\n setTimeout(() => {\r\n\r\n axios.post(baseAddressDeleteUser, null, {\r\n params: {\r\n id: rowData.id,\r\n userName: rowData.userName\r\n }\r\n }).then(response => {\r\n Swal.close()\r\n setTimeout(function () {\r\n Swal.fire({\r\n position: 'center',\r\n icon: 'success',\r\n title: response.data,\r\n showConfirmButton: false,\r\n timer: 4000\r\n })\r\n }, 2000);\r\n setTimeout(function () {\r\n window.location.reload();\r\n }, 4000);\r\n }).catch(error => {\r\n Swal.close()\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops... Falha ao excluir usuário',\r\n text: \"Tente novamente ou contate o administrador!\",\r\n timer: 3000,\r\n })\r\n });\r\n\r\n }, 5000)\r\n } else if (result.isDenied) {\r\n return;\r\n }\r\n })\r\n });\r\n\r\n\r\n /*******************************\r\n * Refresh password User *\r\n * on the event click *\r\n *******************************/\r\n $('table').on('click', 'button.refresh', function () {\r\n var tr = $(this).closest('tr');\r\n var row = table.row(tr);\r\n var rowData = row.data();\r\n Swal.fire({\r\n title: 'Deseja resetar a senha desse usuário ?',\r\n icon: 'info',\r\n showDenyButton: true,\r\n confirmButtonText: `Sim`,\r\n denyButtonText: `Não`,\r\n }).then(result => {\r\n if (result.value) {\r\n Swal.fire({\r\n title: 'Resetando...'\r\n });\r\n Swal.showLoading();\r\n setTimeout(() => {\r\n\r\n axios.post(baseAddressResetPassword, null, {\r\n params: {\r\n nome: rowData.userName,\r\n email: rowData.email\r\n }\r\n }).then(response => {\r\n Swal.close()\r\n setTimeout(function () {\r\n Swal.fire({\r\n position: 'center',\r\n icon: 'success',\r\n title: response.data,\r\n showConfirmButton: false,\r\n timer: 100000\r\n })\r\n }, 2000);\r\n }).catch(error => {\r\n Swal.close()\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops... Falha ao Resetar senha',\r\n text: \"Tente novamente ou contate o administrador!\",\r\n timer: 3000,\r\n })\r\n });\r\n }, 5000)\r\n } else if (result.isDenied) {\r\n return;\r\n }\r\n })\r\n });\r\n }\r\n\r\n\r\n /*******************************\r\n * Table Users List *\r\n *******************************/\r\n userListTable = (data) => {\r\n try {\r\n this.$tableUsers = $(this.tableUsers)\r\n table = this.$tableUsers.DataTable({\r\n\r\n \"processing\": true,\r\n \"select\": \"single\",\r\n \"bStateSave\": true,\r\n \"paging\": true,\r\n \"ordering\": true,\r\n \"info\": true,\r\n \"searching\": true,\r\n \"responsive\": true,\r\n \"pageLength\": 50,\r\n \"data\": data,\r\n \"rowId\": 'id',\r\n \"dom\": \"Bfrtip\",\r\n \"columns\": [\r\n { data: \"id\" },\r\n { data: \"userName\" },\r\n { data: \"email\" },\r\n { data: \"password\" },\r\n { data: \"created_at\" },\r\n { data: \"isAdmin\" },\r\n {\r\n data: null,\r\n render: function (data, type, row) {\r\n return '
';\r\n },\r\n },\r\n ],\r\n \"columnDefs\": [\r\n {\r\n targets: 1, render: function (data) {\r\n return `${data}`;\r\n },\r\n },\r\n {\r\n targets: 2, render: function (data) {\r\n return `${data}`;\r\n },\r\n },\r\n {\r\n targets: 3, render: function (data) {\r\n return `${\"********\"}`;\r\n },\r\n },\r\n {\r\n targets: 4, render: function (data) {\r\n const dateTime = convertDate(data);\r\n return `${dateTime}`;\r\n },\r\n },\r\n {\r\n targets: 5, render: function (data) {\r\n const IsAdmin = data === true ? 'Admin Empresa' : data === null ? 'Admin Geral' : 'Usuário'\r\n return IsAdmin;\r\n },\r\n },\r\n ],\r\n \"order\": [[3, \"desc\"]],\r\n \"language\": {\r\n decimal: \"\",\r\n emptyTable: \"Nenhum dado para ser exibido\",\r\n info: \"Exibindo _START_ para _END_ de _TOTAL_ registros\",\r\n infoEmpty: \"Exibindo 0 para 0 de 0 registros\",\r\n infoFiltered: \"(Filtrado de _MAX_ total de registros)\",\r\n infoPostFix: \"\",\r\n thousands: \",\",\r\n lengthMenu: \"Exibir _MENU_ registros\",\r\n loadingRecords: \"Carregando...\",\r\n processing: '',\r\n search: \"Pesquisar:\",\r\n zeroRecords: \"Nenhum dado pesquisado encontrado\",\r\n paginate: {\r\n first: \"Primeiro\",\r\n last: \"Último\",\r\n next: \"Próximo\",\r\n previous: \"Anterior\",\r\n },\r\n aria: {\r\n sortAscending: \": activate to sort column ascending\",\r\n sortDescending: \": activate to sort column descending\",\r\n },\r\n },\r\n });\r\n } catch (e) {\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n <>\r\n { RoleCurrent === null ?\r\n (\r\n <>\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Usuários Ativos

\r\n
\r\n
\r\n
\r\n
\r\n this.tableUsers = tableUsers} id=\"userslist\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
IdNome de UsuárioEmailSenhaData de CriaçãoAdminstradorAções
\r\n
\r\n
\r\n
\r\n
\r\n \r\n )\r\n :\r\n (\r\n \r\n )\r\n }\r\n \r\n )\r\n }\r\n}\r\n\r\nexport default ListUser;","import React, { Component } from 'react'\r\nimport './table.css'\r\n\r\nimport Swal from 'sweetalert2/dist/sweetalert2.js'\r\nimport 'sweetalert2/dist/sweetalert2.min.css'\r\nimport '../template/dependencies/fontAwesome/css/fontawesome_all.css'\r\nimport { saveAs } from 'file-saver';\r\n\r\nimport { faFileDownload, faSearch, faSearchPlus, faStore, faBarcode, faCar, faBroadcastTower } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\n\r\nimport axios from 'axios'\r\nconst $ = require('jquery');\r\n$.DataTable = require('datatables.net-bs4');\r\n\r\n\r\nconst convertDate = (datahora) => {\r\n\r\n var dttime_year = datahora.substr(0, 4);\r\n var dttime_month = datahora.substr(5, 2);\r\n var dttime_day = datahora.substr(8, 2);\r\n var dttime_hour = datahora.substr(11, 2);\r\n var dttime_min = datahora.substr(14, 2);\r\n return dttime_day + '/' + dttime_month + '/' + dttime_year + ' ' + dttime_hour + ':' + dttime_min;\r\n}\r\n\r\nconst date = () => {\r\n var date = new Date();\r\n const dateInitialDom = date.toISOString().substring(0, 10);\r\n return dateInitialDom\r\n}\r\n\r\n\r\nconst baseAddressFilter = process.env.REACT_APP_URL_OCR_FILTER;\r\nconst baseAddressExport = process.env.REACT_APP_EXPORT_PASSAGES;\r\nlet table = undefined;\r\n\r\nclass Table extends Component {\r\n\r\n constructor(props) {\r\n super(props)\r\n this.state = {\r\n DataInicial: \"\",\r\n DataFinal: \"\",\r\n Estabelecimento: \"\",\r\n Dispositivo: \"\",\r\n Placa: \"\",\r\n Igualdade: \"\"\r\n }\r\n }\r\n\r\n disabledButton = (data) => {\r\n document.getElementById(\"searchFilter\").disabled = data;\r\n }\r\n\r\n newSearch = () => {\r\n this.setState({\r\n Estabelecimento: \"\",\r\n Dispositivo: \"\",\r\n Placa: \"\",\r\n Igualdade: \"\"\r\n });\r\n $('#passages').DataTable().clear().destroy();\r\n this.disabledButton(false);\r\n this.disabledDatatableButton(true);\r\n }\r\n\r\n disabledDatatableButton = (data) => {\r\n document.getElementById(\"PassagesBtn\").disabled = data;\r\n document.getElementById(\"newSearch\").disabled = data;\r\n }\r\n\r\n\r\n onChange = (event) => {\r\n const { name, value } = event.target;\r\n this.setState({\r\n [name]: value\r\n });\r\n }\r\n\r\n onSubmitPassages = (event) => {\r\n event.preventDefault();\r\n const { DataInicial, DataFinal, Estabelecimento, Dispositivo, Placa, Igualdade } = this.state\r\n this.searchPassages(DataInicial, DataFinal, Estabelecimento, Dispositivo, Placa, Igualdade)\r\n }\r\n componentDidMount() {\r\n\r\n document.title = \"OCR | Home\";\r\n //VALOR INICIAL CAMPOS INPUT DATETIME\r\n var date = new Date();\r\n\r\n this.disabledDatatableButton(true);\r\n var dateInitialDom = document.querySelector('input[id=\"dateInitial\"]');\r\n dateInitialDom.value = date.toISOString().substring(0, 10);\r\n this.setState({ DataInicial: dateInitialDom.value});\r\n \r\n var dateEndDom = document.querySelector('input[id=\"dateEnd\"]');\r\n dateEndDom.value = date.toISOString().substring(0, 10);\r\n this.setState({ DataFinal: dateEndDom.value});\r\n\r\n //EVENT CLICK MOSTRA FOTO \r\n $('#passages').on('click', 'td.details-control', function () {\r\n var tr = $(this).closest('tr');\r\n var row = table.row(tr);\r\n const data = row.data();\r\n var href = $(data[\"ocrPhoto\"]).attr('href');\r\n window.open(href, '_blank');\r\n });\r\n \r\n }\r\n\r\n exportCsvPassages = () => {\r\n const { DataInicial, DataFinal, Estabelecimento, Dispositivo, Placa, Igualdade } = this.state\r\n Swal.fire({\r\n title: 'Processando...'\r\n });\r\n Swal.showLoading();\r\n axios.get(baseAddressExport, {\r\n params: {\r\n \"dateini\": DataInicial,\r\n \"datefin\": DataFinal,\r\n \"place\": Estabelecimento,\r\n \"device\": Dispositivo,\r\n \"plate\": Placa,\r\n \"match\": Igualdade\r\n }\r\n }).then(response => {\r\n\r\n var blob = new Blob([response.data], { type: \"text/plain;charset=utf-8\" });\r\n saveAs(blob, \"Passagens DriveThru.txt\");\r\n Swal.close();\r\n\r\n }).catch(error => {\r\n Swal.close();\r\n console.log(error)\r\n });\r\n }\r\n\r\n searchPassages = (DataInicial, DataFinal, Estabelecimento, Dispositivo, Placa, Igualdade) => {\r\n //SWET ALERT TIMER REQUEST\r\n let timerInterval\r\n Swal.fire({\r\n title: 'Por favor Aguarde o Termino da solicitação!',\r\n timer: 5000,\r\n willOpen: () => {\r\n Swal.showLoading()\r\n timerInterval = setInterval(() => {\r\n const content = Swal.getContent()\r\n if (content) {\r\n const b = content.querySelector('b')\r\n if (b) {\r\n b.textContent = Swal.getTimerLeft()\r\n }\r\n }\r\n }, 8000)\r\n },\r\n willClose: () => {\r\n clearInterval(timerInterval)\r\n Swal.fire({\r\n position: 'center',\r\n icon: 'success',\r\n title: 'Solicitação realizada com Sucesso',\r\n showConfirmButton: false,\r\n timer: 4000\r\n });\r\n }\r\n }).then(result => {\r\n\r\n if (result.dismiss === Swal.DismissReason.timer) {\r\n console.log('Success')\r\n }\r\n })\r\n\r\n try {\r\n this.disabledButton(true);\r\n this.disabledDatatableButton(false);\r\n this.$tablePassages = $(this.tablePassages)\r\n table = this.$tablePassages.DataTable({\r\n createdRow: function (row, data, index) {\r\n if (data[\"match\"] == false) {\r\n $(\"td\", row)\r\n .eq(7)\r\n .addClass(\r\n \"text-uppercase text-center text-danger font-weight-bold\"\r\n );\r\n } else {\r\n $(\"td\", row)\r\n .eq(7)\r\n .addClass(\r\n \"text-uppercase text-center text-success font-weight-bold\"\r\n );\r\n }\r\n if (data[\"transaction\"] == false) {\r\n $(\"td\", row)\r\n .eq(8)\r\n .addClass(\r\n \"text-uppercase text-center text-danger font-weight-bold\"\r\n );\r\n } else {\r\n $(\"td\", row)\r\n .eq(8)\r\n .addClass(\r\n \"text-uppercase text-center text-success font-weight-bold\"\r\n );\r\n }\r\n if (data[\"contador\"] > 4) {\r\n $(\"td\", row).eq(9).addClass(\"text-uppercase text-center text-success font-weight-bold\");\r\n }\r\n else {\r\n $(\"td\", row).eq(9).addClass(\"text-uppercase text-center text-danger font-weight-bold\");\r\n }\r\n },\r\n \"processing\": true,\r\n \"serverSide\": true,\r\n \"select\": \"single\",\r\n ajax: {\r\n url: baseAddressFilter,\r\n type: \"POST\",\r\n headers: {\r\n \"x-api-key\": \"TmBICIuq7f8sxnDKgqDsuaDSLAsoEMJS6OExePAP\",\r\n },\r\n dataType: \"json\",\r\n contentType: \"application/json\",\r\n data: function (data) {\r\n date();\r\n data.DateIni = DataInicial === \"\" | null ? date() : DataInicial;\r\n data.DateEnd = DataFinal === \"\" | null ? date() : DataFinal;\r\n data.Place = Estabelecimento;\r\n data.Device = Dispositivo;\r\n data.SemPararPlate = Placa;\r\n data.Match = Igualdade;\r\n return JSON.stringify(data);\r\n },\r\n error: function (errors) {\r\n var msg = '';\r\n if (errors.status === 0) {\r\n msg = 'Não a conexão. \\n Verifique a rede';\r\n } else if (errors.status === 404) {\r\n msg = 'Página solicitada não encontrada. [404]';\r\n } else if (errors.status === 500) {\r\n msg = 'Erro interno do servidor [500].';\r\n } else {\r\n msg = 'Uncaught Error.\\n' + errors.responseText;\r\n }\r\n Swal.fire({\r\n position: 'center',\r\n icon: 'error',\r\n title: msg,\r\n footer: 'Tente novamente!',\r\n showConfirmButton: false,\r\n timer: 3000\r\n });\r\n }\r\n },\r\n\r\n \"bStateSave\": true,\r\n \"paging\": true,\r\n \"ordering\": true,\r\n \"info\": true,\r\n \"searching\": { regex: true },\r\n \"responsive\": true,\r\n \"pageLength\": 50,\r\n \"dom\": \"Bfrtip\",\r\n \"columns\": [\r\n {\r\n \"className\": 'details-control',\r\n \"orderable\": false,\r\n \"data\": null,\r\n \"defaultContent\": '',\r\n \"render\": function () {\r\n return '';\r\n },\r\n \"width\": \"15px\"\r\n },\r\n { data: \"place\" },\r\n { data: \"lane\" },\r\n { data: \"dateCreated\" },\r\n { data: \"device\" },\r\n { data: \"semPararPlate\" },\r\n { data: \"ocrPlate\" },\r\n { data: \"match\" },\r\n { data: \"transaction\" },\r\n { data: \"contador\" }\r\n ],\r\n \"columnDefs\": [\r\n {\r\n targets: 3, render: function (data) {\r\n const dateTime = convertDate(data);\r\n return dateTime;\r\n },\r\n },\r\n {\r\n targets: 8, render: function (data) {\r\n return data == null ? '' : data == false ? 'Autorização' : 'Transação';\r\n }\r\n },\r\n {\r\n targets: 9, render: function (data) {\r\n const countFormat = data >= 5 ? true : data\r\n return countFormat\r\n }\r\n }\r\n ],\r\n \"order\": [[3, \"desc\"]],\r\n \"language\": {\r\n decimal: \"\",\r\n emptyTable: \"Nenhum dado para ser exibido\",\r\n info: \"Exibindo _START_ para _END_ de _TOTAL_ registros\",\r\n infoEmpty: \"Exibindo 0 para 0 de 0 registros\",\r\n infoFiltered: \"(Filtrado de _MAX_ total de registros)\",\r\n infoPostFix: \"\",\r\n thousands: \",\",\r\n lengthMenu: \"Exibir _MENU_ registros\",\r\n loadingRecords: \"Carregando...\",\r\n processing: '',\r\n search: \"Pesquisar:\",\r\n zeroRecords: \"Nenhum dado pesquisado encontrado\",\r\n paginate: {\r\n first: \"Primeiro\",\r\n last: \"Último\",\r\n next: \"Próximo\",\r\n previous: \"Anterior\",\r\n },\r\n aria: {\r\n sortAscending: \": activate to sort column ascending\",\r\n sortDescending: \": activate to sort column descending\",\r\n },\r\n },\r\n });\r\n } catch (e) {\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Tabela de Passages

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n this.tablePassages = tablePassages} id=\"passages\">\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
+
\r\n
\r\n
EstabelecimentoPistaData GravaçãoDispositivoPlaca SemPararPlaca IdentificadaIgualdadeFoto CapturadaContador
\r\n
\r\n
\r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default Table;","import React from 'react'\r\n\r\nimport SideBar from '../template/sidebar/sidebar'\r\nimport UserCreate from '../user/userCreate'\r\nimport ListUser from '../user/list'\r\nimport Table from '../table/table'\r\n\r\nconst Home = () => (\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n)\r\n\r\nexport default Home;","import React, { useState, useEffect } from 'react';\r\nimport '../auth/auth.css';\r\n\r\nimport axios from 'axios';\r\nimport Swal from 'sweetalert2/dist/sweetalert2.js';\r\nimport 'sweetalert2/dist/sweetalert2.min.css';\r\nimport { faUser, faEnvelope, faUnlockAlt, faUserShield, faUserEdit } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport { validaEmail, passwordValidator } from '../template/validators/validators';\r\n\r\nimport logo from '../template/img/logo.png';\r\nimport SideBar from '../template/sidebar/sidebar';\r\n\r\nconst $ = require('jquery');\r\n\r\nconst userName = localStorage.getItem(\"user\");\r\nconst userEmail = localStorage.getItem(\"email\");\r\nconst baseAddressProfile = process.env.REACT_APP_PROFILE_USER;\r\nconst baseAddressUpdateUser = process.env.REACT_APP_USER_UPDATE;\r\n\r\nfunction UpdateProfile(props) {\r\n\r\n const [nameProfile, setNameProfile] = useState(\"\");\r\n const [emailProfile, setEmailProfile] = useState(\"\");\r\n const [passwordProfile, setPasswordProfile] = useState(\"\");\r\n const [confirmPasswordProfile, setConfirmPasswordProfile] = useState(\"\");\r\n const [oldPasswordProfile, setOldPasswordProfile] = useState(\"\");\r\n const [isAdminProfile, setIsAdminProfile] = useState(\"\");\r\n const [oldPassword, setOldPassword] = useState(\"\");\r\n const [component, setComponent] = useState(true);\r\n\r\n\r\n /*******************************\r\n * SetData User on the *\r\n * State Current *\r\n *******************************/\r\n const dataUserProfile = (user) => {\r\n setNameProfile(user[0][\"userName\"])\r\n setEmailProfile(user[0][\"email\"])\r\n setIsAdminProfile(user[0][\"isAdmin\"])\r\n setOldPassword(user[0][\"password\"])\r\n }\r\n\r\n /*******************************\r\n * Clean State Current *\r\n *******************************/\r\n const cleanState = () => {\r\n setPasswordProfile(\"\")\r\n setConfirmPasswordProfile(\"\")\r\n setOldPasswordProfile(\"\")\r\n }\r\n\r\n /*******************************\r\n * HandleSubmit Update User *\r\n *******************************/\r\n const handleSubmit = (e) => {\r\n e.preventDefault();\r\n UpdateUserCurrent();\r\n }\r\n\r\n\r\n /*******************************\r\n * Disabeld Buttons in events *\r\n *******************************/\r\n const disabledButton = (data) => {\r\n document.getElementById(\"updateProfile\").disabled = data;\r\n }\r\n\r\n /*******************************\r\n * Update Use Current *\r\n *******************************/\r\n const UpdateUserCurrent = () => {\r\n\r\n const stringEmail = validaEmail(emailProfile);\r\n const stringSenha = passwordProfile === \"\" ? true : passwordValidator(passwordProfile);\r\n\r\n if (stringEmail) {\r\n if (stringSenha) {\r\n if (oldPassword === oldPasswordProfile) {\r\n if (passwordProfile === confirmPasswordProfile) {\r\n Swal.fire({\r\n title: 'Atualizando...'\r\n });\r\n Swal.showLoading();\r\n setTimeout(() => {\r\n axios.post(baseAddressUpdateUser, null, {\r\n params: {\r\n nome: nameProfile,\r\n email: emailProfile,\r\n password: passwordProfile,\r\n isAdmin: isAdminProfile\r\n }\r\n }).then(response => {\r\n Swal.close()\r\n setTimeout(function () {\r\n Swal.fire({\r\n position: 'center',\r\n icon: 'success',\r\n title: response.data,\r\n showConfirmButton: false,\r\n timer: 4000\r\n })\r\n cleanState();\r\n }, 2000);\r\n }).catch(error => {\r\n Swal.close()\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops... Falha ao atualizar usuário',\r\n text: \"Tente novamente ou contate o administrador!\",\r\n timer: 3000,\r\n })\r\n cleanState();\r\n });\r\n }, 5000)\r\n } else {\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops...',\r\n text: 'As senhas devem ser iguais no campo confirma senha.',\r\n footer: 'Todos os campos são obrigatórios o preenchimento.',\r\n timer: 3000,\r\n })\r\n\r\n }\r\n } else {\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops...',\r\n text: 'A senha antiga está incorreta ',\r\n footer: 'Campo obrigatório preenchimento.',\r\n timer: 3000,\r\n })\r\n }\r\n } else {\r\n\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops...',\r\n text: 'Caracteres inválido para senha.',\r\n footer: 'Digite uma senha valida.',\r\n timer: 3000,\r\n })\r\n }\r\n }\r\n else {\r\n\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops...',\r\n text: 'Email invalido!',\r\n footer: 'Campo obrigatório o preenchimento',\r\n timer: 3000,\r\n })\r\n }\r\n }\r\n\r\n /*******************************\r\n * Verify Role User to *\r\n * Hide Input *\r\n *******************************/\r\n const isAdminOrUser = () => {\r\n if (localStorage.getItem(\"isAdmin\") === \"false\") {\r\n $('#activeIsAdmin').hide()\r\n } else if (localStorage.getItem(\"isAdmin\") === \"true\") {\r\n $('#activeIsAdmin').show()\r\n } else {\r\n $('#activeIsAdmin').show()\r\n }\r\n\r\n }\r\n\r\n\r\n /*******************************\r\n *Get Information User Current *\r\n * to Input Load *\r\n *******************************/\r\n const getUserProfile = () => {\r\n if (component) {\r\n axios.post(baseAddressProfile, null, {\r\n params: {\r\n nome: userName,\r\n email: userEmail,\r\n }\r\n }).then(response => {\r\n dataUserProfile(response.data)\r\n setComponent(false)\r\n }).catch(error => {\r\n console.log(error)\r\n });\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n document.title = \"OCR | Perfil\";\r\n disabledButton(true);\r\n if (passwordProfile && confirmPasswordProfile && oldPasswordProfile) {\r\n disabledButton(false);\r\n }\r\n }, [passwordProfile, confirmPasswordProfile, oldPasswordProfile], [getUserProfile(), isAdminOrUser()]);\r\n\r\n\r\n return (\r\n <>\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"SemParar\"\r\n
\r\n Perfil usuário\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setNameProfile(e.target.value)}\r\n value={nameProfile}\r\n className=\"form-control\"\r\n id=\"name\"\r\n name=\"nameProfile\"\r\n placeholder=\"Enter User Name\"\r\n aria-label=\"name\"\r\n aria-describedby=\"addon-wrapping\"\r\n required\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setEmailProfile(e.target.value)}\r\n value={emailProfile}\r\n className=\"form-control\"\r\n id=\"emailProfile\"\r\n name=\"emailProfile\"\r\n placeholder=\"Enter email\"\r\n aria-label=\"email\"\r\n aria-describedby=\"addon-wrapping\"\r\n required\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setOldPasswordProfile(e.target.value)}\r\n value={oldPasswordProfile}\r\n name=\"oldpassword\"\r\n className=\"form-control\"\r\n id=\"oldpassword\"\r\n placeholder=\"old password\"\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setPasswordProfile(e.target.value)}\r\n value={passwordProfile}\r\n name=\"passwordProfile\"\r\n className=\"form-control\"\r\n id=\"passwordProfile\"\r\n placeholder=\"Password\"\r\n />\r\n
\r\n Mínimo de 8 caracteres, letra maiúscula, letra minúscula, um dígito e um caractere especial .\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setConfirmPasswordProfile(e.target.value)}\r\n value={confirmPasswordProfile}\r\n className=\"form-control\"\r\n name=\"confirmPasswordProfile\"\r\n id=\"confirmPasswordProfile\"\r\n placeholder=\"Confirm Password\"\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n )\r\n}\r\n\r\nexport default UpdateProfile;","import React, { useState, useEffect } from 'react';\r\n\r\nimport axios from 'axios';\r\nimport Swal from 'sweetalert2/dist/sweetalert2.js';\r\nimport 'sweetalert2/dist/sweetalert2.min.css';\r\n\r\nimport SideBar from '../template/sidebar/sidebar';\r\nimport NotFound from '../template/Error/notFound';\r\n\r\nimport { faUser, faEnvelope, faUnlockAlt, faUserShield, faSearch, faUserEdit, faRedo } from \"@fortawesome/free-solid-svg-icons\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\n\r\nimport logo from '../template/img/logo.png';\r\n\r\nconst $ = require('jquery');\r\n\r\nconst userRole = localStorage.getItem(\"isAdmin\");\r\nconst RoleCurrent = userRole === \"true\" ? true : userRole === \"null\" ? null : false;\r\nconst activeOrDisabled = userRole === \"true\" ? \"admin.empresa\" : userRole === \"null\" ? \"admin.geral\" : \"user.comum\";\r\nconst baseAddressProfile = process.env.REACT_APP_PROFILE_USER;\r\nconst baseAddressSaveEditChanges = process.env.REACT_APP_USER_UPDATE;\r\n\r\n\r\nfunction UserEdit(props) {\r\n\r\n const [nameEdit, setNameEdit] = useState(\"\");\r\n const [emailEdit, setEmailEdit] = useState(\"\");\r\n const [passwordEdit, setPasswordEdit] = useState(\"\");\r\n const [isAdminEdit, setIsAdminEdit] = useState(\"\");\r\n\r\n const [userNameModalSearch, setUserNameModalSearch] = useState(\"\");\r\n const [userEmailModalSearch, setUserEmailModalSearch] = useState(\"\");\r\n\r\n\r\n /*******************************\r\n * HandleSubmit Edit User *\r\n *******************************/\r\n const handleSubmit = (e) => {\r\n e.preventDefault();\r\n getUserEdit();\r\n }\r\n\r\n\r\n /*******************************\r\n * HandleSubmit Edit User *\r\n *******************************/\r\n const handleModalSearch = (e) => {\r\n e.preventDefault();\r\n getUserEdit()\r\n }\r\n\r\n\r\n /*******************************\r\n * Clean State Current *\r\n *******************************/\r\n const cleanState = () => {\r\n setNameEdit(\"\");\r\n setEmailEdit(\"\");\r\n setPasswordEdit(\"\")\r\n setIsAdminEdit(\"\");\r\n }\r\n\r\n\r\n /*******************************\r\n * Clean Input Search *\r\n *******************************/\r\n const cleanInputSearch = () => {\r\n setUserNameModalSearch(\"\");\r\n setUserEmailModalSearch(\"\");\r\n }\r\n\r\n\r\n /*******************************\r\n * Save Changes User Input *\r\n *******************************/\r\n const handleSaveEditChanges = () => {\r\n\r\n Swal.fire({\r\n title: 'Salvando alterações...'\r\n });\r\n Swal.showLoading();\r\n setTimeout(() => {\r\n\r\n axios.post(baseAddressSaveEditChanges, null, {\r\n params: {\r\n nome: nameEdit,\r\n email: emailEdit,\r\n password: passwordEdit,\r\n isAdmin: isAdminEdit\r\n }\r\n }).then(response => {\r\n Swal.close()\r\n setTimeout(function () {\r\n Swal.fire({\r\n position: 'center',\r\n icon: 'success',\r\n title: response.data,\r\n showConfirmButton: false,\r\n timer: 4000\r\n })\r\n cleanState();\r\n }, 2000);\r\n }).catch(error => {\r\n Swal.close()\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops... Falha ao atualizar usuário',\r\n text: \"Tente novamente ou contate o administrador!\",\r\n timer: 3000,\r\n })\r\n cleanState();\r\n });\r\n\r\n }, 5000)\r\n }\r\n\r\n\r\n /*******************************\r\n * SetData User on the *\r\n * State Current *\r\n *******************************/\r\n const dataUserProfile = (user) => {\r\n setNameEdit(user[0][\"userName\"]);\r\n setEmailEdit(user[0][\"email\"]);\r\n setPasswordEdit(user[0][\"password\"])\r\n setIsAdminEdit(user[0][\"isAdmin\"]);\r\n }\r\n\r\n\r\n\r\n\r\n /*******************************\r\n * Search User Input *\r\n *******************************/\r\n const getUserEdit = () => {\r\n Swal.fire({\r\n title: 'Buscando...'\r\n });\r\n Swal.showLoading();\r\n setTimeout(() => {\r\n axios.post(baseAddressProfile, null, {\r\n params: {\r\n nome: userNameModalSearch,\r\n email: userEmailModalSearch,\r\n }\r\n }).then(response => {\r\n Swal.close()\r\n dataUserProfile(response.data)\r\n $('#modalSearchUser').modal('hide');\r\n }).catch(error => {\r\n Swal.close()\r\n Swal.fire({\r\n icon: 'error',\r\n showConfirmButton: false,\r\n title: 'Oops...',\r\n text: \"Erro ao encontrar usuário, verifique se o usuário está correto!\",\r\n timer: 3000,\r\n })\r\n });\r\n }, 5000)\r\n }\r\n\r\n const disabledButton = (data) => {\r\n document.getElementById(\"saveChanges\").disabled = data;\r\n }\r\n\r\n useEffect(() => {\r\n if(activeOrDisabled === \"admin.empresa\" || activeOrDisabled === \"admin.geral\"){\r\n disabledButton(true);\r\n }else{\r\n return false;\r\n }\r\n if (nameEdit && emailEdit && passwordEdit) {\r\n disabledButton(false);\r\n }\r\n }, [nameEdit, emailEdit, passwordEdit])\r\n\r\n return (\r\n <>\r\n\r\n { RoleCurrent || RoleCurrent === null ?\r\n\r\n (\r\n <>\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"SemParar\"\r\n
\r\n Editar Usuário\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setNameEdit(e.target.value)}\r\n value={nameEdit}\r\n className=\"form-control\"\r\n id=\"name\"\r\n name=\"nameProfile\"\r\n placeholder=\"Enter User Name\"\r\n aria-label=\"name\"\r\n aria-describedby=\"addon-wrapping\"\r\n disabled\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setEmailEdit(e.target.value)}\r\n value={emailEdit}\r\n className=\"form-control\"\r\n id=\"emailProfile\"\r\n name=\"emailProfile\"\r\n placeholder=\"Enter email\"\r\n aria-label=\"email\"\r\n aria-describedby=\"addon-wrapping\"\r\n disabled\r\n />\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setPasswordEdit(e.target.value)}\r\n value={passwordEdit}\r\n className=\"form-control\"\r\n name=\"PasswordEdit\"\r\n id=\"PasswordEdit\"\r\n placeholder=\"Password\"\r\n disabled\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Pesquisar Usuário
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setUserNameModalSearch(e.target.value)}\r\n value={userNameModalSearch}\r\n className=\"form-control\"\r\n name=\"nameModalSearch\"\r\n placeholder=\"Enter User Name\"\r\n aria-label=\"nameModalSearch\"\r\n aria-describedby=\"addon-wrapping\"\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n setUserEmailModalSearch(e.target.value)}\r\n value={userEmailModalSearch}\r\n className=\"form-control\"\r\n name=\"EmailModalSearch\"\r\n placeholder=\"Enter email\"\r\n aria-label=\"EmailModalSearch\"\r\n aria-describedby=\"addon-wrapping\"\r\n />\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n )\r\n :\r\n (\r\n \r\n )\r\n }\r\n \r\n )\r\n}\r\n\r\nexport default UserEdit;","import React from 'react';\r\nimport { BrowserRouter, Switch, Route, Redirect } from 'react-router-dom';\r\n\r\n//AQUI ESTAMOS DEFININDO AS NOSSAS ROTAS E TAMBÉM USANDO O PADRÃO DE HashRouter PARA CONSEGUIR VOLTAR AS ROTAS ANTERIORES\r\nimport RoutePrivate from './routePrivate';\r\nimport Auth from '../auth/auth';\r\nimport Home from '../main/home';\r\nimport UserCreate from '../user/userCreate';\r\nimport ListUser from '../user/list';\r\nimport UpdateProfile from '../user/updateProfile';\r\nimport UserEdit from '../user/userEdit';\r\n\r\n//PROVIDER USER GLOBAL\r\nimport UserProvider from '../context/userContext';\r\n\r\n\r\nconst Routes = () => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n)\r\n\r\nexport default Routes;","import './template/dependencies/bootstrap/bootstrap'\nimport Routes from './routes/routes'\n\nconst App = () => {\n return (\n
\n \n
\n );\n}\n\nexport default App;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\n\nimport './template/styles/global.css'\nimport App from './App';\n\nReactDOM.render(\n \n \n ,\n document.getElementById('root')\n);\n\n"],"sourceRoot":""}