Explorar o código

CHG ajoute des options au script synchro compactage pour permettre un
lancement automatique

olivier.massot %!s(int64=7) %!d(string=hai) anos
pai
achega
d22d191108
Modificáronse 2 ficheiros con 16 adicións e 8 borrados
  1. 12 8
      qgis_sync_compactage.py
  2. 4 0
      readme.md

+ 12 - 8
qgis_sync_compactage.py

@@ -8,6 +8,10 @@
     - Une fois importés, ces dossiers sont renommés 'XXXXXX' > 'I_XXXXXX'
     - Les noms complets des chantiers sont récupérés dans la base Controles
 
+    Pour lancer l'import de tous les chantiers (pas de prompt pour la selection), utilisez l'option --all
+    Pour répondre automatiquement à la demande "Voulez-vous remplacer le chantier existant", utilisez les options --yes ou --no
+
+
 @author: olivier.massot, mai 2018
 """
 import logging
@@ -28,12 +32,12 @@ logconf.start("qgis_sync_compactage", logging.DEBUG)
 # # POUR TESTER, décommenter les lignes suivantes
 ##-----------------------------------------------
 
-# ControlesDb._path = Path(r"\\h2o\local\4-transversal\BDD\mdb_test\cg67Parc_data.mdb")
-# CSigDb.server = "TR-POSTGIS-02"
-# CSigDb.pwd = "Am5VOMkdFHU7WwrfVOs9"
-# COMPACTAGE_DIR = Path(__file__).parent / "resources" / "test_qgis_sync_compactage"
-# logger.handlers = [h for h in logger.handlers if (type(h) == logging.StreamHandler)]
-# logger.warning("<<<<<<<<<<<<<<   Mode TEST   >>>>>>>>>>>>>>>>>")
+ControlesDb._path = Path(r"\\h2o\local\4-transversal\BDD\mdb_test\cg67Parc_data.mdb")
+CSigDb.server = "TR-POSTGIS-02"
+CSigDb.pwd = "Am5VOMkdFHU7WwrfVOs9"
+COMPACTAGE_DIR = Path(__file__).parent / "resources" / "test_qgis_sync_compactage"
+logger.handlers = [h for h in logger.handlers if (type(h) == logging.StreamHandler)]
+logger.warning("<<<<<<<<<<<<<<   Mode TEST   >>>>>>>>>>>>>>>>>")
 
 ##-----------------------------------------------
 
@@ -51,7 +55,7 @@ def main():
 
     a_importer = [subdir for subdir in COMPACTAGE_DIR.dirs() if rxi.search(subdir.name)]
 
-    if a_importer:
+    if a_importer and not "--all" in sys.argv:
         reponse = input("""Les chantiers suivants peuvent être importés.
 Tapez les numéros correpsondant aux chantiers à importer, séparés par une virgule (ou * pour tout importer)
 Ex: "1", "1,2,5", "*"
@@ -140,7 +144,7 @@ Ex: "1", "1,2,5", "*"
 
         for row in qry:
             logger.warning("Un chantier de compactage portant ce nom existe déjà '{}' (id {})".format(chantier.name, row.id))
-            if input("Voulez-vous le remplacer? (o/n)") == "o":
+            if not "--no" in sys.argv and ("--yes" in sys.argv or input("Voulez-vous le remplacer? (o/n)") == "o"):
                 # delete the old chantier
                 csig_db.execute("""DELETE FROM t_points_compactage
                                   WHERE id_chantier = {};""".format(row.id))

+ 4 - 0
readme.md

@@ -102,6 +102,10 @@ recus des exploitants vers la base Postgis de ControlesSig
 - Une fois importés, ces dossiers sont renommés 'XXXXXX' > 'I_XXXXXX'
 - Les noms complets des chantiers sont récupérés dans la base Controles
 
+Pour lancer l'import de tous les chantiers (pas de prompt pour la selection), utilisez l'option `--all`
+Pour répondre automatiquement à la demande "Voulez-vous remplacer le chantier existant", utilisez les options `--yes` ou `--no`
+
+
 > Executé manuellement.
 
 ## qgis_sync_etancheite