olivier.massot 7 роки тому
батько
коміт
64576d35ba
3 змінених файлів з 14 додано та 13 видалено
  1. 1 1
      core/pde.py
  2. 1 1
      requirements.txt
  3. 12 11
      wincan2ctrl.py

+ 1 - 1
core/pde.py

@@ -313,7 +313,7 @@ class InterventionITV(Model):
         self.strEquipeId = "", str
         self.intlMaterielID = 0, int
         self.bytCommandeId = 0, int
-        self.lngTroncon = 0, int
+        self.lngTroncon = 0, float
         self.SI_InspMethod = "", str
         self.SI_ReasonOfInspection = "", str
 

+ 1 - 1
requirements.txt

@@ -4,7 +4,7 @@ lxml
 python-dateutil
 pyyaml
 pyshp
-dateutil
+python-dateutil
 
 # Pour l'edition manuelle
 PyQt5

+ 12 - 11
wincan2ctrl.py

@@ -123,7 +123,7 @@ logger.info("Code chantier: %s", chantier_id)
 logger.info("Numero d'intervention: %s", interv_id)
 logger.info("Numero de commande: %s", commande_id)
 if not args["-o"]:
-    if not input("Voulez-vous continuer? (o/n)") != 'o':
+    if not input("Voulez-vous continuer? (o/n)") == 'o':
         if input("Etes-vous sûr de vouloir annuler l'opération? (o/n)") == 'o':
             logger.info("Opération annulée par l'utilisateur")
             sys.exit(1)
@@ -131,12 +131,13 @@ if not args["-o"]:
 
 # Recuperation des données de l'intervention
 sql = """SELECT SI_T.SI_InspName, Sum(S_T.S_Sectionlength) AS Long_insp, Min(SI_T.SI_Date) AS mindate, Max(SI_T.SI_Date) AS maxdate,
-            SI_T.SI_Operator AS Equipe, SI_T.SI_Vehicle AS Mat, SI_T.SI_InspMethod AS InspMethod, SI_T.SI_ReasonOfInspection,
-            S_T.S_SectionPurpose AS nature, S_T.S_SectionUse AS Fonction, S_T.S_SectionType AS Type
+        First(SI_T.SI_Operator) AS Equipe, First(SI_T.SI_Vehicle) AS Mat, First(SI_T.SI_InspMethod) AS InspMethod,
+        First(SI_T.SI_ReasonOfInspection) AS SI_ReasonOfInspection, First(S_T.S_SectionPurpose) AS nature,
+        First(S_T.S_SectionUse) AS Fonction, First(S_T.S_SectionType) AS Type
         FROM S_T INNER JOIN SI_T ON S_T.S_ID = SI_T.SI_Section_ID
         WHERE (((SI_T.[SI_InspName])='{}'))
-        GROUP BY SI_T.SI_InspName, SI_T.SI_Operator, SI_T.SI_Vehicle, SI_T.SI_InspMethod, SI_T.SI_ReasonOfInspection, S_T.S_SectionPurpose, S_T.S_SectionUse, S_T.S_SectionType
-        HAVING Sum(S_T.S_Sectionlength) Is Not Null AND SI_T.SI_Operator Is Not Null AND SI_T.SI_Vehicle Is Not Null AND SI_T.SI_InspMethod Is Not Null
+        GROUP BY SI_T.SI_InspName
+        HAVING Sum(S_T.S_Sectionlength) Is Not Null AND First(SI_T.SI_Operator) Is Not Null AND First(SI_T.SI_Vehicle) Is Not Null AND First(SI_T.SI_InspMethod) Is Not Null
         """.format(inspname)
 try:
     inspection = next(wincan_db.read(sql))
@@ -202,7 +203,7 @@ for data in wincan_db.read(sql):
     inspection.byt_interv_id = data.SI_Spare2
     inspection.si_autonumber = data.SI_AutoNumber
     inspection.classement_troncons = data.SI_MediaNumber1
-    inspection.nom_troncon = ("{0}-{1}" if data.S_SectionFlow == 2 else "{1}-{0}").format(data.S_StartNode, data.S_EndNode)
+    inspection.nom_troncon = "{r1}-{r2}".format(r1=data.S_StartNode, r2=data.S_EndNode) if data.S_SectionFlow == '2' else "{r2}-{r1}".format(r1=data.S_StartNode, r2=data.S_EndNode)
     inspection.startnode_type = get_lib(data.S_StartNodeType, "S_StartNodeType")
     inspection.endnode_type = get_lib(data.S_StartNodeType, "S_EndNodeType")
     inspection.sens_ecoul = ">>" if data.S_SectionFlow == '1' else ('<<' if data.S_SectionFlow == '2' else '')
@@ -234,15 +235,15 @@ for data in wincan_db.read(sql):
         inspection.nb_ops += 1
 
         if opdata.SO_Rate == 1:
-            inspection.rate_1 = inspection.rate_1 + 1 if inspection.rate_1 else inspection.rate_1 = 1
+            inspection.rate_1 = inspection.rate_1 + 1 if inspection.rate_1 else 1
         elif opdata.SO_Rate == 2:
-            inspection.rate_2 = inspection.rate_2 + 1 if inspection.rate_2 else inspection.rate_2 = 1
+            inspection.rate_2 = inspection.rate_2 + 1 if inspection.rate_2 else 1
         elif opdata.SO_Rate == 3:
-            inspection.rate_3 = inspection.rate_3 + 1 if inspection.rate_3 else inspection.rate_3 = 1
+            inspection.rate_3 = inspection.rate_3 + 1 if inspection.rate_3 else 1
         elif opdata.SO_Rate == 4:
-            inspection.rate_4 = inspection.rate_4 + 1 if inspection.rate_4 else inspection.rate_4 = 1
+            inspection.rate_4 = inspection.rate_4 + 1 if inspection.rate_4 else 1
         elif opdata.SO_Rate == 5:
-            inspection.rate_5 = inspection.rate_5 + 1 if inspection.rate_5 else inspection.rate_5 = 1
+            inspection.rate_5 = inspection.rate_5 + 1 if inspection.rate_5 else 1
         elif not opdata.SO_Rate:
             pass
         elif opdata.SO_Rate >= 6: