@tricoteuses/senat
Version:
Handle French Sénat's open data
338 lines (337 loc) • 9.21 kB
JavaScript
import { assFieldsToTrim, audFieldsToTrim, auteurFieldsToTrim, dateSeanceFieldsToTrim, deccocFieldsToTrim, denrapFieldsToTrim, docattFieldsToParseInt, docattFieldsToTrim, ecrFieldsToTrim, etaloiFieldsToTrim, lecassFieldsToTrim, lecassrapFieldsToTrim, lectureFieldsToTrim, loiFieldsToTrim, orgFieldsToTrim, oritxtFieldsToTrim, quaFieldsToTrim, rapFieldsToParseInt, rapFieldsToTrim, raporgFieldsToTrim, scrFieldsToTrim, texteFieldsToParseInt, texteFieldsToTrim, typattFieldsToTrim, typlecFieldsToTrim, typloiFieldsToTrim, typtxtFieldsToTrim, typurlFieldsToTrim, } from '../types/dosleg';
import { dbByName } from "../databases";
import { parseIntFields, trimFieldsRight } from '../fields';
export const getAsss = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM ass
WHERE codass IN ($<ids:list>)
`, {
ids,
})).map((ass) => trimFieldsRight(assFieldsToTrim, ass));
};
export const getAudsFromLecassidts = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM aud
WHERE lecassidt IN ($<ids:list>)
`, {
ids,
})).map((aud) => trimFieldsRight(audFieldsToTrim, aud));
};
export const getAuteurs = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM auteur
WHERE autcod IN ($<ids:list>)
`, {
ids,
})).map((auteur) => trimFieldsRight(auteurFieldsToTrim, auteur));
};
export const getDatesSeancesFromLecassidts = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM date_seance
WHERE lecidt IN ($<ids:list>)
`, {
ids,
})).map((dateSeance) => trimFieldsRight(dateSeanceFieldsToTrim, dateSeance));
};
export const getDeccocs = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM deccoc
WHERE deccoccod IN ($<ids:list>)
`, {
ids,
})).map((deccoc) => trimFieldsRight(deccocFieldsToTrim, deccoc));
};
export const getDenraps = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM denrap
WHERE coddenrap IN ($<ids:list>)
`, {
ids,
})).map((denrap) => trimFieldsRight(denrapFieldsToTrim, denrap));
};
export const getDocattsFromRapcods = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM docatt
WHERE rapcod IN($<ids:list>)
`, {
ids,
})).map((docatt) => parseIntFields(docattFieldsToParseInt, trimFieldsRight(docattFieldsToTrim, docatt)));
};
export const getEcrsFromRapcods = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM ecr
WHERE rapcod IN($<ids:list>)
`, {
ids,
})).map((ecr) => trimFieldsRight(ecrFieldsToTrim, ecr));
};
export const getEcrsFromTexcods = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM ecr
WHERE texcod IN($<ids:list>)
`, {
ids,
})).map((ecr) => trimFieldsRight(ecrFieldsToTrim, ecr));
};
export const getEtalois = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM etaloi
WHERE etaloicod IN ($<ids:list>)
`, {
ids,
})).map((etaloi) => trimFieldsRight(etaloiFieldsToTrim, etaloi));
};
export const getLecasssFromLecidts = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM lecass
WHERE lecidt IN ($<ids:list>)
`, {
ids,
})).map((lecass) => trimFieldsRight(lecassFieldsToTrim, lecass));
};
export const getLecassrapsFromLecassidts = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM lecassrap
WHERE lecassidt IN ($<ids:list>)
`, {
ids,
})).map((lecassrap) => trimFieldsRight(lecassrapFieldsToTrim, lecassrap));
};
export const getLecturesFromLoicods = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM lecture
WHERE loicod IN ($<ids:list>)
`, {
ids,
})).map((lecture) => trimFieldsRight(lectureFieldsToTrim, lecture));
};
export const getLois = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM loi
WHERE loicod IN ($<ids:list>)
`, {
ids,
})).map((loi) => trimFieldsRight(loiFieldsToTrim, loi));
};
export const getAllLois = async () => {
return (await dbByName.dosleg.any(`
SELECT *
FROM loi
`)).map((loi) => trimFieldsRight(loiFieldsToTrim, loi));
};
export const getOrgs = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM org
WHERE orgcod IN ($<ids:list>)
`, {
ids,
})).map((org) => trimFieldsRight(orgFieldsToTrim, org));
};
export const getOrgsFromRapcods = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM org
WHERE orgcod IN (
SELECT orgcod
FROM raporg
WHERE rapcod IN ($<ids:list>)
)
`, {
ids,
})).map((org) => trimFieldsRight(orgFieldsToTrim, org));
};
export const getRaporgsFromOrgcods = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM raporg
WHERE orgcod IN ($<ids:list>)
`, {
ids,
})).map((raporg) => trimFieldsRight(raporgFieldsToTrim, raporg));
};
export const getOritxts = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM oritxt
WHERE oritxtcod IN ($<ids:list>)
`, {
ids,
})).map((oritxt) => trimFieldsRight(oritxtFieldsToTrim, oritxt));
};
export const getQuas = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM qua
WHERE quacod IN ($<ids:list>)
`, {
ids,
})).map((qua) => trimFieldsRight(quaFieldsToTrim, qua));
};
export const getRaps = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM rap
WHERE rapcod IN ($<ids:list>)
`, {
ids,
})).map((rap) => parseIntFields(rapFieldsToParseInt, trimFieldsRight(rapFieldsToTrim, rap)));
};
export const getScrsFromCodes = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM scr
WHERE code IN ($<ids:list>)
`, {
ids,
})).map((scr) => trimFieldsRight(scrFieldsToTrim, scr));
};
export const getTextesFromLecassidts = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM texte
WHERE lecassidt IN ($<ids:list>)
`, {
ids,
})).map((texte) => parseIntFields(texteFieldsToParseInt, trimFieldsRight(texteFieldsToTrim, texte)));
};
export const getTypatts = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM typatt
WHERE typattcod IN ($<ids:list>)
`, {
ids,
})).map((typatt) => trimFieldsRight(typattFieldsToTrim, typatt));
};
export const getTyplecs = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM typlec
WHERE typleccod IN ($<ids:list>)
`, {
ids,
})).map((typlec) => trimFieldsRight(typlecFieldsToTrim, typlec));
};
export const getTyplois = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM typloi
WHERE typloicod IN ($<ids:list>)
`, {
ids,
})).map((typloi) => trimFieldsRight(typloiFieldsToTrim, typloi));
};
export const getTyptxts = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM typtxt
WHERE typtxtcod IN ($<ids:list>)
`, {
ids,
})).map((typtxt) => trimFieldsRight(typtxtFieldsToTrim, typtxt));
};
export const getTypurls = async (ids) => {
if (ids.length === 0) {
return [];
}
return (await dbByName.dosleg.any(`
SELECT *
FROM typurl
WHERE typurl IN ($<ids:list>)
`, {
ids,
})).map((typurl) => trimFieldsRight(typurlFieldsToTrim, typurl));
};