Изменения панели "Гаражка"
This commit is contained in:
parent
261f2cf490
commit
199d27fe14
@ -11,7 +11,7 @@ import React from "react"; //Классы React
|
|||||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
import { Chip, Stack, Icon, IconButton, Box } from "@mui/material"; //Интерфейсные компоненты
|
import { Chip, Stack, Icon, IconButton, Box } from "@mui/material"; //Интерфейсные компоненты
|
||||||
import { APP_STYLES } from "../../../app.styles"; //Типовые стили
|
import { APP_STYLES } from "../../../app.styles"; //Типовые стили
|
||||||
import { formatDateRF } from "../../core/utils"; //Вспомогательные функции
|
import { formatDateRF, formatDateTimeRF } from "../../core/utils"; //Вспомогательные функции
|
||||||
|
|
||||||
//---------
|
//---------
|
||||||
//Константы
|
//Константы
|
||||||
@ -81,6 +81,10 @@ const Filter = ({ filter, onFilterOpen }) => {
|
|||||||
{filter.sCustomerDept ? (
|
{filter.sCustomerDept ? (
|
||||||
<FilterItem caption={"Транспортный участок"} value={filter.sCustomerDept} onClick={handleClick} />
|
<FilterItem caption={"Транспортный участок"} value={filter.sCustomerDept} onClick={handleClick} />
|
||||||
) : null}
|
) : null}
|
||||||
|
{filter.dDateKOAFrom ? (
|
||||||
|
<FilterItem caption="КОА с" value={formatDateTimeRF(filter.dDateKOAFrom)} onClick={handleClick} />
|
||||||
|
) : null}
|
||||||
|
{filter.dDateKOATo ? <FilterItem caption="КОА по" value={formatDateTimeRF(filter.dDateKOATo)} onClick={handleClick} /> : null}
|
||||||
</Stack>
|
</Stack>
|
||||||
</Stack>
|
</Stack>
|
||||||
</Box>
|
</Box>
|
||||||
|
|||||||
@ -74,7 +74,7 @@ const FilterDialog = ({ initial, isFiltersInit, onCancel, onOk }) => {
|
|||||||
|
|
||||||
//При очистке фильтра
|
//При очистке фильтра
|
||||||
const handleClear = () => {
|
const handleClear = () => {
|
||||||
setFilter({ dDate: "", sCustomerDept: "" });
|
setFilter({ dDate: "", sCustomerDept: "", dDateKOAFrom: "", dDateKOATo: "" });
|
||||||
};
|
};
|
||||||
|
|
||||||
//При закрытии диалога без изменения фильтра
|
//При закрытии диалога без изменения фильтра
|
||||||
@ -135,7 +135,7 @@ const FilterDialog = ({ initial, isFiltersInit, onCancel, onOk }) => {
|
|||||||
<legend style={STYLES.LEGEND}>Расчет КОА</legend>
|
<legend style={STYLES.LEGEND}>Расчет КОА</legend>
|
||||||
<TextField
|
<TextField
|
||||||
name="dDateKOAFrom"
|
name="dDateKOAFrom"
|
||||||
type="date"
|
type="datetime-local"
|
||||||
InputLabelProps={{ shrink: true }}
|
InputLabelProps={{ shrink: true }}
|
||||||
value={filter.dDateKOAFrom}
|
value={filter.dDateKOAFrom}
|
||||||
onChange={handleValueChanged}
|
onChange={handleValueChanged}
|
||||||
@ -145,7 +145,7 @@ const FilterDialog = ({ initial, isFiltersInit, onCancel, onOk }) => {
|
|||||||
/>
|
/>
|
||||||
<TextField
|
<TextField
|
||||||
name="dDateKOATo"
|
name="dDateKOATo"
|
||||||
type="date"
|
type="datetime-local"
|
||||||
InputLabelProps={{ shrink: true }}
|
InputLabelProps={{ shrink: true }}
|
||||||
value={filter.dDateKOATo}
|
value={filter.dDateKOATo}
|
||||||
onChange={handleValueChanged}
|
onChange={handleValueChanged}
|
||||||
|
|||||||
@ -18,7 +18,7 @@ import { FilterDialog } from "./filter_dialog"; //Диалог фильтра
|
|||||||
import { Filter } from "./filter"; //Фильтры
|
import { Filter } from "./filter"; //Фильтры
|
||||||
import { useFilters } from "./hooks/filter_hooks"; //Хуки фильтров
|
import { useFilters } from "./hooks/filter_hooks"; //Хуки фильтров
|
||||||
import { useChartInfo, useChartCalcs, useTableATC } from "./hooks/hooks";
|
import { useChartInfo, useChartCalcs, useTableATC } from "./hooks/hooks";
|
||||||
import { valueFormatter } from "./layouts"; //Вспомогательные функции верстки
|
import { valueFormatter, dataCellRender } from "./layouts"; //Вспомогательные функции верстки
|
||||||
import { ChartFilter } from "./chart_filter"; //Фильтр графика
|
import { ChartFilter } from "./chart_filter"; //Фильтр графика
|
||||||
import { hasValue } from "../../core/utils"; //Вспомогательные функции
|
import { hasValue } from "../../core/utils"; //Вспомогательные функции
|
||||||
import { useDictionary } from "./hooks/dict_hooks"; //Хуки для открытия раздела
|
import { useDictionary } from "./hooks/dict_hooks"; //Хуки для открытия раздела
|
||||||
@ -57,7 +57,7 @@ const CHART_NAMES = {
|
|||||||
//Корневая панель гаражки
|
//Корневая панель гаражки
|
||||||
const HaulerAnl = () => {
|
const HaulerAnl = () => {
|
||||||
//Вспомогательные функции открытия раздела
|
//Вспомогательные функции открытия раздела
|
||||||
const { handleEquipRepairSheetsOpen } = useDictionary();
|
const { handleEquipRepairSheetsOpen, handleHaulerUnitsCardsOpen } = useDictionary();
|
||||||
|
|
||||||
//Собственное состояние - признак отображения фильтров
|
//Собственное состояние - признак отображения фильтров
|
||||||
const [isFilterOpen, setIsFilterOpen] = useState(true);
|
const [isFilterOpen, setIsFilterOpen] = useState(true);
|
||||||
@ -209,6 +209,7 @@ const HaulerAnl = () => {
|
|||||||
onOrderChanged={handleOrderChanged}
|
onOrderChanged={handleOrderChanged}
|
||||||
onFilterChanged={handleFilterChanged}
|
onFilterChanged={handleFilterChanged}
|
||||||
onPagesCountChanged={handlePagesCountChanged}
|
onPagesCountChanged={handlePagesCountChanged}
|
||||||
|
dataCellRender={prms => dataCellRender({ ...prms, showHaulerUnitsCards: handleHaulerUnitsCardsOpen })}
|
||||||
valueFormatter={prms => valueFormatter({ ...prms, onRepairSheetOpen: handleEquipRepairSheetsOpen })}
|
valueFormatter={prms => valueFormatter({ ...prms, onRepairSheetOpen: handleEquipRepairSheetsOpen })}
|
||||||
/>
|
/>
|
||||||
) : null}
|
) : null}
|
||||||
|
|||||||
@ -75,12 +75,27 @@ const useDictionary = () => {
|
|||||||
[pOnlineShowDictionary]
|
[pOnlineShowDictionary]
|
||||||
);
|
);
|
||||||
|
|
||||||
|
//Отображение раздела "Картотека АТС"
|
||||||
|
const handleHaulerUnitsCardsOpen = useCallback(
|
||||||
|
async prms => {
|
||||||
|
pOnlineShowDictionary({
|
||||||
|
unitCode: "HaulerUnitsCards",
|
||||||
|
inputParameters: [{ name: "in_RN", value: prms.nRn }],
|
||||||
|
callBack: res => {
|
||||||
|
res.success ? prms.callBack(res) : null;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
[pOnlineShowDictionary]
|
||||||
|
);
|
||||||
|
|
||||||
//Возвращаем функции открытия разделов
|
//Возвращаем функции открытия разделов
|
||||||
return {
|
return {
|
||||||
handleInsDepartmentOpen,
|
handleInsDepartmentOpen,
|
||||||
handleEquipTypeWorksOpen,
|
handleEquipTypeWorksOpen,
|
||||||
handleEquipWorkKindsOpen,
|
handleEquipWorkKindsOpen,
|
||||||
handleEquipRepairSheetsOpen
|
handleEquipRepairSheetsOpen,
|
||||||
|
handleHaulerUnitsCardsOpen
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -164,7 +164,6 @@ const useTableATC = ({ storedArgs = {} }) => {
|
|||||||
morePages: (data.XDATA_GRID.rows || []).length >= 10
|
morePages: (data.XDATA_GRID.rows || []).length >= 10
|
||||||
}));
|
}));
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.log(e);
|
|
||||||
setDataGrid(pv => ({ ...pv, loaded: false, reload: false }));
|
setDataGrid(pv => ({ ...pv, loaded: false, reload: false }));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@ -24,7 +24,14 @@ const SMASK_SEPARATE = "<|>";
|
|||||||
|
|
||||||
//Формирование значения для колонки "Состояние"
|
//Формирование значения для колонки "Состояние"
|
||||||
const formatStateValue = (value, addText = false) => {
|
const formatStateValue = (value, addText = false) => {
|
||||||
const [text, icon] = value == 0 ? ["На линии", "done"] : value == 1 ? ["Ремонт", "build"] : ["Не определен", "question_mark"];
|
const [text, icon] =
|
||||||
|
value == 0
|
||||||
|
? ["На линии", "done"]
|
||||||
|
: value == 1
|
||||||
|
? ["Ремонт", "build"]
|
||||||
|
: value == 2
|
||||||
|
? ["Есть повреждения", "construction"]
|
||||||
|
: ["Не определен", "question_mark"];
|
||||||
return (
|
return (
|
||||||
<Stack direction="row" gap={0.5} alignItems="center" justifyContent="center">
|
<Stack direction="row" gap={0.5} alignItems="center" justifyContent="center">
|
||||||
<Icon title={text}>{icon}</Icon>
|
<Icon title={text}>{icon}</Icon>
|
||||||
@ -85,6 +92,23 @@ const formatRepairDocValue = (value, onRepairSheetOpen) => {
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//Формирование значения для колонки "Гос. Номер Тягача"
|
||||||
|
const formatStateNumbTGValue = (row, columnDef, showHaulerUnitsCards) => {
|
||||||
|
return (
|
||||||
|
<Link component="button" variant="body2" align="left" underline="hover" onClick={() => showHaulerUnitsCards({ nRn: row["NRN"] })}>
|
||||||
|
{row[columnDef.name]}
|
||||||
|
</Link>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
//Генерация представления ячейки c данными
|
||||||
|
export const dataCellRender = ({ row, columnDef, showHaulerUnitsCards }) => {
|
||||||
|
switch (columnDef.name) {
|
||||||
|
case "SSTATE_NUMB_TG":
|
||||||
|
return { data: formatStateNumbTGValue(row, columnDef, showHaulerUnitsCards) };
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
//Форматирование значений колонок
|
//Форматирование значений колонок
|
||||||
export const valueFormatter = ({ value, columnDef, onRepairSheetOpen }) => {
|
export const valueFormatter = ({ value, columnDef, onRepairSheetOpen }) => {
|
||||||
switch (columnDef.name) {
|
switch (columnDef.name) {
|
||||||
|
|||||||
10
p8-panels.js
10
p8-panels.js
File diff suppressed because one or more lines are too long
@ -162,7 +162,6 @@ const useTableRepairs = ({ storedArgs = [] }) => {
|
|||||||
morePages: (data.XDATA_GRID.rows || []).length >= 10
|
morePages: (data.XDATA_GRID.rows || []).length >= 10
|
||||||
}));
|
}));
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.log(e);
|
|
||||||
setDataGrid(pv => ({ ...pv, loaded: false, reload: false }));
|
setDataGrid(pv => ({ ...pv, loaded: false, reload: false }));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@ -39,7 +39,6 @@ const formatStateValue = (value, addText = false) => {
|
|||||||
|
|
||||||
//Формирование значения для колонки "Номер документа"
|
//Формирование значения для колонки "Номер документа"
|
||||||
const formatNumbValue = (row, columnDef, showEquipRepairSheets) => {
|
const formatNumbValue = (row, columnDef, showEquipRepairSheets) => {
|
||||||
console.log(columnDef.name);
|
|
||||||
return (
|
return (
|
||||||
<Link component="button" variant="body2" align="left" underline="hover" onClick={() => showEquipRepairSheets({ nRn: row["NRN"] })}>
|
<Link component="button" variant="body2" align="left" underline="hover" onClick={() => showEquipRepairSheets({ nRn: row["NRN"] })}>
|
||||||
{row[columnDef.name]}
|
{row[columnDef.name]}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user