import React, { useEffect, useState } from 'react' import { DashboardView } from '../../styles/layouts/dashboard/DashboardView' import MapCard from '../../components/mapCard/MapCard' import GraphCard from '../../components/graph/graphCard/ChartCard' import Header from '../../components/header/Header' import PageTitle from '../../components/pageTitle/PageTitle' import Link from 'next/link' import { parseCookies } from 'nookies' import { GetServerSideProps } from 'next' import getAPIClient from '../../services/ssrApi' import { GrossAnualChart } from '../../components/graph/grossAnualChart/GrossAnualChart' import CostIndicatorChart from '../../components/graph/costIndicatorChart' import { CativoXLivreChart } from '../../components/graph/cativoXLivreChart' import GrossMensalChart from '../../components/graph/grossMensalChart/GrossMensalChart' import Head from 'next/head' import AccumulatedEconomyTitle from '../../components/accumulatedEconomyTitle/AccumulatedEconomyTitle' 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 [lastDataBrutaMensalS, setLastDataBrutaMensal] = useState('') const [lastDataBrutaAnualS, setLastDataBrutaAnual] = useState('') 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)}`) }, []) return ( Smart Energia - Visão Geral
{ mapsInfo.map(value => { return }) }
{ typeof window === 'undefined' || typeof window === undefined? null : <>
value.mes)} label={months} miniature /> value?.mes.slice(0, 4).includes('2021')).map(value => value?.custo_unit && !!parseInt(value?.custo_unit)? value.custo_unit : null)} // data1={graphData} data2={costIndicator?.filter((value, index) => value?.mes.slice(0, 4).includes('2022')).map(value => value?.custo_unit && !!parseInt(value?.custo_unit)? value.custo_unit : null)} label={months} miniature />
}
) } 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 }).catch(res => { // console.log(res) }) 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 } } }