diff --git a/app/panels/prj_fin/layouts.js b/app/panels/prj_fin/layouts.js index 07fda51..7af1108 100644 --- a/app/panels/prj_fin/layouts.js +++ b/app/panels/prj_fin/layouts.js @@ -137,7 +137,11 @@ export const headCellRender = ({ columnDef }) => { export const dataCellRender = ({ panelUnit, row, columnDef, pOnlineShowDocument, showStages, showStageArts, showCostNotes, showContracts }) => { //Подбор функции на нажатие в ячейки контрольной колонки в зависимости от контекста const getCrlOnClick = () => - panelUnit == PANEL_UNITS.PROJECT_STAGES ? (columnDef.name === "NCTRL_FIN" ? showContracts : showStageArts) : showStages; + panelUnit == PANEL_UNITS.PROJECT_STAGES + ? ["NCTRL_FIN", "NCTRL_COEXEC"].includes(columnDef.name) + ? showContracts + : showStageArts + : showStages; //Подбор представления ячейки контрольной колонки в зависимости от контекста const renderCtl = () => ({ cellProps: { @@ -165,7 +169,8 @@ export const dataCellRender = ({ panelUnit, row, columnDef, pOnlineShowDocument, ) : null} {formatCtrlValue(row[columnDef.name], false)} - ) : panelUnit == PANEL_UNITS.PROJECT_STAGES && ["NCTRL_COEXEC", "NCTRL_ACT"].includes(columnDef.name) ? ( + ) : (panelUnit == PANEL_UNITS.PROJECT_STAGES && columnDef.name == "NCTRL_ACT") || + (panelUnit == PANEL_UNITS.PROJECT_STAGE_CONTRACTS && columnDef.name == "NCTRL_COEXEC") ? ( formatCtrlValue(row[columnDef.name], false) ) : panelUnit == PANEL_UNITS.PROJECT_STAGE_ARTS && ["NCTRL_COST", "NCTRL_CONTR"].includes(columnDef.name) ? ( @@ -249,6 +254,7 @@ export const rowExpandRender = ({ showPayNotes, showCostNotes, showPaymentAccountsIn, + showIncomingInvoices, showStageArts, showContracts }) => { @@ -316,7 +322,7 @@ export const rowExpandRender = ({ {(hasValue(row[`SLNK_UNIT_${cardColumn.name}`]) && hasValue(row[`NLNK_DOCUMENT_${cardColumn.name}`])) || - ["NPAY_IN", "NFIN_OUT"].includes(cardColumn.name) ? ( + ["NPAY_IN", "NFIN_OUT", "NCOEXEC_IN"].includes(cardColumn.name) ? ( { else showMsgErr(TEXTS.NO_DATA_FOUND); }; + //Отображение приходных накладных от соисполнителя этапа + const showIncomingInvoices = async ({ sender }) => { + const data = await executeStored({ + stored: "PKG_P8PANELS_PROJECTS.STAGE_CONTRACTS_SELECT_ININV", + args: { NPROJECTSTAGEPF: sender.NRN } + }); + if (data.NIDENT) pOnlineShowUnit({ unitCode: "IncomingInvoices", inputParameters: [{ name: "in_SelectList_Ident", value: data.NIDENT }] }); + else showMsgErr(TEXTS.NO_DATA_FOUND); + }; + //При изменении состояния фильтра const handleFilterChanged = ({ filters }) => setStageContractsDataGrid(pv => ({ ...pv, filters, pageNumber: 1, reload: true })); @@ -139,7 +149,8 @@ const StageContracts = ({ stage, filters }) => { panelUnit: PANEL_UNITS.PROJECT_STAGE_CONTRACTS, pOnlineShowDocument, showPaymentAccountsIn, - showPayNotes + showPayNotes, + showIncomingInvoices }) } valueFormatter={valueFormatter}