示例#1
0
文件: period_by.py 项目: Ciwara/GCiss
    def extend_rows(self):

        pw = (self.parentWidget().width()) / (len(self.hheaders) + 2)
        # if pw == 14:
        #     pw = 125
        self.setColumnWidth(0, pw * 3)
        self.setColumnWidth(1, pw)
        self.setColumnWidth(2, pw)
        self.setColumnWidth(3, pw)
        self.setColumnWidth(4, pw)

        nb_rows = self.rowCount()
        self.setRowCount(nb_rows + 2)
        self.setSpan(nb_rows, 0, 2, 2)
        mtt_ttc = QTableWidgetItem(u"TOTAUX: ")
        mtt_ttc.setTextAlignment(Qt.AlignRight)
        self.setItem(nb_rows + 1, 2, mtt_ttc)

        self.montant_ht = 0
        self.montant_b = 0
        for row_num in xrange(0, self.data.__len__()):
            mtt = is_int(self.item(row_num, 3).text())
            mttb = is_int(self.item(row_num, 4).text())
            self.montant_ht += mtt
            self.montant_b += mttb
        # Montant TTC
        montant_t = QTableWidgetItem(formatted_number(self.montant_ht))
        montant_t.setTextAlignment(Qt.AlignRight)
        montant_tb = QTableWidgetItem(formatted_number(self.montant_b))
        montant_tb.setTextAlignment(Qt.AlignRight)
        self.setItem(row_num + 2, 3, montant_t)
        self.setItem(row_num + 2, 4, montant_tb)
示例#2
0
文件: period_by.py 项目: Ciwara/GCiss
    def extend_rows(self):

        pw = (self.parentWidget().width()) / (len(self.hheaders) + 2)
        # if pw == 14:
        #     pw = 125
        self.setColumnWidth(0, pw * 3)
        self.setColumnWidth(1, pw)
        self.setColumnWidth(2, pw)
        self.setColumnWidth(3, pw)
        self.setColumnWidth(4, pw)

        nb_rows = self.rowCount()
        self.setRowCount(nb_rows + 2)
        self.setSpan(nb_rows, 0, 2, 2)
        mtt_ttc = QTableWidgetItem(u"TOTAUX: ")
        mtt_ttc.setTextAlignment(Qt.AlignRight)
        self.setItem(nb_rows + 1, 2, mtt_ttc)

        self.montant_ht = 0
        self.montant_b = 0
        for row_num in xrange(0, self.data.__len__()):
            mtt = is_int(self.item(row_num, 3).text())
            mttb = is_int(self.item(row_num, 4).text())
            self.montant_ht += mtt
            self.montant_b += mttb
        # Montant TTC
        montant_t = QTableWidgetItem(formatted_number(self.montant_ht))
        montant_t.setTextAlignment(Qt.AlignRight)
        montant_tb = QTableWidgetItem(formatted_number(self.montant_b))
        montant_tb.setTextAlignment(Qt.AlignRight)
        self.setItem(row_num + 2, 3, montant_t)
        self.setItem(row_num + 2, 4, montant_tb)
示例#3
0
文件: payment.py 项目: Ciwara/GCiss
    def extend_rows(self):

        nb_rows = self.rowCount()
        self.setRowCount(nb_rows + 2)
        self.setSpan(nb_rows + 2, 2, 2, 4)
        self.totals_debit = 0
        self.totals_credit = 0
        self.balance_tt = 0
        cp = 0
        for row_num in range(0, self.data.__len__()):
            mtt_debit = is_int(unicode(self.item(row_num, 2).text()))
            mtt_credit = is_int(unicode(self.item(row_num, 3).text()))
            if cp == 0:
                last_balance = is_int(unicode(self.item(row_num, 4).text()))
            self.totals_debit += mtt_debit
            self.totals_credit += mtt_credit
            cp += 1

        self.balance_tt = last_balance
        # self.balance_tt = self.totals_debit - self.totals_credit

        self.label_mov_tt = u"Totals mouvements: "
        self.setItem(nb_rows, 1, TotalsWidget(self.label_mov_tt))
        self.setItem(nb_rows, 2,
                     TotalsWidget(formatted_number(self.totals_debit)))
        self.setItem(nb_rows, 3,
                     TotalsWidget(formatted_number(self.totals_credit)))
        self.parent.soldeField.setText(formatted_number(self.balance_tt))
示例#4
0
    def extend_rows(self):

        nb_rows = self.rowCount()
        self.setRowCount(nb_rows + 1)
        # self.setSpan(nb_rows, 0, 1, 1)
        mtt_ttc = QTableWidgetItem(u"TOTAUX: ")
        mtt_ttc.setTextAlignment(Qt.AlignRight)
        self.setItem(nb_rows, 0, mtt_ttc)

        ttl_remainig = 0
        tall_in = 0
        tall_out = 0

        for row_num in xrange(0, self.data.__len__()):
            all_in = is_int(unicode(self.item(row_num, 1).text()))
            tall_in += all_in
            all_out = is_int(unicode(self.item(row_num, 2).text()))
            tall_out += all_out
            remaining = is_int(unicode(self.item(row_num, 3).text()))
            ttl_remainig += remaining

        # Montant TTC
        tall_in = QTableWidgetItem(formatted_number(tall_in))
        tall_in.setTextAlignment(Qt.AlignRight)
        self.setItem(row_num + 1, 1, tall_in)
        tall_out = QTableWidgetItem(formatted_number(tall_out))
        tall_out.setTextAlignment(Qt.AlignRight)
        self.setItem(row_num + 1, 2, tall_out)

        ttl_remainig = QTableWidgetItem(formatted_number(ttl_remainig))
        ttl_remainig.setTextAlignment(Qt.AlignRight)
        self.setItem(row_num + 1, 3, ttl_remainig)
示例#5
0
    def changed_value(self, refresh=False):
        """ Calcule les Resultat """
        self.mtt_ht = 0
        # self.button.setEnabled(False)
        for row_num in xrange(0, self.data.__len__()):
            product = Product.get(
                Product.name == unicode(self.item(row_num, 0).text()))
            last_report = product.last_report
            last_price = product.last_price()
            qtremaining = last_report.remaining
            selling_price = last_price
            invoice_date = unicode(self.parent.invoice_date.text())

            qtsaisi = is_int(self.cellWidget(row_num, 1).text())
            pusaisi = is_int(self.cellWidget(row_num, 2).text())

            if check_is_empty(self.parent.num_invoice):
                return
            if check_is_empty(self.parent.name_client_field.lineEdit()):
                return
            # if check_field(self.parent.invoice_date,
            #                "Le {} est Inférieure à la date de la dernière rapport (<b>{}</b>)".format(date_to_datetime(invoice_date), last_report.date), (last_report.date > date_to_datetime(invoice_date))):
            #     return
            if (pusaisi and check_is_empty(self.cellWidget(row_num, 1))):
                return
            if (pusaisi and check_is_empty(self.cellWidget(row_num, 2))):
                return
            if check_field(
                    self.cellWidget(row_num, 1),
                    u"<b>{}</b> est supérieur à la quantité restante (<b>{}</b>)"
                    .format(qtsaisi, qtremaining), qtremaining < qtsaisi):
                return
            if check_field(
                    self.cellWidget(row_num, 2),
                    u"<b>{}</b> est inférieure au prix minimum de vente<b> {} CFA</b>"
                    .format(pusaisi, selling_price), pusaisi < selling_price):
                print("E")
                # return

            montant = (qtsaisi * pusaisi)
            self.mtt_ht += montant
            self.setItem(row_num, 3, TotalsWidget(formatted_number(montant)))
            self._update_data(row_num, [qtsaisi, pusaisi, self.mtt_ht])
        self.setItem(row_num + 1, 3,
                     TotalsWidget(formatted_number(self.mtt_ht)))
        typ = self.parent.liste_type_invoice[
            self.parent.box_type_inv.currentIndex()]
        self.paid_amount_field.setText(
            str(self.mtt_ht) if typ == Invoice.TYPE_BON else "0")
        self.button.setEnabled(True)
示例#6
0
    def changed_value(self, refresh=False):
        """ Calcule les Resultat """
        mtt_ht = 0
        for row_num in xrange(0, self.data.__len__()):
            last_report = Product.filter(name=str(self.item(row_num, 1)
                                         .text())).get().last_report
            try:
                qtremaining = last_report.remaining
            except AttributeError:
                qtremaining = 0

            qtsaisi = is_int(self.cellWidget(row_num, 0).text())
            pu = is_int(self.cellWidget(row_num, 2).text())

            self.isvalid = True
            viderreur_qtsaisi = ""
            viderreur_pu = ""
            stylerreur = "background-color: rgb(255, 235, 235);" + \
                         "border: 3px double SeaGreen"
            if qtsaisi == 0:
                viderreur_qtsaisi = stylerreur
                self.cellWidget(row_num, 0).setToolTip(u"obligatoire")
                self.isvalid = False
            if pu == 0:
                viderreur_pu = stylerreur
                self.cellWidget(row_num, 0).setToolTip(u"obligatoire")
                self.isvalid = False

            self.cellWidget(row_num, 0).setStyleSheet(viderreur_qtsaisi)
            self.cellWidget(row_num, 2).setStyleSheet(viderreur_pu)

            self.cellWidget(row_num, 0).setToolTip("")
            if qtremaining < qtsaisi:
                self.cellWidget(row_num, 0).setStyleSheet("font-size:20px;"
                                                          " color: red")
                self.cellWidget(row_num,
                                0).setToolTip(u"%s est > %s (stock"
                                              u" remaining)" % (qtsaisi,  qtremaining))
                # self.isvalid = False
                # return False

            ui_item = (qtsaisi * pu)
            mtt_ht += ui_item
            montt = QTableWidgetItem(formatted_number(ui_item))
            montt.setTextAlignment(Qt.AlignRight)
            self.setItem(row_num, 3, montt)
        monttc = QTableWidgetItem(formatted_number(mtt_ht))
        monttc.setTextAlignment(Qt.AlignRight)
        self.setItem(row_num + 1, 3, monttc)
示例#7
0
    def get_table_items(self):
        """  """
        list_order = []
        for i in range(self.rowCount() - 1):
            liste_item = []
            try:
                liste_item.append(str(self.item(i, 0).text()))
                liste_item.append(is_int(self.item(i, 1).text()))
                liste_item.append(is_int(self.cellWidget(i, 2).text()))
                liste_item.append(is_int(self.item(i, 3).text()))
                list_order.append(liste_item)
            except:
                liste_item.append("")

        return list_order
示例#8
0
文件: period_by.py 项目: Ciwara/GCiss
    def get_table_items(self):
        """  """
        list_invoice = []
        for i in range(self.rowCount() - 1):
            liste_item = []
            try:
                liste_item.append(unicode(self.item(i, 0).text()))
                liste_item.append(is_int(self.item(i, 1).text()))
                liste_item.append(is_int(self.item(i, 2).text()))
                liste_item.append(is_int(self.item(i, 3).text()))
                list_invoice.append(liste_item)
            except:
                liste_item.append("")

        return list_invoice
示例#9
0
文件: period_by.py 项目: Ciwara/GCiss
    def changed_value(self, refresh=False):

        some = 0
        for row_num in xrange(0, self.data.__len__()):
            ui_item = (is_int(self.item(row_num, 1).text()) *
                       is_int(self.cellWidget(row_num, 2).text()))
            some += ui_item
            ui_item_ = QTableWidgetItem(formatted_number(ui_item))
            ui_item_.setTextAlignment(Qt.AlignRight)
            self.setItem(row_num, 3, ui_item_)
        row_num += 1
        som_val = QTableWidgetItem(formatted_number(some))
        som_val.setTextAlignment(Qt.AlignRight)
        self.setItem(row_num + 1, 2, QTableWidgetItem(u"%s" % u"TOTAUX"))
        self.setItem(row_num + 1, 3, som_val)
示例#10
0
 def get_table_items(self):
     """ Recupère les elements du tableau """
     list_invoice = []
     for i in range(self.rowCount() - 1):
         liste_item = []
         try:
             liste_item.append(is_int(self.item(i, 0).text()))
             liste_item.append(unicode(self.item(i, 1).text()))
             liste_item.append(is_int(self.item(i, 2).text()))
             liste_item.append(is_int(self.item(i, 3).text()))
             list_invoice.append(liste_item)
         except Exception as e:
             print(e)
             liste_item.append("")
     return list_invoice
示例#11
0
文件: period_by.py 项目: Ciwara/GCiss
    def changed_value(self, refresh=False):

        some = 0
        for row_num in xrange(0, self.data.__len__()):
            ui_item = (is_int(self.item(row_num, 1).text()) *
                       is_int(self.cellWidget(row_num, 2).text()))
            some += ui_item
            ui_item_ = QTableWidgetItem(formatted_number(ui_item))
            ui_item_.setTextAlignment(Qt.AlignRight)
            self.setItem(row_num, 3, ui_item_)
        row_num += 1
        som_val = QTableWidgetItem(formatted_number(some))
        som_val.setTextAlignment(Qt.AlignRight)
        self.setItem(row_num + 1, 2, QTableWidgetItem(u"%s" % u"TOTAUX"))
        self.setItem(row_num + 1, 3, som_val)
示例#12
0
文件: period_by.py 项目: Ciwara/GCiss
    def get_table_items(self):
        """  """
        list_invoice = []
        for i in range(self.rowCount() - 1):
            liste_item = []
            try:
                liste_item.append(unicode(self.item(i, 0).text()))
                liste_item.append(is_int(self.item(i, 1).text()))
                liste_item.append(is_int(self.item(i, 2).text()))
                liste_item.append(is_int(self.item(i, 3).text()))
                list_invoice.append(liste_item)
            except:
                liste_item.append("")

        return list_invoice
示例#13
0
文件: invoice.py 项目: Ciwara/GCiss
    def changed_value(self, refresh=False):
        """ Calcule les Resultat """
        self.mtt_ht = 0
        # self.button.setEnabled(False)
        for row_num in xrange(0, self.data.__len__()):
            product = Product.get(
                Product.name == unicode(self.item(row_num, 0).text()))
            last_report = product.last_report
            last_price = product.last_price()
            qtremaining = last_report.remaining
            selling_price = last_price
            invoice_date = unicode(self.parent.invoice_date.text())

            qtsaisi = is_int(self.cellWidget(row_num, 1).text())
            pusaisi = is_int(self.cellWidget(row_num, 2).text())

            if check_is_empty(self.parent.num_invoice):
                return
            if check_is_empty(self.parent.name_client_field.lineEdit()):
                return
            # if check_field(self.parent.invoice_date,
            #                "Le {} est Inférieure à la date de la dernière rapport (<b>{}</b>)".format(date_to_datetime(invoice_date), last_report.date), (last_report.date > date_to_datetime(invoice_date))):
            #     return
            if (pusaisi and check_is_empty(self.cellWidget(row_num, 1))):
                return
            if (pusaisi and check_is_empty(self.cellWidget(row_num, 2))):
                return
            if check_field(self.cellWidget(row_num, 1),
                           u"<b>{}</b> est supérieur à la quantité restante (<b>{}</b>)".format(
                    qtsaisi, qtremaining), qtremaining < qtsaisi):
                return
            if check_field(self.cellWidget(row_num, 2),
                           u"<b>{}</b> est inférieure au prix minimum de vente<b> {} CFA</b>".format(
                    pusaisi, selling_price), pusaisi < selling_price):
                print("E")
                # return

            montant = (qtsaisi * pusaisi)
            self.mtt_ht += montant
            self.setItem(row_num, 3, TotalsWidget(formatted_number(montant)))
            self._update_data(row_num, [qtsaisi, pusaisi, self.mtt_ht])
        self.setItem(
            row_num + 1, 3, TotalsWidget(formatted_number(self.mtt_ht)))
        typ = self.parent.liste_type_invoice[
            self.parent.box_type_inv.currentIndex()]
        self.paid_amount_field.setText(
            str(self.mtt_ht) if typ == Invoice.TYPE_BON else "0")
        self.button.setEnabled(True)
示例#14
0
 def save_edit(self):
     ''' add operation '''
     if not self.is_valide():
         return
     print("Save")
     self.member.scoop = self.scoop
     self.member.full_name = self.full_name_field.text()
     self.member.sex = self.sex_box.itemData(self.sex_box.currentIndex())
     self.member.ddn = self.ddn_field.text()
     self.member.addres = self.addres_field.toPlainText()
     self.member.nationality = self.nationality_field.text()
     phone = self.phone_field.text()
     self.member.phone = is_int(phone)
     self.member.poste = self.poste_box.itemData(
         self.poste_box.currentIndex())
     try:
         self.member.save_()
         self.close()
         self.table_p.refresh_()
         self.parent.Notify(
             u"Le membre {} ({}) a été mise à jour".format(
                 self.member.full_name, self.member.poste), "success")
     except peewee.IntegrityError:
         field_error(self.full_name_field,
                     "Ce nom existe dans la basse de donnée.")
示例#15
0
 def get_table_items(self):
     """ Recupère les elements du tableau """
     list_invoice = []
     for i in range(self.rowCount() - 1):
         liste_item = []
         try:
             liste_item.append(is_int(self.item(i, 0).text()))
             liste_item.append(unicode(self.item(i, 1).text()))
             liste_item.append(is_int(self.item(i, 2).text()))
             liste_item.append(is_int(self.item(i, 3).text()))
             list_invoice.append(liste_item)
         except Exception as e:
             print(e)
             liste_item.append("")
     print(list_invoice)
     return list_invoice
示例#16
0
    def extend_rows(self):

        nb_rows = self.rowCount()
        self.setRowCount(nb_rows + 2)

        self.montant_ht = 0
        for row_num in xrange(0, self.data.__len__()):
            self.montant_ht += (is_int(self.item(row_num, 0).text())
                                * is_int(self.item(row_num, 2).text()))
        row_num += 1
        self.setItem(row_num, 2, TotalsWidget(u"Totaux : "))
        self.setItem(
            row_num, 3, TotalsWidget(formatted_number(self.montant_ht)))
        row_num += 1
        self.setItem(row_num, 2, TotalsWidget(u"Montant payé : "))
        self.setItem(row_num, 3, TotalsWidget(
            formatted_number(self.montant_ht - self.parent.invoice.paid_amount)))
        self.setSpan(nb_rows, 0, 2, 2)
示例#17
0
    def extend_rows(self):

        nb_rows = self.rowCount()
        self.setRowCount(nb_rows + 2)

        self.montant_ht = 0
        for row_num in xrange(0, self.data.__len__()):
            self.montant_ht += (is_int(self.item(row_num, 0).text())
                                * is_int(self.item(row_num, 2).text()))
        row_num += 1
        self.setItem(row_num, 2, TotalsWidget(u"Totaux : "))
        self.setItem(
            row_num, 3, TotalsWidget(formatted_number(self.montant_ht)))
        row_num += 1
        self.setItem(row_num, 2, TotalsWidget(u"Montant payé : "))
        self.setItem(row_num, 3, TotalsWidget(
            formatted_number(self.montant_ht - self.parent.invoice.paid_amount)))
        self.setSpan(nb_rows, 0, 2, 2)
示例#18
0
 def save(self):
     if not self.is_valide():
         return
     self.scoop = CooperativeCompanie()
     self.scoop.office = self.office
     self.scoop.created_date = str(self.created_date_field.text())
     self.scoop.denomination = str(self.denomination_field.text())
     self.scoop.commercial_name = str(self.commercial_name_field.text())
     self.scoop.activity = self.activites_box.itemData(
         self.activites_box.currentIndex())
     self.scoop.spinneret = self.spinneret_box.itemData(
         self.spinneret_box.currentIndex())
     self.scoop.forme = self.formes_box.itemData(
         self.formes_box.currentIndex())
     self.scoop.amount_part_social = is_int(
         self.amount_part_social_field.text())
     self.scoop.apports_numeraire = is_int(
         self.apports_numeraire_field.text())
     self.scoop.apports_nature = is_int(self.apports_nature_field.text())
     self.scoop.apports_industrie = is_int(
         self.apports_industrie_field.text())
     self.scoop.region = self.office.slug_region
     self.scoop.cercle = self.office.slug_cercle
     self.scoop.commune = self.commune_box.itemData(
         self.commune_box.currentIndex())
     self.scoop.vfq = self.vfq_box.itemData(self.vfq_box.currentIndex())
     self.scoop.rue = is_int(self.rue_field.text())
     self.scoop.porte = is_int(self.porte_field.text())
     self.scoop.tel = is_int(self.tel_field.text())
     self.scoop.tel2 = is_int(self.tel2_field.text())
     self.scoop.bp = is_int(self.bp_field.text())
     self.scoop.email = self.email_field.text()
     self.scoop.duree_statutaire = is_int(
         self.duree_statutaire_field.text())
     self.scoop.save_()
     check_list = CheckList()
     check_list.save_()
     self.dmd = Demande()
     self.dmd.check_list = check_list
     self.dmd.declaration_date = str(self.declaration_date_field.text())
     self.dmd.scoop = self.scoop
     self.dmd.status = self.dmd.ADDMEMBER
     self.dmd.save_()
     return True
示例#19
0
    def extend_rows(self):

        nb_rows = self.rowCount()
        self.setRowCount(nb_rows + 2)
        self.setSpan(nb_rows, 0, 2, 2)
        self.setItem(nb_rows + 1, 2, TotalsWidget(u"TOTAUX: "))

        self.sum_totals = 0
        for row_num in xrange(0, self.data.__len__()):
            self.sum_totals += is_int(self.item(row_num, 3).text())
        self.setItem(row_num + 2, 3,
                     TotalsWidget(formatted_number(self.sum_totals)))
示例#20
0
文件: inventory.py 项目: Ciwara/GCiss
    def extend_rows(self):

        nb_rows = self.rowCount()
        self.setRowCount(nb_rows + 2)
        self.setSpan(nb_rows, 0, 2, 2)
        self.setItem(nb_rows + 1, 2, TotalsWidget(u"TOTAUX: "))

        self.sum_totals = 0
        for row_num in xrange(0, self.data.__len__()):
            self.sum_totals += is_int(self.item(row_num, 3).text())
        self.setItem(
            row_num + 2, 3, TotalsWidget(formatted_number(self.sum_totals)))
示例#21
0
文件: providers.py 项目: Ciwara/GCiss
 def extend_rows(self):
     nb_rows = self.rowCount()
     self.setRowCount(nb_rows + 2)
     self.setSpan(nb_rows + 2, 2, 2, 4)
     cp = 0
     self.balance_tt = sum([
         is_int(unicode(self.item(row_num, 3).text()))
         for row_num in range(0, self.data.__len__())
     ])
     self.label_mov_tt = u"Totals "
     self.setItem(nb_rows, 2, TotalsWidget(self.label_mov_tt))
     self.setItem(nb_rows, 3, TotalsWidget(device_amount(self.balance_tt)))
示例#22
0
    def changed_value(self, refresh=False):
        """ Calcule les Resultat """
        current_store = self.parent.liste_store[
            self.parent.box_store.currentIndex()]

        for row_num in xrange(0, self.data.__len__()):
            self.isvalid = True
            try:
                last_report = Reports.filter(store=current_store,
                                             product__name=str(self.item(row_num, 1)
                                                               .text())).order_by(Reports.date.desc()).get()
                qtremaining = last_report.remaining

                date_out = str(self.parent.date_out.text())
                if last_report.date > date_on_or_end(date_out, on=False):
                    self.parent.date_out.setStyleSheet("font-size:15px;"
                                                       "color:red")
                    self.parent.date_out.setToolTip(u"Cette date est "
                                                    u"Inférieure à la date "
                                                    u"de la dernière rapport"
                                                    u" (%s) " %
                                                    last_report.date)
                    self.isvalid = False
                    return False

            except Exception as e:
                print(e)
                qtremaining = 0

            qtsaisi = is_int(self.cellWidget(row_num, 0).text())

            self._update_data(row_num, [qtsaisi])
            viderreur_qtsaisi = ""
            stylerreur = "background-color: rgb(255, 235, 235);" + \
                         "border: 3px double SeaGreen"
            if qtsaisi == 0:
                viderreur_qtsaisi = stylerreur
                self.cellWidget(row_num, 0).setToolTip(u"obligatoire")
                self.isvalid = False

            self.cellWidget(row_num, 0).setStyleSheet(viderreur_qtsaisi)

            self.cellWidget(row_num, 0).setToolTip("")
            if qtremaining < qtsaisi:
                self.cellWidget(row_num, 0).setStyleSheet("font-size:20px;"
                                                          " color: red")
                self.cellWidget(row_num, 0).setToolTip(u"%s est > %s (stock"
                                                       u" remaining)" % (qtsaisi,
                                                                         qtremaining))
                self.isvalid = False
                return False
示例#23
0
    def changed_value(self, refresh=False):
        """ Calcule les Resultat """
        b_f_tt = 0
        v_amount_tt = 0
        for row_num in xrange(0, self.data.__len__()):

            qtsaisi = is_int(self.cellWidget(row_num, 1).text()) or 1
            cost_buying = is_int(self.cellWidget(row_num, 2).text())
            selling_price = is_int(self.cellWidget(row_num, 3).text())

            self.isvalid = True
            # if not selling_price:
            #     return
            if (selling_price and check_is_empty(self.cellWidget(row_num, 1))):
                self.isvalid = False
            if (selling_price and check_is_empty(self.cellWidget(row_num, 2))):
                self.isvalid = False
            if (check_is_empty(self.cellWidget(row_num, 3))):
                self.isvalid = False

            r_amount = qtsaisi * cost_buying
            v_amount = qtsaisi * selling_price
            b_f = v_amount - r_amount
            b_f_u = b_f / qtsaisi

            b_f_tt += b_f
            v_amount_tt += v_amount
            # montt.setTextAlignment(Qt.AlignRight)
            self.setItem(row_num, 4, TotalsWidget(formatted_number(v_amount)))
            self.setItem(row_num, 5, TotalsWidget(formatted_number(b_f_u)))
            self.setItem(row_num, 6, TotalsWidget(formatted_number(b_f)))
            # Mise à jour
            self._update_data(
                row_num,
                [qtsaisi, cost_buying, selling_price, v_amount, b_f_u, b_f])
        row_num += 1
        self.setItem(row_num, 4, TotalsWidget(formatted_number(v_amount_tt)))
        self.setItem(row_num, 6, TotalsWidget(formatted_number(b_f_tt)))
示例#24
0
    def extend_rows(self):

        nb_rows = self.rowCount()
        self.setRowCount(nb_rows + 3)
        self.setSpan(nb_rows, 0, 3, 2)
        mtt_ttc = QTableWidgetItem(u"Total: ")
        mtt_ttc.setTextAlignment(Qt.AlignRight)
        self.setItem(nb_rows + 1, 2, mtt_ttc)

        montant_ht = 0
        for row_num in xrange(0, self.data.__len__()):
            quantity = is_int(self.item(row_num, 0).text())
            pu = is_int(self.item(row_num, 2).text())
            montant_ht += (quantity * pu)
        # Montant TTC
        montant_ttc = QTableWidgetItem(formatted_number(montant_ht))
        montant_ttc.setTextAlignment(Qt.AlignRight)
        self.setItem(row_num + 2, 3, montant_ttc)

        # bicon = QIcon.fromTheme('', QIcon(u"{}del.png".format(Config.img_media)))
        # self.button = QPushButton(bicon, u"Annuler la facture")
        self.button = Deleted_btt(u"Annuler la facture")
        self.button.released.connect(self.parent.annulation)
示例#25
0
文件: buy.py 项目: Ciwara/GCiss
    def changed_value(self, refresh=False):
        """ Calcule les Resultat """
        b_f_tt = 0
        v_amount_tt = 0
        for row_num in xrange(0, self.data.__len__()):

            qtsaisi = is_int(self.cellWidget(row_num, 1).text()) or 1
            cost_buying = is_int(self.cellWidget(row_num, 2).text())
            selling_price = is_int(self.cellWidget(row_num, 3).text())

            self.isvalid = True
            # if not selling_price:
            #     return
            if (selling_price and check_is_empty(self.cellWidget(row_num, 1))):
                self.isvalid = False
            if (selling_price and check_is_empty(self.cellWidget(row_num, 2))):
                self.isvalid = False
            if (check_is_empty(self.cellWidget(row_num, 3))):
                self.isvalid = False

            r_amount = qtsaisi * cost_buying
            v_amount = qtsaisi * selling_price
            b_f = v_amount - r_amount
            b_f_u = b_f / qtsaisi

            b_f_tt += b_f
            v_amount_tt += v_amount
            # montt.setTextAlignment(Qt.AlignRight)
            self.setItem(row_num, 4, TotalsWidget(formatted_number(v_amount)))
            self.setItem(row_num, 5, TotalsWidget(formatted_number(b_f_u)))
            self.setItem(row_num, 6, TotalsWidget(formatted_number(b_f)))
            # Mise à jour
            self._update_data(
                row_num, [qtsaisi, cost_buying, selling_price, v_amount, b_f_u, b_f])
        row_num += 1
        self.setItem(row_num, 4, TotalsWidget(formatted_number(v_amount_tt)))
        self.setItem(row_num, 6, TotalsWidget(formatted_number(b_f_tt)))
示例#26
0
文件: apricot.py 项目: Ciwara/GCiss
    def extend_rows(self):

        self.parent.btt_export.setEnabled(True)
        nb_rows = self.rowCount()
        date = self.parent.date_.text()

        self.setRowCount(nb_rows + 4)

        self.amount_ht = 0
        for row_num in xrange(0, self.data.__len__()):
            mtt = is_int(self.item(row_num, 3).text())
            self.amount_ht += mtt

        row_num += 1
        self.setItem(row_num, 2, TotalsWidget(u"Total vente : "))
        self.amount_apricot = self.amount_ht
        self.setItem(
            row_num, 3,
            TotalsWidget(formatted_number(formatted_number(self.amount_ht))))
        row_num += 1
        self.setItem(row_num, 2, TotalsWidget(u"Dette du jour : "))
        self.total_debt = Refund.select(fn.SUM(Refund.amount)).where(
            Refund.type_ == Refund.DT,
            Refund.date < date_on_or_end(date, on=False),
            Refund.date > date_on_or_end(date)).scalar() or 0
        if self.total_debt:
            self.amount_apricot -= self.total_debt
        self.setItem(
            row_num, 3,
            TotalsWidget(formatted_number(formatted_number(self.total_debt))))
        row_num += 1
        self.setItem(row_num, 2, TotalsWidget(u"Dette reglée : "))
        self.total_refund = Refund.select(fn.SUM(Refund.amount)).where(
            Refund.type_ == Refund.RB,
            Refund.date < date_on_or_end(date, on=False),
            Refund.date > date_on_or_end(date)).scalar() or 0
        if self.total_refund:
            self.amount_apricot += self.total_refund
        self.setItem(
            row_num, 3,
            TotalsWidget(formatted_number(formatted_number(
                self.total_refund))))
        row_num += 1
        self.setItem(row_num, 2, TotalsWidget(u"Caise : "))
        self.setItem(
            row_num, 3,
            TotalsWidget(
                formatted_number(formatted_number(self.amount_apricot))))
        self.setSpan(nb_rows, 0, 4, 2)
示例#27
0
    def save_edit(self):
        ''' add operation '''

        if not self.is_valide():
            return

        office = Office()
        office.slug = self.office_box.itemData(self.office_box.currentIndex())
        office.slug_region = self.r_select
        office.slug_cercle = self.c_select
        office.phone = is_int(self.phone_field.text())
        office.email_org = str(self.email_org.text())
        office.bp = str(self.bp.text())
        office.adress_org = str(self.adress_org.toPlainText())
        office.save_()
        self.accept()
示例#28
0
    def changed_value(self, refresh=False):
        """ Calcule les Resultat """
        for row_num in xrange(0, self.data.__len__()):

            qtsaisi = is_int(self.cellWidget(row_num, 0).text())
            self.isvalid = True
            viderreur_qtsaisi = ""
            stylerreur = "background-color: rgb(255, 235, 235);border: 3px double SeaGreen"
            if qtsaisi == 0:
                viderreur_qtsaisi = stylerreur
                self.cellWidget(row_num, 0).setToolTip(
                    u"La quantité est obligatoire")
                self.isvalid = False

            self.cellWidget(row_num, 0).setStyleSheet(viderreur_qtsaisi)

            self.cellWidget(row_num, 0).setToolTip("")
            self._update_data(row_num, [qtsaisi])
示例#29
0
 def set_data_for(self, value):
     if value:
         value = str(value)
         if is_int(value):
             qs = ((Invoice.number == int(value)))
             invoices = Invoice.select().where(qs)
         else:
             invoices = []
             for clt in ProviderOrClient.select().where(
                     ProviderOrClient.name.contains(value)).iterator():
                 for invoice in clt.invoices().iterator():
                     invoices.append(invoice)
     else:
         invoices = Invoice.select()[:100]
     try:
         self.data = [(invoice.number, invoice.date, invoice.client, "")
                      for invoice in invoices]
     except Exception as e:
         print("Exception ", e)
示例#30
0
    def extend_rows(self):

        nb_rows = self.rowCount()
        self.setRowCount(nb_rows + 2)
        nb_rows += 1
        self.setItem(nb_rows, 3, TotalsWidget(u"Dette restante: "))

        if isinstance(self.provid_clt_id, int):
            self.remaining = is_int(
                self.item(self.data.__len__() - 1, 5).text())
        else:
            self.remaining = 0
            # for prov in ProviderOrClient.select().where(
            #         ProviderOrClient.type_ == ProviderOrClient.CLT):
            #     rmaing = Refund.select(Refund.provider_client == prov).order_by(
            #         Refund.date.desc()).get()
            #     self.remaining += rmaing.remaining if rmaing else 0
        self.setItem(
            nb_rows, 4, TotalsWidget(formatted_number(self.remaining)))
        self.btt_refund = QPushButton(u"Reglement")
        self.setSpan(nb_rows - 1, 0, 2, 3)
示例#31
0
文件: apricot.py 项目: Ciwara/GCiss
    def extend_rows(self):
        nb_rows = self.rowCount()
        date = self.parent.date_.text()

        self.setRowCount(nb_rows + 4)

        self.amount_ht = 0
        for row_num in xrange(0, self.data.__len__()):
            mtt = is_int(self.item(row_num, 3).text())
            self.amount_ht += mtt

        row_num += 1
        self.setItem(row_num, 2, TotalsWidget(u"Total vente : "))
        self.amount_apricot = self.amount_ht
        self.setItem(row_num, 3, TotalsWidget(
            formatted_number(formatted_number(self.amount_ht))))
        row_num += 1
        self.setItem(row_num, 2, TotalsWidget(u"Dette du jour : "))
        self.total_debt = Refund.select(fn.SUM(Refund.amount)).where(
            Refund.type_ == Refund.DT, Refund.date < date_on_or_end(
                date, on=False),  Refund.date > date_on_or_end(date)).scalar() or 0
        if self.total_debt:
            self.amount_apricot -= self.total_debt
        self.setItem(row_num, 3, TotalsWidget(
            formatted_number(formatted_number(self.total_debt))))
        row_num += 1
        self.setItem(row_num, 2, TotalsWidget(u"Dette reglée : "))
        self.total_refund = Refund.select(fn.SUM(Refund.amount)).where(
            Refund.type_ == Refund.RB, Refund.date < date_on_or_end(
                date, on=False),  Refund.date > date_on_or_end(date)).scalar() or 0
        if self.total_refund:
            self.amount_apricot += self.total_refund
        self.setItem(row_num, 3, TotalsWidget(
            formatted_number(formatted_number(self.total_refund))))
        row_num += 1
        self.setItem(row_num, 2, TotalsWidget(u"Caise : "))
        self.setItem(row_num, 3, TotalsWidget(
            formatted_number(formatted_number(self.amount_apricot))))
        self.setSpan(nb_rows, 0, 4, 2)
示例#32
0
    def extend_rows(self):

        pw = (self.parentWidget().width()) / 4
        self.setColumnWidth(0, pw)
        self.setColumnWidth(1, pw)
        self.setColumnWidth(2, pw)
        self.setColumnWidth(3, pw)

        nb_rows = self.rowCount()
        self.setRowCount(nb_rows + 2)
        self.setSpan(nb_rows, 0, 2, 2)
        mtt_ttc = QtGui.QTableWidgetItem(u"TOTAUX: ")
        mtt_ttc.setTextAlignment(QtCore.Qt.AlignRight)
        self.setItem(nb_rows + 1, 2, mtt_ttc)

        self.montant_ht = 0
        for row_num in xrange(0, self.data.__len__()):
            mtt = is_int(self.item(row_num, 3).text())
            self.montant_ht += mtt
        # Montant TTC
        montant_ttc = QtGui.QTableWidgetItem(formatted_number(self.montant_ht))
        montant_ttc.setTextAlignment(QtCore.Qt.AlignRight)
        self.setItem(row_num + 2, 3, montant_ttc)
示例#33
0
 def extend_rows(self):
     if isinstance(self.provid_clt_id, int):
         self.remaining = is_int(self.item(0, 5).text())
         self.parent.remaining_box.setText(
             self.display_remaining(formatted_number(self.remaining)))
示例#34
0
 def cal_total(self):
     total = is_int(self.apports_numeraire_field.text() or 0) + is_int(
         self.apports_nature_field.text() or 0) + is_int(
             self.apports_industrie_field.text() or 0)
     self.capitalSGroupBox.setTitle("7. {} :  {}".format(
         MONTANT_CAPITAL_SI, device_amount(total)))