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

feat: rename endpoints

parent 0b306bb5
No related branches found
No related tags found
1 merge request!7Feat/rename endpoints
......@@ -28,7 +28,6 @@ desktop.ini
.floo
.flooignore
.idea/
.vscode/
# Default
# /!\ KEEP THIS SECTION THE LAST ONE
!.gitkeep
{
"workbench.colorCustomizations": {
"activityBar.activeBackground": "#65c89b",
"activityBar.activeBorder": "#945bc4",
"activityBar.background": "#65c89b",
"activityBar.foreground": "#15202b",
"activityBar.inactiveForeground": "#15202b99",
"activityBarBadge.background": "#945bc4",
"activityBarBadge.foreground": "#e7e7e7",
"sash.hoverBorder": "#65c89b",
"statusBar.background": "#42b883",
"statusBar.foreground": "#15202b",
"statusBarItem.hoverBackground": "#359268",
"statusBarItem.remoteBackground": "#42b883",
"statusBarItem.remoteForeground": "#15202b",
"titleBar.activeBackground": "#42b883",
"titleBar.activeForeground": "#15202b",
"titleBar.inactiveBackground": "#42b88399",
"titleBar.inactiveForeground": "#15202b99"
},
"peacock.color": "#42b883"
}
......@@ -19,18 +19,21 @@ const {
parseValue,
} = require('./parsing')
const {
userTechnicalData,
userMaxPower,
userMesureDetailles,
consulterDonneesTechniquesContractuelles,
consultationMesuresDetailleesMaxPower,
consultationMesuresDetaillees,
rechercherPoint,
activateDataCollect,
stopDataCollect,
getInseeCode,
commanderCollectePublicationMesures,
commanderArretServiceSouscritMesures,
} = require('./requests/sge')
const {
updateBoConsent,
createBoConsent,
getBoConsent,
deleteBoConsent,
} = require('./request')
} = require('./requests/bo')
const { getInseeCode } = require('./requests/insee')
moment.locale('fr') // set the language
moment.tz.setDefault('Europe/Paris') // set the timezone
......@@ -88,13 +91,13 @@ async function start(fields, cozyParameters) {
// loginUtilisateur,
// fields.pointId
// )
await activateDataCollect()
await commanderCollectePublicationMesures()
await updateBoConsent()
} else {
await getBoConsent()
if (!(await verifyUserIdentity(fields))) {
await deleteBoConsent()
await stopDataCollect()
await commanderArretServiceSouscritMesures()
throw errors.TERMS_VERSION_MISMATCH
}
}
......@@ -175,7 +178,7 @@ async function getDataStartDate(url, apiAuthKey, userLogin, pointId) {
const { response } = await soapRequest({
url: url,
headers: sampleHeaders,
xml: userTechnicalData(pointId, userLogin),
xml: consulterDonneesTechniquesContractuelles(pointId, userLogin),
}).catch(err => {
log('error', 'technicalDataResponse')
log('error', err)
......@@ -212,14 +215,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
})
......@@ -254,7 +259,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)
......@@ -317,7 +327,7 @@ async function getDataHalfHour(url, apiAuthKey, userLogin, pointId) {
const { response } = await soapRequest({
url: url,
headers: sampleHeaders,
xml: userMesureDetailles(
xml: consultationMesuresDetaillees(
pointId,
userLogin,
increamentedStartDateString,
......@@ -326,7 +336,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
})
......
// @ts-check
const { log } = require('cozy-konnector-libs')
/**
*
*/
function createBoConsent() {
//TODO: Implement
log('info', `Query createBoConsent`)
throw new Error('Function not implemented.')
}
/**
*
*/
function updateBoConsent() {
//TODO: Implement
log('info', `Query updateBoConsent`)
throw new Error('Function not implemented.')
}
/**
*
*/
function getBoConsent() {
//TODO: Implement
log('info', `Query getBoConsent`)
throw new Error('Function not implemented.')
}
/**
*
*/
function deleteBoConsent() {
//TODO: deleteBoConsent
log('info', `Query createBoConsent`)
throw new Error('Function not implemented.')
}
module.exports = {
createBoConsent,
updateBoConsent,
getBoConsent,
deleteBoConsent,
}
// @ts-check
const { log } = require('cozy-konnector-libs')
/**
* Return inseeCode given a postalCode
* @param {string} postalCode
* @return {string} inseeCode
*/
function getInseeCode(postalCode) {
//TODO: Implement
log('info', `Query getInseeCode for postalCode ${postalCode}`)
throw new Error('Function not implemented.')
}
module.exports = {
getInseeCode,
}
......@@ -2,24 +2,26 @@
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 {string} appLogin
* @param {string} startDt
* @param {string} endDt
* @param {string} startDate
* @param {string} endDate
* @param {'COURBE' | 'ENERGIE' | 'PMAX'} mesureType
* @param {'EA' | 'PA' | 'PMA'} unit
* @returns {string}
*/
function userMesureDetailles(
function consultationMesuresDetaillees(
pointId,
appLogin,
startDt,
endDt,
startDate,
endDate,
mesureType = 'ENERGIE',
unit = 'EA'
) {
log(
'info',
`Query data ${mesureType}/${unit} between ${startDt} and ${endDt}`
`Query consultationMesuresDetaillees - ${mesureType}/${unit} between ${startDate} and ${endDate}`
)
return `<?xml version='1.0' encoding='utf-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
......@@ -35,8 +37,8 @@ function userMesureDetailles(
<grandeurPhysique>${unit}</grandeurPhysique>
<soutirage>true</soutirage>
<injection>false</injection>
<dateDebut>${startDt}</dateDebut>
<dateFin>${endDt}</dateFin>
<dateDebut>${startDate}</dateDebut>
<dateFin>${endDate}</dateFin>
<mesuresCorrigees>false</mesuresCorrigees>
<accordClient>true</accordClient>
</demande>
......@@ -46,40 +48,28 @@ function userMesureDetailles(
`
}
/**
* Get user technical data
* @param {number} pointId
* @param {string} appLogin
* @returns {string}
*/
function userTechnicalData(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 {string} startDate
* @param {string} endDate
* @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,
startDate,
endDate,
mesureType = 'PMAX',
unit = 'PMA'
) {
log(
'info',
`Query consultationMesuresDetaillees - ${mesureType}/${unit} between ${startDate} and ${endDate}`
)
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"
......@@ -90,12 +80,12 @@ 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>
<dateFin>${endDt}</dateFin>
<dateDebut>${startDate}</dateDebut>
<dateFin>${endDate}</dateFin>
<mesuresPas>P1D</mesuresPas>
<mesuresCorrigees>false</mesuresCorrigees>
<accordClient>true</accordClient>
......@@ -106,15 +96,40 @@ 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
* @param {string} postalCode
* @param {string} inseeCode
* @param {string} address
* @returns {string} PDL
*/
function rechercherPoint(appLogin, name, postalCode, inseeCode, address) {
log('info', `Query rechercherPoint`)
log('info', `Query rechercherPoint - postal code: ${postalCode}`)
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/rechercherpoint/v2.0"
......@@ -144,8 +159,8 @@ function rechercherPoint(appLogin, name, postalCode, inseeCode, address) {
* @param {string} pointId
* @returns {*}
*/
function searchServiceSouscrit(appLogin, contractId, pointId) {
log('info', `Query activateDataCollect`)
function rechercherServicesSouscritsMesures(appLogin, contractId, pointId) {
log('info', `Query rechercherServicesSouscritsMesures`)
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/rechercherservicessouscritsmesures/v1.0"
......@@ -173,7 +188,7 @@ function searchServiceSouscrit(appLogin, contractId, pointId) {
* @param {string} endDate
* @returns {*}
*/
function activateDataCollect(
function commanderCollectePublicationMesures(
appLogin,
contractId,
pointId,
......@@ -181,7 +196,10 @@ function activateDataCollect(
startDate,
endDate
) {
log('info', `Query activateDataCollect`)
log(
'info',
`Query commanderCollectePublicationMesures - between ${startDate} and ${endDate}`
)
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/commandercollectepublicationmesures/v3.0"
......@@ -220,15 +238,23 @@ function activateDataCollect(
}
/**
*
* Stop the user consent
* @param {string} appLogin
* @param {string} contractId
* @param {string} pointId
* @param {string} serviceSouscritId
* @returns {*}
*/
function stopDataCollect(appLogin, contractId, pointId, serviceSouscritId) {
log('info', `Query stopDataCollect`)
function commanderArretServiceSouscritMesures(
appLogin,
contractId,
pointId,
serviceSouscritId
) {
log(
'info',
`Query commanderArretServiceSouscritMesures - serviceSouscritId: ${serviceSouscritId}`
)
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/commanderarretservicesouscritmesures/v1.0"
......@@ -252,63 +278,12 @@ function stopDataCollect(appLogin, contractId, pointId, serviceSouscritId) {
</soapenv:Envelope>`
}
/**
* Return inseeCode given a postalCode
* @param {string} postalCode
* @return {string} inseeCode
*/
function getInseeCode(postalCode) {
//TODO: Implement
log('info', `Query getInseeCode for postalCode ${postalCode}`)
throw new Error('Function not implemented.')
}
/**
*
*/
function createBoConsent() {
//TODO: Implement
log('info', `Query createBoConsent`)
throw new Error('Function not implemented.')
}
/**
*
*/
function updateBoConsent() {
//TODO: Implement
log('info', `Query updateBoConsent`)
throw new Error('Function not implemented.')
}
/**
*
*/
function getBoConsent() {
//TODO: Implement
log('info', `Query getBoConsent`)
throw new Error('Function not implemented.')
}
/**
*
*/
function deleteBoConsent() {
//TODO: deleteBoConsent
log('info', `Query createBoConsent`)
throw new Error('Function not implemented.')
}
module.exports = {
userTechnicalData,
userMaxPower,
userMesureDetailles,
consulterDonneesTechniquesContractuelles,
consultationMesuresDetailleesMaxPower,
consultationMesuresDetaillees,
rechercherPoint,
searchServiceSouscrit,
activateDataCollect,
stopDataCollect,
getInseeCode,
createBoConsent,
updateBoConsent,
getBoConsent,
deleteBoConsent,
rechercherServicesSouscritsMesures,
commanderCollectePublicationMesures,
commanderArretServiceSouscritMesures,
}
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