def __init__(self, parent=0, *args, **kwargs): super(DebtsViewWidget, self).__init__(parent=parent, *args, **kwargs) self.parent = parent self.parentWidget().setWindowTitle( Config.NAME_ORGA + u"Gestion des dettes") hbox = QHBoxLayout(self) self.table_debt = DebtsTableWidget(parent=self) self.table_provid_clt = ProviderOrClientTableWidget(parent=self) self.search_field = LineEdit() self.search_field.textChanged.connect(self.search) self.search_field.setPlaceholderText(u"Nom ou numéro tel") splitter = QSplitter(Qt.Horizontal) self.splitter_left = QSplitter(Qt.Vertical) self.splitter_left.addWidget(self.search_field) self.splitter_left.addWidget(self.table_provid_clt) splt_clt = QSplitter(Qt.Vertical) splt_clt.addWidget(self.table_debt) splt_clt.resize(900, 1000) splitter.addWidget(self.splitter_left) splitter.addWidget(splt_clt) hbox.addWidget(splitter) self.setLayout(hbox)
def __init__(self, parent=0, *args, **kwargs): super(DebtsViewWidget, self).__init__(parent=parent, *args, **kwargs) self.parent = parent self.parentWidget().setWindowTitle(Config.NAME_ORGA + u"Gestion des dettes") hbox = QHBoxLayout(self) # self.balace_box = QGridLayout(self) # self.balace_box.addWidget(FLabel(u"Reste à payer :"), 0, 2) # self.balace_box.setRowStretch(1, 2) self.remaining_box = FLabel() self.remaining_box.setMaximumHeight(40) self.table_debt = DebtsTableWidget(parent=self) self.table_provid_clt = ProviderOrClientTableWidget(parent=self) self.search_field = LineEdit() self.search_field.textChanged.connect(self.search) self.search_field.setPlaceholderText(u"Nom ou numéro tel") self.search_field.setMaximumHeight(40) splitter = QSplitter(Qt.Horizontal) self.splitter_left = QSplitter(Qt.Vertical) self.splitter_left.addWidget(self.search_field) self.splitter_left.addWidget(self.table_provid_clt) splt_clt = QSplitter(Qt.Vertical) splt_clt.addWidget(self.remaining_box) splt_clt.addWidget(self.table_debt) splt_clt.resize(900, 1000) splitter.addWidget(self.splitter_left) splitter.addWidget(splt_clt) hbox.addWidget(splitter) self.setLayout(hbox)
def __init__(self, parent=0, *args, **kwargs): super(BuyViewWidget, self).__init__(parent=parent, *args, **kwargs) self.parentWidget().setWindowTitle(Config.APP_NAME + u" Arrivage d'article") self.parent = parent vbox = QVBoxLayout() hbox = QHBoxLayout() editbox = QGridLayout() self.date = FormatDate(QDate.currentDate()) self.name_client = LineEdit() self.search_field = LineEdit() self.search_field.setPlaceholderText("Rechercher un article") self.search_field.setMaximumHeight(40) self.search_field.textChanged.connect(self.finder) # self.search_field.setFixedWidth(200) self.add_prod = Button(u"+ &Article") self.add_prod.clicked.connect(self.add_product) self.add_prod.setFixedWidth(80) # self.add_prod.setFixedHeight(20) self.add_prod.setStyleSheet("Text-align:botton") self.add_prod.setToolTip("Ajouter un nouvel article") self.table_buy = BuyTableWidget(parent=self) self.table_resultat = ResultatTableWidget(parent=self) self.table_info = InfoTableWidget(parent=self) editbox.addWidget(self.add_prod, 0, 1) editbox.addWidget(FormLabel(u"Date d'achat:"), 0, 4) editbox.addWidget(self.date, 0, 5) editbox.setColumnStretch(3, 3) splitter = QSplitter(Qt.Horizontal) splitter_left = QSplitter(Qt.Vertical) splitter_down = QSplitter(Qt.Vertical) splitter_left.addWidget(self.search_field) splitter_left.addWidget(self.table_resultat) splitter_down.resize(35, 20) splitter_down.addWidget(self.table_info) splitter_rigth = QSplitter(Qt.Vertical) splitter_rigth.addWidget(self.table_buy) splitter_rigth.resize(800, 900) splitter_left.addWidget(splitter_down) splitter.addWidget(splitter_left) splitter.addWidget(splitter_rigth) hbox.addWidget(splitter) vbox.addLayout(editbox) vbox.addLayout(hbox) self.setLayout(vbox)
def __init__(self, parent=0, *args, **kwargs): super(BuyViewWidget, self).__init__(parent=parent, *args, **kwargs) self.parentWidget().setWindowTitle( Config.APP_NAME + u" Arrivage d'article") self.parent = parent vbox = QVBoxLayout(self) hbox = QHBoxLayout(self) editbox = QGridLayout() self.date = FormatDate(QDate.currentDate()) self.name_client = LineEdit() self.search_field = LineEdit() self.search_field.setPlaceholderText("Rechercher un article") self.search_field.textChanged.connect(self.finder) # self.search_field.setFixedWidth(200) self.add_prod = Button(u"+ &Article") self.add_prod.clicked.connect(self.add_product) self.add_prod.setFixedWidth(80) # self.add_prod.setFixedHeight(20) self.add_prod.setStyleSheet("Text-align:botton") self.add_prod.setToolTip("Ajouter un nouvel article") self.table_buy = BuyTableWidget(parent=self) self.table_resultat = ResultatTableWidget(parent=self) self.table_info = InfoTableWidget(parent=self) editbox.addWidget(self.add_prod, 0, 1) editbox.addWidget(FormLabel(u"Date d'achat:"), 0, 4) editbox.addWidget(self.date, 0, 5) editbox.setColumnStretch(3, 3) splitter = QSplitter(Qt.Horizontal) splitter_left = QSplitter(Qt.Vertical) splitter_down = QSplitter(Qt.Vertical) splitter_left.addWidget(self.search_field) splitter_left.addWidget(self.table_resultat) splitter_down.resize(35, 20) splitter_down.addWidget(self.table_info) splitter_rigth = QSplitter(Qt.Vertical) splitter_rigth.addWidget(self.table_buy) splitter_rigth.resize(800, 900) splitter_left.addWidget(splitter_down) splitter.addWidget(splitter_left) splitter.addWidget(splitter_rigth) hbox.addWidget(splitter) vbox.addLayout(editbox) vbox.addLayout(hbox) self.setLayout(vbox)
def __init__(self, parent=0, *args, **kwargs): super(ContactViewWidget, self).__init__(parent=parent, *args, **kwargs) self.parent = parent self.parentWidget().setWindowTitle(Config.NAME_ORGA + u"Carnet d'adresse") hbox = QHBoxLayout(self) self.table_contact = ContactTableWidget(parent=self) self.table_group = GroupTableWidget(parent=self) self.table_transf = TransfTableWidget(parent=self) self.operation = OperationWidget(parent=self) splitter = QSplitter(Qt.Horizontal) self.splitter_left = QSplitter(Qt.Vertical) self.splitter_left.addWidget(FBoxTitle(u"Les groupes")) self.splitter_left.addWidget(self.table_group) splitter_details = QSplitter(Qt.Horizontal) splitter_down = QSplitter(Qt.Vertical) splitter_down.addWidget(self.operation) splitter_transf = QSplitter(Qt.Horizontal) splitter_transf.addWidget(self.table_transf) splt_contact = QSplitter(Qt.Vertical) splt_contact.addWidget(FBoxTitle(u"Les contactes")) splt_contact.addWidget(self.table_contact) splt_contact.resize(900, 1000) self.splitter_left.addWidget(splitter_down) splitter_details.addWidget(splitter_transf) splt_contact.addWidget(splitter_details) splitter.addWidget(self.splitter_left) splitter.addWidget(splt_contact) hbox.addWidget(splitter) self.setLayout(hbox)
def __init__(self, product="", parent=0, *args, **kwargs): super(StockInputWidget, self).__init__(parent=parent, *args, **kwargs) title = u" ENTREE STOCK" self.parentWidget().setWindowTitle(Config.NAME_ORGA + title) Config.logging.info(title) self.parent = parent vbox = QVBoxLayout(self) hbox = QHBoxLayout(self) editbox = QGridLayout() self.date = FormatDate(QDate.currentDate()) # Combobox widget for add store self.liste_store = Store.all() self.box_mag = QComboBox() for index in range(0, len(self.liste_store)): op = self.liste_store[index] sentence = u"%(name)s" % {'name': op.name} self.box_mag.addItem(sentence, op.id) self.search_field = QLineEdit() self.search_field.setPlaceholderText("Rechercher un article") self.search_field.setMaximumSize(200, self.search_field.maximumSize().height()) self.search_field.textChanged.connect(self.finder) self.add_prod = Button(u"+ &Article") self.add_prod.clicked.connect(self.add_product) self.vline = QFrame() self.vline.setFrameShape(QFrame.VLine) self.vline.setFrameShadow(QFrame.Sunken) self.table_resultat = ResultatTableWidget(parent=self) self.table_info = InfoTableWidget(parent=self) self.table_in = InputTableWidget(parent=self) self.table_resultat.refresh_() editbox.addWidget(self.search_field, 0, 0) editbox.addWidget(self.vline, 0, 2, 1, 1) editbox.addWidget(FormLabel(u"Magasin:"), 0, 4) editbox.addWidget(self.box_mag, 0, 5) editbox.addWidget(FormLabel(u"Date d'entrée:"), 0, 6) editbox.addWidget(self.date, 0, 7) editbox.setColumnStretch(3, 3) splitter = QSplitter(Qt.Horizontal) # splitter.setFrameShape(QFrame.StyledPanel) splitter_left = QSplitter(Qt.Vertical) # splitter_left.addWidget(FBoxTitle(u"Les products")) splitter_left.addWidget(self.table_resultat) splitter_down = QSplitter(Qt.Vertical) splitter_down.resize(15, 20) splitter_down.addWidget(self.table_info) splitter_down.addWidget(self.add_prod) splitter_rigth = QSplitter(Qt.Vertical) # splitter_rigth.addWidget(FBoxTitle(u"Les products achatés")) splitter_rigth.addWidget(self.table_in) splitter_rigth.resize(500, 900) splitter_left.addWidget(splitter_down) splitter.addWidget(splitter_left) splitter.addWidget(splitter_rigth) hbox.addWidget(splitter) vbox.addLayout(editbox) vbox.addLayout(hbox) self.setLayout(vbox)
def __init__(self, product="", parent=0, *args, **kwargs): super(InvoiceViewWidget, self).__init__(parent=parent, *args, **kwargs) self.parentWidget().setWindowTitle( Config.APP_NAME + u" Ventes") self.parent = parent vbox = QVBoxLayout(self) # hbox = QHBoxLayout(self) editbox = QGridLayout(self) try: next_number = int( Invoice.select().order_by(Invoice.number.desc()).get().number) + 1 except: next_number = 1 self.num_invoice = IntLineEdit(str(next_number)) self.num_invoice.setToolTip(u"Le numéro") self.num_invoice.setMaximumSize( 40, self.num_invoice.maximumSize().height()) self.invoice_date = FormatDate(QDate.currentDate()) # self.name_client_field = LineEdit() self.string_list = [""] + ["{},{}".format(clt.name, clt.phone) for clt in ProviderOrClient.select().where( ProviderOrClient.type_ == ProviderOrClient.CLT).order_by(ProviderOrClient.name.desc())] # self.name_client_field_new = "" self.name_client_field = ExtendedComboBox() self.name_client_field.addItems(self.string_list) self.name_client_field.setMaximumSize( 200, self.name_client_field.maximumSize().height()) self.name_client_field.setToolTip("Nom, numero du client") self.add_clt_btt = BttSmall(u"+") self.add_clt_btt.clicked.connect(self.add_clt) self.add_clt_btt.setFixedWidth(50) # Combobox widget for add store self.liste_type_invoice = [Invoice.TYPE_FACT, Invoice.TYPE_BON] self.box_type_inv = QComboBox() for index in range(0, len(self.liste_type_invoice)): op = self.liste_type_invoice[index] sentence = u"%(name)s" % {'name': op} self.box_type_inv.addItem(sentence, op) self.search_field = LineEdit() self.search_field.setPlaceholderText("Rechercher un article") self.search_field.textChanged.connect(self.finder) # self.search_field.setFixedWidth(250) self.table_invoice = InvoiceTableWidget(parent=self) self.table_resultat = ResultatTableWidget(parent=self) self.table_info = InfoTableWidget(parent=self) self.table_resultat.refresh_("") editbox.addWidget(self.box_type_inv, 0, 2) editbox.addWidget(self.num_invoice, 0, 3) editbox.addWidget(FLabel(u"Doit :"), 1, 2) editbox.addWidget(self.name_client_field, 1, 3) # editbox.addWidget(self.add_clt_btt, 1, 4) editbox.addWidget(self.invoice_date, 0, 6) editbox.setColumnStretch(0, 1) editbox.setColumnStretch(5, 1) splitter = QSplitter(Qt.Horizontal) splitter_left = QSplitter(Qt.Vertical) splitter_left.addWidget(self.search_field) splitter_left.addWidget(self.table_resultat) # splitter_down.resize(15, 20) splitter_down = QSplitter(Qt.Vertical) splitter_down.addWidget(self.table_info) splitter_rigth = QSplitter(Qt.Vertical) # splitter_rigth.setLayout(editbox) splitter_rigth.addWidget(self.table_invoice) splitter_rigth.resize(800, 900) splitter_left.addWidget(splitter_down) splitter.addWidget(splitter_left) splitter.addWidget(splitter_rigth) vbox.addLayout(editbox) vbox.addWidget(splitter) self.setLayout(vbox)
def __init__(self, product="", parent=0, *args, **kwargs): super(InvoiceViewWidget, self).__init__(parent=parent, *args, **kwargs) self.parentWidget().setWindowTitle(Config.NAME_ORGA + u" FACTURATION") self.parent = parent vbox = QVBoxLayout(self) hbox = QHBoxLayout(self) editbox = QGridLayout() self.num_invoice = IntLineEdit("%d" % (Invoice.select().count() + 1)) self.num_invoice.setToolTip(u"Le numéro de la facture") self.num_invoice.setMaximumSize(40, self.num_invoice.maximumSize().height()) self.num_invoice_error = ErrorLabel("") self.invoice_date = FormatDate(QDate.currentDate()) self.name_client = QLineEdit() self.name_client.setMaximumSize(200, self.name_client.maximumSize().height()) self.name_client.setToolTip("Taper le nom du client") self.name_client_error = ErrorLabel("") self.search_field = QLineEdit() self.search_field.setMaximumSize(200, self.search_field.maximumSize().height()) self.search_field.textChanged.connect(self.finder) self.vline = QFrame() self.vline.setFrameShape(QFrame.VLine) self.vline.setFrameShadow(QFrame.Sunken) self.table_invoice = OrderTableWidget(parent=self) self.table_resultat = ResultatTableWidget(parent=self) self.table_info = InfoTableWidget(parent=self) self.table_resultat.refresh_("") editbox.addWidget(FormLabel(u"Recherche:"), 0, 0) editbox.addWidget(self.search_field, 1, 0) editbox.addWidget(self.vline, 0, 1, 2, 5) editbox.addWidget(FormLabel(u"Facture N°:"), 0, 2) editbox.addWidget(self.num_invoice, 0, 3) editbox.addWidget(self.num_invoice_error, 0, 4) editbox.addWidget(FormLabel(u"Doit:"), 1, 2) editbox.addWidget(self.name_client, 1, 3) editbox.addWidget(self.name_client_error, 1, 4) editbox.addWidget(FormLabel(u"Date:"), 0, 5) editbox.addWidget(self.invoice_date, 0, 6) splitter = QSplitter(Qt.Horizontal) splitter_left = QSplitter(Qt.Vertical) splitter_down = QSplitter(Qt.Vertical) splitter_left.addWidget(FBoxTitle(u"Les resultats")) splitter_left.addWidget(self.table_resultat) splitter_down.resize(15, 20) splitter_down.addWidget(self.table_info) splitter_rigth = QSplitter(Qt.Vertical) splitter_rigth.addWidget(FBoxTitle(u"Les produits vendus")) splitter_rigth.addWidget(self.table_invoice) splitter_rigth.resize(500, 900) splitter_left.addWidget(splitter_down) splitter.addWidget(splitter_left) splitter.addWidget(splitter_rigth) hbox.addWidget(splitter) vbox.addLayout(editbox) vbox.addLayout(hbox) self.setLayout(vbox)
def __init__(self, product="", parent=0, *args, **kwargs): super(StockOutputWidget, self).__init__(parent=parent, *args, **kwargs) self.parentWidget().setWindowTitle( Config.NAME_ORGA + u" SORTIE STOCK ") self.parent = parent vbox = QVBoxLayout(self) hbox = QHBoxLayout(self) editbox = QGridLayout() self.date_out = FormatDate(QDate.currentDate()) # Combobox widget for add store self.liste_store = Store.all() self.box_store = QComboBox() for index in xrange(0, len(self.liste_store)): op = self.liste_store[index] sentence = u"{name}".format(name=op.name) self.box_store.addItem(sentence, op.id) self.search_field = QLineEdit() self.search_field.setPlaceholderText("Rechercher un article") self.search_field.setMaximumSize( 200, self.search_field.maximumSize().height()) self.search_field.textChanged.connect(self.finder) self.vline = QFrame() self.vline.setFrameShape(QFrame.VLine) self.vline.setFrameShadow(QFrame.Sunken) self.table_resultat = ResultatTableWidget(parent=self) self.table_info = InfoTableWidget(parent=self) self.table_out = InproductTableWidget(parent=self) self.box_store.connect(self.box_store, SIGNAL("currentIndexChanged(int)"), self.table_out.changed_value) self.table_resultat.refresh_("") # editbox.addWidget(FormLabel(u"Recherche:"), 0, 0) editbox.addWidget(self.search_field, 0, 0) editbox.addWidget(self.vline, 0, 2, 1, 1) editbox.addWidget(FormLabel(u"Magasin:"), 0, 4) editbox.addWidget(self.box_store, 0, 5) editbox.addWidget(FormLabel(u"Date d'achat:"), 0, 6) editbox.addWidget(self.date_out, 0, 7) editbox.setColumnStretch(3, 3) splitter = QSplitter(Qt.Horizontal) splitter_left = QSplitter(Qt.Vertical) # splitter_left.addWidget(FBoxTitle(u"Les products")) splitter_left.addWidget(self.table_resultat) splitter_down = QSplitter(Qt.Vertical) splitter_down.resize(15, 20) splitter_down.addWidget(self.table_info) splitter_rigth = QSplitter(Qt.Vertical) # splitter_rigth.addWidget(FBoxTitle(u"Les products achatés")) splitter_rigth.addWidget(self.table_out) splitter_rigth.resize(500, 900) splitter_left.addWidget(splitter_down) splitter.addWidget(splitter_left) splitter.addWidget(splitter_rigth) hbox.addWidget(splitter) vbox.addLayout(editbox) vbox.addLayout(hbox) self.setLayout(vbox)
def __init__(self, product="", parent=0, *args, **kwargs): super(InvoiceViewWidget, self).__init__(parent=parent, *args, **kwargs) self.parentWidget().setWindowTitle(Config.APP_NAME + u" Ventes") self.parent = parent vbox = QVBoxLayout() # hbox = QHBoxLayout(self) editbox = QGridLayout() try: next_number = int(Invoice.select().order_by( Invoice.number.desc()).get().number) + 1 except: next_number = 1 self.num_invoice = IntLineEdit(str(next_number)) self.num_invoice.setToolTip(u"Le numéro") self.num_invoice.setMaximumSize( 40, self.num_invoice.maximumSize().height()) self.invoice_date = FormatDate(QDate.currentDate()) # self.name_client_field = LineEdit() self.string_list = [""] + [ "{},{}".format(clt.name, clt.phone) for clt in ProviderOrClient.select().where( ProviderOrClient.type_ == ProviderOrClient.CLT).order_by( ProviderOrClient.name.desc()) ] # self.name_client_field_new = "" self.name_client_field = ExtendedComboBox() self.name_client_field.addItems(self.string_list) self.name_client_field.setMaximumSize( 200, self.name_client_field.maximumSize().height()) self.name_client_field.setToolTip("Nom, numero du client") self.add_clt_btt = BttSmall(u"+") self.add_clt_btt.clicked.connect(self.add_clt) self.add_clt_btt.setFixedWidth(50) # Combobox widget for add store self.liste_type_invoice = [ Invoice.TYPE_FACT, Invoice.TYPE_BON, Invoice.TYPE_PROF ] self.box_type_inv = QComboBox() for index in range(0, len(self.liste_type_invoice)): op = self.liste_type_invoice[index] sentence = u"%(name)s" % {'name': op} self.box_type_inv.addItem(sentence, op) self.search_field = LineEdit() self.search_field.setPlaceholderText("Rechercher un article") self.search_field.textChanged.connect(self.finder) # self.search_field.setFixedWidth(250) self.search_field.setMaximumHeight(40) self.table_invoice = InvoiceTableWidget(parent=self) self.table_resultat = ResultatTableWidget(parent=self) self.table_info = InfoTableWidget(parent=self) self.table_resultat.refresh_("") editbox.addWidget(self.box_type_inv, 0, 2) editbox.addWidget(self.num_invoice, 0, 3) editbox.addWidget(FLabel(u"Doit :"), 1, 2) editbox.addWidget(self.name_client_field, 1, 3) # editbox.addWidget(self.add_clt_btt, 1, 4) editbox.addWidget(self.invoice_date, 0, 6) editbox.setColumnStretch(0, 1) editbox.setColumnStretch(5, 1) splitter = QSplitter(Qt.Horizontal) splitter_left = QSplitter(Qt.Vertical) splitter_left.addWidget(self.search_field) splitter_left.addWidget(self.table_resultat) # splitter_down.resize(15, 20) splitter_down = QSplitter(Qt.Vertical) splitter_down.addWidget(self.table_info) splitter_rigth = QSplitter(Qt.Vertical) # splitter_rigth.setLayout(editbox) splitter_rigth.addWidget(self.table_invoice) splitter_rigth.resize(800, 900) splitter_left.addWidget(splitter_down) splitter.addWidget(splitter_left) splitter.addWidget(splitter_rigth) vbox.addLayout(editbox) vbox.addWidget(splitter) self.setLayout(vbox)