From 498f2335f7a9bb552bad1c92e225a6d8685dd310 Mon Sep 17 00:00:00 2001 From: merelendor Date: Fri, 27 Oct 2023 14:58:24 +0300 Subject: [PATCH] add error display on layout --- actions/dealsActions.js | 30 +++++++++ actions/edoActions.js | 24 +++++++ actions/signActions.js | 33 ++++++++++ .../components/DealContractsSignEDO.js | 8 ++- css/main/style.css | 1 - css/main/style.less | 2 +- css/var.css | 40 ++++++++++++ css/var.less | 44 +++++++++++++ lib/CRMRequestPost/index.js | 31 +++++---- .../api/contract/change/graphic/calculate.js | 7 ++- pages/api/contract/change/graphic/sign.js | 7 ++- pages/api/contract/sign/check.js | 2 +- pages/api/contract/sign/document/connect.js | 2 +- pages/api/contract/sign/document/create.js | 6 +- pages/api/contract/sign/document/status.js | 2 +- pages/api/deals/accept.js | 8 ++- pages/api/edo/cancel.js | 2 +- pages/api/edo/project.js | 2 +- pages/api/edo/sign.js | 2 +- pages/api/logs/track.js | 8 ++- pages/components/Layout/Account/index.js | 63 +++++++++++++++++++ .../Comparison/components/SignEDO/index.js | 10 ++- pages/contract/change/index.js | 2 +- pages/index.js | 2 +- 24 files changed, 299 insertions(+), 39 deletions(-) diff --git a/actions/dealsActions.js b/actions/dealsActions.js index ed862f2..bd4eee3 100644 --- a/actions/dealsActions.js +++ b/actions/dealsActions.js @@ -67,6 +67,9 @@ export const getDeals = ({ dispatch, update = false }) => console.error("ACTION", "deals", "getDeals()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода ConsiderationOpportunity" } }); + window.dispatchEvent(eventMessage); + dispatch({ type: actionTypes.DEALS_LIST, data: { @@ -110,6 +113,9 @@ export const getDealOffers = ({ dispatch, deal_id }) => console.error("ACTION", "deals", "getDealOffers()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода quote" } }); + window.dispatchEvent(eventMessage); + dispatch({ type: actionTypes.DEAL_OFFERS_LIST, data: { @@ -143,6 +149,9 @@ export const downloadDealOffer = ({ quote_number, filename }) => console.error("ACTION", "sign", "downloadDealOffer()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода offerprintform" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -171,6 +180,9 @@ export const acceptDealOffers = ({ deal_id, offers }) => console.error("ACTION", "deals", "acceptDealOffers()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода quote accept" } }); + window.dispatchEvent(eventMessage); + reject(); }); }); @@ -208,6 +220,9 @@ export const getDealDocuments = ({ dispatch, deal_id }) => console.error("ACTION", "deals", "getDealDocuments()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода document" } }); + window.dispatchEvent(eventMessage); + dispatch({ type: actionTypes.DEAL_DOCUMENTS_LIST, data: { @@ -246,6 +261,10 @@ export const sendDealDocuments = ({ deal_id }) => .catch((error) => { console.error(error); + + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при отправке пакета документов для сделки" } }); + window.dispatchEvent(eventMessage); + reject(); }); }); @@ -282,6 +301,9 @@ export const getDealContracts = ({ dispatch, deal_id }) => console.error("ACTION", "deals", "getDealContracts()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода contract" } }); + window.dispatchEvent(eventMessage); + dispatch({ type: actionTypes.DEAL_CONTRACTS_LIST, data: { @@ -329,6 +351,10 @@ export const attachDealDocument = ({ deal_id, document_id, document_name, group, .catch((error) => { console.error(error); + + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при загрузке документа" } }); + window.dispatchEvent(eventMessage); + reject(); }); }); @@ -357,6 +383,10 @@ export const removeDealDocument = ({ deal_id, group, index, }) => .catch((error) => { console.error(error); + + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при удалении документа" } }); + window.dispatchEvent(eventMessage); + reject(); }); }); diff --git a/actions/edoActions.js b/actions/edoActions.js index 27435d4..2bca372 100644 --- a/actions/edoActions.js +++ b/actions/edoActions.js @@ -55,6 +55,9 @@ export const getEDOOperatorList = ({ dispatch, update = false }) => console.error("ACTION", "edo", "getEDOOperatorList()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода GetEdoBox" } }); + window.dispatchEvent(eventMessage); + dispatch({ type: actionTypes.EDO_OPERATORS_LIST, data: { @@ -97,6 +100,9 @@ export const getEDOInvitesList = ({ dispatch, update = false }) => console.error("ACTION", "edo", "getEDOInvitesList()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода GetInviteEdoBox" } }); + window.dispatchEvent(eventMessage); + dispatch({ type: actionTypes.EDO_INVITES_LIST, data: { @@ -131,6 +137,9 @@ export const inviteToEDO = () => console.error("ACTION", "edo", "inviteToEDO()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода InviteEdoBox" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -158,6 +167,9 @@ export const createEDOProject = (payload) => console.error("ACTION", "edo", "createEDOProject()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода CreateEDOProject" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -194,6 +206,9 @@ export const docEDOSign = (payload) => console.error(error); } + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода SignEDODocument" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -221,6 +236,9 @@ export const docEDOCancel = (payload) => console.error("ACTION", "edo", "docEDOCancel()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода CancelDocument" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -257,6 +275,9 @@ export const docEDOConnect = (payload) => console.error(error); } + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода DocEdoConnect" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -293,6 +314,9 @@ export const docEDOStatus = (payload) => console.error(error); } + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода GetEdoProjectID" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); diff --git a/actions/signActions.js b/actions/signActions.js index d40900a..b898fd9 100644 --- a/actions/signActions.js +++ b/actions/signActions.js @@ -30,6 +30,9 @@ export const signCheckCreatePrintForm = (payload) => { console.error("ACTION", "sign", "signCheckCreatePrintForm()", "ERROR"); console.error(error); + + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода CheckCreatePrintForm" } }); + window.dispatchEvent(eventMessage); reject(error.data); }); @@ -58,6 +61,9 @@ export const signGetGUIDEntity = (payload) => console.error("ACTION", "sign", "signGetGUIDEntity()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода GetGUIDEntity" } }); + window.dispatchEvent(eventMessage); + resolve(response.data); }); }); @@ -82,6 +88,9 @@ export const signCheckPowerAttorneyClient = (payload) => console.error("ACTION", "sign", "signCheckPowerAttorneyClient()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода CheckPowerAttorneyClient" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -106,6 +115,9 @@ export const signGetPowerAttorneyClient = (payload) => console.error("ACTION", "sign", "signGetPowerAttorneyClient()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода GetPowerAttorneyClient" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -130,6 +142,9 @@ export const signGetWMDoc = (payload) => console.error("ACTION", "sign", "signGetWMDoc()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода GetWMDoc" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -155,6 +170,9 @@ export const signDownloadFile = ({ payload, filename }) => console.error("ACTION", "sign", "signDownloadFile()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода GetWMDoc" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -180,6 +198,9 @@ export const signGetFileContractProject = (payload) => console.error("ACTION", "sign", "signGetFileContractProject()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода GetFileContractProject" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -205,6 +226,9 @@ export const signCheckDownloadContractProject = (payload) => console.error("ACTION", "sign", "signCheckDownloadContractProject()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода CheckDownloadContractProject" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -246,6 +270,9 @@ export const signUploadPaperDocument = (contract_number, deal_id, files) => console.error("ACTION", "sign", "signUploadPaperDocument()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при отправке подписанного пакета документов" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -273,6 +300,9 @@ export const signCheckCancelDocument = (payload) => console.error("ACTION", "sign", "signCheckCancelDocument()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода CheckCancelDocument" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); @@ -300,6 +330,9 @@ export const signCancelDocument = (payload) => console.error("ACTION", "sign", "signCancelDocument()", "ERROR"); console.error(error); + const eventMessage = new CustomEvent("_message", { detail: { type: "error", title: "Ошибка", content: "Ошибка при вызове метода CancelDocument" } }); + window.dispatchEvent(eventMessage); + reject(error.data); }); }); diff --git a/components/DealsStatus/components/DealContractsSignEDO.js b/components/DealsStatus/components/DealContractsSignEDO.js index 6c08989..b2d617a 100644 --- a/components/DealsStatus/components/DealContractsSignEDO.js +++ b/components/DealsStatus/components/DealContractsSignEDO.js @@ -72,9 +72,11 @@ class DealContractsSignEDO extends React.Component for(let i in documents) { console.log({ fin: documents[i] }); - if(!documents[i].completed) - completed = false; - break; + if(!documents[i].error && !documents[i].completed) + { + completed = false; + break; + } } return completed; diff --git a/css/main/style.css b/css/main/style.css index c1c0684..44af683 100644 --- a/css/main/style.css +++ b/css/main/style.css @@ -3723,7 +3723,6 @@ main .dropdown_blocks_list .dropdown_block .block_body .fines_detail ul li { } @media all and (max-width: 960px) { .helpBox_wrapper .helpBox .content { - width: 100%; margin-top: 10px; } } diff --git a/css/main/style.less b/css/main/style.less index 8db9c97..d6d6d00 100644 --- a/css/main/style.less +++ b/css/main/style.less @@ -4153,7 +4153,7 @@ main .dropdown_blocks_list .dropdown_block .block_body { } @media all and (max-width: 960px) { - width: 100%; +// width: 100%; margin-top: 10px; } } diff --git a/css/var.css b/css/var.css index 55985c2..8525509 100644 --- a/css/var.css +++ b/css/var.css @@ -642,3 +642,43 @@ div { margin-top: 35px; margin-bottom: 35px; } +.messages_overlay { + position: fixed; + top: 0px; + right: 0px; + width: 30%; + display: flex; + flex-direction: column; + align-items: flex-start; + justify-content: flex-start; + z-index: 100; + gap: 10px 10px; + margin: 10px; +} +.messages_overlay .overlay_message_error { + position: relative; + width: 100%; + background-color: #df2525; + padding: 10px 15px; + font-size: 12px; +} +.messages_overlay .overlay_message_error h4, +.messages_overlay .overlay_message_error p { + color: #fff; +} +.messages_overlay .overlay_message_error h4 { + padding: 0px; + margin: 0px; + margin-bottom: 2px; +} +.messages_overlay .overlay_message_error .button { + position: absolute; + top: 8px; + right: 8px; + width: 16px; + height: 16px; + padding: 0; + border: 0; + background: url("/assets/images/icons/close-white.svg") no-repeat center; + background-size: 16px; +} diff --git a/css/var.less b/css/var.less index b16f0e9..baf04db 100644 --- a/css/var.less +++ b/css/var.less @@ -687,4 +687,48 @@ div { line-height: 35px; margin-top: 35px; margin-bottom: 35px; +} + +.messages_overlay { + position: fixed; + top: 0px; + right: 0px; + width: 30%; + display: flex; + flex-direction: column; + align-items: flex-start; + justify-content: flex-start; + z-index: 100; + gap: 10px 10px; + margin: 10px; + + .overlay_message_error { + position: relative; + width: 100%; + background-color: #df2525; + padding: 10px 15px; + font-size: 12px; + + h4, p { + color: #fff; + } + + h4 { + padding: 0px; + margin: 0px; + margin-bottom: 2px; + } + + .button { + position: absolute; + top: 8px; + right: 8px; + width: 16px; + height: 16px; + padding: 0; + border: 0; + background: url("/assets/images/icons/close-white.svg") no-repeat center; + background-size: 16px; + } + } } \ No newline at end of file diff --git a/lib/CRMRequestPost/index.js b/lib/CRMRequestPost/index.js index b131ec1..b6afc40 100644 --- a/lib/CRMRequestPost/index.js +++ b/lib/CRMRequestPost/index.js @@ -7,7 +7,7 @@ import jwt from 'jsonwebtoken'; import { cors } from '../cors'; import { inspect } from 'util'; -export default async function CRMRequestPost(req, res, path, params, array = false) +export default async function CRMRequestPost({ req, res, path, params, headers = {}, options = {}, array = false, log = false }) { await cors(req, res); @@ -15,18 +15,17 @@ export default async function CRMRequestPost(req, res, path, params, array = fal { const cookies = cookie.parse(req.headers?.cookie ? req.headers?.cookie : ""); - //console.log("-".repeat(50)); - //console.log("CRMRequestPost", "req.body"); - //console.log(req.body); - if(cookies.jwt !== undefined && cookies.jwt !== null) { - //console.log("cookies.jwt"); - //console.log(cookies.jwt); - var client_jwt_decoded = jwt.verify(cookies.jwt, process.env.JWT_SECRET_CLIENT); var crm_jwt = jwt.sign({ acc_number: client_jwt_decoded.acc_number }, process.env.JWT_SECRET_CRM, { noTimestamp: true }); + if(log) + { + console.log("client_jwt_decoded", client_jwt_decoded); + console.log("crm_jwt", crm_jwt); + } + let payload; if(array) { @@ -36,24 +35,22 @@ export default async function CRMRequestPost(req, res, path, params, array = fal { payload = { ...{ acc_number: client_jwt_decoded.acc_number }, ...params }; } - //console.log("path", path); try { await axios.post(path, payload, { - headers: { - "Content-Type": "application/json", - "Authorization": `Bearer ${ crm_jwt }`, - }, + headers: { ...{ "Content-Type": "application/json", "Authorization": `Bearer ${ crm_jwt }` }, ...headers }, withCredentials: true, }) .then((crm_response) => { - //console.log("crm_response for", path); - - //console.log(inspect(crm_response.data, true, null, true)); - + if(log) + { + console.log("crm_response for", path); + console.log("payload", payload); + console.log(inspect(crm_response.data, true, null, true)); + } res.status(200).json(crm_response.data); }) diff --git a/pages/api/contract/change/graphic/calculate.js b/pages/api/contract/change/graphic/calculate.js index e0f2bb6..688c387 100644 --- a/pages/api/contract/change/graphic/calculate.js +++ b/pages/api/contract/change/graphic/calculate.js @@ -7,5 +7,10 @@ export default async function handler(req, res) console.log(req.body); console.log("-".repeat(50)); - await CRMRequestPost(req, res, `${ process.env.CRM_API_HOST }/lk/add-contract/CreateCalculation?contract_number=${ req.body.contract_number }`, req.body); + await CRMRequestPost({ + req, res, + path: `${ process.env.CRM_API_HOST }/lk/add-contract/CreateCalculation?contract_number=${ req.body.contract_number }`, + params: req.body, + log: true, + }); } \ No newline at end of file diff --git a/pages/api/contract/change/graphic/sign.js b/pages/api/contract/change/graphic/sign.js index 10c01cd..cf202b6 100644 --- a/pages/api/contract/change/graphic/sign.js +++ b/pages/api/contract/change/graphic/sign.js @@ -7,5 +7,10 @@ export default async function handler(req, res) console.log(req.body); console.log("-".repeat(50)); - await CRMRequestPost(req, res, `${ process.env.CRM_API_HOST }/lk/add-contract/Signing?addcontract_number=${ req.body.addcontract_number }`, req.body); + await CRMRequestPost({ + req, res, + path: `${ process.env.CRM_API_HOST }/lk/add-contract/Signing?addcontract_number=${ req.body.addcontract_number }`, + params: req.body, + log: true, + }); } \ No newline at end of file diff --git a/pages/api/contract/sign/check.js b/pages/api/contract/sign/check.js index 6607325..fd83141 100644 --- a/pages/api/contract/sign/check.js +++ b/pages/api/contract/sign/check.js @@ -2,7 +2,7 @@ import CRMRequestGet from '../../../../lib/CRMRequestGet'; export default async function handler(req, res) { - console.log("\n\n", "API", "SIGN", "/check"); + console.log("\n\n", "API", "SIGN", "api/contract/sign/check"); const { contract_number, addcontract_number, sign_type } = req.body; const payload = { diff --git a/pages/api/contract/sign/document/connect.js b/pages/api/contract/sign/document/connect.js index 6c934ac..0fdc87b 100644 --- a/pages/api/contract/sign/document/connect.js +++ b/pages/api/contract/sign/document/connect.js @@ -2,7 +2,7 @@ import CRMRequestGet from '../../../../../lib/CRMRequestGet'; export default async function handler(req, res) { - console.log("\n\n", "API", "SIGN", "/document/connect"); + console.log("\n\n", "API", "SIGN", "/sign/document/connect"); const { contract_number, addcontract_number, } = req.body; const payload = { diff --git a/pages/api/contract/sign/document/create.js b/pages/api/contract/sign/document/create.js index b13be1c..0bff945 100644 --- a/pages/api/contract/sign/document/create.js +++ b/pages/api/contract/sign/document/create.js @@ -1,4 +1,4 @@ -import CRMRequestGet from '../../../../../lib/CRMRequestGet'; +import CRMRequestPost from '../../../../../lib/CRMRequestPost'; export default async function handler(req, res) { @@ -17,9 +17,9 @@ export default async function handler(req, res) console.log({ payload }); - await CRMRequestGet({ req, res, + await CRMRequestPost({ req, res, path: `${ process.env.CRM_API_HOST }/File/GetWMDoc`, - data: JSON.stringify(payload), + params: payload, headers: { "Content-Type": "application/json" }, log: true, }); diff --git a/pages/api/contract/sign/document/status.js b/pages/api/contract/sign/document/status.js index e26cbcd..6f17e83 100644 --- a/pages/api/contract/sign/document/status.js +++ b/pages/api/contract/sign/document/status.js @@ -2,7 +2,7 @@ import CRMRequestGet from '../../../../../lib/CRMRequestGet'; export default async function handler(req, res) { - console.log("\n\n", "API", "SIGN", "/document/status"); + console.log("\n\n", "API", "SIGN", "/sign/document/status"); const { contract_number, addcontract_number, } = req.body; const payload = { diff --git a/pages/api/deals/accept.js b/pages/api/deals/accept.js index 548310b..08b71a1 100644 --- a/pages/api/deals/accept.js +++ b/pages/api/deals/accept.js @@ -16,5 +16,11 @@ export default async function handler(req, res) console.log("/accept"); console.log({ offers }); - await CRMRequestPost(req, res, `${ process.env.CRM_API_HOST }/lk/ConsiderationOpportunity/quote?opp_number=${ deal_id }`, offers, true); + await CRMRequestPost({ + req, res, + path: `${ process.env.CRM_API_HOST }/lk/ConsiderationOpportunity/quote?opp_number=${ deal_id }`, + params: offers, + array: true, + log: true, + }); } \ No newline at end of file diff --git a/pages/api/edo/cancel.js b/pages/api/edo/cancel.js index 6396d17..0180464 100644 --- a/pages/api/edo/cancel.js +++ b/pages/api/edo/cancel.js @@ -5,7 +5,7 @@ import CRMRequestGet from '../../../lib/CRMRequestGet'; export default async function handler(req, res) { - console.log("\n\n", "API", "EDO", "/cancel"); + console.log("\n\n", "API", "EDO", "/edo/cancel"); const { contract_number, addcontract_number, doc_type_id, } = req.body; const payload = { diff --git a/pages/api/edo/project.js b/pages/api/edo/project.js index f3cf779..f28c1a2 100644 --- a/pages/api/edo/project.js +++ b/pages/api/edo/project.js @@ -2,7 +2,7 @@ import CRMRequestGet from '../../../lib/CRMRequestGet'; export default async function handler(req, res) { - console.log("\n\n", "API", "EDO", "/project"); + console.log("\n\n", "API", "EDO", "/edo/project"); const { contract_number, addcontract_number, power_attorney, power_attorney_number, edo_box, } = req.body; const payload = { diff --git a/pages/api/edo/sign.js b/pages/api/edo/sign.js index 4e6b88c..25373c7 100644 --- a/pages/api/edo/sign.js +++ b/pages/api/edo/sign.js @@ -2,7 +2,7 @@ import CRMRequestGet from '../../../lib/CRMRequestGet'; export default async function handler(req, res) { - console.log("\n\n", "API", "EDO", "/sign"); + console.log("\n\n", "API", "EDO", "/edo/sign"); const { edoid } = req.body; const payload = { diff --git a/pages/api/logs/track.js b/pages/api/logs/track.js index 7337e94..ff3b256 100644 --- a/pages/api/logs/track.js +++ b/pages/api/logs/track.js @@ -6,5 +6,11 @@ export default async function handler(req, res) console.log(req.body); console.log("-".repeat(50)); - await CRMRequestPost(req, res, `${ process.env.LOGS_API_HOST }/lk/DownloadDocumentFromLK`, req.body, true); + await CRMRequestPost({ + req, res, + path: `${ process.env.LOGS_API_HOST }/lk/DownloadDocumentFromLK`, + params: req.body, + array: true, + log: true, + }); } \ No newline at end of file diff --git a/pages/components/Layout/Account/index.js b/pages/components/Layout/Account/index.js index aadc2ef..6c07a46 100644 --- a/pages/components/Layout/Account/index.js +++ b/pages/components/Layout/Account/index.js @@ -6,10 +6,62 @@ export default class AccountLayout extends React.Component constructor(props) { super(props); + this.state = { + messages: [], + } + } + + componentDidMount() + { + if(window !== undefined) + { + window.addEventListener("_track", this._handle_onTrack); + window.addEventListener("_move", this._handle_onMove); + window.addEventListener("_message", this._handle_onMessage); + } + + console.log("CDM", { state: this.state }); + } + + componentWillUnmount() + { + if(window !== undefined) + { + window.removeEventListener("_track", this._handle_onTrack); + window.removeEventListener("_move", this._handle_onMove); + window.removeEventListener("_message", this._handle_onMessage); + } + } + + _handle_onTrack = (event) => + { + //event.detail.path + console.log("LAYOUT", "_handle_onTrack", { event, props: this.props }); + } + + _handle_onMove = (event) => + { + this.props.router.push(event.detail.path); + } + + _handle_onMessage = (event) => + { + const messages = [ ...this.state.messages ]; + messages.push(event.detail); + this.setState({ messages }); + } + + _handle_onMessageRemove = (index) => + { + const messages = [ ...this.state.messages ]; + messages.splice(index, 1); + this.setState({ messages }); } render() { + const { messages } = this.state; + return (
@@ -21,6 +73,17 @@ export default class AccountLayout extends React.Component
+ { messages.length > 0 && ( +
+ { messages.map((message, index) => ( +
+

{ message.title }

+

{ message.content }

+
this._handle_onMessageRemove(index) }>
+
+ ))} +
+ ) }
) } diff --git a/pages/contract/change/components/Comparison/components/SignEDO/index.js b/pages/contract/change/components/Comparison/components/SignEDO/index.js index 6607d49..2d66562 100644 --- a/pages/contract/change/components/Comparison/components/SignEDO/index.js +++ b/pages/contract/change/components/Comparison/components/SignEDO/index.js @@ -229,11 +229,17 @@ class SignEDO extends React.Component } } + _handle_onGoToEDOInvites = () => + { + const eventLogin = new CustomEvent("_move", { detail: { path: "/settings/digital" } }); + window.dispatchEvent(eventLogin); + } + _handle_onFormSubmit = (event) => { event.preventDefault(); - const { onFinish, onCancel, onGoToEDOInvites } = this.props; + const { onFinish, onCancel } = this.props; const { operators, operator_selected, step, finished, error } = this.state; console.log("_handle_onFormSubmit"); @@ -241,7 +247,7 @@ class SignEDO extends React.Component if(operators !== null && operators.length === 0) { - onGoToEDOInvites(); + this._handle_onGoToEDOInvites(); } else { diff --git a/pages/contract/change/index.js b/pages/contract/change/index.js index 14b6c26..59c6955 100644 --- a/pages/contract/change/index.js +++ b/pages/contract/change/index.js @@ -312,7 +312,7 @@ class ChangeGraphicPage extends React.Component
- +
diff --git a/pages/index.js b/pages/index.js index 61e5fe7..3f75034 100644 --- a/pages/index.js +++ b/pages/index.js @@ -288,7 +288,7 @@ class IndexPage extends React.Component
- +

Личный кабинет