Outil de création de plan de survol pour transmettre la demande de survol au Parc National du Mercantour
- Carto Editor
Cet outil est adaptable à d'autres instances, avec quelques modifications au niveau du schéma de la base de données.(Ref sql/schema.sql pour comprendre comment la base de données est structurée). Pour ce qui est du reste (Démarches simplifiées, génération du plan de vol), tout est paramétrable dans le fichier config.json (à la racine du projet).
git clone https://github.com/PnMercantour/demarches.git
cd demarches
pip install -r requirements.txt
Cet outil dépends de deux packages qui ne sont pas disponibles sur PyPi, le fichier 'requirements.txt' contient l'url vers le dépôt. Normalement, pip devrait pouvoir les installer sans problème.
Dupliquer le fichier
config-template.json
et le renommerconfig.json
les paramètres de base permettrons de lancer l'application. Voir Pour aller plus loin dans le paramétrage pour plus d'informations sur les paramètres disponibles.
Créer un fichier
.env
et le remplir avec les informations suivantes:
# General
IGN_KEY=decouverte
DS_KEY='OGM3NDUzNjAtZDM2MS00NGY4LWEyNTAtOTUyY2FjZmM1MTU1O2VNTnVKb3hnMWVCQXRtSENNdlVIRXJ4Yw=='
DB_CONNECTION=""
DEMARCHE_NUMBER=77818
BASEMAP_PATH="./raster/scan25.tif"
VERBOSE=0
VERBOSE_SQL=0
HOST="http://localhost:8050"
# Mail
SMTP_SERVER='ssl0.ovh.net'
SENDER_EMAIL='no_reply@ext.com'
SENDER_PASSWORD='123456'
Variable | Description |
---|---|
IGN_KEY |
Clé d'API pour l'API Géoportail(laisser decouverte si vous n'avez pas de clé) |
DS_KEY |
Clé d'API pour l'API Démarches Simplifiées (générable depuis le site avec un compte administrateur) |
DB_CONNECTION |
Connection string pour la base de données (voir ici pour plus d'informations) |
DEMARCHE_NUMBER |
Numéro de la démarche simplifiée (trouvable sur le dashboard de démarches simplifiées (en mode administrateur ou en instructeur)) |
BASEMAP_PATH |
Chemin vers le fichier raster servant de fond de carte |
VERBOSE |
Affiche les logs de l'application |
VERBOSE_SQL |
Affiche le détail des requêtes SQL |
HOST |
URL de l'application (Uniquement pour la creation de lien dans les mails, la vrai root se fait au lancement de l'application) |
SENDER_EMAIL |
Adresse mail de l'expéditeur des mails |
SENDER_PASSWORD |
Mot de passe de l'expéditeur des mails |
SMTP_SERVER |
Serveur SMTP pour l'envoi des mails |
python app.py
Créer un fichier
run.py
(à la racine du projet, le nom importe peu (run.py déjà ajouté au .gitignore)) et y mettre le code suivant:
from app import app
if __name__ == "__main__":
app.run(host='custom', port=custom, debug=False)
Remplacer custom
et custom
par les valeurs souhaitées
config.json
contient les paramètres de l'application, il est possible de le modifier pour adapter l'application à vos besoins.
{
"email-route":{
"Ubaye Verdon" : [],
"Haut Var Cians" : [],
"Vésubie" : [],
"Tinée" : [],
"Roya Bevera" : [],
"default" : []
},
"admin-emails" : [],
"email-templates": {
"st-requesting": {
"subject": "Validation ST dossier n°{dossier_number}",
"body-path": "./email-templates/st-requesting.txt"
},
"st-prescription":{
"subject": "Prescription ST dossier n°{dossier_number}",
"body-path": "./email-templates/st-prescription.txt"
},
"dossier-admin": {
"subject": "Dossier n°{dossier_number} inspection",
"body-path": "./email-templates/dossier-admin.txt"
}
},
"pdf" : {
"pdf-template":"vol_mercantour",
"title" : "Annexe",
"subtitle" : "Plan de vol",
"pdf-fields": []
},
"label-field":{
"st-prescription": "st-prescription",
"security-token" : "security-token",
"instructor-url" : "url-instructeur",
"flight-pdf-url" : "plan-de-vol",
"user-edit-link" : "user-edit-link"
},
"info-panel-fields":[]
}
Variable | Description |
---|---|
email-route |
Liste des adresses mail des instructeurs pour chaque région, le nom des régions peuvents être changé et corresponde à la colonne region dans la base de données, mettre dans default si il n'y a pas de route |
email-templates |
Liste des templates de mail, subject correspond au sujet du mail, body-path correspond au chemin vers le fichier contenant le corps du mail, vous pouvez personnalisé vos mails avec des variables en respectant la syntaxe (voir les mails par défaut) |
label-field |
Liste des nom des variables des champs et annotations de démarches simplifiées requis par l'application (propre à la démarche) |
info-panel-fields |
Liste des champs démarches simplifiées à afficher dans le panel information |
pdf-fields |
Liste des champs démarches simplifiées à afficher dans le pdf de survol final |
pdf-template |
Nom du template de pdf à utiliser qui est le nom du fichier html et css présent dans le dossier pdf-templates , pour rajouter votre propre squelette, rajouter les dans ce dossier avec le même nom pour le css et html |
title |
Titre du pdf (peut être formatté) |
subtitle |
Sous-titre du pdf (peut être formatté ) |
admin-emails |
Liste des adresses mail dont le mail d'inspection par la direction sera envoyé à. |