diff --git a/src/pages/Analytics/Statistics.jsx b/src/pages/Analytics/Statistics.jsx index 329d919..f52a77e 100644 --- a/src/pages/Analytics/Statistics.jsx +++ b/src/pages/Analytics/Statistics.jsx @@ -90,21 +90,30 @@ export const Statistics = memo(({ idWell }) => { async () => { const types = await WellOperationService.getSectionTypes(idWell) setSectionTypes(Object.entries(types)) + }, + setIsPageLoading, + `Не удалось получить типы секции`, + `Получение списка возможных секций`, + ), [idWell]) + + useEffect(() => invokeWebApiWrapperAsync( + async () => { + const filteredSections = avgData?.length > 0 ? sectionTypes.filter(([id, _]) => avgData.some((row) => `section_${id}` in row)) : sectionTypes + setAvgColumns([ ...defaultColumns, - ...Object.entries(types).map(([id, name]) => makeSectionColumn(name, `section_${id}`)), + ...filteredSections.map(([id, name]) => makeSectionColumn(name, `section_${id}`)), ]) setCmpColumns([ ...defaultColumns, - ...Object.entries(types).map(([id, name]) => makeSectionColumn(name, `section_${id}`, { + ...filteredSections.map(([id, name]) => makeSectionColumn(name, `section_${id}`, { speedRender: cmpSpeedRender(`section_${id}`) })) ]) }, setIsPageLoading, - `Не удалось получить типы секции`, - `Получение списка возможных секций`, - ), [idWell, cmpSpeedRender]) + 'Не удалось установить необходимые столбцы' + ), [sectionTypes, avgData, cmpSpeedRender]) useEffect(() => invokeWebApiWrapperAsync( async () => {