UNPKG

@tricoteuses/senat

Version:

Handle French Sénat's open data

338 lines (337 loc) 9.21 kB
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)); };