Изменения панели "Гаражка"
This commit is contained in:
parent
261f2cf490
commit
199d27fe14
@ -11,7 +11,7 @@ import React from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Chip, Stack, Icon, IconButton, Box } from "@mui/material"; //Интерфейсные компоненты
|
||||
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 ? (
|
||||
<FilterItem caption={"Транспортный участок"} value={filter.sCustomerDept} onClick={handleClick} />
|
||||
) : 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>
|
||||
</Box>
|
||||
|
||||
@ -74,7 +74,7 @@ const FilterDialog = ({ initial, isFiltersInit, onCancel, onOk }) => {
|
||||
|
||||
//При очистке фильтра
|
||||
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>
|
||||
<TextField
|
||||
name="dDateKOAFrom"
|
||||
type="date"
|
||||
type="datetime-local"
|
||||
InputLabelProps={{ shrink: true }}
|
||||
value={filter.dDateKOAFrom}
|
||||
onChange={handleValueChanged}
|
||||
@ -145,7 +145,7 @@ const FilterDialog = ({ initial, isFiltersInit, onCancel, onOk }) => {
|
||||
/>
|
||||
<TextField
|
||||
name="dDateKOATo"
|
||||
type="date"
|
||||
type="datetime-local"
|
||||
InputLabelProps={{ shrink: true }}
|
||||
value={filter.dDateKOATo}
|
||||
onChange={handleValueChanged}
|
||||
|
||||
@ -18,7 +18,7 @@ import { FilterDialog } from "./filter_dialog"; //Диалог фильтра
|
||||
import { Filter } from "./filter"; //Фильтры
|
||||
import { useFilters } from "./hooks/filter_hooks"; //Хуки фильтров
|
||||
import { useChartInfo, useChartCalcs, useTableATC } from "./hooks/hooks";
|
||||
import { valueFormatter } from "./layouts"; //Вспомогательные функции верстки
|
||||
import { valueFormatter, dataCellRender } from "./layouts"; //Вспомогательные функции верстки
|
||||
import { ChartFilter } from "./chart_filter"; //Фильтр графика
|
||||
import { hasValue } from "../../core/utils"; //Вспомогательные функции
|
||||
import { useDictionary } from "./hooks/dict_hooks"; //Хуки для открытия раздела
|
||||
@ -57,7 +57,7 @@ const CHART_NAMES = {
|
||||
//Корневая панель гаражки
|
||||
const HaulerAnl = () => {
|
||||
//Вспомогательные функции открытия раздела
|
||||
const { handleEquipRepairSheetsOpen } = useDictionary();
|
||||
const { handleEquipRepairSheetsOpen, handleHaulerUnitsCardsOpen } = useDictionary();
|
||||
|
||||
//Собственное состояние - признак отображения фильтров
|
||||
const [isFilterOpen, setIsFilterOpen] = useState(true);
|
||||
@ -209,6 +209,7 @@ const HaulerAnl = () => {
|
||||
onOrderChanged={handleOrderChanged}
|
||||
onFilterChanged={handleFilterChanged}
|
||||
onPagesCountChanged={handlePagesCountChanged}
|
||||
dataCellRender={prms => dataCellRender({ ...prms, showHaulerUnitsCards: handleHaulerUnitsCardsOpen })}
|
||||
valueFormatter={prms => valueFormatter({ ...prms, onRepairSheetOpen: handleEquipRepairSheetsOpen })}
|
||||
/>
|
||||
) : null}
|
||||
|
||||
@ -75,12 +75,27 @@ const useDictionary = () => {
|
||||
[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 {
|
||||
handleInsDepartmentOpen,
|
||||
handleEquipTypeWorksOpen,
|
||||
handleEquipWorkKindsOpen,
|
||||
handleEquipRepairSheetsOpen
|
||||
handleEquipRepairSheetsOpen,
|
||||
handleHaulerUnitsCardsOpen
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@ -164,7 +164,6 @@ const useTableATC = ({ storedArgs = {} }) => {
|
||||
morePages: (data.XDATA_GRID.rows || []).length >= 10
|
||||
}));
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
setDataGrid(pv => ({ ...pv, loaded: false, reload: false }));
|
||||
}
|
||||
};
|
||||
|
||||
@ -24,7 +24,14 @@ const SMASK_SEPARATE = "<|>";
|
||||
|
||||
//Формирование значения для колонки "Состояние"
|
||||
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 (
|
||||
<Stack direction="row" gap={0.5} alignItems="center" justifyContent="center">
|
||||
<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 }) => {
|
||||
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
|
||||
}));
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
setDataGrid(pv => ({ ...pv, loaded: false, reload: false }));
|
||||
}
|
||||
};
|
||||
|
||||
@ -39,7 +39,6 @@ const formatStateValue = (value, addText = false) => {
|
||||
|
||||
//Формирование значения для колонки "Номер документа"
|
||||
const formatNumbValue = (row, columnDef, showEquipRepairSheets) => {
|
||||
console.log(columnDef.name);
|
||||
return (
|
||||
<Link component="button" variant="body2" align="left" underline="hover" onClick={() => showEquipRepairSheets({ nRn: row["NRN"] })}>
|
||||
{row[columnDef.name]}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user