1 from qtsalome import QSqlQuery
2 from .tableDeBase import TableDeBase
4 class TableMaillages (TableDeBase):
6 TableDeBase.__init__(self,"Maillages")
7 self.setField(("id","nomMaillage","Script","fichier","idMailleur","Dimension","Seuil CPU","Seuil Ratio","Seuil Taille","Seuil Nb Maille","Commentaire"))
8 self.cols="(nomMaillage,nomScript,medResultat,idMailleur,dimension,seuilCPU,seuilRatio,seuilTaille,seuilNbMaille,commentaire)"
9 self.setTypeField(('int','str','str','str','int','int','int','int','int','int','str'),('id'))
11 def createSqlTable(self):
13 texteQuery ="create table Maillages(id integer primary key autoincrement, nomMaillage varchar(10), "
14 texteQuery+="nomScript varchar(40), medResultat varchar(15), idMailleur int, dimension int,"
15 texteQuery+="seuilCPU int, seuilRatio int, seuilTaille int, seuilNbMaille int, commentaire varchar(60), "
16 texteQuery+="foreign key (idMailleur) references Mailleur(id));"
17 print("creation de TableMaillages : " , query.exec_(texteQuery))
19 def getVal(self,idMaillage, nomChamp):
22 texteQuery ='select '+ nomChamp + ' from Maillages where id=' + str(idMaillage) + ";"
23 query.exec_(texteQuery)
25 valeur=query.value(0).toInt()[0]
27 print("plusieurs enregistrements dans Maillages pour ",str(idMaillage))
31 def dejaRemplie(self):
32 texteQuery="select * from Maillages where medResultat='/tmp/tetra.med';"
34 maQuery.exec_(texteQuery)
36 while(next(maQuery)): nb=nb+1
40 if self.dejaRemplie():
41 print("table Maillage deja initialisee")
43 # self.insereLigneAutoId(('Fiche_7566_TUNNEL', '/home/H77945/CAS_TEST/MAILLEUR/FICHE_7566_TUNNEL/Fiche_7566_TUNNEL.py', '/tmp/Fiche_7566_TUNNEL.med', 3,3,10,10,10,10, 'Maillage d un tunnel'))
44 # self.insereLigneAutoId(('Fiche_7957_AILETTE', '/home/H77945/CAS_TEST/MAILLEUR/FICHE_7957_AILETTE/Fiche_7957_AILETTE.py', '/tmp/Fiche_7957_AILETTE.med', 1,2,10,10,10,10, 'Maillage d une attache d aillette'))
46 def construitListeMaillages(self):
48 texteQuery="select id, nomScript,medResultat from Maillages;"
49 maQuery.exec_(texteQuery)
52 listeMaillages.append((maQuery.value(0).toInt()[0], maQuery.value(1).toString(), maQuery.value(2).toString()))
55 def verifieListeMaillages(self,listeMaillage):
58 for idM in listeMaillage:
59 texteQuery="select id, nomScript,medResultat from Maillages where id = " + str(idM) +';'
60 maQuery.exec_(texteQuery)
64 newListeMaillages.append((maQuery.value(0).toInt()[0], maQuery.value(1).toString(), maQuery.value(2).toString()))
66 print("impossible de traiter le maillage : ", idM)
67 return newListeMaillages
69 def getSeuilsPourMaillage(self,idMaillage):
70 texteQuery="select id,nomMaillage,seuilCPU,seuilRatio,seuilTaille,seuilNbMaille from Maillages where id = "+ str(idMaillage) +" ;"
72 maQuery.exec_(texteQuery)
74 l1 = maQuery.value(0).toInt()[0]
75 l2 = maQuery.value(1).toString()
76 l3 = maQuery.value(2).toInt()[0]
77 l4 = maQuery.value(3).toInt()[0]
78 l5 = maQuery.value(4).toInt()[0]
79 l6 = maQuery.value(5).toInt()[0]
80 return l1,l2,l3,l4,l5,l6
83 maillagesIdListe=[]; maillagesNomListe=[]
84 texteQuery="select id,nomMaillage from Maillages order by id;"
86 maQuery.exec_(texteQuery)
88 maillagesIdListe.append( maQuery.value(0).toInt()[0])
89 maillagesNomListe.append( maQuery.value(1).toString())
90 return maillagesIdListe, maillagesNomListe
92 def getMailleurId(self,idMaillage):
93 texteQuery="select idMailleur from Maillages where id = "+ str(idMaillage) +" ;"
96 print(maQuery.exec_(texteQuery))
97 maQuery.exec_(texteQuery)
99 idMailleur = maQuery.value(0).toInt()[0]