Ejemplo n.º 1
0
 def on_elimina_pesata_button_clicked(self, button):
     rpn = None
     if self.editRiga:
         dao = RigaInfoPeso().getRecord(id=self.editRiga.id)
         if dao:
             dao.delete()
         self._editModel.remove(self._editIterator)
         self._clear()
     self._calcolaDifferenzaPeso()
Ejemplo n.º 2
0
    def on_aggiungi_pesata_button_clicked(self, button):

        data_pesata = self.data_pesata_datewidget.get_text()
        peso = self.peso_pesata_entry.get_text() or "0"
        mgrassa = self.massa_grassa_entry.get_text() or "0"
        mmagraeacqua = self.massa_magra_e_acqua_entry.get_text() or "0"
        acqua = self.acqua_entry.get_text() or "0"
        bufferNoteRiga= self.note_riga_pesata_textview.get_buffer()
        note_riga = bufferNoteRiga.get_text(bufferNoteRiga.get_start_iter(), bufferNoteRiga.get_end_iter(),True) or ""

        if not data_pesata:
            obligatoryField(None,
                self.data_pesata_datewidget,
                'Inserire una data pesata !')
        if not peso:
            obligatoryField(None,
                self.peso_pesata_entry,
                'Inserire un peso !')

        if float(mgrassa.replace(",","."))+float(mmagraeacqua.replace(",",".")) > float(peso.replace(",","."))+float(0.1):
            messageInfo(msg = "ATTENZIONE! La somma di M.GRASSA , M.MAGRA e ACQUA\n è superiore al peso totale")
            return

        if float(mmagraeacqua.replace(",",".")) < float(acqua.replace(",",".")):
            messageInfo(msg = "ATTENZIONE! La M.MAGRA e ACQUA\n è inferiore alla sola ACQUA")
            return

        model = self.righe_pesata_treeview.get_model()
        modelo = len(model)
        if self.editRiga:
            riga = self.editRiga
            riga.numero = self.editRiga.numero
        else:
            riga = RigaInfoPeso()
            riga.numero =len(model)+1

        tipo_tratt = findStrFromCombobox(self.id_tipo_trattamento_customcombobox.combobox,2)
        riga.id_tipo_trattamento = findIdFromCombobox(self.id_tipo_trattamento_customcombobox.combobox)
        riga.data_registrazione = stringToDate(data_pesata)
        riga.note = note_riga
        riga.peso = Decimal(peso.replace(",","."))
        riga.massa_grassa = Decimal(mgrassa.replace(",","."))
        riga.massa_magra_e_acqua = Decimal(mmagraeacqua.replace(",","."))
        riga.acqua = Decimal(acqua.replace(",","."))
        if self.editRiga:
            self.rigaIter[0] = riga
#            self.rigaIter[1] = str(riga.numero)
            self.rigaIter[1] = dateToString(riga.data_registrazione)
            self.rigaIter[2] = str(mN(riga.peso,1))
            self.rigaIter[3] = str(0)
            self.rigaIter[4] = str(mN(riga.massa_grassa,1))
            self.rigaIter[5] = str(mN(riga.massa_magra_e_acqua,1))
            self.rigaIter[6] = str(mN(riga.acqua,1))
            self.rigaIter[7] = str(tipo_tratt)
            self.rigaIter[8] = str(riga.note)
        else:
            riga = (riga,
                        dateToString(data_pesata),
                        str(mN(peso,1)) or "",
                        str("0"),
                        str(mN(mgrassa,1)) or "",
                        str(mN(mmagraeacqua,1)) or "",
                        str(mN(acqua,1)) or "",
                        str(tipo_tratt),
                        str(note_riga.replace("\n"," ")[0:100]),
                        "#FFFFFF")
            a = 0
            ok = False
            if len(model)==0:
                model.append(riga)
                ok= True
            else:
                for m in model:
                    if stringToDate(data_pesata) < stringToDate(m[1]):
                        a =a+1
                    elif stringToDate(data_pesata) > stringToDate(m[1]):
                        model.insert(a,riga)
                        ok = True
                        break
            if not ok:
                model.append(riga)
        self.righe_pesata_treeview.set_model(model)
        self._calcolaDifferenzaPeso()
        self._clear()
        if len(model)>0:
            self.righe_pesata_treeview.scroll_to_cell("0")