def run(self): while True: ecranlcd.setText("Connectez vous") ecranlcd.setRGB(0, 0, 255) time.sleep(5) lecture_id = ser.readline() #print(lecture_id) with open('/home/pi/ASAIOT/utils/user.csv', 'r') as file: lignes = file.read().splitlines() dataColum = lignes[0].split(',') lignes.remove(lignes[0]) liste_perso = [] for l in lignes: dataLigne = l.split(',') i = 0 personne = {} for c in dataColum: personne[c] = dataLigne[i] i += 1 liste_perso.append(personne) # print(personnes) file.closed for p in liste_perso: if (p['userId'] in lecture_id): self.name = p['nom'] self.userId = 1 if self.userId == 1: self.interraction() self.userId = 0
def interraction(self): msg = "Bonjour " + self.name ecranlcd.setText(msg) time.sleep(3) ecranlcd.setText("Faites un choix :") time.sleep(3) nonFini = True choix = thChoix.Choix() test = choix.debut() print(test)
def debut(self): self.step = 0 while self.step == 0: valPotentio = potentio.readValueChoix() if (valPotentio == 0): ecranlcd.setText("Poser un aliment") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): self.choice = False self.categories() else: ecranlcd.setText("Prendre un aliment") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): self.choice = True self.categories()
def categories(self): choix = False while choix == False: time.sleep(1) valPotentio = potentio.readValue() if (valPotentio == 0): ecranlcd.setText("Legumes") time.sleep(2) if (self.buttonV.verifRead(self.buttonV.button)): ecranlcd.setText("Choisissez parmi la liste : ") time.sleep(5) if (self.choice): #prendre un aliment choix = True self.prise() else: #poser choix = True self.depot() self.categorie = 0 elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() elif (valPotentio == 1): ecranlcd.setText("Fruits") time.sleep(2) if (self.buttonV.verifRead(self.buttonV.button)): self.categorie = 1 ecranlcd.setText("Choisissez parmi la liste : ") time.sleep(5) if (self.choice): #prendre un aliment choix = True self.prise() else: #poser choix = True self.depot() elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() elif (valPotentio == 2): ecranlcd.setText("Viandes") time.sleep(2) if (self.buttonV.verifRead(self.buttonV.button)): self.categorie = 2 ecranlcd.setText("Choisissez parmi la liste : ") time.sleep(5) if (self.choice): #prendre un aliment choix = True self.prise() else: #poser choix = True self.depot() elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() elif (valPotentio == 3): ecranlcd.setText("Poissons") time.sleep(2) if (self.buttonV.verifRead(self.buttonV.button)): self.categorie = 3 ecranlcd.setText("Choisissez parmi la liste : ") time.sleep(5) if (self.choice): #prendre un aliment choix = True self.prise() else: #poser choix = True self.depot() elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() elif (valPotentio == 4): ecranlcd.setText("Cuisines") time.sleep(2) if (self.buttonV.verifRead(self.buttonV.button)): self.categorie = 4 ecranlcd.setText("Choisissez parmi la liste : ") time.sleep(5) if (self.choice): #prendre un aliment choix = True self.prise() else: #poser choix = True self.depot() elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() elif (valPotentio == 5): ecranlcd.setText("Laitages") time.sleep(2) if (self.buttonV.verifRead(self.buttonV.button)): self.categorie = 5 ecranlcd.setText("Choisissez parmi la liste : ") time.sleep(5) if (self.choice): #prendre un aliment choix = True self.prise() else: #poser choix = True self.depot() elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() elif (valPotentio == 6): ecranlcd.setText("Boissons") time.sleep(2) if (self.buttonV.verifRead(self.buttonV.button)): self.categorie = 6 ecranlcd.setText("Choisissez parmi la liste : ") time.sleep(5) if (self.choice): #prendre un aliment choix = True self.prise() else: #poser choix = True self.depot() elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() else: ecranlcd.setText("Autres") time.sleep(2) if (self.buttonV.verifRead(self.buttonV.button)): self.categorie = 7 ecranlcd.setText("Choisissez parmi la liste : ") time.sleep(5) if (self.choice): #prendre un aliment choix = True self.prise() else: #poser choix = True self.depot() elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut()
def fin(self): ecranlcd.setText("Merci au revoir") time.sleep(2) ecranlcd.setText("") self.identif = 0 self.step = 8
def quantite(self): choix = False while choix == False: liste = self.listeQte(self.id) quantite = int(liste[0][2]) valPotentio = potentio.readFromNb(quantite) for i in range(1, quantite + 1): if (valPotentio == quantite - (i)): stri = str(i) ecranlcd.setText("" + stri + "") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): self.qte = i self.majStock(False) ecranlcd.setText("Retirez le(s) aliment(s) du frigo") time.sleep(5) choix = True self.fin() #fin elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() elif (valPotentio == quantite): stri = str(quantite) ecranlcd.setText("" + stri + "") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): self.qte = i self.majStock(False) ecranlcd.setText("Retirez le(s) aliment(s) du frigo") time.sleep(5) choix = True self.fin() #fin elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut()
def prise(self): categorie = self.convertCat(self.categorie) liste = self.listAl(categorie) taille = len(liste) choix = False while choix == False: #si la categorie ne possede aucuns aliments presents dans le frigo if (taille == 0): ecranlcd.setText( "Aucun aliment n est disponible pour cette categorie") time.sleep(5) choix = True self.categories() #retour aux categories else: valPotentio = potentio.readFromNb(taille) for i in range(1, taille + 1): #on n affiche pas les aliments qui ne sont pas presents dans le frigo if liste[i - 1][2] != '0': if (valPotentio == taille - (i)): ecranlcd.setText("" + liste[i - 1][1] + "") #nom des produits time.sleep(2) if (self.buttonV.verifRead(self.buttonV.button)): self.id = liste[i - 1][0] ecranlcd.setText("Choisissez une quantite : ") time.sleep(2) choix = True self.quantite() #choix quantite elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() elif (valPotentio == taille): ecranlcd.setText("" + liste[i - 1][1] + "") #nom des produits time.sleep(2) if (self.buttonV.verifRead(self.buttonV.button)): self.id = liste[i - 1][0] ecranlcd.setText("Choisissez une quantite : ") time.sleep(2) choix = True self.quantite() #choix quantite elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut()
def datePeremption(self): jour = 31 mois = 12 annee = 2035 choix = False while choix == False: if (self.stepdate == 1): valPotentio = potentio.readFromNb(jour) for i in range(1, jour + 1): if (valPotentio == jour - (i)): stri = str(i) ecranlcd.setText("" + stri + "/" + self.m + "/" + self.a + "") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): self.j = str(i) ecranlcd.setText("Choisissez le mois :") time.sleep(5) self.stepdate = 2 #mois elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() elif (valPotentio == jour): stri = str(jour) ecranlcd.setText("" + stri + "/" + self.m + "/" + self.a + "") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): self.j = str(jour) ecranlcd.setText("Choisissez le mois :") time.sleep(5) self.stepdate = 2 #mois elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() elif (self.stepdate == 2): valPotentio = potentio.readFromNb(mois) for i in range(1, mois + 1): if (valPotentio == mois - (i)): stri = str(i) ecranlcd.setText("" + self.j + "/" + stri + "/" + self.a + "") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): self.m = str(i) ecranlcd.setText("Choisissez l annee :") time.sleep(5) self.stepdate = 3 #annees elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText( "Vous avez annule, choisissez un jour") time.sleep(5) self.stepdate = 1 #on reviens sur les jours elif (valPotentio == mois): stri = str(mois) ecranlcd.setText("" + self.j + "/" + stri + "/" + self.a + "") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): self.m = str(mois) ecranlcd.setText("Choisissez l annee :") time.sleep(5) self.stepdate = 3 #annees elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText( "Vous avez annule, choisissez un jour") time.sleep(5) self.stepdate = 1 #on reviens sur les jours if (self.stepdate == 3): taille = annee - 2020 valPotentio = potentio.readFromNb(taille) for i in range(2020, annee + 1): if (valPotentio == annee - (i)): stri = str(i) ecranlcd.setText("" + self.j + "/" + self.m + "/" + stri + "") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): self.a = str(i) self.majDate() ecranlcd.setText( "Vous pouvez deposer le(s) aliment(s)") time.sleep(5) choix = True self.fin() #fin elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText( "Vous avez annule, choisssez un mois") time.sleep(5) self.stepdate = 2 #on reviens sur les mois elif (valPotentio == annee): stri = str(annee) ecranlcd.setText("" + self.j + "/" + self.m + "/" + stri + "") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): self.a = str(annee) self.majDate() ecranlcd.setText( "Vous pouvez deposer le(s) aliment(s)") time.sleep(5) choix = True self.fin() #fin elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText( "Vous avez annule, choisssez un mois") time.sleep(5) self.stepdate = 2 #on reviens sur les mois
def choixDate(self): choix = False while choix == False: valPotentio = potentio.readFromNb(2) if (valPotentio == 0): ecranlcd.setText("Oui") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): ecranlcd.setText("Entrez la date") time.sleep(5) choix = True self.datePeremption() #date de peremption elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() else: ecranlcd.setText("Non") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): ecranlcd.setText("Vous pouvez deposer le(s) aliment(s)") time.sleep(5) choix = True self.fin() #fin elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut()
def quantiteDepot(self): liste = self.listeQte(self.id) quantite = 10 #on met une quantite max a 10 choix = False while choix == False: valPotentio = potentio.readFromNb(quantite) for i in range(1, quantite + 1): if (valPotentio == quantite - (i)): stri = str(i) ecranlcd.setText("" + stri + "") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): self.qte = i self.majStock(True) ecranlcd.setText("Date de peremption ?") time.sleep(5) choix = True self.choixDate() #choix date de peremption elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() elif (valPotentio == quantite): stri = str(quantite) ecranlcd.setText("" + stri + "") time.sleep(3) if (self.buttonV.verifRead(self.buttonV.button)): self.qte = i self.majStock(True) ecranlcd.setText("Date de peremption ?") time.sleep(5) choix = True self.choixDate() #choix date de peremption elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut()
def depot(self): categorie = self.convertCat(self.categorie) liste = self.listAl(categorie) taille = len(liste) choix = False while choix == False: valPotentio = potentio.readFromNb(taille) for i in range(1, taille + 1): if (valPotentio == taille - (i)): ecranlcd.setText("" + liste[i - 1][1] + "") #nom des produits time.sleep(2) if (self.buttonV.verifRead(self.buttonV.button)): self.id = liste[i - 1][0] ecranlcd.setText("Choisissez une quantite : ") time.sleep(2) choix = True self.quantiteDepot() #choix quantite elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut() elif (valPotentio == taille): ecranlcd.setText("" + liste[i - 1][1] + "") #nom des produits time.sleep(2) if (self.buttonV.verifRead(self.buttonV.button)): self.id = liste[i - 1][0] ecranlcd.setText("Choisissez une quantite : ") time.sleep(2) choix = True self.quantiteDepot() #choix quantite elif (self.buttonD.verifRead(self.buttonD.button)): ecranlcd.setText("Vous avez annule") time.sleep(5) choix = True self.debut()