WEB APP: отображение показателей актирования и соисполнения, переход к "Приходным накладным"

This commit is contained in:
Mikhail Chechnev 2023-09-30 02:34:50 +03:00
parent 81b4913b31
commit 30cfdc67e7
2 changed files with 23 additions and 4 deletions

View File

@ -137,7 +137,11 @@ export const headCellRender = ({ columnDef }) => {
export const dataCellRender = ({ panelUnit, row, columnDef, pOnlineShowDocument, showStages, showStageArts, showCostNotes, showContracts }) => { export const dataCellRender = ({ panelUnit, row, columnDef, pOnlineShowDocument, showStages, showStageArts, showCostNotes, showContracts }) => {
//Подбор функции на нажатие в ячейки контрольной колонки в зависимости от контекста //Подбор функции на нажатие в ячейки контрольной колонки в зависимости от контекста
const getCrlOnClick = () => 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 = () => ({ const renderCtl = () => ({
cellProps: { cellProps: {
@ -165,7 +169,8 @@ export const dataCellRender = ({ panelUnit, row, columnDef, pOnlineShowDocument,
) : null} ) : null}
{formatCtrlValue(row[columnDef.name], false)} {formatCtrlValue(row[columnDef.name], false)}
</Stack> </Stack>
) : 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) formatCtrlValue(row[columnDef.name], false)
) : panelUnit == PANEL_UNITS.PROJECT_STAGE_ARTS && ["NCTRL_COST", "NCTRL_CONTR"].includes(columnDef.name) ? ( ) : panelUnit == PANEL_UNITS.PROJECT_STAGE_ARTS && ["NCTRL_COST", "NCTRL_CONTR"].includes(columnDef.name) ? (
<Stack sx={{ justifyContent: "right" }} direction="row" spacing={1}> <Stack sx={{ justifyContent: "right" }} direction="row" spacing={1}>
@ -249,6 +254,7 @@ export const rowExpandRender = ({
showPayNotes, showPayNotes,
showCostNotes, showCostNotes,
showPaymentAccountsIn, showPaymentAccountsIn,
showIncomingInvoices,
showStageArts, showStageArts,
showContracts showContracts
}) => { }) => {
@ -316,7 +322,7 @@ export const rowExpandRender = ({
</TableCell> </TableCell>
<TableCell sx={{ paddingLeft: 0 }}> <TableCell sx={{ paddingLeft: 0 }}>
{(hasValue(row[`SLNK_UNIT_${cardColumn.name}`]) && hasValue(row[`NLNK_DOCUMENT_${cardColumn.name}`])) || {(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) ? (
<Link <Link
component="button" component="button"
variant="body2" variant="body2"
@ -329,6 +335,8 @@ export const rowExpandRender = ({
? showCostNotes({ sender: row }) ? showCostNotes({ sender: row })
: cardColumn.name == "NPAY_IN" : cardColumn.name == "NPAY_IN"
? showPaymentAccountsIn({ sender: row }) ? showPaymentAccountsIn({ sender: row })
: cardColumn.name == "NCOEXEC_IN"
? showIncomingInvoices({ sender: row })
: pOnlineShowDocument({ : pOnlineShowDocument({
unitCode: row[`SLNK_UNIT_${cardColumn.name}`], unitCode: row[`SLNK_UNIT_${cardColumn.name}`],
document: row[`NLNK_DOCUMENT_${cardColumn.name}`] document: row[`NLNK_DOCUMENT_${cardColumn.name}`]

View File

@ -105,6 +105,16 @@ const StageContracts = ({ stage, filters }) => {
else showMsgErr(TEXTS.NO_DATA_FOUND); 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 })); 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, panelUnit: PANEL_UNITS.PROJECT_STAGE_CONTRACTS,
pOnlineShowDocument, pOnlineShowDocument,
showPaymentAccountsIn, showPaymentAccountsIn,
showPayNotes showPayNotes,
showIncomingInvoices
}) })
} }
valueFormatter={valueFormatter} valueFormatter={valueFormatter}