WEBAPP: Исправлена кириллическая "с" в "Ctx"
This commit is contained in:
parent
85d5a5756c
commit
a5cf661fe6
56
README.md
56
README.md
@ -515,7 +515,7 @@ c:\inetpub\p8web20\WebClient\Modules\P8-Panels>npm run build
|
||||
|
||||
> **Обратите внимание:** Здесь и далее - описываемый API (как клиентский, так и серверный) не является финальным и может быть изменён с целью развития фреймворка. В этой связи, необходимо закладывать дополнительное время на обновления расширения "Панели", связанное с возможной необходимостью приведения разработанных самостоятельно интерфейсов (их клиентских и серверных частей) к доработанному API.
|
||||
|
||||
Для исполнения хранимых процедур/функций БД Системы в составе расширения предусмотрен специальный API. Его подключение к компоненте панели осуществляется через контекст `BackEndСtx` ("app/context/backend.js").
|
||||
Для исполнения хранимых процедур/функций БД Системы в составе расширения предусмотрен специальный API. Его подключение к компоненте панели осуществляется через контекст `BackEndCtx` ("app/context/backend.js").
|
||||
|
||||
В состав API входят:
|
||||
|
||||
@ -617,7 +617,7 @@ c:\inetpub\p8web20\WebClient\Modules\P8-Panels>npm run build
|
||||
|
||||
```
|
||||
import React, { useState, useContext } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//Функциональный компонент панели (или её части)
|
||||
const MyPanel = () => {
|
||||
@ -625,7 +625,7 @@ const MyPanel = () => {
|
||||
const [state, setState] = useState({ dataLoaded: false, data: [], filters: null, orders: null });
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка данных проектов с сервера
|
||||
const loadProjects = async (agentName) => {
|
||||
@ -710,7 +710,7 @@ const MyPanel = () => {
|
||||
|
||||
### API для взаимодействия с WEB-приложением "ПАРУС 8 Онлайн"
|
||||
|
||||
Для взаимодействия панелей с пользовательским интерфейсом "ПАРУС 8 Онлайн" в составе расширения предусмотрен специальный API. Его подключение к компоненте панели осуществляется через контекст `ApplicationСtx` ("app/context/application.js").
|
||||
Для взаимодействия панелей с пользовательским интерфейсом "ПАРУС 8 Онлайн" в составе расширения предусмотрен специальный API. Его подключение к компоненте панели осуществляется через контекст `ApplicationCtx` ("app/context/application.js").
|
||||
|
||||
В состав API входят:
|
||||
|
||||
@ -853,7 +853,7 @@ const MyPanel = () => {
|
||||
```
|
||||
import React, { useState, useContext } from "react"; //Классы React
|
||||
import { Typography, Button, Divider } from "@mui/material"; //Интерфейсные элементы
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
|
||||
//Стили
|
||||
const STYLES = {
|
||||
@ -868,7 +868,7 @@ const P8Online = ({ title }) => {
|
||||
const [agent, setAgent] = useState("");
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowUnit, pOnlineShowTab, pOnlineShowDocument, pOnlineShowDictionary } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowUnit, pOnlineShowTab, pOnlineShowDocument, pOnlineShowDictionary } = useContext(ApplicationCtx);
|
||||
|
||||
//Генерация содержимого
|
||||
return (
|
||||
@ -952,9 +952,9 @@ const P8Online = ({ title }) => {
|
||||
```
|
||||
import React, { useEffect, useContext, useCallback, useState } from "react"; //Классы React
|
||||
import { Typography, Grid, List, ListItemButton, ListItem, ListItemText, IconButton, Icon, Button, TextField, Box } from "@mui/material"; //Интерфейсные элементы MUI
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
|
||||
//Стили
|
||||
const STYLES = {
|
||||
@ -972,13 +972,13 @@ const Mui = ({ title }) => {
|
||||
const [agentForm, setAgentForm] = useState({ agnAbbr: "", agnName: "" });
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgWarn } = useContext(MessagingCtx);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDocument } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDocument } = useContext(ApplicationCtx);
|
||||
|
||||
//Загрузка списка контрагентов
|
||||
const agentsGet = useCallback(async () => {
|
||||
@ -1099,7 +1099,7 @@ const Mui = ({ title }) => {
|
||||
|
||||
При необходимости отображения сообщения пользователю панель может использовать компоненты `P8PAppMessage<TYPE>`, `P8PAppInlineMessage<TYPE>`, где `<TYPE> in ["Err", "Info", "Warn"]`, для сообщения об ошибке, информации или предупреждения соответственно. Их исходный код расположен в "app/components/p8p_app_message". Для подключения компонент к панели достаточно импортировать этот модуль.
|
||||
|
||||
Для удобства применения компонент реализованы функции-обёртки и компоненты-обёртки (декораторы), доступные через специальный контекст приложения - `MessagingСtx` ("app/context/messaging"). Их описание дано ниже.
|
||||
Для удобства применения компонент реализованы функции-обёртки и компоненты-обёртки (декораторы), доступные через специальный контекст приложения - `MessagingCtx` ("app/context/messaging"). Их описание дано ниже.
|
||||
|
||||

|
||||
|
||||
@ -1185,7 +1185,7 @@ const Mui = ({ title }) => {
|
||||
```
|
||||
import React, { useContext, useState } from "react"; //Классы React
|
||||
import { Typography, Divider, Button } from "@mui/material"; //Интерфейсные элементы
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
|
||||
//Стили
|
||||
const STYLES = {
|
||||
@ -1200,7 +1200,7 @@ const Messages = ({ title }) => {
|
||||
const [state, setState] = useState({ inlineErr: true, inlineWarn: true, inlineInfo: true });
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgErr, showMsgWarn, showMsgInfo, InlineMsgErr, InlineMsgInfo, InlineMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgErr, showMsgWarn, showMsgInfo, InlineMsgErr, InlineMsgInfo, InlineMsgWarn } = useContext(MessagingCtx);
|
||||
|
||||
//Генерация содержимого
|
||||
return (
|
||||
@ -1273,7 +1273,7 @@ const Messages = ({ title }) => {
|
||||
|
||||
Для информирования пользователя о выполнении панелью асинхронных действий (например, обращений к серверу Системы), как правило, используются различные индикаторы выполнения процессов. Для этих целей в фреймворк "Панели" включен типовой индикатор процесса `P8PAppProgress` (исходный код компонента доступен в "app/components/p8p_app_progress").
|
||||
|
||||
Для удобства использования компонента в контексте приложения `MessagingСtx` ("app/context/messaging") реализованы декораторы `showLoader` и `hideLoader` (отображение и сокрытие индикатора процесса соответственно).
|
||||
Для удобства использования компонента в контексте приложения `MessagingCtx` ("app/context/messaging") реализованы декораторы `showLoader` и `hideLoader` (отображение и сокрытие индикатора процесса соответственно).
|
||||
|
||||

|
||||
|
||||
@ -1300,7 +1300,7 @@ const Messages = ({ title }) => {
|
||||
```
|
||||
import React, { useContext } from "react"; //Классы React
|
||||
import { Typography, Button } from "@mui/material"; //Интерфейсные элементы
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
|
||||
//Стили
|
||||
const STYLES = {
|
||||
@ -1311,7 +1311,7 @@ const STYLES = {
|
||||
//Функциональный компонент с примером использования индикатора процесса
|
||||
const Loader = ({ title }) => {
|
||||
//Подключение к контексту сообщений
|
||||
const { showLoader, hideLoader } = useContext(MessagingСtx);
|
||||
const { showLoader, hideLoader } = useContext(MessagingCtx);
|
||||
|
||||
//Генерация содержимого
|
||||
return (
|
||||
@ -1716,8 +1716,8 @@ import { Typography, Grid, Stack, Icon, Box, Button } from "@mui/material"; //И
|
||||
import { object2Base64XML } from "../../core/utils"; //Вспомогательные процедуры и функции
|
||||
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
|
||||
//Размер страницы данных
|
||||
const DATA_GRID_PAGE_SIZE = 5;
|
||||
@ -1788,10 +1788,10 @@ const DataGrid = ({ title }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDocument } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDocument } = useContext(ApplicationCtx);
|
||||
|
||||
//Загрузка данных таблицы с сервера
|
||||
const loadData = useCallback(async () => {
|
||||
@ -2014,7 +2014,7 @@ import React, { useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Typography, Grid, Paper } from "@mui/material"; //Интерфейсные элементы
|
||||
import { P8PChart, useP8PChart } from "../../components/p8p_chart"; //График
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -2038,7 +2038,7 @@ const Chart = ({ title }) => {
|
||||
const { chart, isDataLoaded } = useP8PChart({ stored: "PKG_P8PANELS_SAMPLES.CHART" });
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowUnit } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowUnit } = useContext(ApplicationCtx);
|
||||
|
||||
//Отработка нажатия на график
|
||||
const handleChartClick = ({ item }) => {
|
||||
@ -2264,7 +2264,7 @@ import { formatDateRF, hasValue } from "../../core/utils"; //Вспомогат
|
||||
import { APP_BAR_HEIGHT } from "../../components/p8p_app_workspace"; //Заголовок страницы
|
||||
import { P8PGantt, useP8PGantt } from "../../components/p8p_gantt"; //Диаграмма Ганта
|
||||
import { P8P_GANTT_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -2360,7 +2360,7 @@ const Gantt = ({ title }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Изменение данных диаграммы
|
||||
const modifyData = useCallback(
|
||||
@ -2931,7 +2931,7 @@ import { formatDateJSONDateOnly, formatDateRF } from "../../core/utils"; //Вс
|
||||
import { APP_BAR_HEIGHT } from "../../components/p8p_app_workspace"; //Заголовок страницы
|
||||
import { P8PCyclogram } from "../../components/p8p_cyclogram"; //Циклограмма
|
||||
import { P8P_CYCLOGRAM_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -3017,7 +3017,7 @@ const Cyclogram = ({ title }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При подключении компонента к странице
|
||||
useEffect(() => {
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useState, useContext, useEffect } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { createHashRouter, RouterProvider, useRouteError } from "react-router-dom"; //Роутер
|
||||
import { ApplicationСtx } from "./context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "./context/application"; //Контекст приложения
|
||||
import { NavigationContext, NavigationCtx, getRootLocation } from "./context/navigation"; //Контекст навигации
|
||||
import { P8PAppErrorPage } from "./components/p8p_app_error_page"; //Страница с ошибкой
|
||||
import { P8PAppWorkspace } from "./components/p8p_app_workspace"; //Рабочее пространство панели
|
||||
@ -54,7 +54,7 @@ const MainMenu = ({ panels = [] } = {}) => {
|
||||
const { navigatePanel, isNavigationSearch, getNavigationSearch } = useContext(NavigationCtx);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { configUrlBase, pOnlineShowTab } = useContext(ApplicationСtx);
|
||||
const { configUrlBase, pOnlineShowTab } = useContext(ApplicationCtx);
|
||||
|
||||
//Получим параметры запроса из адресной строки
|
||||
const qS = isNavigationSearch() ? getNavigationSearch() : null;
|
||||
@ -87,7 +87,7 @@ const Workspace = ({ panels = [], selectedPanel, children } = {}) => {
|
||||
const { navigateRoot, navigatePanel } = useContext(NavigationCtx);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { appState } = useContext(ApplicationСtx);
|
||||
const { appState } = useContext(ApplicationCtx);
|
||||
|
||||
//Отработка действия навигации домой
|
||||
const handleHomeNavigate = () => navigateRoot();
|
||||
@ -130,7 +130,7 @@ const App = () => {
|
||||
const [routes, setRoutes] = useState([]);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { appState } = useContext(ApplicationСtx);
|
||||
const { appState } = useContext(ApplicationCtx);
|
||||
|
||||
//Инициализация роутера
|
||||
const content = routes.length > 0 ? <RouterProvider router={createHashRouter(routes)}></RouterProvider> : null;
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { TextField, Box, InputAdornment, IconButton, Icon, FormControlLabel, Checkbox } from "@mui/material"; //Интерфейсные элементы
|
||||
import { ApplicationСtx } from "../../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../../context/application"; //Контекст приложения
|
||||
import { P8P_CA_OPEN_UNIT_PARAMS_SHAPE, P8P_CA_INPUT_PARAM_INITIAL, P8P_CA_DEF_TYPE_VALUE } from "./common"; //Общие ресурсы действий
|
||||
import { P8PCAFieldWithType } from "./field_with_type"; //Поле с выбором типа значения
|
||||
import { P8PCATablePropValues } from "./table_prop_values"; //Таблица значений свойств действия
|
||||
@ -31,7 +31,7 @@ const STYLES = {
|
||||
//Редактор действия "Открыть раздел"
|
||||
const P8PCAUnitOpenOptions = ({ unit, valueTypes, isValues, onStateChange, onValueSourceMenuClick }) => {
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationCtx);
|
||||
|
||||
//При изменении параметра открытия
|
||||
const handleModalChange = () => onStateChange({ modal: !unit.modal });
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useState, useEffect, useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Stack, IconButton, Icon, TextField, InputAdornment, MenuItem, Menu } from "@mui/material"; //Интерфейсные элементы
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { TITLES, CAPTIONS } from "../../../app.text"; //Общие текстовые ресурсы
|
||||
import { P8PConfigDialog } from "./p8p_config_dialog"; //Типовой диалог настройки
|
||||
import { P8P_DATA_SOURCE_TYPE, P8P_DATA_SOURCE_SHAPE, P8P_DATA_SOURCE_ARGUMENT_INITIAL, P8P_DATA_SOURCE_INITIAL } from "./p8p_data_source_common"; //Общие ресурсы компонента "Источник данных"
|
||||
@ -43,7 +43,7 @@ const P8PDataSourceConfigDialog = ({ dataSource = null, valueProviders = {}, onO
|
||||
const [disabledFields, setDisabledFields] = useState({ query: false, userProc: false });
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationCtx);
|
||||
|
||||
//Установка значения/привязки аргумента
|
||||
const setArgumentValueSource = (index, value, valueSource) =>
|
||||
@ -130,8 +130,8 @@ const P8PDataSourceConfigDialog = ({ dataSource = null, valueProviders = {}, onO
|
||||
hasValue(state.query)
|
||||
? setDisabledFields({ query: false, userProc: true })
|
||||
: hasValue(state.userProc)
|
||||
? setDisabledFields({ query: true, userProc: false })
|
||||
: setDisabledFields({ query: false, userProc: false });
|
||||
? setDisabledFields({ query: true, userProc: false })
|
||||
: setDisabledFields({ query: false, userProc: false });
|
||||
}, [state.query, state.userProc]);
|
||||
|
||||
//Список значений
|
||||
|
||||
@ -11,11 +11,11 @@ import { useState, useContext, useEffect, useRef } from "react"; //Классы
|
||||
import client from "../../core/client"; //Клиент взаимодействия с сервером приложений
|
||||
import { ERRORS } from "../../../app.text"; //Общие текстовые ресурсы
|
||||
import { formatErrorMessage } from "../../core/utils"; //Общие вспомогательные функции
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { P8P_DATA_SOURCE_TYPE, P8P_DATA_SOURCE_ARGUMENT_DATA_TYPE } from "./p8p_data_source_common"; //Общие ресурсы источника данных
|
||||
import { getConditionsValues } from "./p8p_component_condition/util"; //Вспомогательные ресурсы условий
|
||||
import { getHandlersByActions } from "./p8p_component_action/util"; //Вспомогательные ресурсы действий
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
|
||||
//-----------
|
||||
//Тело модуля
|
||||
@ -30,7 +30,7 @@ const useUserProcDesc = ({ code, refresh }) => {
|
||||
const [data, setData] = useState(null);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости обновить данные компонента
|
||||
useEffect(() => {
|
||||
@ -84,7 +84,7 @@ const useDataSource = ({ dataSource, values, componentRespArg = "" }) => {
|
||||
const [haveData, setHaveData] = useState(false);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости обновление информации о наличии данных
|
||||
useEffect(() => {
|
||||
@ -142,8 +142,8 @@ const useDataSource = ({ dataSource, values, componentRespArg = "" }) => {
|
||||
? null
|
||||
: parseFloat(v)
|
||||
: argument.dataType == P8P_DATA_SOURCE_ARGUMENT_DATA_TYPE.DATE
|
||||
? new Date(v)
|
||||
: String(v === undefined ? "" : v);
|
||||
? new Date(v)
|
||||
: String(v === undefined ? "" : v);
|
||||
if (argument.req === true && [undefined, null, ""].includes(storedArgs[argument.name])) reqSet = false;
|
||||
});
|
||||
if (pv.stored != stored || pv.respArg != respArg || JSON.stringify(pv.storedArgs) != JSON.stringify(storedArgs)) {
|
||||
@ -204,7 +204,7 @@ const useComponentHandlers = ({ actions = [], onValuesChange = null, getCustomTy
|
||||
const [handlers, setHandlers] = useState({});
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { configUrlBase, pOnlineShowTab, pOnlineShowUnit } = useContext(ApplicationСtx);
|
||||
const { configUrlBase, pOnlineShowTab, pOnlineShowUnit } = useContext(ApplicationCtx);
|
||||
|
||||
//При необходимости обновления информации об обработчиках
|
||||
useEffect(() => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useCallback, useEffect, useContext, useRef, useMemo } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -61,7 +61,7 @@ const useP8PChart = ({
|
||||
}, [allowDataLoad]);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, isRespErr } = useContext(BackEndСtx);
|
||||
const { executeStored, isRespErr } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка данных графика с сервера
|
||||
const loadData = useCallback(async () => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useCallback, useEffect, useContext, useRef, useMemo } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { formatDateJSONDateOnly } from "../core/utils"; //Вспомогательные функции
|
||||
|
||||
//---------
|
||||
@ -65,7 +65,7 @@ const useP8PCyclogram = ({
|
||||
}, [allowDataLoad]);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, isRespErr } = useContext(BackEndСtx);
|
||||
const { executeStored, isRespErr } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка данных циклограммы с сервера
|
||||
const loadData = useCallback(async () => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useCallback, useEffect, useContext, useRef, useMemo } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { object2Base64XML } from "../core/utils"; //Вспомогательные функции
|
||||
|
||||
//---------
|
||||
@ -78,7 +78,7 @@ const useP8PDataGrid = ({
|
||||
}, [allowDataLoad]);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB, isRespErr } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB, isRespErr } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка данных таблицы с сервера
|
||||
const loadData = useCallback(async () => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useCallback, useEffect, useContext, useRef, useMemo } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { formatDateJSONDateOnly } from "../core/utils"; //Вспомогательные функции
|
||||
|
||||
//---------
|
||||
@ -66,7 +66,7 @@ const useP8PGantt = ({
|
||||
}, [allowDataLoad]);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, isRespErr } = useContext(BackEndСtx);
|
||||
const { executeStored, isRespErr } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка данных диаграммы ганта с сервера
|
||||
const loadData = useCallback(async () => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useCallback, useEffect, useContext, useRef, useMemo } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { P8P_INDICATOR_STATE, P8P_INDICATOR_VARIANT } from "./p8p_indicator";
|
||||
|
||||
//---------
|
||||
@ -68,7 +68,7 @@ const useP8PIndicator = ({
|
||||
}, [allowDataLoad]);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, isRespErr } = useContext(BackEndСtx);
|
||||
const { executeStored, isRespErr } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка данных индикатора с сервера
|
||||
const loadData = useCallback(async () => {
|
||||
|
||||
@ -10,8 +10,8 @@
|
||||
import React, { useReducer, createContext, useEffect, useContext, useCallback, useMemo } from "react"; //ReactJS
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { APP_AT, INITIAL_STATE, applicationReducer } from "./application_reducer"; //Редьюсер состояния
|
||||
import { MessagingСtx } from "./messaging"; //Контекст отображения сообщений
|
||||
import { BackEndСtx } from "./backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingCtx } from "./messaging"; //Контекст отображения сообщений
|
||||
import { BackEndCtx } from "./backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -31,7 +31,7 @@ const APPLICATION_CONTEXT_ERRORS_SHAPE = PropTypes.shape({
|
||||
//----------------
|
||||
|
||||
//Контекст приложения
|
||||
export const ApplicationСtx = createContext();
|
||||
export const ApplicationCtx = createContext();
|
||||
|
||||
//Провайдер контекста приложения
|
||||
export const ApplicationContext = ({ errors, displaySizeGetter, guidGenerator, config, children }) => {
|
||||
@ -39,10 +39,10 @@ export const ApplicationContext = ({ errors, displaySizeGetter, guidGenerator, c
|
||||
const [state, dispatch] = useReducer(applicationReducer, INITIAL_STATE(displaySizeGetter));
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { getConfig, getRespPayload } = useContext(BackEndСtx);
|
||||
const { getConfig, getRespPayload } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту отображения сообщений
|
||||
const { showMsgErr } = useContext(MessagingСtx);
|
||||
const { showMsgErr } = useContext(MessagingCtx);
|
||||
|
||||
//Установка флага инициализированности приложения
|
||||
const setInitialized = () => dispatch({ type: APP_AT.SET_INITIALIZED });
|
||||
@ -81,8 +81,8 @@ export const ApplicationContext = ({ errors, displaySizeGetter, guidGenerator, c
|
||||
modal
|
||||
? P8O_API.fn.openDocumentModal({ unitcode: unitCode, method: showMethod, inputParameters })
|
||||
: P8O_API.fn.openDocument
|
||||
? P8O_API.fn.openDocument({ unitcode: unitCode, method: showMethod, inputParameters })
|
||||
: showMsgErr(errors.P8O_API_UNSUPPORTED);
|
||||
? P8O_API.fn.openDocument({ unitcode: unitCode, method: showMethod, inputParameters })
|
||||
: showMsgErr(errors.P8O_API_UNSUPPORTED);
|
||||
else showMsgErr(errors.P8O_API_UNAVAILABLE);
|
||||
},
|
||||
[showMsgErr, errors.P8O_API_UNAVAILABLE, errors.P8O_API_UNSUPPORTED]
|
||||
@ -99,12 +99,12 @@ export const ApplicationContext = ({ errors, displaySizeGetter, guidGenerator, c
|
||||
inputParameters: [{ name: inRnParameter, value: document }]
|
||||
})
|
||||
: P8O_API.fn.openDocument
|
||||
? P8O_API.fn.openDocument({
|
||||
unitcode: unitCode,
|
||||
method: showMethod,
|
||||
inputParameters: [{ name: inRnParameter, value: document }]
|
||||
})
|
||||
: showMsgErr(errors.P8O_API_UNSUPPORTED);
|
||||
? P8O_API.fn.openDocument({
|
||||
unitcode: unitCode,
|
||||
method: showMethod,
|
||||
inputParameters: [{ name: inRnParameter, value: document }]
|
||||
})
|
||||
: showMsgErr(errors.P8O_API_UNSUPPORTED);
|
||||
else showMsgErr(errors.P8O_API_UNAVAILABLE);
|
||||
},
|
||||
[showMsgErr, errors.P8O_API_UNAVAILABLE, errors.P8O_API_UNSUPPORTED]
|
||||
@ -170,7 +170,7 @@ export const ApplicationContext = ({ errors, displaySizeGetter, guidGenerator, c
|
||||
|
||||
//Вернём компонент провайдера
|
||||
return (
|
||||
<ApplicationСtx.Provider
|
||||
<ApplicationCtx.Provider
|
||||
value={{
|
||||
setAppBarTitle,
|
||||
findPanelByName,
|
||||
@ -186,7 +186,7 @@ export const ApplicationContext = ({ errors, displaySizeGetter, guidGenerator, c
|
||||
}}
|
||||
>
|
||||
{children}
|
||||
</ApplicationСtx.Provider>
|
||||
</ApplicationCtx.Provider>
|
||||
);
|
||||
};
|
||||
|
||||
|
||||
@ -9,7 +9,7 @@
|
||||
|
||||
import React, { createContext, useContext, useCallback } from "react"; //ReactJS
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { MessagingСtx } from "./messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "./messaging"; //Контекст сообщений
|
||||
import { formatErrorMessage } from "../core/utils"; //Вспомогательные функции
|
||||
|
||||
//---------
|
||||
@ -34,12 +34,12 @@ const BACKEND_CONTEXT_CLIENT_SHAPE = PropTypes.shape({
|
||||
//----------------
|
||||
|
||||
//Контекст взаимодействия с серверным API
|
||||
export const BackEndСtx = createContext();
|
||||
export const BackEndCtx = createContext();
|
||||
|
||||
//Провайдер контекста взаимодействия с серверным API
|
||||
export const BackEndContext = ({ client, children }) => {
|
||||
//Подключение к контексту сообщений
|
||||
const { showLoader, hideLoader, showMsgErr } = useContext(MessagingСtx);
|
||||
const { showLoader, hideLoader, showMsgErr } = useContext(MessagingCtx);
|
||||
|
||||
//Проверка ответа на наличие ошибки
|
||||
const isRespErr = useCallback(resp => client.isRespErr(resp), [client]);
|
||||
@ -116,7 +116,7 @@ export const BackEndContext = ({ client, children }) => {
|
||||
|
||||
//Вернём компонент провайдера
|
||||
return (
|
||||
<BackEndСtx.Provider
|
||||
<BackEndCtx.Provider
|
||||
value={{
|
||||
SERV_DATA_TYPE_STR: client.SERV_DATA_TYPE_STR,
|
||||
SERV_DATA_TYPE_NUMB: client.SERV_DATA_TYPE_NUMB,
|
||||
@ -130,7 +130,7 @@ export const BackEndContext = ({ client, children }) => {
|
||||
}}
|
||||
>
|
||||
{children}
|
||||
</BackEndСtx.Provider>
|
||||
</BackEndCtx.Provider>
|
||||
);
|
||||
};
|
||||
|
||||
|
||||
@ -43,7 +43,7 @@ const MESSAGING_CONTEXT_BUTTONS_SHAPE = PropTypes.shape({
|
||||
//----------------
|
||||
|
||||
//Контекст сообщений
|
||||
export const MessagingСtx = createContext();
|
||||
export const MessagingCtx = createContext();
|
||||
|
||||
//Провайдер контекста сообщений
|
||||
export const MessagingContext = ({ titles, texts, buttons, children }) => {
|
||||
@ -109,7 +109,7 @@ export const MessagingContext = ({ titles, texts, buttons, children }) => {
|
||||
|
||||
//Вернём компонент провайдера
|
||||
return (
|
||||
<MessagingСtx.Provider
|
||||
<MessagingCtx.Provider
|
||||
value={{
|
||||
MSG_TYPE,
|
||||
showLoader,
|
||||
@ -146,7 +146,7 @@ export const MessagingContext = ({ titles, texts, buttons, children }) => {
|
||||
/>
|
||||
) : null}
|
||||
{children}
|
||||
</MessagingСtx.Provider>
|
||||
</MessagingCtx.Provider>
|
||||
);
|
||||
};
|
||||
|
||||
|
||||
@ -11,7 +11,7 @@ import React, { createContext, useContext } from "react"; //ReactJS
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { useLocation, useNavigate } from "react-router-dom"; //Роутер приложения
|
||||
import queryString from "query-string"; //Работа со строкой запроса
|
||||
import { ApplicationСtx } from "./application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "./application"; //Контекст приложения
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -41,7 +41,7 @@ export const NavigationContext = ({ children }) => {
|
||||
const navigate = useNavigate();
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { findPanelByName, setAppBarTitle } = useContext(ApplicationСtx);
|
||||
const { findPanelByName, setAppBarTitle } = useContext(ApplicationCtx);
|
||||
|
||||
//Проверка наличия параметров запроса
|
||||
const isNavigationSearch = () => (location.search ? true : false);
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import React, { useState, useContext, useEffect, useCallback } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import {
|
||||
Dialog,
|
||||
@ -56,7 +56,7 @@ const FilterDialog = ({ initial, onFilterChange, onFilterClose, onDocLinksLoad }
|
||||
const { handleCatalogTreeOpen, handleEventTypesOpen, handleAgnlistOpen, handleInsDepartmentOpen, handleCostStaffGroupsOpen } = useDictionary();
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При изменении типа события фильтра
|
||||
const handleTypeChange = callBack =>
|
||||
|
||||
@ -12,9 +12,9 @@ import PropTypes from "prop-types"; //Контроль свойств компо
|
||||
import { Draggable } from "react-beautiful-dnd"; //Работа с drag&drop
|
||||
import { Card, CardHeader, Typography, IconButton, Icon, Box, Menu, MenuItem, CardContent, Avatar, Stack } from "@mui/material"; //Интерфейсные компоненты
|
||||
import { TaskDialog } from "../task_dialog"; //Форма события
|
||||
import { ApplicationСtx } from "../../../context/application"; //Контекст приложения
|
||||
import { BackEndСtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingСtx } from "../../../context/messaging"; //Контекст сообщений
|
||||
import { ApplicationCtx } from "../../../context/application"; //Контекст приложения
|
||||
import { BackEndCtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingCtx } from "../../../context/messaging"; //Контекст сообщений
|
||||
import { TASK_COLORS, getTaskExpiredColor, getTaskBgColorByRule, makeCardActionsArray } from "../layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
||||
import { useDictionary } from "../hooks/dict_hooks"; //Состояние открытия разделов
|
||||
import { useTasksFunctions } from "../hooks/tasks_hooks"; //Состояние вспомогательных функций событий
|
||||
@ -141,13 +141,13 @@ const TaskCard = ({ task, index, onTasksReload, colorRule, pointSettings, onOpen
|
||||
const { handleTaskStateChange, handleTaskSend } = useTasksFunctions();
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgWarn } = useContext(MessagingCtx);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDocument } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDocument } = useContext(ApplicationCtx);
|
||||
|
||||
//По нажатию на открытие меню действий
|
||||
const handleMethodsMenuButtonClick = useCallback(event => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useContext, useCallback } from "react"; //Классы React
|
||||
import { ApplicationСtx } from "../../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../../context/application"; //Контекст приложения
|
||||
|
||||
//-----------
|
||||
//Тело модуля
|
||||
@ -17,7 +17,7 @@ import { ApplicationСtx } from "../../../context/application"; //Контекс
|
||||
//Состояние открытия разделов
|
||||
const useDictionary = () => {
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationCtx);
|
||||
|
||||
//Отображение раздела "Сотрудники"
|
||||
const handleClientPersonOpen = useCallback(
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useContext, useEffect, useCallback } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { getRandomColor, getLocalStorageValue } from "../layouts"; //Вспомогательные функции
|
||||
|
||||
//-----------
|
||||
@ -29,7 +29,7 @@ const useExtraData = filtersType => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Считывание учётных документов
|
||||
const handleDocLinksLoad = useCallback(
|
||||
@ -99,7 +99,7 @@ const useColorRules = () => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости загрузки заливок
|
||||
useEffect(() => {
|
||||
@ -165,7 +165,7 @@ const useStatuses = filterType => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости сортировки статусов
|
||||
useEffect(() => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useContext, useEffect } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//-----------
|
||||
//Тело модуля
|
||||
@ -48,7 +48,7 @@ const useClientEvent = (taskRn, taskType = "") => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При инициализации события
|
||||
useEffect(() => {
|
||||
@ -161,7 +161,7 @@ const useDocsProps = taskType => {
|
||||
const [docProps, setDocsProps] = useState({ loaded: false, props: [] });
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
useEffect(() => {
|
||||
//Загрузка доп. свойств
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useContext, useEffect, useCallback } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { object2Base64XML } from "../../../core/utils"; //Вспомогательные функции
|
||||
import { convertFilterValuesToArray } from "../layouts"; //Вспомогательные функции
|
||||
import { useDictionary } from "./dict_hooks"; //Состояние открытия разделов
|
||||
@ -23,7 +23,7 @@ const useTasksFunctions = () => {
|
||||
const { handleEventRoutesPointExecutersOpen, handleEventRoutesPointsPassessOpen } = useDictionary();
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Выполнение направления события
|
||||
const handleSendExec = useCallback(
|
||||
@ -310,7 +310,7 @@ const useTasks = (filterValues, ordersValues) => {
|
||||
const { handleTaskStateChange } = useTasksFunctions();
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Инициализация параметров события
|
||||
const initTask = (id, task, avatar = null) => {
|
||||
|
||||
@ -12,7 +12,7 @@ import PropTypes from "prop-types"; //Контроль свойств компо
|
||||
import { useClientEvent } from "./hooks/task_dialog_hooks"; //Хук для события
|
||||
import { useDocsProps } from "./hooks/task_dialog_hooks"; //Хук для получения доп. свойств раздела "События"
|
||||
import { TaskForm } from "./components/task_form"; //Форма события
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { object2Base64XML } from "../../core/utils"; //Вспомогательные функции
|
||||
import { hasValue } from "../../core/utils"; //Вспомогательные процедуры и функции
|
||||
import { P8PDialog } from "../../components/p8p_dialog"; //Типовой диалог
|
||||
@ -37,7 +37,7 @@ const TaskDialog = ({ taskRn, taskType, editable, onTasksReload, onClose }) => {
|
||||
const [docPropsReady, setDocPropsReady] = useState(false);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//При изменении информации о задаче
|
||||
const handleTaskChange = useCallback(
|
||||
|
||||
@ -11,9 +11,9 @@ import React, { useState, useContext, useCallback, useEffect } from "react"; //
|
||||
import { Box } from "@mui/material"; //Интерфейсные компоненты
|
||||
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { headCellRender, dataCellRender, groupCellRender, DIGITS_REG_EXP, MONTH_NAME_REG_EXP, DAY_NAME_REG_EXP } from "./layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
||||
import { TEXTS } from "../../../app.text"; //Тектовые ресурсы и константы
|
||||
import { Filter } from "./filter"; //Компонент фильтра
|
||||
@ -88,13 +88,13 @@ const EqsPrfrm = () => {
|
||||
const [refIsDeprecated, setRidFlag] = useState(true);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowUnit } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowUnit } = useContext(ApplicationCtx);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgErr } = useContext(MessagingСtx);
|
||||
const { showMsgErr } = useContext(MessagingCtx);
|
||||
|
||||
//Загрузка данных таблицы с сервера
|
||||
const loadData = useCallback(async () => {
|
||||
|
||||
@ -11,7 +11,7 @@ import React, { useState, useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Dialog, DialogTitle, IconButton, Icon, DialogContent, DialogActions, Button, Box, Grid } from "@mui/material"; //Интерфейсные компоненты
|
||||
import { FilterInputField } from "./filter_input_field"; //Компонент поля ввода
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -77,7 +77,7 @@ const FilterDialog = ({ initial, onCancel, onOk }) => {
|
||||
const [filter, setFilter] = useState({ ...initial });
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationCtx);
|
||||
|
||||
//При закрытии диалога без изменения фильтра
|
||||
const handleCancel = () => (onCancel ? onCancel() : null);
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import React, { useState, useCallback, useEffect, useContext } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { object2Base64XML } from "../../core/utils"; //Вспомогательные функции
|
||||
|
||||
//---------
|
||||
@ -50,7 +50,7 @@ const useMechRecAssemblyMon = () => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Инициализация каталогов планов
|
||||
const initPlanCtlgs = useCallback(async () => {
|
||||
@ -134,7 +134,7 @@ const useCostProductComposition = planSpec => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При подключении компонента к странице
|
||||
useEffect(() => {
|
||||
@ -174,7 +174,7 @@ const useProductDetailsTable = (planSpec, product, orders, pageNumber, stored) =
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка данных при изменении зависимостей
|
||||
useEffect(() => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import React, { useState, useCallback, useEffect, useContext } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { NavigationCtx } from "../../context/navigation"; //Контекст навигации
|
||||
import { object2Base64XML } from "../../core/utils"; //Вспомогательные функции
|
||||
|
||||
@ -49,7 +49,7 @@ const useCostJobs = () => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
//Подключение к контексту навигации
|
||||
const { getNavigationSearch } = useContext(NavigationCtx);
|
||||
|
||||
@ -100,7 +100,7 @@ const useCostJobsSpecs = task => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Выдача задания
|
||||
const issueCostJobsSpecs = useCallback(
|
||||
@ -192,7 +192,7 @@ const useEquipConfiguration = (task, fromAction) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Включение станка в строку сменного задания
|
||||
const includeEquipConfiguration = useCallback(
|
||||
|
||||
@ -11,7 +11,7 @@ import React, { useContext, useState } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Drawer, Fab, Box, List, ListItemButton, ListItemText, Typography, TextField } from "@mui/material"; //Интерфейсные элементы
|
||||
import { APP_STYLES } from "../../../app.styles"; //Типовые стили
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { CostJobsSpecsDataGrid } from "./fcjobssp"; //Собственные хуки таблиц
|
||||
import { useCostJobs, useFilteredFcjobs } from "./hooks"; //Вспомогательные хуки
|
||||
|
||||
@ -97,7 +97,7 @@ const MechRecCostJobs = () => {
|
||||
const filteredJobs = useFilteredFcjobs(state.jobList, filter);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { InlineMsgInfo } = useContext(MessagingСtx);
|
||||
const { InlineMsgInfo } = useContext(MessagingCtx);
|
||||
|
||||
//Выбор плана
|
||||
const selectJob = job => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useCallback, useEffect, useContext } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { NavigationCtx } from "../../context/navigation"; //Контекст навигации
|
||||
import { object2Base64XML } from "../../core/utils"; //Вспомогательные функции
|
||||
|
||||
@ -39,7 +39,7 @@ const useCostJobs = () => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
//Подключение к контексту навигации
|
||||
const { getNavigationSearch } = useContext(NavigationCtx);
|
||||
|
||||
@ -89,7 +89,7 @@ const useCostJobsSpecs = task => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Выдача задания
|
||||
const issueCostJobsSpecs = useCallback(
|
||||
@ -181,7 +181,7 @@ const useCostJobsWorkers = task => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Включение рабочего в строку сменного задания
|
||||
const includeWorker = useCallback(
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useCallback, useEffect, useContext } from "react";
|
||||
import { BackEndСtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { object2Base64XML, formatDateRF } from "../../../core/utils"; //Вспомогательные функции
|
||||
|
||||
//---------
|
||||
@ -33,7 +33,7 @@ const useCostRouteLists = (task, taskType) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка данных таблицы с сервера
|
||||
const loadData = useCallback(async () => {
|
||||
@ -104,7 +104,7 @@ const useIncomFromDeps = (task, taskType) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка данных таблицы с сервера
|
||||
const loadData = useCallback(async () => {
|
||||
@ -157,7 +157,7 @@ const useGoodsParties = mainRowRN => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка данных таблицы с сервера
|
||||
const loadData = useCallback(async () => {
|
||||
@ -208,7 +208,7 @@ const useCostDeliveryLists = mainRowRN => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка данных таблицы строк комплектации с сервера
|
||||
const loadData = useCallback(async () => {
|
||||
|
||||
@ -39,8 +39,8 @@ import {
|
||||
CardActions,
|
||||
Tooltip
|
||||
} from "@mui/material"; //Интерфейсные элементы
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { NavigationCtx } from "../../context/navigation"; //Контекст навигации
|
||||
import { P8P_GANTT_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { APP_BAR_HEIGHT } from "../../components/p8p_app_workspace"; //Заголовок страницы
|
||||
@ -255,10 +255,10 @@ const PlanCtlgsList = ({
|
||||
!selectedPlanCtlg
|
||||
? "Не выбран каталог планов"
|
||||
: selectedPlans.length === 0
|
||||
? "Не выбраны планы каталога"
|
||||
: selectedPlansElements > MAX_TASKS
|
||||
? `Выбранные планы превышают максимум элементов (выбрано: ${selectedPlansElements}, максимум: ${MAX_TASKS})`
|
||||
: null
|
||||
? "Не выбраны планы каталога"
|
||||
: selectedPlansElements > MAX_TASKS
|
||||
? `Выбранные планы превышают максимум элементов (выбрано: ${selectedPlansElements}, максимум: ${MAX_TASKS})`
|
||||
: null
|
||||
}
|
||||
>
|
||||
<Box>
|
||||
@ -384,16 +384,16 @@ const MechRecCostProdPlans = () => {
|
||||
const filteredPlanCtgls = useFilteredPlanCtlgs(state.planCtlgs, filter);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { InlineMsgInfo } = useContext(MessagingСtx);
|
||||
const { InlineMsgInfo } = useContext(MessagingCtx);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту навигации
|
||||
const { getNavigationSearch } = useContext(NavigationCtx);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgInfo } = useContext(MessagingСtx);
|
||||
const { showMsgInfo } = useContext(MessagingCtx);
|
||||
|
||||
//Инициализация каталогов планов
|
||||
const initPlanCtlgs = useCallback(async () => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useCallback, useEffect, useContext } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { object2Base64XML, formatDateRF } from "../../core/utils"; //Вспомогательные функции
|
||||
|
||||
//---------
|
||||
@ -40,7 +40,7 @@ const useMechRecDeptCostJobs = (subdiv, fullDate, workHours) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости обновить данные таблицы
|
||||
useEffect(() => {
|
||||
@ -91,7 +91,7 @@ const useInsDepartment = fullDate => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости обновить данные таблицы
|
||||
useEffect(() => {
|
||||
@ -142,7 +142,7 @@ const useFilter = (currentMonth, currentYear) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Считываем количества рабочих дней
|
||||
const getWorkDays = useCallback(
|
||||
|
||||
@ -12,7 +12,7 @@ import PropTypes from "prop-types"; //Контроль свойств компо
|
||||
import { Typography, Box, Paper, Dialog, DialogContent, DialogActions, Button, TextField, IconButton, Icon } from "@mui/material"; //Интерфейсные элементы
|
||||
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { CostRouteListsSpecsDataGrid } from "./fcroutlstsp"; //Состояние таблицы заказов маршрутных листов
|
||||
import { useCostRouteLists } from "./hooks.js"; //Хук состояния таблицы маршрутных листов
|
||||
|
||||
@ -142,7 +142,7 @@ const CostRouteListsDataGrid = ({ task }) => {
|
||||
const [costRouteLists, setCostRouteLists] = useCostRouteLists(task);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При изменении состояния сортировки
|
||||
const handleOrderChanged = ({ orders }) => setCostRouteLists(pv => ({ ...pv, orders: [...orders], pageNumber: 1, reload: true }));
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import React, { useState, useEffect, useContext, useCallback } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { object2Base64XML, formatDateRF } from "../../core/utils"; //Вспомогательные функции
|
||||
|
||||
//---------
|
||||
@ -46,7 +46,7 @@ const useDeptCostProdPlans = month => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При подключении компонента к странице
|
||||
useEffect(() => {
|
||||
@ -98,7 +98,7 @@ const useDeptCostProdPlanInfo = plan => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости очистки данных о плане
|
||||
const handleClear = useCallback(
|
||||
@ -187,7 +187,7 @@ const useCostRouteLists = task => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости обновить данные таблицы
|
||||
useEffect(() => {
|
||||
@ -244,7 +244,7 @@ const useCostRouteListsSpecs = mainRowRN => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости обновить данные таблицы
|
||||
useEffect(() => {
|
||||
@ -304,7 +304,7 @@ const useIncomFromDeps = task => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости обновить данные таблицы
|
||||
useEffect(() => {
|
||||
|
||||
@ -15,7 +15,7 @@ import { APP_BAR_HEIGHT } from "../../components/p8p_app_workspace"; //Заго
|
||||
import { useDeptCostProdPlans, useFilteredPlans, useDeptCostProdPlanInfo } from "./hooks"; //Вспомогательные хуки
|
||||
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { IncomFromDepsDataGridDialog } from "./incomefromdeps"; //Диалог сдачи продукции
|
||||
import { CostRouteListsDataGridDialog } from "./fcroutlst"; //Диалог маршрутных листов
|
||||
|
||||
@ -229,7 +229,7 @@ const MechRecDeptCostProdPlans = () => {
|
||||
const filteredPlanCtgls = useFilteredPlans(plans.rows, filter);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { InlineMsgInfo } = useContext(MessagingСtx);
|
||||
const { InlineMsgInfo } = useContext(MessagingCtx);
|
||||
|
||||
//Выбор плана
|
||||
const selectPlan = plan => {
|
||||
|
||||
@ -11,7 +11,7 @@ import React, { useContext, useState } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Box, Grid, Typography, Link, List, ListItem, ListItemButton, ListItemText, Divider, Fab, Icon } from "@mui/material"; //Интерфейсные элементы
|
||||
import { BUTTONS } from "../../../app.text"; //Текстовые ресурсы
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import img1_1 from "./img/1_1.png"; //Изображение
|
||||
import img1_2 from "./img/1_2.png"; //Изображение
|
||||
import img1_3 from "./img/1_3.png"; //Изображение
|
||||
@ -252,7 +252,7 @@ Img.propTypes = {
|
||||
//Ссылка на раздел Системы
|
||||
const UnitLink = ({ unitCode, children }) => {
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowUnit } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowUnit } = useContext(ApplicationCtx);
|
||||
|
||||
//Генерация содержимого
|
||||
return (
|
||||
@ -299,7 +299,7 @@ ChapterLink.propTypes = {
|
||||
//Ссылка на информационную панель
|
||||
const PanelLink = ({ panelName, children }) => {
|
||||
//Подключение к контексту приложения
|
||||
const { configUrlBase, findPanelByName, pOnlineShowTab } = useContext(ApplicationСtx);
|
||||
const { configUrlBase, findPanelByName, pOnlineShowTab } = useContext(ApplicationCtx);
|
||||
|
||||
//Генерация содержимого
|
||||
return (
|
||||
|
||||
@ -8,8 +8,8 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useEffect, useContext, useCallback, useLayoutEffect } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingСtx } from "../../../context/messaging"; //Контекст сообщений
|
||||
import { BackEndCtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingCtx } from "../../../context/messaging"; //Контекст сообщений
|
||||
import { object2Base64XML, genUID, xml2JSON } from "../../../core/utils"; //Вспомогательные функции
|
||||
import { exportXMLFile } from "../layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
||||
import { P8P_COMPONENT_SETTINGS_PATHS } from "../../../components/editors/p8p_component_settings"; //Дополнительные настройки источников
|
||||
@ -57,8 +57,8 @@ const tagValueProcessorPanelDesc = (name, val, jPath) =>
|
||||
["condValue", "resValue", "description"].includes(name)
|
||||
? undefined
|
||||
: /(.*)dataSource.arguments.value$/.test(jPath) || /(.*)XVALUE_PROVIDERS(.*)$/.test(jPath)
|
||||
? undefined
|
||||
: val;
|
||||
? undefined
|
||||
: val;
|
||||
|
||||
//Конвертация серверного описания компонентов в данные для редактора панелей
|
||||
const convertServerData2Components = components => {
|
||||
@ -184,7 +184,7 @@ const usePanel = () => {
|
||||
const [editMode, setEditMode] = useState(true);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости загрузки информации о панели
|
||||
const loadPanel = async panel => {
|
||||
@ -244,7 +244,7 @@ const usePanelManager = () => {
|
||||
const [data, setData] = useState(null);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Добавление панели
|
||||
const insertPanel = useCallback(
|
||||
@ -354,10 +354,10 @@ const usePanelDesc = panel => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgErr } = useContext(MessagingСtx);
|
||||
const { showMsgErr } = useContext(MessagingCtx);
|
||||
|
||||
//Считывание базовой информации о панели
|
||||
const getPanelInfo = useCallback(async () => {
|
||||
|
||||
@ -27,7 +27,7 @@ import {
|
||||
InputAdornment,
|
||||
IconButton
|
||||
} from "@mui/material"; //Интерфейсные элементы
|
||||
import { ApplicationСtx } from "../../../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../../../context/application"; //Контекст приложения
|
||||
import { P8PEditorBox } from "../../../../components/editors/p8p_editor_box"; //Контейнер редактора
|
||||
import { P8PEditorSubHeader } from "../../../../components/editors/p8p_editor_sub_header"; //Заголовок раздела редактора
|
||||
import { P8PConfigDialog } from "../../../../components/editors/p8p_config_dialog"; //Диалог настройки
|
||||
@ -57,7 +57,7 @@ const ItemEditor = ({ item = null, valueProviders = {}, onOk = null, onCancel =
|
||||
const [valueProvidersMenuAnchorEl, setValueProvidersMenuAnchorEl] = useState(null);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationCtx);
|
||||
|
||||
//При закрытии редактора с сохранением
|
||||
const handleOk = () => onOk && onOk({ ...state });
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useEffect, useState, useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Paper, Stack, Typography, Icon, TextField, IconButton, InputAdornment } from "@mui/material"; //Интерфейсные элементы
|
||||
import { ApplicationСtx } from "../../../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../../../context/application"; //Контекст приложения
|
||||
import { P8P_COMPONENT_INLINE_MESSAGE, P8PComponentInlineMessage } from "../../../../components/editors/p8p_component_inline_message"; //Информационное сообщение внутри компонента
|
||||
import { ITEM_SHAPE, ITEMS_INITIAL, ORIENTATION } from "./common"; //Общие ресурсы и константы формы
|
||||
import { APP_STYLES } from "../../../../../app.styles";
|
||||
@ -37,7 +37,7 @@ const COMPONENT_NAME = "Форма";
|
||||
//Элемент формы
|
||||
const FormItem = ({ item = null, fullWidth = false, value = "", onChange = null } = {}) => {
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationCtx);
|
||||
|
||||
//При изменении значения элемента
|
||||
const handleChange = e => onChange && onChange(e.target.id, e.target.value);
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useState, useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Box, Button, Icon } from "@mui/material"; //Интерфейсные компоненты MUI
|
||||
import { MessagingСtx } from "../../../../context/messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "../../../../context/messaging"; //Контекст сообщений
|
||||
import { BUTTONS } from "../../../../../app.text"; //Общие текстовые ресурсы приложения
|
||||
import { P8PConfigDialog } from "../../../../components/editors/p8p_config_dialog"; //Типовой диалог настройки
|
||||
import { usePanelManager } from "../components_hooks"; //Пользовательские хуки
|
||||
@ -31,7 +31,7 @@ const PanelsManager = ({ current = null, isEditable = true, onPanelSelect = null
|
||||
const [panels, insertPanel, updatePanel, deletePanel, setPanelReady, setPanelPbl, importPanel] = usePanelManager();
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgWarn } = useContext(MessagingCtx);
|
||||
|
||||
//При добавлении панели
|
||||
const handlePanelAdd = () => setModPanel(true);
|
||||
|
||||
@ -11,7 +11,7 @@ import React, { useState, useContext, useEffect } from "react"; //Классы R
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Responsive, WidthProvider } from "react-grid-layout"; //Адаптивный макет
|
||||
import { Box, Grid, Menu, MenuItem, Popover } from "@mui/material"; //Интерфейсные элементы
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { APP_BAR_HEIGHT } from "../../components/p8p_app_workspace"; //Рабочая область приложения
|
||||
import { P8PEditorToolBar } from "../../components/editors/p8p_editor_toolbar"; //Панель инструментов редактора
|
||||
import { LayoutItem } from "./layout_item"; //Элемент макета
|
||||
@ -89,7 +89,7 @@ const PanelEditor = ({
|
||||
const [rowHeight] = useWindowResize();
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgWarn } = useContext(MessagingCtx);
|
||||
|
||||
//При перемещении макета
|
||||
const handleOnDrag = layout => {
|
||||
|
||||
@ -14,7 +14,7 @@ import { P8PConfigDialog } from "../../components/editors/p8p_config_dialog"; //
|
||||
import { isElementNameCorrect } from "../../components/editors/p8p_editors_common"; //Общие ресурсы редакторов
|
||||
import { P8PEditorSubHeader } from "../../components/editors/p8p_editor_sub_header"; //Заголовок раздела редактора
|
||||
import { P8PEditorBox } from "../../components/editors/p8p_editor_box"; //Контейнер редактора
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { APP_STYLES } from "../../../app.styles"; //Типовые стили
|
||||
import { STYLES as COMMON_STYLES } from "../../components/editors/p8p_editors_common"; //Общие ресурсы редакторов
|
||||
import { P8PChipList } from "../../components/editors/p8p_chip_list"; //Дополнительные настройки редактора
|
||||
@ -127,7 +127,7 @@ const PanelPropsEditor = ({ valueProviders = {}, onSettingsChange, onDependencyC
|
||||
const [variableEditor, setVariableEditor] = useState({ display: false, item: null });
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgErr } = useContext(MessagingСtx);
|
||||
const { showMsgErr } = useContext(MessagingCtx);
|
||||
|
||||
//При добавлении новой переменной
|
||||
const handleVariableAdd = () => setVariableEditor({ display: true, item: null });
|
||||
|
||||
@ -9,8 +9,8 @@
|
||||
|
||||
import React, { useState, useContext, useEffect } from "react"; //Классы React
|
||||
import { Box, Icon, Fab } from "@mui/material"; //Интерфейсные элементы
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { PanelsManager } from "./components/panels_manager/panels_manager"; //Менеджер панелей
|
||||
import { usePanel } from "./components/components_hooks"; //Вспомогательные хуки
|
||||
import { NavigationCtx } from "../../context/navigation"; //Контекст навигации
|
||||
@ -57,9 +57,9 @@ const PanelsEditor = () => {
|
||||
//Подключение к контексту навигации
|
||||
const { getNavigationSearch } = useContext(NavigationCtx);
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgWarn } = useContext(MessagingCtx);
|
||||
//Подключение к контексту приложения
|
||||
const { setAppBarTitle } = useContext(ApplicationСtx);
|
||||
const { setAppBarTitle } = useContext(ApplicationCtx);
|
||||
|
||||
//При выборе панели
|
||||
const handlePanelSelect = panel => {
|
||||
|
||||
@ -21,9 +21,9 @@ import {
|
||||
} from "../../components/p8p_data_grid"; //Таблица данных
|
||||
import { P8PFullScreenDialog } from "../../components/p8p_fullscreen_dialog"; //Полноэкранный диалог
|
||||
import { P8PChart, useP8PChart } from "../../components/p8p_chart"; //График
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { COMMON_PROJECTS_STYLES, PANEL_UNITS, headCellRender, dataCellRender, valueFormatter, rowExpandRender } from "./layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
||||
import { Stages } from "./stages"; //Список этапов проекта
|
||||
@ -61,7 +61,7 @@ const Projects = () => {
|
||||
const [stagesFilters, setStagesFilters] = useState([]);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDocument, pOnlineShowUnit, configSystemPageSize } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDocument, pOnlineShowUnit, configSystemPageSize } = useContext(ApplicationCtx);
|
||||
|
||||
//Собственное состояние
|
||||
const {
|
||||
@ -83,10 +83,10 @@ const Projects = () => {
|
||||
const { chart: costNotesChart, isDataLoaded: isCostNotesLoaded } = useP8PChart({ stored: "PKG_P8PANELS_PROJECTS.CHART_FCCOSTNOTES" });
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgErr } = useContext(MessagingСtx);
|
||||
const { showMsgErr } = useContext(MessagingCtx);
|
||||
|
||||
//Отображение журнала платежей по этапу проекта
|
||||
const showPayNotes = async ({ sender, direction }) => {
|
||||
|
||||
@ -20,9 +20,9 @@ import {
|
||||
P8P_DATA_GRID_FILTERS_HEIGHT,
|
||||
useP8PDataGrid
|
||||
} from "../../components/p8p_data_grid"; //Таблица данных
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { PANEL_UNITS, dataCellRender, valueFormatter } from "./layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
||||
|
||||
@ -56,13 +56,13 @@ const StageArts = ({ stage, filters }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowUnit } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowUnit } = useContext(ApplicationCtx);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgErr } = useContext(MessagingСtx);
|
||||
const { showMsgErr } = useContext(MessagingCtx);
|
||||
|
||||
//Отображение журнала затрат по статье калькуляции
|
||||
const showCostNotes = async ({ sender }) => {
|
||||
|
||||
@ -21,9 +21,9 @@ import {
|
||||
P8P_DATA_GRID_FILTERS_HEIGHT,
|
||||
useP8PDataGrid
|
||||
} from "../../components/p8p_data_grid"; //Таблица данных
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { PANEL_UNITS, dataCellRender, valueFormatter, rowExpandRender } from "./layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
||||
|
||||
@ -48,7 +48,7 @@ const STYLES = {
|
||||
//Договоры с соисполнителями этапа проекта
|
||||
const StageContracts = ({ stage, filters }) => {
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDocument, pOnlineShowUnit, configSystemPageSize } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDocument, pOnlineShowUnit, configSystemPageSize } = useContext(ApplicationCtx);
|
||||
|
||||
//Собственное состояние
|
||||
const {
|
||||
@ -65,10 +65,10 @@ const StageContracts = ({ stage, filters }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgErr } = useContext(MessagingСtx);
|
||||
const { showMsgErr } = useContext(MessagingCtx);
|
||||
|
||||
//Отображение выходящих счетов на оплату от соисполнителя этапа
|
||||
const showPaymentAccountsIn = async ({ sender }) => {
|
||||
|
||||
@ -24,9 +24,9 @@ import {
|
||||
import { P8PFullScreenDialog } from "../../components/p8p_fullscreen_dialog"; //Полноэкранный диалог
|
||||
import { StageArts } from "./stage_arts"; //Калькуляция этапа проекта
|
||||
import { StageContracts } from "./stage_contracts"; //Договоры с соисполнителями этапа проекта
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { COMMON_PROJECTS_STYLES, PANEL_UNITS, headCellRender, dataCellRender, valueFormatter, rowExpandRender } from "./layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
||||
|
||||
@ -60,7 +60,7 @@ const Stages = ({ project, projectName, filters }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDocument, pOnlineShowUnit, configSystemPageSize } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDocument, pOnlineShowUnit, configSystemPageSize } = useContext(ApplicationCtx);
|
||||
|
||||
//Собственное состояние
|
||||
const {
|
||||
@ -77,10 +77,10 @@ const Stages = ({ project, projectName, filters }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgErr } = useContext(MessagingСtx);
|
||||
const { showMsgErr } = useContext(MessagingCtx);
|
||||
|
||||
//Отображение журнала платежей по этапу проекта
|
||||
const showPayNotes = async ({ sender, direction }) => {
|
||||
|
||||
@ -13,8 +13,8 @@ import { APP_BAR_HEIGHT } from "../../components/p8p_app_workspace"; //Заго
|
||||
import { APP_STYLES } from "../../../app.styles"; //Типовые стили
|
||||
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { dataCellRender, groupCellRender } from "./layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
||||
|
||||
//---------
|
||||
@ -44,10 +44,10 @@ const PrjGraph = () => {
|
||||
});
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDocument } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDocument } = useContext(ApplicationCtx);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка данных таблицы с сервера
|
||||
const loadData = useCallback(async () => {
|
||||
|
||||
@ -28,7 +28,7 @@ import {
|
||||
Icon
|
||||
} from "@mui/material"; //Интерфейсные элементы
|
||||
import { BUTTONS } from "../../../app.text"; //Текстовые ресурсы
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import img21_1 from "./img/21_1.png"; //Изображение
|
||||
import img21_2 from "./img/21_2.png"; //Изображение
|
||||
import img21_3 from "./img/21_3.png"; //Изображение
|
||||
@ -171,7 +171,7 @@ Img.propTypes = {
|
||||
//Ссылка на раздел Системы
|
||||
const UnitLink = ({ unitCode, children }) => {
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowUnit } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowUnit } = useContext(ApplicationCtx);
|
||||
|
||||
//Генерация содержимого
|
||||
return (
|
||||
@ -218,7 +218,7 @@ ChapterLink.propTypes = {
|
||||
//Ссылка на информационную панель
|
||||
const PanelLink = ({ panelName, children }) => {
|
||||
//Подключение к контексту приложения
|
||||
const { configUrlBase, findPanelByName, pOnlineShowTab } = useContext(ApplicationСtx);
|
||||
const { configUrlBase, findPanelByName, pOnlineShowTab } = useContext(ApplicationCtx);
|
||||
|
||||
//Генерация содержимого
|
||||
return (
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useState, useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Button, Dialog, DialogTitle, DialogContent, DialogActions } from "@mui/material"; //Интерфейсные элементы
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { BUTTONS } from "../../../app.text"; //Типовые тексты
|
||||
import { APP_STYLES } from "../../../app.styles"; //Типовые стили
|
||||
import { FormField } from "./layouts"; //Общие компоненты панели
|
||||
@ -60,7 +60,7 @@ const FilterDialog = ({ valuesInitial, onOk, onCancel }) => {
|
||||
const [values, setValues] = useState({ ...valuesInitial });
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationCtx);
|
||||
|
||||
//Изменение элемента формы фильтра
|
||||
const handleValueChanged = (name, value) => setValues(pv => ({ ...pv, [name]: value }));
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useState, useContext } from "react"; //Классы React
|
||||
import { P8PDataGrid } from "../../components/p8p_data_grid"; //Таблица данных
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { useProjectsDataGrid } from "./projects_hooks"; //Хуки списка проектов
|
||||
import { FILTER_INITIAL, Filter } from "./filter"; //Компонент "Фильтр"
|
||||
import { PROJECTS_STYLES, projectDataCellRender, projectRowExpandRender } from "./projects_layouts"; //Дополнительная разметка и вёрстка клиентских элементов
|
||||
@ -28,7 +28,7 @@ const Projects = () => {
|
||||
const [projectsDataGrid] = useProjectsDataGrid({ ...projects.filter, pageNumber: projects.pageNumber, orders: projects.orders });
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDocument } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDocument } = useContext(ApplicationCtx);
|
||||
|
||||
//Отображение записи проекта в штатном разделе
|
||||
const showProject = async rn => pOnlineShowDocument({ unitCode: "Projects", document: rn, modal: false });
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useContext, useEffect } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { object2Base64XML, formatDateRF } from "../../core/utils"; //Вспомогательные функции
|
||||
import config from "../../../app.config"; //Настройки приложения
|
||||
|
||||
@ -32,7 +32,7 @@ const useProjectsDataGrid = ({ prjType, insDep, priceStructStatus, prjState, sea
|
||||
const [data, setData] = useState({ init: false, morePages: true });
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости обновить данные таблицы
|
||||
useEffect(() => {
|
||||
|
||||
@ -10,9 +10,9 @@
|
||||
import React, { useState, useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Grid, Box, Typography, Paper, Drawer, IconButton, Icon } from "@mui/material"; //Интерфейсные элементы
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { TEXTS } from "../../../app.text"; //Тектовые ресурсы и константы
|
||||
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||
import { P8PChart } from "../../components/p8p_chart"; //График
|
||||
@ -38,13 +38,13 @@ const StageDetailData = ({ stageRn }) => {
|
||||
const [state, setState] = useState({ artsDisplayType: 0, artsChartType: 0 });
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowUnit } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowUnit } = useContext(ApplicationCtx);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgErr } = useContext(MessagingСtx);
|
||||
const { showMsgErr } = useContext(MessagingCtx);
|
||||
|
||||
//Отображение журнала затрат (фактического, по рег. номеру ЛС и статьи затрат)
|
||||
const showCostNotesFact = async ({ faceAccRn, artclRn }) => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useContext, useEffect } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//-----------
|
||||
//Тело модуля
|
||||
@ -23,7 +23,7 @@ const useStageDetailInfoDataGrid = ({ stageRn }) => {
|
||||
const [data, setData] = useState({ init: false });
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости обновить данные таблицы
|
||||
useEffect(() => {
|
||||
@ -58,7 +58,7 @@ const useStageDetailArtsDataGrid = ({ stageRn }) => {
|
||||
const [data, setData] = useState({ init: false });
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости обновить данные таблицы
|
||||
useEffect(() => {
|
||||
@ -93,7 +93,7 @@ const useStageDetailArtsChart = ({ stageRn, display, type }) => {
|
||||
const [data, setData] = useState({ init: false, currentType: null });
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости обновить данные таблицы
|
||||
useEffect(() => {
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useState, useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Typography } from "@mui/material"; //Интерфейсные элементы
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { P8PDataGrid } from "../../components/p8p_data_grid"; //Таблица данных
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { useStagesDataGrid } from "./stages_hooks"; //Хуки списка этапов проекта
|
||||
@ -33,7 +33,7 @@ const Stages = ({ projectRn, projectCode }) => {
|
||||
const [stageInfo, setStageInfo] = useState({ showInfo: false, stage: null, sFaceAcc: null });
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowUnit } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowUnit } = useContext(ApplicationCtx);
|
||||
|
||||
//Отображение записи этапа проекта в штатном разделе
|
||||
const showProjectStage = (prn, rn) => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useContext, useEffect } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { object2Base64XML, formatDateRF } from "../../core/utils"; //Вспомогательные функции
|
||||
import config from "../../../app.config"; //Настройки приложения
|
||||
|
||||
@ -32,7 +32,7 @@ const useStagesDataGrid = ({ projectRn, pageNumber, orders }) => {
|
||||
const [data, setData] = useState({ init: false, morePages: true });
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости обновить данные таблицы
|
||||
useEffect(() => {
|
||||
|
||||
@ -10,8 +10,8 @@
|
||||
import React, { useContext, useState, useCallback, useEffect } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Dialog, DialogContent, DialogActions, Button, DialogTitle } from "@mui/material"; //Интерфейсные элементы
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { object2Base64XML } from "../../core/utils"; //Вспомогательные функции
|
||||
import { BUTTONS } from "../../../app.text"; //Текстовые ресурсы
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
@ -36,10 +36,10 @@ const LabFactRptDtl = ({ periodId, title, onHide }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { configSystemPageSize } = useContext(ApplicationСtx);
|
||||
const { configSystemPageSize } = useContext(ApplicationCtx);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка детализации фактической трудоёмкости по отчетам для ресурса
|
||||
const loadFactRptDtl = useCallback(async () => {
|
||||
|
||||
@ -10,8 +10,8 @@
|
||||
import React, { useContext, useState, useCallback, useEffect } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Dialog, DialogContent, DialogActions, Button, DialogTitle } from "@mui/material"; //Интерфейсные элементы
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { object2Base64XML } from "../../core/utils"; //Вспомогательные функции
|
||||
import { BUTTONS } from "../../../app.text"; //Текстовые ресурсы
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
@ -35,10 +35,10 @@ const LabPlanFOTDtl = ({ periodId, title, onHide }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { configSystemPageSize } = useContext(ApplicationСtx);
|
||||
const { configSystemPageSize } = useContext(ApplicationCtx);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка детализации плановой трудоёмкости по ФОТ для ресурса
|
||||
const loadPlanFOTDtl = useCallback(async () => {
|
||||
|
||||
@ -10,8 +10,8 @@
|
||||
import React, { useContext, useState, useCallback, useEffect } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Dialog, DialogContent, DialogActions, Button, DialogTitle } from "@mui/material"; //Интерфейсные элементы
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { object2Base64XML } from "../../core/utils"; //Вспомогательные функции
|
||||
import { BUTTONS } from "../../../app.text"; //Текстовые ресурсы
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
@ -40,10 +40,10 @@ const LabPlanJobsDtl = ({ periodId, title, onHide, onProjectClick }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { configSystemPageSize } = useContext(ApplicationСtx);
|
||||
const { configSystemPageSize } = useContext(ApplicationCtx);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка детализации плановой трудоёмкости по графику для ресурса
|
||||
const loadPlanJobsDtl = useCallback(async () => {
|
||||
|
||||
@ -29,9 +29,9 @@ import {
|
||||
TextField,
|
||||
DialogTitle
|
||||
} from "@mui/material"; //Интерфейсные элементы
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { formatDateJSONDateOnly } from "../../core/utils"; //Вспомогательные функции
|
||||
import { APP_BAR_HEIGHT } from "../../components/p8p_app_workspace"; //Заголовок страницы
|
||||
import { APP_STYLES } from "../../../app.styles"; //Типовые стили
|
||||
@ -185,7 +185,7 @@ SaveChangesArea.propTypes = {
|
||||
//Список проектов
|
||||
const ProjectsList = ({ projects = [], selectedProject, onClick } = {}) => {
|
||||
//Подключение к контексту сообщений
|
||||
const { InlineMsgErr } = useContext(MessagingСtx);
|
||||
const { InlineMsgErr } = useContext(MessagingCtx);
|
||||
|
||||
//Генерация содержимого
|
||||
return projects.length > 0 ? (
|
||||
@ -211,8 +211,8 @@ const ProjectsList = ({ projects = [], selectedProject, onClick } = {}) => {
|
||||
...(p.NJOBS == 0
|
||||
? STYLES.PROJECTS_LIST_ITEM_SECONDARY_NOJOBS
|
||||
: p.NCHANGED == 1
|
||||
? STYLES.PROJECTS_LIST_ITEM_SECONDARY_CHANGED
|
||||
: STYLES.PROJECTS_LIST_ITEM_SECONDARY_NOEDIT)
|
||||
? STYLES.PROJECTS_LIST_ITEM_SECONDARY_CHANGED
|
||||
: STYLES.PROJECTS_LIST_ITEM_SECONDARY_NOEDIT)
|
||||
}}
|
||||
>
|
||||
{p.NJOBS == 1
|
||||
@ -270,13 +270,13 @@ const PrjJobs = () => {
|
||||
});
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDocument } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDocument } = useContext(ApplicationCtx);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { InlineMsgInfo } = useContext(MessagingСtx);
|
||||
const { InlineMsgInfo } = useContext(MessagingCtx);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка списка проектов
|
||||
const loadProjects = useCallback(
|
||||
|
||||
@ -10,8 +10,8 @@
|
||||
import React, { useContext, useState, useCallback, useEffect } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { APP_STYLES } from "../../../app.styles"; //Типовые стили
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { object2Base64XML } from "../../core/utils"; //Вспомогательные функции
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { P8PDataGrid, P8P_DATA_GRID_SIZE, P8P_DATA_GRID_MORE_HEIGHT } from "../../components/p8p_data_grid"; //Таблица данных
|
||||
@ -57,10 +57,10 @@ const ResMon = ({ ident, onPlanJobsDtlProjectClick }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { configSystemPageSize } = useContext(ApplicationСtx);
|
||||
const { configSystemPageSize } = useContext(ApplicationCtx);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Загрузка данных монитора балансировки периодов с сервера
|
||||
const loadPeriods = useCallback(async () => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useContext, useCallback } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//-----------
|
||||
//Тело модуля
|
||||
@ -17,7 +17,7 @@ import { BackEndСtx } from "../../../../context/backend"; //Контекст в
|
||||
//Работа с областью SQL-выражения
|
||||
const useQuerySQLExpr = query => {
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Установка флага сокрытия/отображения значений аргументов в SQL-выражении запроса
|
||||
const toggleSubstArgsVals = useCallback(async () => {
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useContext, useCallback } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//------------------------------------
|
||||
//Вспомогательные функции и компоненты
|
||||
@ -21,7 +21,7 @@ import { BackEndСtx } from "../../../../context/backend"; //Контекст в
|
||||
//Работа с аргументами запроса
|
||||
const useQueryArgs = query => {
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Добавление аргумента запроса
|
||||
const addArg = useCallback(
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useState, useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Button, Icon } from "@mui/material"; //Интерфейсные компоненты MUI
|
||||
import { MessagingСtx } from "../../../../context/messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "../../../../context/messaging"; //Контекст сообщений
|
||||
import { BUTTONS } from "../../../../../app.text"; //Общие текстовые ресурсы приложения
|
||||
import { P8PDialog } from "../../../../components/p8p_dialog"; //Типовой диалог
|
||||
import { ARGUMENT_SHAPE } from "../argument/argument"; //Аргумент запроса
|
||||
@ -27,7 +27,7 @@ const QueryArgsDialog = ({ args, onArgAdd, onArgEdit, onArgRemove, onClose }) =>
|
||||
const [modArg, setModArg] = useState(null);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgWarn } = useContext(MessagingCtx);
|
||||
|
||||
//Нажатие на кнопку "Закрыть"
|
||||
const handleClose = () => onClose && onClose();
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useContext, useCallback } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//-----------
|
||||
//Тело модуля
|
||||
@ -17,7 +17,7 @@ import { BackEndСtx } from "../../../../context/backend"; //Контекст в
|
||||
//Работа с условиями отбора запроса
|
||||
const useQueryConditions = query => {
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Установка условий отбора в запросе
|
||||
const setCond = useCallback(
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useRef, useContext, useCallback, useEffect, useState } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { object2Base64XML } from "../../../../core/utils"; //Вспомогательные функции
|
||||
|
||||
//-----------
|
||||
@ -30,7 +30,7 @@ const useEntities = (filter, minFilterLen) => {
|
||||
const [data, setData] = useState(null);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Обновление данных
|
||||
const doRefresh = () => setRefresh(true);
|
||||
@ -81,7 +81,7 @@ const useEntities = (filter, minFilterLen) => {
|
||||
//Работа с сущностями запроса
|
||||
const useQueryEntities = query => {
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Добавление сущности в запрос
|
||||
const addEnt = useCallback(
|
||||
@ -123,7 +123,7 @@ const useEntityAttrs = (query, entity) => {
|
||||
const [data, setData] = useState(null);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndСtx);
|
||||
const { executeStored, SERV_DATA_TYPE_CLOB } = useContext(BackEndCtx);
|
||||
|
||||
//Обновление данных
|
||||
const doRefresh = () => setRefresh(true);
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useContext, useState } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Icon, Button } from "@mui/material"; //Интерфейсные элементы
|
||||
import { MessagingСtx } from "../../../../context/messaging"; //Контекст сообщений приложения
|
||||
import { MessagingCtx } from "../../../../context/messaging"; //Контекст сообщений приложения
|
||||
import { P8PEditorSubHeader } from "../../../../components/editors/p8p_editor_sub_header"; //Подзаголовок группы параметров редактора
|
||||
import { BUTTONS } from "../../../../../app.text"; //Общие текстовые ресурсы
|
||||
import { ENTITY_SHAPE } from "../entity/entity"; //Описание сущности
|
||||
@ -34,7 +34,7 @@ const InspectorQueryEntities = ({ query, entity, onOptionsChanged }) => {
|
||||
const { addEnt, removeEnt } = useQueryEntities(query);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgWarn } = useContext(MessagingCtx);
|
||||
|
||||
//Уведомление родителя об изменении свойств
|
||||
const notifyOptionsChanged = () => onOptionsChanged && onOptionsChanged();
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useContext, useCallback } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//-----------
|
||||
//Тело модуля
|
||||
@ -17,7 +17,7 @@ import { BackEndСtx } from "../../../../context/backend"; //Контекст в
|
||||
//Работа со связами запроса
|
||||
const useQueryRelations = query => {
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Добавление отношения сущностей в запрос
|
||||
const addRl = useCallback(
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Icon, Button, FormControlLabel, Checkbox } from "@mui/material"; //Интерфейсные элементы
|
||||
import { MessagingСtx } from "../../../../context/messaging"; //Контекст сообщений приложения
|
||||
import { MessagingCtx } from "../../../../context/messaging"; //Контекст сообщений приложения
|
||||
import { BUTTONS } from "../../../../../app.text"; //Общие текстовые ресурсы
|
||||
import { RELATION_SHAPE } from "../relation/relation"; //Описание связи
|
||||
import { useQueryRelations } from "./hooks"; //Хуки для работы со связями
|
||||
@ -36,7 +36,7 @@ const STYLES = {
|
||||
//Компонент инспектора - Связи запроса
|
||||
const InspectorQueryRelations = ({ query, relation, onOptionsChanged }) => {
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgWarn } = useContext(MessagingCtx);
|
||||
|
||||
//Работа со связями на сервере
|
||||
const { removeRl, setRlMandatory } = useQueryRelations(query);
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useContext, useEffect, useCallback } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//-----------
|
||||
//Тело модуля
|
||||
@ -29,7 +29,7 @@ const useQueries = () => {
|
||||
const [data, setData] = useState(null);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Обновление данных
|
||||
const doRefresh = () => setRefresh(true);
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useState, useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Button, Icon } from "@mui/material"; //Интерфейсные компоненты MUI
|
||||
import { MessagingСtx } from "../../../../context/messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "../../../../context/messaging"; //Контекст сообщений
|
||||
import { BUTTONS } from "../../../../../app.text"; //Общие текстовые ресурсы приложения
|
||||
import { P8PConfigDialog } from "../../../../components/editors/p8p_config_dialog"; //Типовой диалог настройки
|
||||
import { useQueries } from "./hooks"; //Хуки для работы с запросами
|
||||
@ -30,7 +30,7 @@ const QueriesManager = ({ current = null, onQuerySelect = null, onCancel = null
|
||||
const [queries, insertQuery, updateQuery, deleteQuery, setQueryReady, setQueryPbl] = useQueries();
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgWarn } = useContext(MessagingCtx);
|
||||
|
||||
//При добавлении запроса
|
||||
const handleQueryAdd = () => setModQuery(true);
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
//---------------------
|
||||
|
||||
import { useState, useContext, useEffect } from "react"; //Классы React
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { NODE_TYPE } from "./common"; //Общие ресурсы и константы редактора
|
||||
|
||||
//---------
|
||||
@ -119,7 +119,7 @@ const useQuery = query => {
|
||||
const [querySQL, setQuerySQL] = useState(null);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Обновление данных
|
||||
const doRefresh = () => setRefresh(true);
|
||||
|
||||
@ -9,7 +9,7 @@
|
||||
|
||||
import React, { useState, useContext } from "react"; //Классы React
|
||||
import { Box, Grid } from "@mui/material"; //Интерфейсные компоненты MUI
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст взаимодействия с приложением
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст взаимодействия с приложением
|
||||
import { APP_BAR_HEIGHT } from "../../components/p8p_app_workspace"; //Компоненты рабочего стола
|
||||
import { P8PEditorToolBar } from "../../components/editors/p8p_editor_toolbar"; //Панель инструментов редактора
|
||||
import { QueryDiagram } from "./components/query_diagram/query_diagram"; //Диаграмма запроса
|
||||
@ -61,7 +61,7 @@ const QueryEditor = () => {
|
||||
const { addRl, removeRl } = useQueryRelations(query);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { setAppBarTitle } = useContext(ApplicationСtx);
|
||||
const { setAppBarTitle } = useContext(ApplicationCtx);
|
||||
|
||||
//Выбор сущности
|
||||
const selectEntity = ent => {
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useState, useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Icon, Button } from "@mui/material"; //Интерфейсные элементы
|
||||
import { MessagingСtx } from "../../../context/messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "../../../context/messaging"; //Контекст сообщений
|
||||
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../../components/p8p_data_grid"; //Таблица данных
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { APP_STYLES } from "../../../../app.styles"; //Типовые стили
|
||||
@ -56,7 +56,7 @@ const Marks = ({ marks, order, marksLoading, marksInit, onRefresh, onMarkInsert,
|
||||
const [modMark, setModMark] = useState(null);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgWarn } = useContext(MessagingCtx);
|
||||
|
||||
//Подключение к словарям
|
||||
const { showMark, showMarkCn, showMarkCnAdd } = useDictionary();
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useState, useContext, useEffect } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Box } from "@mui/material"; //Интерфейсные элементы
|
||||
import { BackEndСtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { useConfSectionMarks } from "../hooks"; //Кастомные хуки
|
||||
import { ActionMessage } from "./action_message"; //Сообщение с действиями
|
||||
import { Marks } from "./marks"; //Показатели раздела
|
||||
@ -41,7 +41,7 @@ const Section = ({ section = null }) => {
|
||||
const [marks, refreshMarks, marksLoading, marksInit] = useConfSectionMarks(section, order.rowOrder, order.columnOrder);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Добавление показателя
|
||||
const insertMark = async ({ code, name, row, rowCode, rowVersion, column, columnCode, columnVersion }, cb) => {
|
||||
|
||||
@ -11,9 +11,9 @@ import React, { useState, useEffect, useContext, useCallback } from "react"; //
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Box, Tabs, IconButton, Icon, Stack, Button } from "@mui/material"; //Интерфейсные компоненты
|
||||
import { tabsClasses } from "@mui/material/Tabs"; //Классы закладок
|
||||
import { ApplicationСtx } from "../../../context/application"; //Контекст взаимодействия с приложением
|
||||
import { BackEndСtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingСtx } from "../../../context/messaging"; //Контекст сообщений
|
||||
import { ApplicationCtx } from "../../../context/application"; //Контекст взаимодействия с приложением
|
||||
import { BackEndCtx } from "../../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingCtx } from "../../../context/messaging"; //Контекст сообщений
|
||||
import { useConfSections } from "../hooks"; //Кастомные хуки
|
||||
import { ActionMessage } from "./action_message"; //Сообщение с действиями
|
||||
import { SectionTab } from "./section_tab"; //Закладка раздела
|
||||
@ -57,13 +57,13 @@ const Sections = ({ conf, onSectionChange, onSectionCountChange }) => {
|
||||
const [confDesc, sections, refreshSections, sectionsLoading, sectionsInit] = useConfSections(conf);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { setAppBarTitle } = useContext(ApplicationСtx);
|
||||
const { setAppBarTitle } = useContext(ApplicationCtx);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgWarn } = useContext(MessagingCtx);
|
||||
|
||||
//Выбор раздела
|
||||
const selectSection = useCallback(
|
||||
|
||||
@ -9,8 +9,8 @@
|
||||
|
||||
import { useState, useContext, useEffect } from "react"; //Классы React
|
||||
import { xml2JSON } from "../../core/utils"; //Вспомогательные функции
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//-----------
|
||||
//Тело модуля
|
||||
@ -34,7 +34,7 @@ const useConfSections = conf => {
|
||||
const [dataSections, setDataSections] = useState([]);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Обновление данных
|
||||
const doRefresh = () => setRefresh(true);
|
||||
@ -95,7 +95,7 @@ const useConfSectionMarks = (section, rowOrder = 0, columnOrder = 0) => {
|
||||
const [data, setData] = useState(null);
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Обновление данных
|
||||
const doRefresh = () => setRefresh(true);
|
||||
@ -152,7 +152,7 @@ const useConfSectionMarks = (section, rowOrder = 0, columnOrder = 0) => {
|
||||
//Работа со словарями
|
||||
const useDictionary = () => {
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDictionary } = useContext(ApplicationCtx);
|
||||
|
||||
//Выбор строки
|
||||
const selectRRPRow = (code, version, callBack) => {
|
||||
|
||||
@ -11,7 +11,7 @@ import React, { useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Typography, Grid, Paper } from "@mui/material"; //Интерфейсные элементы
|
||||
import { P8PChart, useP8PChart } from "../../components/p8p_chart"; //График
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -35,7 +35,7 @@ const Chart = ({ title }) => {
|
||||
const { chart, isDataLoaded } = useP8PChart({ stored: "PKG_P8PANELS_SAMPLES.CHART" });
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowUnit } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowUnit } = useContext(ApplicationCtx);
|
||||
|
||||
//Отработка нажатия на график
|
||||
const handleChartClick = ({ item }) => {
|
||||
|
||||
@ -28,7 +28,7 @@ import { formatDateRF, hasValue } from "../../core/utils"; //Вспомогат
|
||||
import { APP_BAR_HEIGHT } from "../../components/p8p_app_workspace"; //Заголовок страницы
|
||||
import { P8PCyclogram, useP8PCyclogram } from "../../components/p8p_cyclogram"; //Циклограмма
|
||||
import { P8P_CYCLOGRAM_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -78,7 +78,7 @@ const CustomTaskDialog = ({ task, ident, onReload, close }) => {
|
||||
const textType = task.type === 0 ? "Задачи проекта" : task.type === 1 ? "Этап проекта" : "Работа проекта";
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При необходимости перезагрузить данные
|
||||
const handleReload = useCallback(() => onReload && onReload(), [onReload]);
|
||||
@ -230,7 +230,7 @@ const Cyclogram = ({ title }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//При подключении компонента к странице
|
||||
useEffect(() => {
|
||||
|
||||
@ -12,7 +12,7 @@ import PropTypes from "prop-types"; //Контроль свойств компо
|
||||
import { Typography, Grid, Stack, Icon, Box, Button } from "@mui/material"; //Интерфейсные элементы
|
||||
import { P8PDataGrid, P8P_DATA_GRID_SIZE, useP8PDataGrid } from "../../components/p8p_data_grid"; //Таблица данных
|
||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
import { APP_STYLES } from "../../../app.styles"; //Типовые стили
|
||||
|
||||
//---------
|
||||
@ -91,7 +91,7 @@ const DataGrid = ({ title }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDocument } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDocument } = useContext(ApplicationCtx);
|
||||
|
||||
//При нажатии на копку контрагента
|
||||
const handleAgnButtonClicked = agnCode => pOnlineShowDocument({ unitCode: "AGNLIST", document: agnCode, inRnParameter: "in_AGNABBR" });
|
||||
|
||||
@ -14,7 +14,7 @@ import { formatDateRF, hasValue } from "../../core/utils"; //Вспомогат
|
||||
import { APP_BAR_HEIGHT } from "../../components/p8p_app_workspace"; //Заголовок страницы
|
||||
import { P8PGantt, useP8PGantt } from "../../components/p8p_gantt"; //Диаграмма Ганта
|
||||
import { P8P_GANTT_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -110,7 +110,7 @@ const Gantt = ({ title }) => {
|
||||
});
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Изменение данных диаграммы
|
||||
const modifyData = useCallback(
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Typography, Stack, Divider } from "@mui/material"; //Интерфейсные элементы
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { P8P_INDICATOR_VARIANT, P8P_INDICATOR_STATE, P8PIndicator, useP8PIndicator } from "../../components/p8p_indicator"; //Индикатор
|
||||
|
||||
//---------
|
||||
@ -34,7 +34,7 @@ const Indicator = ({ title }) => {
|
||||
const { indicator, isDataLoaded } = useP8PIndicator({ stored: "PKG_P8PANELS_SAMPLES.INDICATOR" });
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgInfo } = useContext(MessagingСtx);
|
||||
const { showMsgInfo } = useContext(MessagingCtx);
|
||||
|
||||
//Генерация содержимого
|
||||
return (
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Typography, Button } from "@mui/material"; //Интерфейсные элементы
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -29,7 +29,7 @@ const STYLES = {
|
||||
//Пример: Индикатор процесса
|
||||
const Loader = ({ title }) => {
|
||||
//Подключение к контексту сообщений
|
||||
const { showLoader, hideLoader } = useContext(MessagingСtx);
|
||||
const { showLoader, hideLoader } = useContext(MessagingCtx);
|
||||
|
||||
//Генерация содержимого
|
||||
return (
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useContext, useState } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Typography, Divider, Button } from "@mui/material"; //Интерфейсные элементы
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -33,7 +33,7 @@ const Messages = ({ title }) => {
|
||||
const [state, setState] = useState({ inlineErr: true, inlineWarn: true, inlineInfo: true });
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgErr, showMsgWarn, showMsgInfo, InlineMsgErr, InlineMsgInfo, InlineMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgErr, showMsgWarn, showMsgInfo, InlineMsgErr, InlineMsgInfo, InlineMsgWarn } = useContext(MessagingCtx);
|
||||
|
||||
//Генерация содержимого
|
||||
return (
|
||||
|
||||
@ -10,9 +10,9 @@
|
||||
import React, { useEffect, useContext, useCallback, useState } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Typography, Grid, List, ListItemButton, ListItem, ListItemText, IconButton, Icon, Button, TextField, Box } from "@mui/material"; //Интерфейсные элементы
|
||||
import { BackEndСtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingСtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { BackEndCtx } from "../../context/backend"; //Контекст взаимодействия с сервером
|
||||
import { MessagingCtx } from "../../context/messaging"; //Контекст сообщений
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -41,13 +41,13 @@ const Mui = ({ title }) => {
|
||||
const [agentForm, setAgentForm] = useState({ agnAbbr: "", agnName: "" });
|
||||
|
||||
//Подключение к контексту взаимодействия с сервером
|
||||
const { executeStored } = useContext(BackEndСtx);
|
||||
const { executeStored } = useContext(BackEndCtx);
|
||||
|
||||
//Подключение к контексту сообщений
|
||||
const { showMsgWarn } = useContext(MessagingСtx);
|
||||
const { showMsgWarn } = useContext(MessagingCtx);
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowDocument } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowDocument } = useContext(ApplicationCtx);
|
||||
|
||||
//Загрузка списка контрагентов
|
||||
const agentsGet = useCallback(async () => {
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
import React, { useState, useContext } from "react"; //Классы React
|
||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||
import { Typography, Button, Divider } from "@mui/material"; //Интерфейсные элементы
|
||||
import { ApplicationСtx } from "../../context/application"; //Контекст приложения
|
||||
import { ApplicationCtx } from "../../context/application"; //Контекст приложения
|
||||
|
||||
//---------
|
||||
//Константы
|
||||
@ -33,7 +33,7 @@ const P8Online = ({ title }) => {
|
||||
const [agent, setAgent] = useState("");
|
||||
|
||||
//Подключение к контексту приложения
|
||||
const { pOnlineShowUnit, pOnlineShowTab, pOnlineShowDocument, pOnlineShowDictionary } = useContext(ApplicationСtx);
|
||||
const { pOnlineShowUnit, pOnlineShowTab, pOnlineShowDocument, pOnlineShowDictionary } = useContext(ApplicationCtx);
|
||||
|
||||
//Генерация содержимого
|
||||
return (
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user