From 5d89a1fa06058443407ffc6b55b1af41bed70803 Mon Sep 17 00:00:00 2001
From: build-token <build-token>
Date: Mon, 1 Aug 2022 12:07:08 +0000
Subject: [PATCH] publish: feat: consultationMesuresDetaillees

generated from commit 28d12f239935b814a34a9a0032635f8d65e10971
---
 index.js | 103 +++++++++++++++++++++++++++++++++----------------------
 1 file changed, 62 insertions(+), 41 deletions(-)

diff --git a/index.js b/index.js
index 809f53a..5c33cfa 100644
--- a/index.js
+++ b/index.js
@@ -25,8 +25,8 @@ const {
 } = __webpack_require__(1544)
 const {
   consulterDonneesTechniquesContractuelles,
-  userMaxPower,
-  userMesureDetailles,
+  consultationMesuresDetailleesMaxPower,
+  consultationMesuresDetaillees,
   rechercherPoint,
   commanderCollectePublicationMesures,
   stopDataCollect,
@@ -217,14 +217,16 @@ async function getData(url, apiAuthKey, userLogin, pointId) {
   const { response } = await soapRequest({
     url: url,
     headers: sampleHeaders,
-    xml: userMesureDetailles(
+    xml: consultationMesuresDetaillees(
       pointId,
       userLogin,
       startDailyDateString,
-      endDateString
+      endDateString,
+      'ENERGIE',
+      'EA'
     ),
   }).catch(err => {
-    log('error', 'userMesureDetailles')
+    log('error', 'consultationMesuresDetaillees')
     log('error', err)
     return err
   })
@@ -259,7 +261,12 @@ async function getMaxPowerData(url, apiAuthKey, userLogin, pointId) {
   const { response } = await soapRequest({
     url: url,
     headers: sampleHeaders,
-    xml: userMaxPower(pointId, userLogin, startDailyDateString, endDateString),
+    xml: consultationMesuresDetailleesMaxPower(
+      pointId,
+      userLogin,
+      startDailyDateString,
+      endDateString
+    ),
   }).catch(err => {
     log('error', 'getMaxPowerData')
     log('error', err)
@@ -322,7 +329,7 @@ async function getDataHalfHour(url, apiAuthKey, userLogin, pointId) {
     const { response } = await soapRequest({
       url: url,
       headers: sampleHeaders,
-      xml: userMesureDetailles(
+      xml: consultationMesuresDetaillees(
         pointId,
         userLogin,
         increamentedStartDateString,
@@ -331,7 +338,7 @@ async function getDataHalfHour(url, apiAuthKey, userLogin, pointId) {
         'PA'
       ),
     }).catch(err => {
-      log('error', 'userMesureDetailles half-hour')
+      log('error', 'consultationMesuresDetaillees half-hour')
       log('error', err)
       return err
     })
@@ -221179,14 +221186,16 @@ module.exports = {
 const { log } = __webpack_require__(1)
 
 /**
- * Query SGE in order to get info
+ * Get daily data up to 36 months & P max
  * @param {number} pointId
  * @param {string} appLogin
  * @param {string} startDt
  * @param {string} endDt
+ * @param {'COURBE' | 'ENERGIE' | 'PMAX'} mesureType
+ * @param {'EA' | 'PA' | 'PMA'} unit
  * @returns {string}
  */
-function userMesureDetailles(
+function consultationMesuresDetaillees(
   pointId,
   appLogin,
   startDt,
@@ -221196,7 +221205,7 @@ function userMesureDetailles(
 ) {
   log(
     'info',
-    `Query data ${mesureType}/${unit} between ${startDt} and ${endDt}`
+    `consultationMesuresDetaillees - ${mesureType}/${unit} between ${startDt} and ${endDt}`
   )
   return `<?xml version='1.0' encoding='utf-8'?>
   <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
@@ -221223,40 +221232,28 @@ function userMesureDetailles(
   `
 }
 
-/**
- * Get user technical data (contract start date)
- * @param {number} pointId
- * @param {string} appLogin
- * @returns {string}
- */
-function consulterDonneesTechniquesContractuelles(pointId, appLogin) {
-  log('info', `Query userMesureDetailles`)
-  return `<?xml version='1.0' encoding='utf-8'?>
-  <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
-     xmlns:v2="http://www.enedis.fr/sge/b2b/services/consulterdonneestechniquescontractuelles/v1.0"
-     xmlns:v1="http://www.enedis.fr/sge/b2b/technique/v1.0">
-     <soapenv:Header/>
-     <soapenv:Body>
-        <v2:consulterDonneesTechniquesContractuelles>
-           <pointId>${pointId}</pointId>
-           <loginUtilisateur>${appLogin}</loginUtilisateur>
-           <autorisationClient>true</autorisationClient>
-        </v2:consulterDonneesTechniquesContractuelles>
-     </soapenv:Body>
-  </soapenv:Envelope>
-  `
-}
-
 /**
  * Get user max power
  * @param {number} pointId
  * @param {string} appLogin
  * @param {string} startDt
  * @param {string} endDt
+ * @param {'COURBE' | 'ENERGIE' | 'PMAX'} mesureType
+ * @param {'EA' | 'PA' | 'PMA'} unit
  * @returns {string}
  */
-function userMaxPower(pointId, appLogin, startDt, endDt) {
-  log('info', `Query userMesureDetailles`)
+function consultationMesuresDetailleesMaxPower(
+  pointId,
+  appLogin,
+  startDt,
+  endDt,
+  mesureType = 'PMAX',
+  unit = 'PMA'
+) {
+  log(
+    'info',
+    `consultationMesuresDetaillees - ${mesureType}/${unit} between ${startDt} and ${endDt}`
+  )
   return `<?xml version='1.0' encoding='utf-8'?>
   <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
      xmlns:v2="http://www.enedis.fr/sge/b2b/services/consultationmesuresdetaillees/v2.0"
@@ -221267,8 +221264,8 @@ function userMaxPower(pointId, appLogin, startDt, endDt) {
               <demande>
                   <initiateurLogin>${appLogin}</initiateurLogin>
                   <pointId>${pointId}</pointId>
-                  <mesuresTypeCode>PMAX</mesuresTypeCode>
-                  <grandeurPhysique>PMA</grandeurPhysique>
+                  <mesuresTypeCode>${mesureType}</mesuresTypeCode>
+                  <grandeurPhysique>${unit}</grandeurPhysique>
                   <soutirage>true</soutirage>
                   <injection>false</injection>
                   <dateDebut>${startDt}</dateDebut>
@@ -221283,6 +221280,30 @@ function userMaxPower(pointId, appLogin, startDt, endDt) {
   `
 }
 
+/**
+ * Get user technical data (contract start date)
+ * @param {number} pointId
+ * @param {string} appLogin
+ * @returns {string}
+ */
+function consulterDonneesTechniquesContractuelles(pointId, appLogin) {
+  log('info', `Query consulterDonneesTechniquesContractuelles`)
+  return `<?xml version='1.0' encoding='utf-8'?>
+  <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+     xmlns:v2="http://www.enedis.fr/sge/b2b/services/consulterdonneestechniquescontractuelles/v1.0"
+     xmlns:v1="http://www.enedis.fr/sge/b2b/technique/v1.0">
+     <soapenv:Header/>
+     <soapenv:Body>
+        <v2:consulterDonneesTechniquesContractuelles>
+           <pointId>${pointId}</pointId>
+           <loginUtilisateur>${appLogin}</loginUtilisateur>
+           <autorisationClient>true</autorisationClient>
+        </v2:consulterDonneesTechniquesContractuelles>
+     </soapenv:Body>
+  </soapenv:Envelope>
+  `
+}
+
 /**
  * Use rechercherPoint to find user PDL if exist
  * @param {string} name
@@ -221477,8 +221498,8 @@ function deleteBoConsent() {
 
 module.exports = {
   consulterDonneesTechniquesContractuelles,
-  userMaxPower,
-  userMesureDetailles,
+  consultationMesuresDetailleesMaxPower,
+  consultationMesuresDetaillees,
   rechercherPoint,
   searchServiceSouscrit,
   commanderCollectePublicationMesures,
-- 
GitLab