feat: affichage de noms de colonnes plus accessibles closes #45
This commit is contained in:
+80
-1
@@ -19,13 +19,92 @@ databases:
|
|||||||
Marché publics et leurs titulaires, données équivalentes au <a href="https://139bercy.github.io/decp-docs/schemas/">format réglementaire</a>. Une ligne = un titulaire de marché, donc ces données ne sont pas adaptées pour travailler avec les montants de marché ou compter les marchés.
|
Marché publics et leurs titulaires, données équivalentes au <a href="https://139bercy.github.io/decp-docs/schemas/">format réglementaire</a>. Une ligne = un titulaire de marché, donc ces données ne sont pas adaptées pour travailler avec les montants de marché ou compter les marchés.
|
||||||
size: 40
|
size: 40
|
||||||
download: https://www.data.gouv.fr/fr/datasets/r/8587fe77-fb31-4155-8753-f6a3c5e0f5c9
|
download: https://www.data.gouv.fr/fr/datasets/r/8587fe77-fb31-4155-8753-f6a3c5e0f5c9
|
||||||
|
column_labels:
|
||||||
|
id: Identifiant
|
||||||
|
uid: Identifiant unique
|
||||||
|
acheteur.id: SIRET acheteur
|
||||||
|
acheteur.nom: Nom de l'acheteur
|
||||||
|
procedure: Procédure d'achat
|
||||||
|
nature: Nature
|
||||||
|
dureeMois: Durée du marché (mois)
|
||||||
|
dateNotification: Date de notification
|
||||||
|
datePublicationDonnees: Date de publication des données
|
||||||
|
montant: Montant
|
||||||
|
objet: Objet
|
||||||
|
codeCPV: Code CPV
|
||||||
|
formePrix: Forme du prix
|
||||||
|
lieuExecution.code: Code du lieu d'exécution
|
||||||
|
lieuExecution.typeCode: Code du lieu d'exécution (type)
|
||||||
|
lieuExecution.nom: Nom du lieu d'exécution
|
||||||
|
titulaire.id: Identifiant du titulaire
|
||||||
|
titulaire.typeIdentifiant: Identifiant du titulaire (type)
|
||||||
|
titulaire.denominationSociale: Nom du titulaire
|
||||||
|
objetModification: Objet de la modification
|
||||||
|
source: Source des données
|
||||||
|
donneesActuelles: Données actuelles ?
|
||||||
|
anomalies: Anomalies
|
||||||
decp-sans-titulaires:
|
decp-sans-titulaires:
|
||||||
title: Marchés publics sans leurs titulaires
|
title: Marchés publics sans leurs titulaires
|
||||||
description_html: Marchés publics sans les titulaires (pas de colonnes titulaire). Une ligne = un marché, donc ces données sont adaptées pour travailler avec les montants de marchés et compter les marchés.
|
description_html: Marchés publics sans les titulaires (pas de colonnes titulaire). Une ligne = un marché, donc ces données sont adaptées pour travailler avec les montants de marchés et compter les marchés.
|
||||||
size: 40
|
size: 40
|
||||||
download: https://www.data.gouv.fr/fr/datasets/r/834c14dd-037c-4825-958d-0a841c4777ae
|
download: https://www.data.gouv.fr/fr/datasets/r/834c14dd-037c-4825-958d-0a841c4777ae
|
||||||
|
column_labels:
|
||||||
|
id: Identifiant
|
||||||
|
uid: Identifiant unique
|
||||||
|
acheteur.id: SIRET acheteur
|
||||||
|
acheteur.nom: Nom de l'acheteur
|
||||||
|
procedure: Procédure d'achat
|
||||||
|
nature: Nature
|
||||||
|
dureeMois: Durée du marché (mois)
|
||||||
|
dateNotification: Date de notification
|
||||||
|
datePublicationDonnees: Date de publication des données
|
||||||
|
montant: Montant
|
||||||
|
objet: Objet
|
||||||
|
codeCPV: Code CPV
|
||||||
|
formePrix: Forme du prix
|
||||||
|
lieuExecution.code: Code du lieu d'exécution
|
||||||
|
lieuExecution.typeCode: Code du lieu d'exécution (type)
|
||||||
|
lieuExecution.nom: Nom du lieu d'exécution
|
||||||
|
objetModification: Objet de la modification
|
||||||
|
source: Source des données
|
||||||
|
donneesActuelles: Données actuelles ?
|
||||||
|
anomalies: Anomalies
|
||||||
decp-titulaires:
|
decp-titulaires:
|
||||||
title: Données sur les titulaires et géolocalisation
|
title: Données sur les titulaires et géolocalisation
|
||||||
description_html: Données détaillées sur les titulaires, dont leur géolocalisation. Les colonnes <tt>formePrix</tt>, <tt>procedure</tt>, <tt>objetModification</tt> et <tt>datePublicationDonnees</tt> sont absentes. Une ligne = un titulaire de marché, donc ces données ne sont pas adaptées pour travailler avec les montants de marché ou compter les marchés.
|
description_html: Données détaillées sur les titulaires ayant un numéro SIRET, dont leur géolocalisation. Les colonnes <tt>formePrix</tt>, <tt>procedure</tt>, <tt>objetModification</tt> et <tt>datePublicationDonnees</tt> sont absentes. Une ligne = un titulaire de marché, donc ces données ne sont pas adaptées pour travailler avec les montants de marché ou compter les marchés.
|
||||||
size: 40
|
size: 40
|
||||||
download: https://www.data.gouv.fr/fr/datasets/r/25fcd9e6-ce5a-41a7-b6c0-f140abb2a060
|
download: https://www.data.gouv.fr/fr/datasets/r/25fcd9e6-ce5a-41a7-b6c0-f140abb2a060
|
||||||
|
column_labels:
|
||||||
|
id: Identifiant
|
||||||
|
uid: Identifiant unique
|
||||||
|
acheteur.id: SIRET acheteur
|
||||||
|
acheteur.nom: Nom de l'acheteur
|
||||||
|
procedure: Procédure d'achat
|
||||||
|
nature: Nature
|
||||||
|
dureeMois: Durée du marché (mois)
|
||||||
|
dateNotification: Date de notification
|
||||||
|
datePublicationDonnees: Date de publication des données
|
||||||
|
montant: Montant
|
||||||
|
objet: Objet
|
||||||
|
codeCPV: Code CPV
|
||||||
|
formePrix: Forme du prix
|
||||||
|
lieuExecution.code: Code du lieu d'exécution
|
||||||
|
lieuExecution.typeCode: Code du lieu d'exécution (type)
|
||||||
|
lieuExecution.nom: Nom du lieu d'exécution
|
||||||
|
objetModification: Objet de la modification
|
||||||
|
source: Source des données
|
||||||
|
donneesActuelles: Données actuelles ?
|
||||||
|
anomalies: Anomalies
|
||||||
|
codeAPE: Code APE
|
||||||
|
departement: Département
|
||||||
|
categorie: Catégorie
|
||||||
|
categorieJuridique: Catégorie juridique
|
||||||
|
categorieJuridiqueLibelle1: Catégorie juridique niveau 1
|
||||||
|
categorieJuridiqueLibelle2: Catégorie juridique niveau 2
|
||||||
|
etatEtablissement: État établissement
|
||||||
|
etatEntreprise: État entreprise
|
||||||
|
longitude: Longitude
|
||||||
|
latitude: Latitude
|
||||||
|
titulaire.id: Identifiant du titulaire
|
||||||
|
titulaire.typeIdentifiant: Identifiant du titulaire (type)
|
||||||
|
titulaire.denominationSociale: Nom du titulaire
|
||||||
@@ -6,12 +6,12 @@
|
|||||||
{% for column in display_columns %}
|
{% for column in display_columns %}
|
||||||
<th class="col-{{ column.name|to_css_class }}" scope="col" data-column="{{ column.name }}" data-column-type="{{ column.type }}" data-column-not-null="{{ column.notnull }}" data-is-pk="{% if column.is_pk %}1{% else %}0{% endif %}">
|
<th class="col-{{ column.name|to_css_class }}" scope="col" data-column="{{ column.name }}" data-column-type="{{ column.type }}" data-column-not-null="{{ column.notnull }}" data-is-pk="{% if column.is_pk %}1{% else %}0{% endif %}">
|
||||||
{% if not column.sortable %}
|
{% if not column.sortable %}
|
||||||
{{ column.name }}
|
{{ metadata.column_labels[column.name] }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if column.name == sort %}
|
{% if column.name == sort %}
|
||||||
<a href="{{ path_with_replaced_args(request, {'_sort_desc': column.name, '_sort': None, '_next': None}) }}" rel="nofollow">{{ column.name }} ▼</a>
|
<a href="{{ path_with_replaced_args(request, {'_sort_desc': column.name, '_sort': None, '_next': None}) }}" rel="nofollow">{{ metadata.column_labels[column.name] }} ▼</a>
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path_with_replaced_args(request, {'_sort': column.name, '_sort_desc': None, '_next': None}) }}" rel="nofollow">{{ column.name }}{% if column.name == sort_desc %} ▲{% endif %}</a>
|
<a href="{{ path_with_replaced_args(request, {'_sort': column.name, '_sort_desc': None, '_next': None}) }}" rel="nofollow">{{ metadata.column_labels[column.name] }}{% if column.name == sort_desc %} ▲{% endif %}</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</th>
|
</th>
|
||||||
|
|||||||
@@ -34,7 +34,7 @@
|
|||||||
style="color: #666" xmlns="http://www.w3.org/2000/svg"
|
style="color: #666" xmlns="http://www.w3.org/2000/svg"
|
||||||
width="28" height="28" viewBox="0 0 24 24" fill="none"
|
width="28" height="28" viewBox="0 0 24 24" fill="none"
|
||||||
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<title id="actions-menu-links-title">Actions</title>
|
<title id="actions-menu-links-title">Actions</title>
|
||||||
<circle cx="12" cy="12" r="3"></circle>
|
<circle cx="12" cy="12" r="3"></circle>
|
||||||
<path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"></path>
|
<path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"></path>
|
||||||
</svg></summary>
|
</svg></summary>
|
||||||
@@ -68,7 +68,7 @@
|
|||||||
<select name="_filter_column_{{ loop.index }}">
|
<select name="_filter_column_{{ loop.index }}">
|
||||||
<option value="">- supprimer le filtre -</option>
|
<option value="">- supprimer le filtre -</option>
|
||||||
{% for c in filter_columns %}
|
{% for c in filter_columns %}
|
||||||
<option{% if c == column %} selected{% endif %}>{{ c }}</option>
|
<option{% if c == column %} selected{% endif %} value="{{ c }}">{{ metadata.column_labels[c] }}</option>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</select>
|
</select>
|
||||||
</div><div class="select-wrapper filter-op">
|
</div><div class="select-wrapper filter-op">
|
||||||
@@ -85,7 +85,7 @@
|
|||||||
<select name="_filter_column">
|
<select name="_filter_column">
|
||||||
<option value="">- colonne -</option>
|
<option value="">- colonne -</option>
|
||||||
{% for column in filter_columns %}
|
{% for column in filter_columns %}
|
||||||
<option>{{ column }}</option>
|
<option value="{{ column }}">{{ metadata.column_labels[column] }}</option>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</select>
|
</select>
|
||||||
</div><div class="select-wrapper filter-op">
|
</div><div class="select-wrapper filter-op">
|
||||||
|
|||||||
Reference in New Issue
Block a user