From 1404bb182176bb96206ff1765ce6f71db4fc1ecc Mon Sep 17 00:00:00 2001 From: MailineN Date: Fri, 5 Jul 2024 11:02:36 +0200 Subject: [PATCH] refactor: new survey-unit endpoints --- src/service/api-service.ts | 44 +++++++++++++++++++++-------------- src/service/survey-service.ts | 6 ++--- 2 files changed, 30 insertions(+), 20 deletions(-) diff --git a/src/service/api-service.ts b/src/service/api-service.ts index ee28afc1..0cadbb0a 100644 --- a/src/service/api-service.ts +++ b/src/service/api-service.ts @@ -191,25 +191,35 @@ const requestPutSurveyData = ( data: SurveyData, token?: string, ): Promise => { - const lunaticData = token ? transformCollectedArray(data.data?.COLLECTED) : data.data?.COLLECTED; + console.log("data", data); + const collectedData = token ? transformCollectedArray(data.data?.COLLECTED) : data.data?.COLLECTED; + if (data.data) { + data.data.COLLECTED = collectedData; + } + if (token) { console.log("lunaticData has been converted"); } - const surveyData: SurveyData = { - data: lunaticData, - stateData: data.stateData, - }; - return new Promise(resolve => { - axios - .put( - stromaeBackOfficeApiBaseUrl + "api/survey-unit/" + idSurvey, - surveyData, - getHeader(stromaeBackOfficeApiBaseUrl, token), - ) - .then(() => { - return resolve(data); - }); - }); + const stateData = data.stateData; + const putLunaticData = axios.put( + `${stromaeBackOfficeApiBaseUrl}api/survey-unit/${idSurvey}/data`, + data, + getHeader(stromaeBackOfficeApiBaseUrl, token), + ); + + const putStateData = axios.put( + `${stromaeBackOfficeApiBaseUrl}api/survey-unit/${idSurvey}/state-data`, + stateData, + getHeader(stromaeBackOfficeApiBaseUrl, token), + ); + + return Promise.all([putLunaticData, putStateData]) + .then(() => { + return data; + }) + .catch(error => { + throw error; + }); }; const remotePutSurveyData = (idSurvey: string, data: SurveyData): Promise => { @@ -349,7 +359,7 @@ const remoteGetSurveyData = ( return new Promise(resolve => { axios .get( - stromaeBackOfficeApiBaseUrl + "api/survey-unit/" + idSurvey, + stromaeBackOfficeApiBaseUrl + "api/survey-unit/" + idSurvey + "/data", getHeader(stromaeBackOfficeApiBaseUrl), ) .then(response => { diff --git a/src/service/survey-service.ts b/src/service/survey-service.ts index 2968b517..89e53767 100644 --- a/src/service/survey-service.ts +++ b/src/service/survey-service.ts @@ -480,7 +480,7 @@ const initializeSurveysIdsDataModeReviewer = ( }); }; -const initializeData = (remoteSurveyData: SurveyData, surveyId: string) => { +const initializeData = (remoteSurveyData: SurveyData, idSurvey: string) => { const regexp = new RegExp(process.env.REACT_APP_HOUSE_REFERENCE_REGULAR_EXPRESSION || ""); let surveyData: LunaticData = { COLLECTED: {}, @@ -490,10 +490,10 @@ const initializeData = (remoteSurveyData: SurveyData, surveyId: string) => { id: "", lastLocalSaveDate: Date.now(), }; - surveyData.houseReference = surveyId?.replace(regexp, ""); + surveyData.houseReference = idSurvey?.replace(regexp, ""); surveyData.CALCULATED = {}; surveyData.EXTERNAL = {}; - surveyData.COLLECTED = remoteSurveyData.data?.COLLECTED ?? getDataEmpty(surveyId); + surveyData.COLLECTED = remoteSurveyData.data?.COLLECTED ?? getDataEmpty(idSurvey); surveyData.lastLocalSaveDate = remoteSurveyData.data?.lastLocalSaveDate ?? remoteSurveyData.data.stateData?.date; surveyData.stateData = remoteSurveyData.stateData;