From f4912d20f2e3321153512a3d155bc95ff2c910a3 Mon Sep 17 00:00:00 2001 From: Mikhail Chechnev Date: Wed, 24 Apr 2024 15:02:54 +0300 Subject: [PATCH] =?UTF-8?q?WEB=20APP:=20=D0=A1=D0=B2=D0=B5=D0=B6=D0=B0?= =?UTF-8?q?=D1=8F=20=D1=81=D0=B1=D0=BE=D1=80=D0=BA=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dist/p8-panels.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dist/p8-panels.js b/dist/p8-panels.js index 14876b9..7fa2530 100644 --- a/dist/p8-panels.js +++ b/dist/p8-panels.js @@ -3502,7 +3502,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EqsPrfrm: () => (/* binding */ EqsPrfrm)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Dialog/Dialog.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/DialogTitle/DialogTitle.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/IconButton/IconButton.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Icon/Icon.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/DialogContent/DialogContent.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Paper/Paper.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Box/Box.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/FormControl/FormControl.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/InputLabel/InputLabel.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/OutlinedInput/OutlinedInput.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/InputAdornment/InputAdornment.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/FormHelperText/FormHelperText.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Grid/Grid.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Select/Select.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/MenuItem/MenuItem.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/DialogActions/DialogActions.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Button/Button.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Link/Link.js\");\n/* harmony import */ var _components_p8p_data_grid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../components/p8p_data_grid */ \"./app/components/p8p_data_grid.js\");\n/* harmony import */ var _config_wrapper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../config_wrapper */ \"./app/config_wrapper.js\");\n/* harmony import */ var _context_backend__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../context/backend */ \"./app/context/backend.js\");\n/* harmony import */ var _context_application__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../context/application */ \"./app/context/application.js\");\n/* harmony import */ var _context_messaging__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../context/messaging */ \"./app/context/messaging.js\");\n/* harmony import */ var _layouts__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./layouts */ \"./app/panels/eqs_prfrm/layouts.js\");\n/* harmony import */ var _app_text__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../app.text */ \"./app.text.js\");\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n/*\r\n Парус 8 - Панели мониторинга - ТОиР - Выполнение работ\r\n Панель мониторинга: Корневая панель выполнения работ\r\n*/\n\n//---------------------\n//Подключение библиотек\n//---------------------\n\n //Классы React\n\n //Таблица данных\n //Подключение компонентов к настройкам приложения\n //Контекст взаимодействия с сервером\n //Контекст приложения\n //Контекст сообщений\n //Дополнительная разметка и вёрстка клиентских элементов\n //Тектовые ресурсы и константы\n\n//-----------\n//Тело модуля\n//-----------\n\n//Корневая панель выполнения работ\nconst EqsPrfrm = () => {\n //Собственное состояние - таблица данных\n const [dataGrid, setDataGrid] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({\n dataLoaded: false,\n columnsDef: [],\n groups: [],\n rows: [],\n reload: false\n });\n\n // Состояние информации о трудоёмкости\n const [info, setInfo] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({\n cntP: 0,\n sumP: 0,\n cntF: 0,\n sumF: 0\n });\n\n // Состояние фильтра (для отладки)\n // const [filter, setFilter] = useState({\n // belong: \"Демопример\",\n // prodObj: \"Карьер\",\n // techServ: \"\",\n // respDep: \"\",\n // fromMonth: 1,\n // fromYear: 2024,\n // toMonth: 12,\n // toYear: 2024\n // });\n\n // Состояние фильтра\n const [filter, setFilter] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({\n belong: \"\",\n prodObj: \"\",\n techServ: \"\",\n respDep: \"\",\n fromMonth: 1,\n fromYear: 1990,\n toMonth: 1,\n toYear: 1990\n });\n // Состояние открытия фильтра\n const [filterOpen, setFilterOpen] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(true);\n // Состояние данных по умолчанию для фильтра (true - для отладки)\n const [defaultLoaded, setDefaultLoaded] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);\n // Состояние хранения копии фильтра\n const [filterCopy, setFilterCopy] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({\n ...filter\n });\n // Состояние ограничения редактирования фильтра\n const [filterLock, setFilterLock] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);\n\n // Состояние ячейки заголовка даты (по раскрытию/скрытию)\n const [activeRef, setActiveRef] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)();\n // Состояние актуальности ссылки на ячейку\n const [refIsDeprecated, setRidFlag] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(true);\n\n //Подключение к контексту приложения\n const {\n pOnlineShowDictionary,\n pOnlineShowUnit\n } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_application__WEBPACK_IMPORTED_MODULE_4__[\"ApplicationСtx\"]);\n\n //Подключение к контексту взаимодействия с сервером\n const {\n executeStored\n } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_backend__WEBPACK_IMPORTED_MODULE_3__[\"BackEndСtx\"]);\n\n //Подключение к контексту сообщений\n const {\n showMsgErr\n } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_messaging__WEBPACK_IMPORTED_MODULE_5__[\"MessagingСtx\"]);\n\n //Загрузка данных таблицы с сервера\n const loadData = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(async () => {\n if (dataGrid.reload) {\n const data = await executeStored({\n stored: \"PKG_P8PANELS_EQUIPSRV.EQUIPSRV_GRID\",\n args: {\n SBELONG: filter.belong,\n SPRODOBJ: filter.prodObj,\n STECHSERV: filter.techServ,\n SRESPDEP: filter.respDep,\n NFROMMONTH: filter.fromMonth,\n NFROMYEAR: filter.fromYear,\n NTOMONTH: filter.toMonth,\n NTOYEAR: filter.toYear\n },\n respArg: \"COUT\",\n attributeValueProcessor: (name, val) => [\"caption\", \"name\", \"parent\"].includes(name) ? undefined : val\n });\n let cP = 0;\n let sP = 0;\n let cF = 0;\n let sF = 0;\n let properties = [];\n if (data.XROWS != null) {\n data.XROWS.map(row => {\n properties = [];\n Object.entries(row).forEach(([key, value]) => properties.push({\n name: key,\n data: value\n }));\n let info2 = properties.find(element => {\n return element.name === \"SINFO2\";\n });\n if (info2 != undefined) {\n if (info2.data == \"План\") {\n properties.map(p => {\n if (_layouts__WEBPACK_IMPORTED_MODULE_6__.DAY_NAME_REG_EXP.test(p.name)) cP = cP + 1;\n });\n } else if (info2.data == \"Факт\") {\n properties.map(p => {\n if (_layouts__WEBPACK_IMPORTED_MODULE_6__.DAY_NAME_REG_EXP.test(p.name)) cF = cF + 1;\n });\n }\n } else {\n properties.map(p => {\n if (_layouts__WEBPACK_IMPORTED_MODULE_6__.MONTH_NAME_REG_EXP.test(p.name)) {\n let str = p.data;\n let m = [];\n let i = 0;\n while ((m = _layouts__WEBPACK_IMPORTED_MODULE_6__.DIGITS_REG_EXP.exec(str)) != null) {\n if (i == 0) sP = sP + Number(m[0].replace(\",\", \".\"));else {\n sF = sF + Number(m[0].replace(\",\", \".\"));\n }\n i++;\n }\n }\n });\n }\n });\n }\n setInfo({\n cntP: cP,\n sumP: sP,\n cntF: cF,\n sumF: sF\n });\n setDataGrid(pv => ({\n ...pv,\n columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,\n rows: [...(data.XROWS || [])],\n groups: [...(data.XGROUPS || [])],\n dataLoaded: true,\n reload: false\n }));\n }\n }, [dataGrid.reload, filter, executeStored]);\n\n //Загрузка значений фильра по умолчанию\n const loadDefaultFilter = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(async () => {\n const data = await executeStored({\n stored: \"PKG_P8PANELS_EQUIPSRV.GET_DEFAULT_FP\",\n respArg: \"COUT\"\n });\n setFilter(pv => ({\n ...pv,\n belong: data.JURPERS,\n fromMonth: data.MONTH,\n fromYear: data.YEAR,\n toMonth: data.MONTH,\n toYear: data.YEAR\n }));\n setDefaultLoaded(true);\n }, [executeStored]);\n\n //пользовательский параметр JuridicalPerson системы\n // const getJurPers = useCallback(async () => {\n // const data = await executeStored({\n // stored: \"PKG_P8PANELS_EQUIPSRV.GET_JUR_PERS_PRM\",\n // respArg: \"CRES\"\n // });\n // setFilter(pv => ({ ...pv, belong: data }));\n // }, [executeStored]);\n\n // Отбор документа (ТОиР или Ремонтных ведомостей) по ячейке даты\n const showEquipSrv = async ({\n date,\n workType,\n info\n }) => {\n const [techName, servKind] = info.split(\"_\");\n let type;\n if (workType == \"План\") type = 0;else type = 1;\n let [year, month, day] = date.substring(1).split(\"_\");\n\n //if (day == undefined) day = null;\n\n const data = await executeStored({\n stored: \"PKG_P8PANELS_EQUIPSRV.SELECT_EQUIPSRV\",\n args: {\n SBELONG: filter.belong,\n SPRODOBJ: filter.prodObj,\n STECHSERV: filter.techServ ? filter.techServ : null,\n SRESPDEP: filter.respDep ? filter.respDep : null,\n STECHNAME: techName,\n SSRVKIND: servKind,\n NYEAR: Number(year),\n NMONTH: Number(month),\n NDAY: day ? Number(day) : null,\n NWORKTYPE: type\n }\n });\n if (data.NIDENT) {\n if (type == 0) pOnlineShowUnit({\n unitCode: \"EquipTechServices\",\n inputParameters: [{\n name: \"in_SelectList_Ident\",\n value: data.NIDENT\n }]\n });else pOnlineShowUnit({\n unitCode: \"EquipRepairSheets\",\n inputParameters: [{\n name: \"in_Ident\",\n value: data.NIDENT\n }]\n });\n } else showMsgErr(_app_text__WEBPACK_IMPORTED_MODULE_7__.TEXTS.NO_DATA_FOUND);\n };\n\n // Открыть фильтр\n const openFilter = () => {\n setFilterOpen(true);\n };\n\n // Закрыть фильтр\n const closeFilter = e => {\n if (filterLock && e != undefined) setFilter(filterCopy);\n setFilterOpen(false);\n };\n\n // Очистить фильтр\n const clearFilter = () => {\n setFilter({\n belong: \"\",\n prodObj: \"\",\n techServ: \"\",\n respDep: \"\",\n fromMonth: \"\",\n fromYear: \"\",\n toMonth: \"\",\n toYear: \"\"\n });\n };\n\n // Отработка события скрытия/раскрытия ячейки даты\n const handleClick = (e, ref) => {\n const curCell = ref.current;\n if (e.target.type == \"button\" || e.target.offsetParent.type == \"button\") {\n setActiveRef(curCell);\n setRidFlag(false);\n }\n };\n\n // При необходимости обновить данные таблицы\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {\n loadData();\n }, [loadData, dataGrid.reload]);\n\n // При открытом фильтре\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {\n if (filterOpen) {\n {\n setFilterCopy({\n ...filter\n });\n if (!defaultLoaded) loadDefaultFilter();\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filterOpen]);\n\n // При нажатии скрытии/раскрытии ячейки даты, фокус на неё\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {\n if (!refIsDeprecated) {\n if (activeRef) {\n var cellRect = activeRef.getBoundingClientRect();\n //console.log(window.scrollX + cellRect.left + activeRef.clientWidth / 2 - window.innerWidth / 2);\n window.scrollTo(window.scrollX + cellRect.left + activeRef.clientWidth / 2 - window.innerWidth / 2, 0);\n setRidFlag(true);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [refIsDeprecated]);\n let yearArray = [];\n const monthArray = [\"Январь\", \"Февраль\", \"Март\", \"Апрель\", \"Май\", \"Июнь\", \"Июль\", \"Август\", \"Сентябрь\", \"Октябрь\", \"Ноябрь\", \"Декабрь\"];\n let today = new Date();\n\n // Получение списка лет\n const getYearArray = () => {\n for (let i = 1990; i <= today.getFullYear(); i++) {\n yearArray.push(i);\n }\n };\n\n //Генерация содержимого\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", null, getYearArray(), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_8__[\"default\"], {\n open: filterOpen,\n onClose: closeFilter\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_9__[\"default\"], null, \"\\u0424\\u0438\\u043B\\u044C\\u0442\\u0440 \\u043E\\u0442\\u0431\\u043E\\u0440\\u0430\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n \"aria-label\": \"close\",\n onClick: closeFilter,\n sx: {\n position: \"absolute\",\n right: 8,\n top: 8,\n color: theme => theme.palette.grey[500]\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_11__[\"default\"], null, \"close\")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_12__[\"default\"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_13__[\"default\"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n component: \"section\",\n sx: {\n p: 1\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n readOnly: true,\n fullWidth: true,\n variant: \"outlined\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n htmlFor: \"belong-outlined\"\n }, \"\\u041F\\u0440\\u0438\\u043D\\u0430\\u0434\\u043B\\u0435\\u0436\\u043D\\u043E\\u0441\\u0442\\u044C\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_17__[\"default\"], {\n error: filter.belong ? false : true,\n id: \"belong-outlined\",\n value: filter.belong,\n endAdornment: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_18__[\"default\"], {\n position: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n \"aria-label\": \"belong select\",\n onClick: () => {\n pOnlineShowDictionary({\n unitCode: \"JuridicalPersons\",\n callBack: res => res.success === true ? setFilter(pv => ({\n ...pv,\n belong: res.outParameters.out_CODE\n })) : null\n });\n },\n edge: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_11__[\"default\"], null, \"list\"))),\n \"aria-describedby\": \"belong-outlined-helper-text\",\n label: \"\\u041F\\u0440\\u0438\\u043D\\u0430\\u0434\\u043B\\u0435\\u0436\\u043D\\u043E\\u0441\\u0442\\u044C\"\n }), filter.belong ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_19__[\"default\"], {\n id: \"belong-outlined-helper-text\",\n sx: {\n color: \"red\"\n }\n }, \"*\\u041E\\u0431\\u044F\\u0437\\u0430\\u0442\\u0435\\u043B\\u044C\\u043D\\u043E\\u0435 \\u043F\\u043E\\u043B\\u0435\"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n component: \"section\",\n sx: {\n p: 1\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n readOnly: true,\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n htmlFor: \"prodObj-outlined\"\n }, \"\\u041F\\u0440\\u043E\\u0438\\u0437\\u0432\\u043E\\u0434\\u0441\\u0442\\u0432\\u0435\\u043D\\u043D\\u044B\\u0439 \\u043E\\u0431\\u044A\\u0435\\u043A\\u0442\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_17__[\"default\"], {\n error: filter.prodObj ? false : true,\n id: \"prodObj-outlined\",\n value: filter.prodObj,\n endAdornment: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_18__[\"default\"], {\n position: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n \"aria-label\": \"prodObj select\",\n onClick: () => {\n pOnlineShowDictionary({\n unitCode: \"EquipConfiguration\",\n callBack: res => res.success === true ? setFilter(pv => ({\n ...pv,\n prodObj: res.outParameters.out_CODE\n })) : null\n });\n },\n edge: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_11__[\"default\"], null, \"list\"))),\n \"aria-describedby\": \"prodObj-outlined-helper-text\",\n label: \"\\u041F\\u0440\\u043E\\u0438\\u0437\\u0432\\u043E\\u0434\\u0441\\u0442\\u0432\\u0435\\u043D\\u043D\\u044B\\u0439 \\u043E\\u0431\\u044A\\u0435\\u043A\\u0442\"\n }), filter.prodObj ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_19__[\"default\"], {\n id: \"prodObj-outlined-helper-text\",\n sx: {\n color: \"red\"\n }\n }, \"*\\u041E\\u0431\\u044F\\u0437\\u0430\\u0442\\u0435\\u043B\\u044C\\u043D\\u043E\\u0435 \\u043F\\u043E\\u043B\\u0435\"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n component: \"section\",\n sx: {\n p: 1\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n readOnly: true,\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n htmlFor: \"techServ-outlined\"\n }, \"\\u0422\\u0435\\u0445\\u043D\\u0438\\u0447\\u0435\\u0441\\u043A\\u0430\\u044F \\u0441\\u043B\\u0443\\u0436\\u0431\\u0430\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_17__[\"default\"], {\n id: \"techServ-outlined\",\n value: filter.techServ,\n endAdornment: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_18__[\"default\"], {\n position: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n \"aria-label\": \"techServ select\",\n onClick: () => {\n pOnlineShowDictionary({\n unitCode: \"INS_DEPARTMENT\",\n callBack: res => res.success === true ? setFilter(pv => ({\n ...pv,\n techServ: res.outParameters.out_CODE\n })) : null\n });\n },\n edge: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_11__[\"default\"], null, \"list\"))),\n label: \"\\u0422\\u0435\\u0445\\u043D\\u0438\\u0447\\u0435\\u0441\\u043A\\u0430\\u044F \\u0441\\u043B\\u0443\\u0436\\u0431\\u0430\"\n }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n component: \"section\",\n sx: {\n p: 1\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n readOnly: true,\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n htmlFor: \"respDep-outlined\"\n }, \"\\u041E\\u0442\\u0432\\u0435\\u0442\\u0441\\u0442\\u0432\\u0435\\u043D\\u043D\\u043E\\u0435 \\u043F\\u043E\\u0434\\u0440\\u0430\\u0437\\u0434\\u0435\\u043B\\u0435\\u043D\\u0438\\u0435\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_17__[\"default\"], {\n id: \"respDep-outlined\",\n value: filter.respDep,\n endAdornment: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_18__[\"default\"], {\n position: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n \"aria-label\": \"respDep select\",\n onClick: () => {\n pOnlineShowDictionary({\n unitCode: \"INS_DEPARTMENT\",\n callBack: res => res.success === true ? setFilter(pv => ({\n ...pv,\n respDep: res.outParameters.out_CODE\n })) : null\n });\n },\n edge: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_11__[\"default\"], null, \"list\"))),\n label: \"\\u041E\\u0442\\u0432\\u0435\\u0442\\u0441\\u0442\\u0432\\u0435\\u043D\\u043D\\u043E\\u0435 \\u043F\\u043E\\u0434\\u0440\\u0430\\u0437\\u0434\\u0435\\u043B\\u0435\\u043D\\u0438\\u0435\"\n }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n component: \"section\",\n sx: {\n p: 1\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n container: true,\n spacing: 2\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n textAlign: \"center\",\n item: true,\n xs: 4\n }, \"\\u041D\\u0430\\u0447\\u0430\\u043B\\u043E \\u043F\\u0435\\u0440\\u0438\\u043E\\u0434\\u0430:\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n item: true,\n xs: 4\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n id: \"from-month-select-label\"\n }, \"\\u041C\\u0435\\u0441\\u044F\\u0446\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_21__[\"default\"], {\n error: filter.fromMonth ? false : true,\n labelId: \"from-month-select-label\",\n id: \"from-month-select\",\n value: filter.fromMonth,\n \"aria-describedby\": \"from-month-select-helper-text\",\n label: \"\\u041C\\u0435\\u0441\\u044F\\u0446\",\n onChange: e => setFilter(pv => ({\n ...pv,\n fromMonth: e.target.value\n }))\n }, monthArray.map((item, i) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_22__[\"default\"], {\n key: i + 1,\n value: i + 1\n }, item))), filter.fromMonth ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_19__[\"default\"], {\n id: \"from-month-select-helper-text\",\n sx: {\n color: \"red\"\n }\n }, \"*\\u041E\\u0431\\u044F\\u0437\\u0430\\u0442\\u0435\\u043B\\u044C\\u043D\\u043E\\u0435 \\u043F\\u043E\\u043B\\u0435\"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n item: true,\n xs: 4\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n id: \"from-year-select-label\"\n }, \"\\u0413\\u043E\\u0434\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_21__[\"default\"], {\n error: filter.fromYear ? false : true,\n labelId: \"from-year-select-label\",\n id: \"from-year-select\",\n value: filter.fromYear,\n \"aria-describedby\": \"from-year-select-helper-text\",\n label: \"\\u0413\\u043E\\u0434\",\n onChange: e => setFilter(pv => ({\n ...pv,\n fromYear: e.target.value\n }))\n }, yearArray.map((item, i) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_22__[\"default\"], {\n key: i,\n value: item\n }, item))), filter.fromYear ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_19__[\"default\"], {\n id: \"from-year-select-helper-text\",\n sx: {\n color: \"red\"\n }\n }, \"*\\u041E\\u0431\\u044F\\u0437\\u0430\\u0442\\u0435\\u043B\\u044C\\u043D\\u043E\\u0435 \\u043F\\u043E\\u043B\\u0435\"))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n component: \"section\",\n sx: {\n p: 1\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n container: true,\n spacing: 2\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n textAlign: \"center\",\n item: true,\n xs: 4\n }, \"\\u041A\\u043E\\u043D\\u0435\\u0446 \\u043F\\u0435\\u0440\\u0438\\u043E\\u0434\\u0430:\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n item: true,\n xs: 4\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n id: \"to-month-select-label\"\n }, \"\\u041C\\u0435\\u0441\\u044F\\u0446\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_21__[\"default\"], {\n error: filter.toMonth ? false : true,\n labelId: \"to-month-select-label\",\n id: \"to-month-select\",\n value: filter.toMonth,\n \"aria-describedby\": \"to-month-select-helper-text\",\n label: \"\\u041C\\u0435\\u0441\\u044F\\u0446\",\n onChange: e => setFilter(pv => ({\n ...pv,\n toMonth: e.target.value\n }))\n }, monthArray.map((item, i) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_22__[\"default\"], {\n key: i + 1,\n value: i + 1\n }, item))), filter.toMonth ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_19__[\"default\"], {\n id: \"to-month-select-helper-text\",\n sx: {\n color: \"red\"\n }\n }, \"*\\u041E\\u0431\\u044F\\u0437\\u0430\\u0442\\u0435\\u043B\\u044C\\u043D\\u043E\\u0435 \\u043F\\u043E\\u043B\\u0435\"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n item: true,\n xs: 4\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n id: \"to-year-select-label\"\n }, \"\\u0413\\u043E\\u0434\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_21__[\"default\"], {\n error: filter.toYear ? false : true,\n labelId: \"to-year-select-label\",\n id: \"to-year-select\",\n value: filter.toYear,\n \"aria-describedby\": \"to-year-select-helper-text\",\n label: \"\\u0413\\u043E\\u0434\",\n onChange: e => setFilter(pv => ({\n ...pv,\n toYear: e.target.value\n }))\n }, yearArray.map((item, i) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_22__[\"default\"], {\n key: i,\n value: item\n }, item))), filter.toYear ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_19__[\"default\"], {\n id: \"to-year-select-helper-text\",\n sx: {\n color: \"red\"\n }\n }, \"*\\u041E\\u0431\\u044F\\u0437\\u0430\\u0442\\u0435\\u043B\\u044C\\u043D\\u043E\\u0435 \\u043F\\u043E\\u043B\\u0435\"))))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_23__[\"default\"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_24__[\"default\"], {\n variant: \"contained\",\n disabled: filter.belong && filter.prodObj && filter.fromMonth && filter.fromYear && filter.toMonth && filter.toYear ? false : true,\n onClick: () => {\n setFilterLock(true);\n setDataGrid({\n reload: true\n });\n closeFilter();\n }\n }, \"\\u0421\\u0444\\u043E\\u0440\\u043C\\u0438\\u0440\\u043E\\u0432\\u0430\\u0442\\u044C\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_24__[\"default\"], {\n variant: \"contained\",\n onClick: clearFilter\n }, \"\\u041E\\u0447\\u0438\\u0441\\u0442\\u0438\\u0442\\u044C\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_24__[\"default\"], {\n variant: \"contained\",\n onClick: () => {\n setFilter(filterCopy);\n }\n }, \"\\u041E\\u0442\\u043C\\u0435\\u043D\\u0430\"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_25__[\"default\"], {\n component: \"button\",\n variant: \"body2\",\n textAlign: \"left\",\n onClick: openFilter\n }, \"\\u0424\\u0438\\u043B\\u044C\\u0442\\u0440 \\u043E\\u0442\\u0431\\u043E\\u0440\\u0430: \", filter.belong ? `Принадлежность: ${filter.belong}` : \"\", \" \", filter.prodObj ? `Производственный объект: ${filter.prodObj}` : \"\", \" \", filter.techServ ? `Техническая служба: ${filter.techServ}` : \"\", \" \", filter.respDep ? `Ответственное подразделение: ${filter.respDep}` : \"\", \" \", filter.fromMonth && filter.fromYear ? `Начало периода: ${filter.fromMonth < 10 ? \"0\" + filter.fromMonth : filter.fromMonth}.${filter.fromYear}` : \"\", \" \", filter.toMonth && filter.toYear ? `Конец периода: ${filter.toMonth < 10 ? \"0\" + filter.toMonth : filter.toMonth}.${filter.toYear}` : \"\"), dataGrid.dataLoaded ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_13__[\"default\"], {\n variant: \"outlined\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n container: true,\n spacing: 1\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n item: true,\n xs: 12\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n p: 1\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_components_p8p_data_grid__WEBPACK_IMPORTED_MODULE_1__.P8PDataGrid, _extends({}, _config_wrapper__WEBPACK_IMPORTED_MODULE_2__.P8P_DATA_GRID_CONFIG_PROPS, {\n columnsDef: dataGrid.columnsDef,\n groups: dataGrid.groups,\n rows: dataGrid.rows,\n size: _components_p8p_data_grid__WEBPACK_IMPORTED_MODULE_1__.P8P_DATA_GRID_SIZE.LARGE,\n reloading: dataGrid.reload,\n headCellRender: prms => (0,_layouts__WEBPACK_IMPORTED_MODULE_6__.headCellRender)({\n ...prms\n }, handleClick, filter.techServ, info.cntP, info.sumP, info.cntF, info.sumF),\n dataCellRender: prms => (0,_layouts__WEBPACK_IMPORTED_MODULE_6__.dataCellRender)({\n ...prms\n }, showEquipSrv),\n groupCellRender: prms => (0,_layouts__WEBPACK_IMPORTED_MODULE_6__.groupCellRender)({\n ...prms\n }),\n showCellRightBorder: true\n })))))) : null);\n};\n\n//----------------\n//Интерфейс модуля\n//----------------\n\n\n\n//# sourceURL=webpack://parus_8_panels_plugin/./app/panels/eqs_prfrm/eqs_prfrm.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ EqsPrfrm: () => (/* binding */ EqsPrfrm)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Dialog/Dialog.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/DialogTitle/DialogTitle.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/IconButton/IconButton.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Icon/Icon.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/DialogContent/DialogContent.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Paper/Paper.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Box/Box.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/FormControl/FormControl.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/InputLabel/InputLabel.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/OutlinedInput/OutlinedInput.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/InputAdornment/InputAdornment.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/FormHelperText/FormHelperText.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Grid/Grid.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Select/Select.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/MenuItem/MenuItem.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/DialogActions/DialogActions.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Button/Button.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Link/Link.js\");\n/* harmony import */ var _components_p8p_data_grid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../components/p8p_data_grid */ \"./app/components/p8p_data_grid.js\");\n/* harmony import */ var _config_wrapper__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../config_wrapper */ \"./app/config_wrapper.js\");\n/* harmony import */ var _context_backend__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../context/backend */ \"./app/context/backend.js\");\n/* harmony import */ var _context_application__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../context/application */ \"./app/context/application.js\");\n/* harmony import */ var _context_messaging__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../context/messaging */ \"./app/context/messaging.js\");\n/* harmony import */ var _layouts__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./layouts */ \"./app/panels/eqs_prfrm/layouts.js\");\n/* harmony import */ var _app_text__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../app.text */ \"./app.text.js\");\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n/*\r\n Парус 8 - Панели мониторинга - ТОиР - Выполнение работ\r\n Панель мониторинга: Корневая панель выполнения работ\r\n*/\n\n//---------------------\n//Подключение библиотек\n//---------------------\n\n //Классы React\n\n //Таблица данных\n //Подключение компонентов к настройкам приложения\n //Контекст взаимодействия с сервером\n //Контекст приложения\n //Контекст сообщений\n //Дополнительная разметка и вёрстка клиентских элементов\n //Тектовые ресурсы и константы\n\n//-----------\n//Тело модуля\n//-----------\n\n//Корневая панель выполнения работ\nconst EqsPrfrm = () => {\n //Собственное состояние - таблица данных\n const [dataGrid, setDataGrid] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({\n dataLoaded: false,\n columnsDef: [],\n groups: [],\n rows: [],\n reload: false\n });\n\n // Состояние информации о трудоёмкости\n const [info, setInfo] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({\n cntP: 0,\n sumP: 0,\n cntF: 0,\n sumF: 0\n });\n\n // Состояние фильтра\n const [filter, setFilter] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({\n belong: \"\",\n prodObj: \"\",\n techServ: \"\",\n respDep: \"\",\n fromMonth: 1,\n fromYear: 1990,\n toMonth: 1,\n toYear: 1990\n });\n // Состояние открытия фильтра\n const [filterOpen, setFilterOpen] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(true);\n // Состояние данных по умолчанию для фильтра\n const [defaultLoaded, setDefaultLoaded] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);\n // Состояние хранения копии фильтра\n const [filterCopy, setFilterCopy] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({\n ...filter\n });\n // Состояние ограничения редактирования фильтра\n const [filterLock, setFilterLock] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);\n\n // Состояние ячейки заголовка даты (по раскрытию/скрытию)\n const [activeRef, setActiveRef] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)();\n // Состояние актуальности ссылки на ячейку\n const [refIsDeprecated, setRidFlag] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(true);\n\n //Подключение к контексту приложения\n const {\n pOnlineShowDictionary,\n pOnlineShowUnit\n } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_application__WEBPACK_IMPORTED_MODULE_4__[\"ApplicationСtx\"]);\n\n //Подключение к контексту взаимодействия с сервером\n const {\n executeStored\n } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_backend__WEBPACK_IMPORTED_MODULE_3__[\"BackEndСtx\"]);\n\n //Подключение к контексту сообщений\n const {\n showMsgErr\n } = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_messaging__WEBPACK_IMPORTED_MODULE_5__[\"MessagingСtx\"]);\n\n //Загрузка данных таблицы с сервера\n const loadData = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(async () => {\n if (dataGrid.reload) {\n const data = await executeStored({\n stored: \"PKG_P8PANELS_EQUIPSRV.EQUIPSRV_GRID\",\n args: {\n SBELONG: filter.belong,\n SPRODOBJ: filter.prodObj,\n STECHSERV: filter.techServ,\n SRESPDEP: filter.respDep,\n NFROMMONTH: filter.fromMonth,\n NFROMYEAR: filter.fromYear,\n NTOMONTH: filter.toMonth,\n NTOYEAR: filter.toYear\n },\n respArg: \"COUT\",\n attributeValueProcessor: (name, val) => [\"caption\", \"name\", \"parent\"].includes(name) ? undefined : val\n });\n let cP = 0;\n let sP = 0;\n let cF = 0;\n let sF = 0;\n let properties = [];\n if (data.XROWS != null) {\n data.XROWS.map(row => {\n properties = [];\n Object.entries(row).forEach(([key, value]) => properties.push({\n name: key,\n data: value\n }));\n let info2 = properties.find(element => {\n return element.name === \"SINFO2\";\n });\n if (info2 != undefined) {\n if (info2.data == \"План\") {\n properties.map(p => {\n if (_layouts__WEBPACK_IMPORTED_MODULE_6__.DAY_NAME_REG_EXP.test(p.name)) cP = cP + 1;\n });\n } else if (info2.data == \"Факт\") {\n properties.map(p => {\n if (_layouts__WEBPACK_IMPORTED_MODULE_6__.DAY_NAME_REG_EXP.test(p.name)) cF = cF + 1;\n });\n }\n } else {\n properties.map(p => {\n if (_layouts__WEBPACK_IMPORTED_MODULE_6__.MONTH_NAME_REG_EXP.test(p.name)) {\n let str = p.data;\n let m = [];\n let i = 0;\n while ((m = _layouts__WEBPACK_IMPORTED_MODULE_6__.DIGITS_REG_EXP.exec(str)) != null) {\n if (i == 0) sP = sP + Number(m[0].replace(\",\", \".\"));else {\n sF = sF + Number(m[0].replace(\",\", \".\"));\n }\n i++;\n }\n }\n });\n }\n });\n }\n setInfo({\n cntP: cP,\n sumP: sP,\n cntF: cF,\n sumF: sF\n });\n setDataGrid(pv => ({\n ...pv,\n columnsDef: data.XCOLUMNS_DEF ? [...data.XCOLUMNS_DEF] : pv.columnsDef,\n rows: [...(data.XROWS || [])],\n groups: [...(data.XGROUPS || [])],\n dataLoaded: true,\n reload: false\n }));\n }\n }, [dataGrid.reload, filter, executeStored]);\n\n //Загрузка значений фильра по умолчанию\n const loadDefaultFilter = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(async () => {\n const data = await executeStored({\n stored: \"PKG_P8PANELS_EQUIPSRV.GET_DEFAULT_FP\",\n respArg: \"COUT\"\n });\n setFilter(pv => ({\n ...pv,\n belong: data.JURPERS,\n fromMonth: 1,\n fromYear: data.YEAR,\n toMonth: 12,\n toYear: data.YEAR\n }));\n setDefaultLoaded(true);\n }, [executeStored]);\n\n // Отбор документа (ТОиР или Ремонтных ведомостей) по ячейке даты\n const showEquipSrv = async ({\n date,\n workType,\n info\n }) => {\n const [techName, servKind] = info.split(\"_\");\n let type;\n if (workType == \"План\") type = 0;else type = 1;\n let [year, month, day] = date.substring(1).split(\"_\");\n\n //if (day == undefined) day = null;\n\n const data = await executeStored({\n stored: \"PKG_P8PANELS_EQUIPSRV.SELECT_EQUIPSRV\",\n args: {\n SBELONG: filter.belong,\n SPRODOBJ: filter.prodObj,\n STECHSERV: filter.techServ ? filter.techServ : null,\n SRESPDEP: filter.respDep ? filter.respDep : null,\n STECHNAME: techName,\n SSRVKIND: servKind,\n NYEAR: Number(year),\n NMONTH: Number(month),\n NDAY: day ? Number(day) : null,\n NWORKTYPE: type\n }\n });\n if (data.NIDENT) {\n if (type == 0) pOnlineShowUnit({\n unitCode: \"EquipTechServices\",\n inputParameters: [{\n name: \"in_SelectList_Ident\",\n value: data.NIDENT\n }]\n });else pOnlineShowUnit({\n unitCode: \"EquipRepairSheets\",\n inputParameters: [{\n name: \"in_Ident\",\n value: data.NIDENT\n }]\n });\n } else showMsgErr(_app_text__WEBPACK_IMPORTED_MODULE_7__.TEXTS.NO_DATA_FOUND);\n };\n\n // Открыть фильтр\n const openFilter = () => {\n setFilterOpen(true);\n };\n\n // Закрыть фильтр\n const closeFilter = e => {\n if (filterLock && e != undefined) setFilter(filterCopy);\n setFilterOpen(false);\n };\n\n // Очистить фильтр\n const clearFilter = () => {\n setFilter({\n belong: \"\",\n prodObj: \"\",\n techServ: \"\",\n respDep: \"\",\n fromMonth: \"\",\n fromYear: \"\",\n toMonth: \"\",\n toYear: \"\"\n });\n };\n\n // Отработка события скрытия/раскрытия ячейки даты\n const handleClick = (e, ref) => {\n const curCell = ref.current;\n if (e.target.type == \"button\" || e.target.offsetParent.type == \"button\") {\n setActiveRef(curCell);\n setRidFlag(false);\n }\n };\n\n // При необходимости обновить данные таблицы\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {\n loadData();\n }, [loadData, dataGrid.reload]);\n\n // При открытом фильтре\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {\n if (filterOpen) {\n {\n setFilterCopy({\n ...filter\n });\n if (!defaultLoaded) loadDefaultFilter();\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [filterOpen]);\n\n // При нажатии скрытии/раскрытии ячейки даты, фокус на неё\n (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {\n if (!refIsDeprecated) {\n if (activeRef) {\n var cellRect = activeRef.getBoundingClientRect();\n window.scrollTo(window.scrollX + cellRect.left + activeRef.clientWidth / 2 - window.innerWidth / 2, 0);\n setRidFlag(true);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [refIsDeprecated]);\n let yearArray = [];\n const monthArray = [\"Январь\", \"Февраль\", \"Март\", \"Апрель\", \"Май\", \"Июнь\", \"Июль\", \"Август\", \"Сентябрь\", \"Октябрь\", \"Ноябрь\", \"Декабрь\"];\n let today = new Date();\n\n // Получение списка лет\n const getYearArray = () => {\n for (let i = 1990; i <= today.getFullYear(); i++) {\n yearArray.push(i);\n }\n };\n\n //Генерация содержимого\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"div\", null, getYearArray(), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_8__[\"default\"], {\n open: filterOpen,\n onClose: closeFilter\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_9__[\"default\"], null, \"\\u0424\\u0438\\u043B\\u044C\\u0442\\u0440 \\u043E\\u0442\\u0431\\u043E\\u0440\\u0430\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n \"aria-label\": \"close\",\n onClick: closeFilter,\n sx: {\n position: \"absolute\",\n right: 8,\n top: 8,\n color: theme => theme.palette.grey[500]\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_11__[\"default\"], null, \"close\")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_12__[\"default\"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_13__[\"default\"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n component: \"section\",\n sx: {\n p: 1\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n readOnly: true,\n fullWidth: true,\n variant: \"outlined\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n htmlFor: \"belong-outlined\"\n }, \"\\u041F\\u0440\\u0438\\u043D\\u0430\\u0434\\u043B\\u0435\\u0436\\u043D\\u043E\\u0441\\u0442\\u044C\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_17__[\"default\"], {\n error: filter.belong ? false : true,\n id: \"belong-outlined\",\n value: filter.belong,\n endAdornment: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_18__[\"default\"], {\n position: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n \"aria-label\": \"belong select\",\n onClick: () => {\n pOnlineShowDictionary({\n unitCode: \"JuridicalPersons\",\n callBack: res => res.success === true ? setFilter(pv => ({\n ...pv,\n belong: res.outParameters.out_CODE\n })) : null\n });\n },\n edge: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_11__[\"default\"], null, \"list\"))),\n \"aria-describedby\": \"belong-outlined-helper-text\",\n label: \"\\u041F\\u0440\\u0438\\u043D\\u0430\\u0434\\u043B\\u0435\\u0436\\u043D\\u043E\\u0441\\u0442\\u044C\"\n }), filter.belong ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_19__[\"default\"], {\n id: \"belong-outlined-helper-text\",\n sx: {\n color: \"red\"\n }\n }, \"*\\u041E\\u0431\\u044F\\u0437\\u0430\\u0442\\u0435\\u043B\\u044C\\u043D\\u043E\\u0435 \\u043F\\u043E\\u043B\\u0435\"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n component: \"section\",\n sx: {\n p: 1\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n readOnly: true,\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n htmlFor: \"prodObj-outlined\"\n }, \"\\u041F\\u0440\\u043E\\u0438\\u0437\\u0432\\u043E\\u0434\\u0441\\u0442\\u0432\\u0435\\u043D\\u043D\\u044B\\u0439 \\u043E\\u0431\\u044A\\u0435\\u043A\\u0442\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_17__[\"default\"], {\n error: filter.prodObj ? false : true,\n id: \"prodObj-outlined\",\n value: filter.prodObj,\n endAdornment: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_18__[\"default\"], {\n position: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n \"aria-label\": \"prodObj select\",\n onClick: () => {\n pOnlineShowDictionary({\n unitCode: \"EquipConfiguration\",\n callBack: res => res.success === true ? setFilter(pv => ({\n ...pv,\n prodObj: res.outParameters.out_CODE\n })) : null\n });\n },\n edge: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_11__[\"default\"], null, \"list\"))),\n \"aria-describedby\": \"prodObj-outlined-helper-text\",\n label: \"\\u041F\\u0440\\u043E\\u0438\\u0437\\u0432\\u043E\\u0434\\u0441\\u0442\\u0432\\u0435\\u043D\\u043D\\u044B\\u0439 \\u043E\\u0431\\u044A\\u0435\\u043A\\u0442\"\n }), filter.prodObj ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_19__[\"default\"], {\n id: \"prodObj-outlined-helper-text\",\n sx: {\n color: \"red\"\n }\n }, \"*\\u041E\\u0431\\u044F\\u0437\\u0430\\u0442\\u0435\\u043B\\u044C\\u043D\\u043E\\u0435 \\u043F\\u043E\\u043B\\u0435\"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n component: \"section\",\n sx: {\n p: 1\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n readOnly: true,\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n htmlFor: \"techServ-outlined\"\n }, \"\\u0422\\u0435\\u0445\\u043D\\u0438\\u0447\\u0435\\u0441\\u043A\\u0430\\u044F \\u0441\\u043B\\u0443\\u0436\\u0431\\u0430\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_17__[\"default\"], {\n id: \"techServ-outlined\",\n value: filter.techServ,\n endAdornment: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_18__[\"default\"], {\n position: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n \"aria-label\": \"techServ select\",\n onClick: () => {\n pOnlineShowDictionary({\n unitCode: \"INS_DEPARTMENT\",\n callBack: res => res.success === true ? setFilter(pv => ({\n ...pv,\n techServ: res.outParameters.out_CODE\n })) : null\n });\n },\n edge: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_11__[\"default\"], null, \"list\"))),\n label: \"\\u0422\\u0435\\u0445\\u043D\\u0438\\u0447\\u0435\\u0441\\u043A\\u0430\\u044F \\u0441\\u043B\\u0443\\u0436\\u0431\\u0430\"\n }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n component: \"section\",\n sx: {\n p: 1\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n readOnly: true,\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n htmlFor: \"respDep-outlined\"\n }, \"\\u041E\\u0442\\u0432\\u0435\\u0442\\u0441\\u0442\\u0432\\u0435\\u043D\\u043D\\u043E\\u0435 \\u043F\\u043E\\u0434\\u0440\\u0430\\u0437\\u0434\\u0435\\u043B\\u0435\\u043D\\u0438\\u0435\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_17__[\"default\"], {\n id: \"respDep-outlined\",\n value: filter.respDep,\n endAdornment: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_18__[\"default\"], {\n position: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_10__[\"default\"], {\n \"aria-label\": \"respDep select\",\n onClick: () => {\n pOnlineShowDictionary({\n unitCode: \"INS_DEPARTMENT\",\n callBack: res => res.success === true ? setFilter(pv => ({\n ...pv,\n respDep: res.outParameters.out_CODE\n })) : null\n });\n },\n edge: \"end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_11__[\"default\"], null, \"list\"))),\n label: \"\\u041E\\u0442\\u0432\\u0435\\u0442\\u0441\\u0442\\u0432\\u0435\\u043D\\u043D\\u043E\\u0435 \\u043F\\u043E\\u0434\\u0440\\u0430\\u0437\\u0434\\u0435\\u043B\\u0435\\u043D\\u0438\\u0435\"\n }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n component: \"section\",\n sx: {\n p: 1\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n container: true,\n spacing: 2\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n textAlign: \"center\",\n item: true,\n xs: 4\n }, \"\\u041D\\u0430\\u0447\\u0430\\u043B\\u043E \\u043F\\u0435\\u0440\\u0438\\u043E\\u0434\\u0430:\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n item: true,\n xs: 4\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n id: \"from-month-select-label\"\n }, \"\\u041C\\u0435\\u0441\\u044F\\u0446\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_21__[\"default\"], {\n error: filter.fromMonth ? false : true,\n labelId: \"from-month-select-label\",\n id: \"from-month-select\",\n value: filter.fromMonth,\n \"aria-describedby\": \"from-month-select-helper-text\",\n label: \"\\u041C\\u0435\\u0441\\u044F\\u0446\",\n onChange: e => setFilter(pv => ({\n ...pv,\n fromMonth: e.target.value\n }))\n }, monthArray.map((item, i) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_22__[\"default\"], {\n key: i + 1,\n value: i + 1\n }, item))), filter.fromMonth ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_19__[\"default\"], {\n id: \"from-month-select-helper-text\",\n sx: {\n color: \"red\"\n }\n }, \"*\\u041E\\u0431\\u044F\\u0437\\u0430\\u0442\\u0435\\u043B\\u044C\\u043D\\u043E\\u0435 \\u043F\\u043E\\u043B\\u0435\"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n item: true,\n xs: 4\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n id: \"from-year-select-label\"\n }, \"\\u0413\\u043E\\u0434\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_21__[\"default\"], {\n error: filter.fromYear ? false : true,\n labelId: \"from-year-select-label\",\n id: \"from-year-select\",\n value: filter.fromYear,\n \"aria-describedby\": \"from-year-select-helper-text\",\n label: \"\\u0413\\u043E\\u0434\",\n onChange: e => setFilter(pv => ({\n ...pv,\n fromYear: e.target.value\n }))\n }, yearArray.map((item, i) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_22__[\"default\"], {\n key: i,\n value: item\n }, item))), filter.fromYear ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_19__[\"default\"], {\n id: \"from-year-select-helper-text\",\n sx: {\n color: \"red\"\n }\n }, \"*\\u041E\\u0431\\u044F\\u0437\\u0430\\u0442\\u0435\\u043B\\u044C\\u043D\\u043E\\u0435 \\u043F\\u043E\\u043B\\u0435\"))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n component: \"section\",\n sx: {\n p: 1\n }\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n container: true,\n spacing: 2\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n textAlign: \"center\",\n item: true,\n xs: 4\n }, \"\\u041A\\u043E\\u043D\\u0435\\u0446 \\u043F\\u0435\\u0440\\u0438\\u043E\\u0434\\u0430:\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n item: true,\n xs: 4\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n id: \"to-month-select-label\"\n }, \"\\u041C\\u0435\\u0441\\u044F\\u0446\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_21__[\"default\"], {\n error: filter.toMonth ? false : true,\n labelId: \"to-month-select-label\",\n id: \"to-month-select\",\n value: filter.toMonth,\n \"aria-describedby\": \"to-month-select-helper-text\",\n label: \"\\u041C\\u0435\\u0441\\u044F\\u0446\",\n onChange: e => setFilter(pv => ({\n ...pv,\n toMonth: e.target.value\n }))\n }, monthArray.map((item, i) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_22__[\"default\"], {\n key: i + 1,\n value: i + 1\n }, item))), filter.toMonth ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_19__[\"default\"], {\n id: \"to-month-select-helper-text\",\n sx: {\n color: \"red\"\n }\n }, \"*\\u041E\\u0431\\u044F\\u0437\\u0430\\u0442\\u0435\\u043B\\u044C\\u043D\\u043E\\u0435 \\u043F\\u043E\\u043B\\u0435\"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n item: true,\n xs: 4\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_15__[\"default\"], {\n fullWidth: true\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_16__[\"default\"], {\n id: \"to-year-select-label\"\n }, \"\\u0413\\u043E\\u0434\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_21__[\"default\"], {\n error: filter.toYear ? false : true,\n labelId: \"to-year-select-label\",\n id: \"to-year-select\",\n value: filter.toYear,\n \"aria-describedby\": \"to-year-select-helper-text\",\n label: \"\\u0413\\u043E\\u0434\",\n onChange: e => setFilter(pv => ({\n ...pv,\n toYear: e.target.value\n }))\n }, yearArray.map((item, i) => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_22__[\"default\"], {\n key: i,\n value: item\n }, item))), filter.toYear ? null : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_19__[\"default\"], {\n id: \"to-year-select-helper-text\",\n sx: {\n color: \"red\"\n }\n }, \"*\\u041E\\u0431\\u044F\\u0437\\u0430\\u0442\\u0435\\u043B\\u044C\\u043D\\u043E\\u0435 \\u043F\\u043E\\u043B\\u0435\"))))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_23__[\"default\"], null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_24__[\"default\"], {\n variant: \"contained\",\n disabled: filter.belong && filter.prodObj && filter.fromMonth && filter.fromYear && filter.toMonth && filter.toYear ? false : true,\n onClick: () => {\n setFilterLock(true);\n setDataGrid({\n reload: true\n });\n closeFilter();\n }\n }, \"\\u0421\\u0444\\u043E\\u0440\\u043C\\u0438\\u0440\\u043E\\u0432\\u0430\\u0442\\u044C\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_24__[\"default\"], {\n variant: \"contained\",\n onClick: clearFilter\n }, \"\\u041E\\u0447\\u0438\\u0441\\u0442\\u0438\\u0442\\u044C\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_24__[\"default\"], {\n variant: \"contained\",\n onClick: () => {\n setFilter(filterCopy);\n }\n }, \"\\u041E\\u0442\\u043C\\u0435\\u043D\\u0430\"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_25__[\"default\"], {\n component: \"button\",\n variant: \"body2\",\n textAlign: \"left\",\n onClick: openFilter\n }, \"\\u0424\\u0438\\u043B\\u044C\\u0442\\u0440 \\u043E\\u0442\\u0431\\u043E\\u0440\\u0430: \", filter.belong ? `Принадлежность: ${filter.belong}` : \"\", \" \", filter.prodObj ? `Производственный объект: ${filter.prodObj}` : \"\", \" \", filter.techServ ? `Техническая служба: ${filter.techServ}` : \"\", \" \", filter.respDep ? `Ответственное подразделение: ${filter.respDep}` : \"\", \" \", filter.fromMonth && filter.fromYear ? `Начало периода: ${filter.fromMonth < 10 ? \"0\" + filter.fromMonth : filter.fromMonth}.${filter.fromYear}` : \"\", \" \", filter.toMonth && filter.toYear ? `Конец периода: ${filter.toMonth < 10 ? \"0\" + filter.toMonth : filter.toMonth}.${filter.toYear}` : \"\"), dataGrid.dataLoaded ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_13__[\"default\"], {\n variant: \"outlined\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n container: true,\n spacing: 1\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_20__[\"default\"], {\n item: true,\n xs: 12\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_14__[\"default\"], {\n p: 1\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_components_p8p_data_grid__WEBPACK_IMPORTED_MODULE_1__.P8PDataGrid, _extends({}, _config_wrapper__WEBPACK_IMPORTED_MODULE_2__.P8P_DATA_GRID_CONFIG_PROPS, {\n columnsDef: dataGrid.columnsDef,\n groups: dataGrid.groups,\n rows: dataGrid.rows,\n size: _components_p8p_data_grid__WEBPACK_IMPORTED_MODULE_1__.P8P_DATA_GRID_SIZE.LARGE,\n reloading: dataGrid.reload,\n headCellRender: prms => (0,_layouts__WEBPACK_IMPORTED_MODULE_6__.headCellRender)({\n ...prms\n }, handleClick, filter.techServ, info.cntP, info.sumP, info.cntF, info.sumF),\n dataCellRender: prms => (0,_layouts__WEBPACK_IMPORTED_MODULE_6__.dataCellRender)({\n ...prms\n }, showEquipSrv),\n groupCellRender: prms => (0,_layouts__WEBPACK_IMPORTED_MODULE_6__.groupCellRender)({\n ...prms\n }),\n showCellRightBorder: true\n })))))) : null);\n};\n\n//----------------\n//Интерфейс модуля\n//----------------\n\n\n\n//# sourceURL=webpack://parus_8_panels_plugin/./app/panels/eqs_prfrm/eqs_prfrm.js?"); /***/ }), @@ -3524,7 +3524,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DAY_NAME_REG_EXP: () => (/* binding */ DAY_NAME_REG_EXP),\n/* harmony export */ DIGITS_REG_EXP: () => (/* binding */ DIGITS_REG_EXP),\n/* harmony export */ MONTH_NAME_REG_EXP: () => (/* binding */ MONTH_NAME_REG_EXP),\n/* harmony export */ dataCellRender: () => (/* binding */ dataCellRender),\n/* harmony export */ groupCellRender: () => (/* binding */ groupCellRender),\n/* harmony export */ headCellRender: () => (/* binding */ headCellRender)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Stack/Stack.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Grid/Grid.js\");\n/*\r\n Парус 8 - \r\n Дополнительная разметка и вёрстка клиентских элементов\r\n*/\n\n//---------------------\n//Подключение библиотек\n//---------------------\n\n //Классы React\n\n\n//---------\n//Константы\n//---------\n\n//Шаблон чисел и имён ячеек дат\nconst DIGITS_REG_EXP = /\\d+,?\\d*/g;\nconst MONTH_NAME_REG_EXP = /_\\d{4}_\\d{1,2}/;\nconst DAY_NAME_REG_EXP = /_\\d{4}_\\d{1,2}_\\d{1,2}/;\nlet curParent = \"\";\nlet x = 0;\n\n//-----------\n//Тело модуля\n//-----------\n\nconst formatDate = date => {\n const [year, month, day] = date.substring(1).split(\"_\");\n let nd;\n if (day == null) nd = `${month < 10 ? \"0\" + month : month}.${year}`;else nd = `${day < 10 ? \"0\" + day : day}.${month < 10 ? \"0\" + month : month}.${year}`;\n return nd;\n};\n\n// eslint-disable-next-line no-unused-vars\nconst headCellRender = ({\n columnDef\n}, hClick, podr, cntP, sumP, cntF, sumF) => {\n let cellStyle = {\n border: \"1px solid rgba(0, 0, 0)\",\n textAlign: \"center\"\n };\n let cellProps = {};\n let stackStyle = {};\n let data = columnDef.caption;\n if (columnDef.expandable) {\n const ref = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createRef)();\n cellStyle = {\n ...cellStyle,\n padding: \"5px\"\n };\n cellProps = {\n ...cellProps,\n ref: ref,\n onClick: e => {\n hClick(e, ref);\n }\n };\n stackStyle = {\n flexDirection: \"column\"\n };\n }\n if (columnDef.name == \"STEST\") cellStyle = {\n display: \"none\"\n };\n if (columnDef.name == \"SINFO\" || columnDef.name == \"SINFO2\") {\n cellProps = {\n colSpan: 2\n };\n if (columnDef.name == \"SINFO\") cellProps = {\n ...cellProps,\n rowSpan: 2\n };\n //if (columnDef.name == \"SINFO\") {\n //cellStyle = { display: \"none\" };\n // cellStyle = { ...cellStyle, padding: \"unset\" };\n // data = (\n // \n // \n // \n // Подразделение:\n // \n // \n // {podr}\n // \n // \n // Кол-во ремонтов, план:\n // \n // \n // {cntP}\n // \n // \n // Трудоемкость, час. план:\n // \n // \n // {sumP}\n // \n // \n // Кол-во ремонтов, факт:\n // \n // \n // {cntF}\n // \n // \n // Трудоемкость, час. факт:\n // \n // \n // {sumF}\n // \n // \n // \n // );\n //}\n }\n\n if (columnDef.name == \"SINFO2\") cellStyle = {\n display: \"none\"\n };\n if (columnDef.visible && DAY_NAME_REG_EXP.test(columnDef.name)) {\n cellStyle = {\n ...cellStyle,\n padding: \"5px\",\n minWidth: \"25px\",\n maxWidth: \"25px\"\n };\n stackStyle = {\n justifyContent: \"center\"\n };\n }\n return {\n cellStyle,\n cellProps,\n stackStyle,\n data\n };\n};\nconst dataCellRender = ({\n row,\n columnDef\n}, showEquipSrv) => {\n let cellStyle = {\n padding: \"2px\",\n border: \"1px solid rgba(0, 0, 0) !important\",\n textAlign: \"center\"\n };\n let cellProps = {};\n let data = \" \";\n if (row[\"SINFO2\"] == undefined) {\n if (columnDef.name == \"STEST\") {\n cellProps = {\n colSpan: 2\n };\n cellStyle = {\n ...cellStyle,\n textAlign: \"right\",\n fontWeight: \"bold\"\n };\n }\n if (columnDef.name == \"SINFO2\") cellStyle = {\n display: \"none\"\n };\n if (columnDef.parent == \"\" && columnDef.expandable == true && columnDef.expanded == false) {\n curParent = columnDef.name;\n return {\n cellStyle: {\n ...cellStyle,\n height: \"25px\"\n },\n data\n };\n } else if (columnDef.name != \"SINFO2\" && columnDef.parent != \"\" && columnDef.expandable == false && columnDef.expanded == true) {\n if (columnDef.name.endsWith(\"_1\")) {\n curParent = columnDef.parent;\n const [year, month] = curParent.substring(1).split(\"_\");\n x = new Date(year, month, 0).getDate();\n cellProps = {\n colSpan: x\n };\n data = row[curParent];\n return {\n cellStyle,\n cellProps,\n data\n };\n } else {\n cellStyle = {\n display: \"none\"\n };\n }\n }\n }\n if (columnDef.name == \"STEST\" && row[\"SINFO2\"] == \"План\") {\n cellStyle = {\n ...cellStyle\n };\n cellProps = {\n rowSpan: 2\n };\n }\n if (columnDef.name == \"STEST\" && row[\"SINFO2\"] == \"Факт\") {\n cellStyle = {\n display: \"none\"\n };\n }\n switch (row[columnDef.name]) {\n case \"blue\":\n cellStyle = {\n ...cellStyle,\n backgroundColor: \"lightblue\",\n border: \"1px solid rgba(0, 0, 0) !important\"\n };\n cellProps = {\n title: formatDate(columnDef.name),\n onClick: () => {\n showEquipSrv({\n date: columnDef.name,\n workType: row[\"SINFO2\"],\n info: row[\"groupName\"]\n });\n }\n };\n return {\n cellStyle,\n cellProps,\n data\n };\n case \"green\":\n cellStyle = {\n ...cellStyle,\n backgroundColor: \"green\",\n border: \"1px solid rgba(0, 0, 0) !important\"\n };\n cellProps = {\n title: formatDate(columnDef.name),\n onClick: () => {\n showEquipSrv({\n date: columnDef.name,\n workType: row[\"SINFO2\"],\n info: row[\"groupName\"]\n });\n }\n };\n return {\n cellStyle,\n cellProps,\n data\n };\n case \"red\":\n cellStyle = {\n ...cellStyle,\n backgroundColor: \"crimson\",\n border: \"1px solid rgba(0, 0, 0) !important\"\n };\n cellProps = {\n title: formatDate(columnDef.name),\n onClick: () => {\n showEquipSrv({\n date: columnDef.name,\n workType: row[\"SINFO2\"],\n info: row[\"groupName\"]\n });\n }\n };\n return {\n cellStyle,\n cellProps,\n data\n };\n case \"green red\":\n case \"red green\":\n cellStyle = {\n ...cellStyle,\n padding: \"unset\"\n };\n cellProps = {\n title: formatDate(columnDef.name)\n };\n data = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n sx: {\n justifyContent: \"center\"\n },\n direction: \"row\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n container: true,\n maxHeight: \"100%\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n item: true,\n xs: 6,\n sx: {\n backgroundColor: \"green\"\n },\n onClick: () => showEquipSrv({\n date: columnDef.name,\n workType: row[\"SINFO2\"],\n info: row[\"groupName\"]\n })\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"p\", {\n style: {\n display: \"none\"\n }\n }, \"g\")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n item: true,\n xs: 6,\n sx: {\n backgroundColor: \"crimson\"\n },\n onClick: () => showEquipSrv({\n date: columnDef.name,\n workType: row[\"SINFO2\"],\n info: row[\"groupName\"]\n })\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"p\", {\n style: {\n display: \"none\"\n }\n }, \"r\"))));\n }\n return {\n cellStyle,\n cellProps\n };\n};\nconst groupCellRender = () => {\n let cellStyle = {\n display: \"none\"\n };\n return {\n cellStyle\n };\n};\n\n//# sourceURL=webpack://parus_8_panels_plugin/./app/panels/eqs_prfrm/layouts.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ DAY_NAME_REG_EXP: () => (/* binding */ DAY_NAME_REG_EXP),\n/* harmony export */ DIGITS_REG_EXP: () => (/* binding */ DIGITS_REG_EXP),\n/* harmony export */ MONTH_NAME_REG_EXP: () => (/* binding */ MONTH_NAME_REG_EXP),\n/* harmony export */ dataCellRender: () => (/* binding */ dataCellRender),\n/* harmony export */ groupCellRender: () => (/* binding */ groupCellRender),\n/* harmony export */ headCellRender: () => (/* binding */ headCellRender)\n/* harmony export */ });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ \"./node_modules/react/index.js\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Stack/Stack.js\");\n/* harmony import */ var _mui_material__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @mui/material */ \"./node_modules/@mui/material/Grid/Grid.js\");\n/*\r\n Парус 8 - \r\n Дополнительная разметка и вёрстка клиентских элементов\r\n*/\n\n//---------------------\n//Подключение библиотек\n//---------------------\n\n //Классы React\n\n\n//---------\n//Константы\n//---------\n\n//Шаблон чисел и имён ячеек дат\nconst DIGITS_REG_EXP = /\\d+,?\\d*/g;\nconst MONTH_NAME_REG_EXP = /_\\d{4}_\\d{1,2}/;\nconst DAY_NAME_REG_EXP = /_\\d{4}_\\d{1,2}_\\d{1,2}/;\nlet curParent = \"\";\nlet x = 0;\n\n//-----------\n//Тело модуля\n//-----------\n\nconst formatDate = date => {\n const [year, month, day] = date.substring(1).split(\"_\");\n let nd;\n if (day == null) nd = `${month < 10 ? \"0\" + month : month}.${year}`;else nd = `${day < 10 ? \"0\" + day : day}.${month < 10 ? \"0\" + month : month}.${year}`;\n return nd;\n};\n\n// eslint-disable-next-line no-unused-vars\nconst headCellRender = ({\n columnDef\n}, hClick, podr, cntP, sumP, cntF, sumF) => {\n let cellStyle = {\n border: \"1px solid rgba(0, 0, 0)\",\n textAlign: \"center\"\n };\n let cellProps = {};\n let stackStyle = {};\n let data = columnDef.caption;\n if (columnDef.expandable) {\n const ref = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createRef)();\n cellStyle = {\n ...cellStyle,\n padding: \"5px\"\n };\n cellProps = {\n ...cellProps,\n ref: ref,\n onClick: e => {\n hClick(e, ref);\n }\n };\n stackStyle = {\n flexDirection: \"column\"\n };\n }\n if (columnDef.name == \"SOBJINFO\") cellStyle = {\n display: \"none\"\n };\n if (columnDef.name == \"SINFO\" || columnDef.name == \"SWRKTYPE\") {\n cellProps = {\n colSpan: 2\n };\n if (columnDef.name == \"SINFO\") cellProps = {\n ...cellProps,\n rowSpan: 2\n };\n }\n if (columnDef.name == \"SWRKTYPE\") cellStyle = {\n display: \"none\"\n };\n if (columnDef.visible && DAY_NAME_REG_EXP.test(columnDef.name)) {\n cellStyle = {\n ...cellStyle,\n padding: \"5px\",\n minWidth: \"25px\",\n maxWidth: \"25px\"\n };\n stackStyle = {\n justifyContent: \"center\"\n };\n }\n return {\n cellStyle,\n cellProps,\n stackStyle,\n data\n };\n};\nconst dataCellRender = ({\n row,\n columnDef\n}, showEquipSrv) => {\n let cellStyle = {\n padding: \"2px\",\n border: \"1px solid rgba(0, 0, 0) !important\",\n textAlign: \"center\"\n };\n let cellProps = {};\n let data = \" \";\n if (row[\"SWRKTYPE\"] == undefined) {\n if (columnDef.name == \"SOBJINFO\") {\n cellProps = {\n colSpan: 2\n };\n cellStyle = {\n ...cellStyle,\n textAlign: \"right\",\n fontWeight: \"bold\"\n };\n }\n if (columnDef.name == \"SWRKTYPE\") cellStyle = {\n display: \"none\"\n };\n if (columnDef.parent == \"\" && columnDef.expandable == true && columnDef.expanded == false) {\n curParent = columnDef.name;\n return {\n cellStyle: {\n ...cellStyle,\n height: \"25px\"\n },\n data\n };\n } else if (columnDef.name != \"SWRKTYPE\" && columnDef.parent != \"\" && columnDef.expandable == false && columnDef.expanded == true) {\n if (columnDef.name.endsWith(\"_1\")) {\n curParent = columnDef.parent;\n const [year, month] = curParent.substring(1).split(\"_\");\n x = new Date(year, month, 0).getDate();\n cellProps = {\n colSpan: x\n };\n data = row[curParent];\n return {\n cellStyle,\n cellProps,\n data\n };\n } else {\n cellStyle = {\n display: \"none\"\n };\n }\n }\n }\n if (columnDef.name == \"SOBJINFO\" && row[\"SWRKTYPE\"] == \"План\") {\n cellStyle = {\n ...cellStyle\n };\n cellProps = {\n rowSpan: 2\n };\n }\n if (columnDef.name == \"SOBJINFO\" && row[\"SWRKTYPE\"] == \"Факт\") {\n cellStyle = {\n display: \"none\"\n };\n }\n switch (row[columnDef.name]) {\n case \"blue\":\n cellStyle = {\n ...cellStyle,\n cursor: \"pointer\",\n backgroundColor: \"lightblue\",\n border: \"1px solid rgba(0, 0, 0) !important\"\n };\n cellProps = {\n title: formatDate(columnDef.name),\n onClick: () => {\n showEquipSrv({\n date: columnDef.name,\n workType: row[\"SWRKTYPE\"],\n info: row[\"groupName\"]\n });\n }\n };\n return {\n cellStyle,\n cellProps,\n data\n };\n case \"green\":\n cellStyle = {\n ...cellStyle,\n cursor: \"pointer\",\n backgroundColor: \"green\",\n border: \"1px solid rgba(0, 0, 0) !important\"\n };\n cellProps = {\n title: formatDate(columnDef.name),\n onClick: () => {\n showEquipSrv({\n date: columnDef.name,\n workType: row[\"SWRKTYPE\"],\n info: row[\"groupName\"]\n });\n }\n };\n return {\n cellStyle,\n cellProps,\n data\n };\n case \"red\":\n cellStyle = {\n ...cellStyle,\n cursor: \"pointer\",\n backgroundColor: \"crimson\",\n border: \"1px solid rgba(0, 0, 0) !important\"\n };\n cellProps = {\n title: formatDate(columnDef.name),\n onClick: () => {\n showEquipSrv({\n date: columnDef.name,\n workType: row[\"SWRKTYPE\"],\n info: row[\"groupName\"]\n });\n }\n };\n return {\n cellStyle,\n cellProps,\n data\n };\n case \"green red\":\n case \"red green\":\n cellStyle = {\n ...cellStyle,\n padding: \"unset\"\n };\n cellProps = {\n title: formatDate(columnDef.name)\n };\n data = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n sx: {\n justifyContent: \"center\"\n },\n direction: \"row\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n container: true,\n maxHeight: \"100%\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n item: true,\n xs: 6,\n sx: {\n cursor: \"pointer\",\n backgroundColor: \"green\"\n },\n onClick: () => showEquipSrv({\n date: columnDef.name,\n workType: row[\"SWRKTYPE\"],\n info: row[\"groupName\"]\n })\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"p\", {\n style: {\n display: \"none\"\n }\n }, \"g\")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_mui_material__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n item: true,\n xs: 6,\n sx: {\n cursor: \"pointer\",\n backgroundColor: \"crimson\"\n },\n onClick: () => showEquipSrv({\n date: columnDef.name,\n workType: row[\"SWRKTYPE\"],\n info: row[\"groupName\"]\n })\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(\"p\", {\n style: {\n display: \"none\"\n }\n }, \"r\"))));\n }\n return {\n cellStyle,\n cellProps\n };\n};\nconst groupCellRender = () => {\n let cellStyle = {\n display: \"none\"\n };\n return {\n cellStyle\n };\n};\n\n//# sourceURL=webpack://parus_8_panels_plugin/./app/panels/eqs_prfrm/layouts.js?"); /***/ }),