Skip to content
Snippets Groups Projects
Commit 28d12f23 authored by Bastien DUMONT's avatar Bastien DUMONT :angel:
Browse files

feat: consultationMesuresDetaillees

parent 9f0c29f3
No related branches found
No related tags found
1 merge request!7Feat/rename endpoints
Pipeline #39562 passed
This commit is part of merge request !7. Comments created here will be created in the context of that merge request.
...@@ -20,8 +20,8 @@ const { ...@@ -20,8 +20,8 @@ const {
} = require('./parsing') } = require('./parsing')
const { const {
consulterDonneesTechniquesContractuelles, consulterDonneesTechniquesContractuelles,
userMaxPower, consultationMesuresDetailleesMaxPower,
userMesureDetailles, consultationMesuresDetaillees,
rechercherPoint, rechercherPoint,
commanderCollectePublicationMesures, commanderCollectePublicationMesures,
stopDataCollect, stopDataCollect,
...@@ -212,14 +212,16 @@ async function getData(url, apiAuthKey, userLogin, pointId) { ...@@ -212,14 +212,16 @@ async function getData(url, apiAuthKey, userLogin, pointId) {
const { response } = await soapRequest({ const { response } = await soapRequest({
url: url, url: url,
headers: sampleHeaders, headers: sampleHeaders,
xml: userMesureDetailles( xml: consultationMesuresDetaillees(
pointId, pointId,
userLogin, userLogin,
startDailyDateString, startDailyDateString,
endDateString endDateString,
'ENERGIE',
'EA'
), ),
}).catch(err => { }).catch(err => {
log('error', 'userMesureDetailles') log('error', 'consultationMesuresDetaillees')
log('error', err) log('error', err)
return err return err
}) })
...@@ -254,7 +256,12 @@ async function getMaxPowerData(url, apiAuthKey, userLogin, pointId) { ...@@ -254,7 +256,12 @@ async function getMaxPowerData(url, apiAuthKey, userLogin, pointId) {
const { response } = await soapRequest({ const { response } = await soapRequest({
url: url, url: url,
headers: sampleHeaders, headers: sampleHeaders,
xml: userMaxPower(pointId, userLogin, startDailyDateString, endDateString), xml: consultationMesuresDetailleesMaxPower(
pointId,
userLogin,
startDailyDateString,
endDateString
),
}).catch(err => { }).catch(err => {
log('error', 'getMaxPowerData') log('error', 'getMaxPowerData')
log('error', err) log('error', err)
...@@ -317,7 +324,7 @@ async function getDataHalfHour(url, apiAuthKey, userLogin, pointId) { ...@@ -317,7 +324,7 @@ async function getDataHalfHour(url, apiAuthKey, userLogin, pointId) {
const { response } = await soapRequest({ const { response } = await soapRequest({
url: url, url: url,
headers: sampleHeaders, headers: sampleHeaders,
xml: userMesureDetailles( xml: consultationMesuresDetaillees(
pointId, pointId,
userLogin, userLogin,
increamentedStartDateString, increamentedStartDateString,
...@@ -326,7 +333,7 @@ async function getDataHalfHour(url, apiAuthKey, userLogin, pointId) { ...@@ -326,7 +333,7 @@ async function getDataHalfHour(url, apiAuthKey, userLogin, pointId) {
'PA' 'PA'
), ),
}).catch(err => { }).catch(err => {
log('error', 'userMesureDetailles half-hour') log('error', 'consultationMesuresDetaillees half-hour')
log('error', err) log('error', err)
return err return err
}) })
......
...@@ -2,14 +2,16 @@ ...@@ -2,14 +2,16 @@
const { log } = require('cozy-konnector-libs') const { log } = require('cozy-konnector-libs')
/** /**
* Query SGE in order to get info * Get daily data up to 36 months & P max
* @param {number} pointId * @param {number} pointId
* @param {string} appLogin * @param {string} appLogin
* @param {string} startDt * @param {string} startDt
* @param {string} endDt * @param {string} endDt
* @param {'COURBE' | 'ENERGIE' | 'PMAX'} mesureType
* @param {'EA' | 'PA' | 'PMA'} unit
* @returns {string} * @returns {string}
*/ */
function userMesureDetailles( function consultationMesuresDetaillees(
pointId, pointId,
appLogin, appLogin,
startDt, startDt,
...@@ -19,7 +21,7 @@ function userMesureDetailles( ...@@ -19,7 +21,7 @@ function userMesureDetailles(
) { ) {
log( log(
'info', 'info',
`Query data ${mesureType}/${unit} between ${startDt} and ${endDt}` `consultationMesuresDetaillees - ${mesureType}/${unit} between ${startDt} and ${endDt}`
) )
return `<?xml version='1.0' encoding='utf-8'?> return `<?xml version='1.0' encoding='utf-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
...@@ -46,40 +48,28 @@ function userMesureDetailles( ...@@ -46,40 +48,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 * Get user max power
* @param {number} pointId * @param {number} pointId
* @param {string} appLogin * @param {string} appLogin
* @param {string} startDt * @param {string} startDt
* @param {string} endDt * @param {string} endDt
* @param {'COURBE' | 'ENERGIE' | 'PMAX'} mesureType
* @param {'EA' | 'PA' | 'PMA'} unit
* @returns {string} * @returns {string}
*/ */
function userMaxPower(pointId, appLogin, startDt, endDt) { function consultationMesuresDetailleesMaxPower(
log('info', `Query userMesureDetailles`) 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'?> return `<?xml version='1.0' encoding='utf-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:v2="http://www.enedis.fr/sge/b2b/services/consultationmesuresdetaillees/v2.0" xmlns:v2="http://www.enedis.fr/sge/b2b/services/consultationmesuresdetaillees/v2.0"
...@@ -90,8 +80,8 @@ function userMaxPower(pointId, appLogin, startDt, endDt) { ...@@ -90,8 +80,8 @@ function userMaxPower(pointId, appLogin, startDt, endDt) {
<demande> <demande>
<initiateurLogin>${appLogin}</initiateurLogin> <initiateurLogin>${appLogin}</initiateurLogin>
<pointId>${pointId}</pointId> <pointId>${pointId}</pointId>
<mesuresTypeCode>PMAX</mesuresTypeCode> <mesuresTypeCode>${mesureType}</mesuresTypeCode>
<grandeurPhysique>PMA</grandeurPhysique> <grandeurPhysique>${unit}</grandeurPhysique>
<soutirage>true</soutirage> <soutirage>true</soutirage>
<injection>false</injection> <injection>false</injection>
<dateDebut>${startDt}</dateDebut> <dateDebut>${startDt}</dateDebut>
...@@ -106,6 +96,30 @@ function userMaxPower(pointId, appLogin, startDt, endDt) { ...@@ -106,6 +96,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 * Use rechercherPoint to find user PDL if exist
* @param {string} name * @param {string} name
...@@ -300,8 +314,8 @@ function deleteBoConsent() { ...@@ -300,8 +314,8 @@ function deleteBoConsent() {
module.exports = { module.exports = {
consulterDonneesTechniquesContractuelles, consulterDonneesTechniquesContractuelles,
userMaxPower, consultationMesuresDetailleesMaxPower,
userMesureDetailles, consultationMesuresDetaillees,
rechercherPoint, rechercherPoint,
searchServiceSouscrit, searchServiceSouscrit,
commanderCollectePublicationMesures, commanderCollectePublicationMesures,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment