import { useEffect, useState } from 'react' import { DashboardView } from '../../styles/layouts/dashboard/DashboardView' import Link from 'next/link' import GraphCard from '../../components/graph/graphCard/ChartCard' import Header from '../../components/header/Header' import MapCard from '../../components/mapCard/MapCard' import PageTitle from '../../components/pageTitle/PageTitle' import { format } from 'date-fns' import { GetServerSideProps } from 'next' import Head from 'next/head' import { parseCookies, setCookie } from 'nookies' import AccumulatedEconomyTitle from '../../components/accumulatedEconomyTitle/AccumulatedEconomyTitle' import { CativoXLivreChart } from '../../components/graph/cativoXLivreChart' import CostIndicatorChart from '../../components/graph/costIndicatorChart' import { GrossAnualChart } from '../../components/graph/grossAnualChart/GrossAnualChart' import GrossMensalChart from '../../components/graph/grossMensalChart/GrossMensalChart' import getAPIClient from '../../services/ssrApi' import Box from '@mui/material/Box' import Modal from '@mui/material/Modal' import Typography from '@mui/material/Typography' import BasicButton from '../../components/buttons/basicButton/BasicButton' const style = { position: 'absolute' as const, top: '50%', left: '50%', transform: 'translate(-50%, -50%)', height: 600, width: 500, bgcolor: 'background.paper', border: '0px solid #000', boxShadow: 24, p: 4, borderRadius: 3, overflow: 'scroll' }; export default function Dashboard({ grossAnualGraph, grossAnualYears, grossMensalGraph, grossMensalYears, acumulatedGraph, mapsInfo, userName, costIndicator }: any) { const months = [ 'Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Ago', 'Set', 'Out', 'Nov', 'Dez' ] const { ['terms']: terms } = parseCookies() const [lastDataBrutaMensalS, setLastDataBrutaMensal] = useState('') const [lastDataBrutaAnualS, setLastDataBrutaAnual] = useState('') const [open, setOpen] = useState(true); const handleOpen = () => setOpen(true); const handleClose = () => setOpen(false); useEffect(() => { let lastDataMensal = '0' let lastDataAnual = '0' let index = 0 while (index < grossMensalGraph.length) { if (!grossMensalGraph[index].dad_estimado && grossMensalGraph[index].economia_acumulada !== null) lastDataMensal = grossMensalGraph[index].economia_acumulada index++ } setLastDataBrutaMensal(`${parseFloat(lastDataMensal).toFixed(3)}`) index = 0 while (index < grossAnualGraph.length) { if (!grossAnualGraph[index].dad_estimado) lastDataAnual = grossAnualGraph[index].economia_acumulada index++ } setLastDataBrutaAnual(`${parseFloat(lastDataAnual).toFixed(3)}`) }, []) console.log(grossAnualGraph) return ( Smart Energia - Visão Geral
{ mapsInfo.map(value => { return }) }
{ typeof window === 'undefined' || typeof window === undefined ? null : <>
value?.mes.slice(0, 4).includes(costIndicator[0].mes.slice(0, 4))).map(value => value?.custo_unit && !!parseInt(value?.custo_unit) ? value.custo_unit : null)} data2={costIndicator?.filter((value, index) => value?.mes.slice(0, 4).includes(costIndicator[costIndicator.length - 1].mes.slice(0, 4))).map(value => value?.custo_unit && !!parseInt(value?.custo_unit) ? value.custo_unit : null)} years={[costIndicator[0].mes.slice(0, 4), costIndicator[costIndicator.length - 1].mes.slice(0, 4)]} label={months} miniature />
Termos de uso

Bem-vindo ao Smart Energy View, a Plataforma Web da SMART ENERGIA!

Agora você terá a Gestão da sua Energia na palma da sua mão!!!!

Visualize os principais indicadores, dados de economia, resumo de operações, PLD, notícias além de acompanhar o consumo de energia em intervalos mínimos de 5 minutos.

Estamos na última fase de testes da plataforma e em breve também iremos disponibilizar os aplicativos para seu celular, nos sistemas operacionais IOS e Android.

Encontrando qualquer dificuldade, eventuais inconsistências ou dúvidas, nos contate!

Lembrando que conforme nosso contrato de serviços vigente, todas as informações entregues são estritamente privadas, sendo seu sigilo protegido por lei, não podendo ser compartilhadas com terceiros sendo destinadas a seu uso exclusivo.

A divulgação não autorizada das informações adquiridas nesta plataforma (ou seu uso), de forma integral ou parcial, é proibida, não sendo permitido o compartilhamento dos acessos e senhas ou qualquer informação que tiver acesso junto a esta plataforma, sendo que o acesso a esta plataforma é restrito e individual.

Destacamos que os resultados informados são meramente indicativos, não vinculantes a resultados e que as premissas disponibilizadas na plataforma são as mesmas utilizadas nos Energys Reports e estudos encaminhados.

Aproveite essa nova ferramenta de acompanhar sua Gestão de Energia!

{/*

Bem-vindo a Plataforma Web – SMART ENERGIA!

Visualize os principais indicadores, dados de economia, resumo de operações, PLD, notícias além de acompanhar o consumo de energia em intervalos mínimos de 5 minutos.

Conforme nosso contrato de serviços vigente, todas as informações entregues são estritamente privadas, sendo seu sigilo protegido por lei, não podendo ser compartilhadas com terceiros.

A divulgação não autorizada das informações adquiridas nesta plataforma (ou seu uso), de forma integral ou parcial, é proibida, não sendo permitido o compartilhamento dos acessos e senhas ou qualquer informação que tiver acesso junto a esta plataforma, sendo que o acesso a esta plataforma é restrito e individual.

Ressaltamos que os resultados informados são meramente indicativos.

*/} { setCookie(undefined, 'terms', 'true') setOpen(false) }} />
}
) } export const getServerSideProps: GetServerSideProps = async (ctx) => { const apiClient = getAPIClient(ctx) const { ['@smartAuth-token']: token } = parseCookies(ctx) const { ['user-name']: userName } = parseCookies(ctx) let grossAnualGraph = []; let grossMensalGraph = []; let acumulatedGraph = []; let costIndicator = [] let mapsInfo = []; await apiClient.post('/economy/grossAnnual').then(res => { grossAnualGraph = res.data.data }) .then(console.log) .catch(console.log) await apiClient.post('/economy/grossMonthly').then(res => { grossMensalGraph = res.data.data }).catch(res => { // console.log(res) }) await apiClient.post('/economy/estimates').then(res => { acumulatedGraph = res.data.data }).catch(res => { // console.log(res) }) await apiClient.post('/economy/MWh').then(res => { costIndicator = res.data.data }).catch(res => { // console.log(res) }) await apiClient.post('/pld/overview').then(res => { mapsInfo = res.data.data }).catch(res => { // console.log(res) }) const grossMensalYears = grossMensalGraph.map((value) => value.mes) const grossAnualYears = grossAnualGraph.map((value) => value.ano) if (!token) { return { redirect: { destination: '/', permanent: false } } } return { props: { grossAnualGraph, grossAnualYears, grossMensalYears, grossMensalGraph, acumulatedGraph, costIndicator, mapsInfo, userName } } }