Exemple #1
0
    def __init__(self,
                 dataBaseType: JPDbType = JPDbType.MySQL,
                 *args,
                 **kwargs):
        super(JPMainWindow, self).__init__(*args, **kwargs)
        try:
            db = JPDb()
            db.setDatabaseType(dataBaseType)
            JPPub().MainForm = self
        except Exception as e:
            QMessageBox.warning(self, "提示", str(e))

        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)
        self.ui.label_Title.setText("")
        self.commandDict = {}
        self.logoPixmap = None

        self.addOneButtonIcon(self.ui.ChangeUser, "changeuser.png")
        self.addOneButtonIcon(self.ui.ChangePassword, "changepassword.png")
        # self.addLogoToLabel(self.ui.label_logo)

        # 用户及密码修改功能
        objUser = JPUser()
        objUser.INIT()  # 程序开始时只初始化一次
        objUser.userChange.connect(self.onUserChanged)
        objUser.currentUserID()
        self.ui.ChangeUser.clicked.connect(objUser.changeUser)
        self.ui.ChangePassword.clicked.connect(objUser.changePassword)

        # 堆叠布局
        self.ui.stackedWidget.removeWidget(self.ui.page)
        self.ui.stackedWidget.removeWidget(self.ui.page_2)

        # 隐藏树标题
        self.ui.label_FunPath.setText('')
        self.ui.treeWidget.setHeaderHidden(True)

        # 设置状态条中的进度条及标签
        self.Label = QLabel(" ")
        self.ProgressBar = QProgressBar()
        self.statusBar = self.statusBar()
        self.statusBar.addPermanentWidget(self.Label)
        self.statusBar.addPermanentWidget(self.ProgressBar)
        self.ProgressBar.setGeometry(0, 0, 100, 5)
        self.ProgressBar.hide()
        self.statusBar.hide()

        self.ui.splitter.setStretchFactor(0, 2)
        self.ui.splitter.setStretchFactor(1, 11)

        # 连接点击了功能树中的节点到函数
        self.ui.treeWidget.itemClicked[QTreeWidgetItem,
                                       int].connect(self.treeViewItemClicked)
        sql = f"""
        select 
        fID as `序号NO.`, 
        fProductName as `产品名称Descrição do produto`, 
        fCurrentQuantity as 当前库存Quantidade ,
        fSpesc as  `规格Especificação`, 
        fWidth as 宽Largura, 
        fLength as 长Longo, 
        fUint 单位Unidade, 
        fNote as 备注Observações
        from t_product_information 
        where fCancel=0 and fProductName like '%{key}%' 
        order by  fID
        """
        self.tab = JPQueryFieldInfo(sql)
        self.mod = JPTableViewModelReadOnly(self.ui.tableView, self.tab)
        self.ui.tableView.setModel(self.mod)
        self.ui.tableView.resizeColumnsToContents()


if __name__ == "__main__":
    import sys

    db = JPDb()
    db.setDatabaseType(JPDbType.MySQL)

    app = QApplication(sys.argv)
    ps = ProductSelecter()
    ps.show()

    sys.exit(app.exec_())
Exemple #3
0
            r = index.row()
            tp = self.tab.DataRows[r].Datas[3][1][2]
            fieldname = self.tab.DataRows[r].Datas[3][1][1]
            dic = data[1]
            temp_de = self.des[fieldname] if tp == 9999 else self.des[tp]
            if dic["En1"]:
                self.tv.setItemDelegateForColumn(5, temp_de)
            if dic["En2"]:
                self.tv.setItemDelegateForColumn(6, temp_de)
            self.setDelegate127(index.row())


if __name__ == "__main__":
    import sys
    db = JPDb()
    db.setDatabaseType(1)
    app = QApplication(sys.argv)
    sql_0 = """
                SELECT fOrderID as 订单号码OrderID,
                        fOrderDate as 日期OrderDate,
                        fCustomerName as 客户名Cliente,
                        fCity as 城市City,
                        fSubmited1 as 提交Submited,
                        fSubmit_Name as 提交人Submitter,
                        fRequiredDeliveryDate as 交货日期RequiredDeliveryDate,
                        fAmount as 金额SubTotal,
                        fDesconto as 折扣Desconto,
                        fTax as 税金IVA,
                        fPayable as `应付金额Valor a Pagar`,
                        fContato as 联系人Contato,
                        fCelular as 手机Celular,