From 1e2b320f79a423a2059b79abbac4832848428565 Mon Sep 17 00:00:00 2001 From: Nastya Date: Wed, 17 Apr 2024 19:45:06 +0300 Subject: [PATCH] =?UTF-8?q?=D0=BE=D1=82=D0=BA=D0=B0=D1=82=202=20=D0=B3?= =?UTF-8?q?=D1=80=D0=B0=D1=84=D0=B8=D0=BA=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/Analytics/General.tsx | 54 ++++++++++++++++++++++----------- 1 file changed, 36 insertions(+), 18 deletions(-) diff --git a/src/pages/Analytics/General.tsx b/src/pages/Analytics/General.tsx index d8bf3ebf..1ba30350 100644 --- a/src/pages/Analytics/General.tsx +++ b/src/pages/Analytics/General.tsx @@ -112,30 +112,48 @@ const GeneralItemTimeConv = ({ numberType, calculateTime = false, conversionValue, - day, }: GeneralItemsProps) => { const theme = useTheme(); const isMobile = useMediaQuery(theme.breakpoints.down(700)); - const data = Object.entries(general).sort( - ([nextValue], [currentValue]) => Number(nextValue) - Number(currentValue), - ); - const days = data.map(([value]) => value); - const time = data.map(([_, value]) => value); + const data = Object.entries(general) + .sort((a, b) => a[0] - b[0]); - const numberValue = calculateTime - ? time.reduce((total, value) => total + value, 0) / days.length - : conversionValue; + const days = [...data].map(e => e[0]) + + let buffer = 0 + + const time = [...data].map(e => { + if (e[1] > 0) { + buffer = e[1] + } + return buffer + }) + + + console.log("data", data) + console.log("time", time.reduce((a, b) => (Number(a) + Number(b)), 0)) + console.log("time", getCalculatedTime(time.reduce((a, b) => (Number(a) + Number(b)), 0))) + console.log("days", days.length) + const numberValue = calculateTime ? + ( + (time.reduce((a, b) => (Number(a) + Number(b)), 0)) + / + (days.length) + ) || 0 + : + conversionValue if ( Object.keys(general).length === 0 || - Object.values(general).every((item) => item === 0) + Object.values(general).every((x) => x === 0) ) { return ( {`${title} - нет данных`} ); } + return ( {title} - {calculateTime - ? `${getCalculatedTime(numberValue ?? 0)} с` - : `${numberValue?.toFixed(2) ?? 0}%`} + {calculateTime ? `${getCalculatedTime(numberValue)} с` : `${numberValue.toFixed(2)}%`} - moment.unix(Number(value)).format("DD/MM/YYYY HH") + "ч", + moment.utc(Number(value) * 1000).format("DD/MM/YYYY"), }, ]} series={[ { data: Object.values(time), - valueFormatter: (value) => - calculateTime - ? getCalculatedTime(value) - : String((value * 100).toFixed(2)) + "%", + valueFormatter: (value) => { + console.log("log", value) + return calculateTime ? getCalculatedTime(value) : String((value*100).toFixed(2)) + "%" + } + , }, ]} // dataset={Object.entries(general).map(([, v]) => moment.unix(v).format("ss:mm:HH")).reduce((acc, [k, v]) => ({ ...acc, [k]: v }), {})} @@ -179,6 +196,7 @@ const GeneralItemTimeConv = ({ ); }; + export const General: FC = ({ data, day }) => { const theme = useTheme(); const isTablet = useMediaQuery(theme.breakpoints.down(1000));