Пример #1
0
 def dispDetail(self):
     pid = -1
     tv = self.ui.tableView
     index = tv.selectionModel().currentIndex()
     if index.isValid():
         pid = self.dataInfo.getOnlyData([index.row(), 0])
     d1 = JPDateConver(self.ui.dateBegin.date(), str)
     d2 = JPDateConver(self.ui.dateEditEnd.date(), str)
     self.sql_detail = f"""
         SELECT q.fOrderDate AS 日期OrderDate,
                 q.fOrderID AS 单据号码OrderID,
                 ksmc AS 客商Merchants,
                 rk AS 入库In ,
                 ck AS 出库Out
         FROM 
             (SELECT o.fOrderDate,
                 o.fOrderID,
                 s.fSupplierName AS ksmc,
                 d.fQuant AS rk,
                 null AS ck,
                 d.TS
             FROM t_product_warehousereceipt_order_detail AS d
             LEFT JOIN t_product_warehousereceipt_order AS o
                 ON d.fOrderID=o.fOrderID
             LEFT JOIN t_supplier AS s
                 ON o.fSupplierID=s.fSupplierID
             WHERE o.fOrderDate
                 BETWEEN '{d1}'
                     AND '{d2}'
                     AND fProductID={pid}
                     AND o.fSubmited=1
             UNION all
             SELECT o.fOrderDate,
                 o.fOrderID,
                 s.fCustomerName AS ksmc,
                 NULL AS rk,
                 d.fQuant AS ck,
                 d.TS
             FROM t_product_outbound_order_detail AS d
             LEFT JOIN t_product_outbound_order AS o
                 ON d.fOrderID=o.fOrderID
             LEFT JOIN t_customer AS s
                 ON o.fCustomerID=s.fCustomerID
             WHERE o.fOrderDate
                 BETWEEN '{d1}'
                     AND '{d2}' 
                     AND fProductID={pid}
                     AND o.fSubmited=1
             ) AS q
         ORDER BY  q.Ts DESC 
     """
     self.dataInfo_detail = JPQueryFieldInfo(self.sql_detail)
     self.mod3 = JPTableViewModelReadOnly(self.ui.tableView_rec,
                                          self.dataInfo_detail)
     self.ui.tableView_rec.setModel(self.mod3)
     self.ui.tableView_rec.resizeColumnsToContents()
     bz = (len(self.dataInfo_detail) > 0)
     self.ui.CmdExportToExcel_Detail.setEnabled(bz)
     self.ui.CmdPrint_Detail.setEnabled(bz)
Пример #2
0
    def dateChanged(self, s_data):
        str_date = JPDateConver(self.ui.SelectDate.date(), str)

        # 设置当前日收款记录(左上)
        sql = self.SQLCurrentDayRec.format(dateString=str_date)
        self.tabinfoCurrentDayRec = JPQueryFieldInfo(sql)
        self.modCurrentDayRec = JPTableViewModelReadOnly(
            self.ui.tabCurrentDayRec, self.tabinfoCurrentDayRec)
        self.ui.tabCurrentDayRec.setModel(self.modCurrentDayRec)
        self.ui.tabCurrentDayRec.resizeColumnsToContents()
        self.ui.tabCurrentDayRec.selectionModel().currentRowChanged[
            QModelIndex, QModelIndex].connect(self.currentCustomerChanged)

        # 设置当前日收款方式统计(右上)
        self.tabinfoFangShiTongJi = JPQueryFieldInfo(
            self.SQLSumPaymentMethod.format(dateString=str_date))
        self.modFangShiTongJi = JPTableViewModelReadOnly(
            self.ui.SumPaymentMethod, self.tabinfoFangShiTongJi)
        self.ui.SumPaymentMethod.setModel(self.modFangShiTongJi)
        self.ui.SumPaymentMethod.resizeColumnsToContents()
Пример #3
0
    def currentCustomerChanged(self):
        id = -1
        index = self.ui.tabCurrentDayRec.selectionModel().currentIndex()
        if index.isValid():
            id = self.modCurrentDayRec.TabelFieldInfo.getOnlyData(
                [index.row(), 1])
        # 刷新左下
        self.tableinfoCustomerRecorder = JPQueryFieldInfo(
            self.SQLCustomerRecorder.format(CustomerID=id))
        self.modCustomerRecorder = JPTableViewModelReadOnly(
            self.ui.tabCustomerRecorder, self.tableinfoCustomerRecorder)
        self.ui.tabCustomerRecorder.setModel(self.modCustomerRecorder)
        self.ui.tabCustomerRecorder.resizeColumnsToContents()

        # 刷新右下
        self.tableinfoCustomerArrearsList = JPQueryFieldInfo(
            self.SQLCustomerArrearsList.format(CustomerID=id))
        self.modCustomerArrearsList = JPTableViewModelReadOnly(
            self.ui.tabCustomerArrearsList, self.tableinfoCustomerArrearsList)
        self.ui.tabCustomerArrearsList.setModel(self.modCustomerArrearsList)
        self.ui.tabCustomerArrearsList.resizeColumnsToContents()
Пример #4
0
 def refreshTabEnum(self, type_id: int = -1):
     sql2 = """
     SELECT fItemID, fTypeID,
         fTitle AS 'text条目文本',
         fSpare1 AS 'Value1值1',
         fSpare2 AS 'Value2值2',
         fNote AS 'Note说明'
     FROM t_enumeration
     WHERE fTypeID = {}
     """.format(type_id)
     self.tabinfo2 = JPTabelFieldInfo(sql2)
     self.mod2 = JPTableViewModelReadOnly(self.tab2, self.tabinfo2)
     self.tab2.setModel(self.mod2)
     self.setTab2Column()
Пример #5
0
    def actionClick(self):
        sql = """
            SELECT c.fCustomerID AS `ID`, c.fCustomerName AS `客户名称Cliente`, c.fNUIT AS `税号NUIT`, c.fCity AS `城市City`
                , if(isnull(QDD.dd), NULL, QDD.dd) AS 订单应付金额OrderPayable
                , if(isnull(QSK.sk), NULL, QSK.sk) AS Aeceivables收款
                , if(if(isnull(QDD.dd), 0, QDD.dd) - if(isnull(QSK.sk), 0, QSK.sk) = 0, NULL, if(isnull(QDD.dd), 0, QDD.dd) - if(isnull(QSK.sk), 0, QSK.sk)) AS Arrears欠款
            FROM t_customer c
                LEFT JOIN (
                    SELECT fCustomerID, SUM(fAmountCollected) AS sk
                    FROM t_receivables
                    GROUP BY fCustomerID
                ) QSK
                ON QSK.fCustomerID = c.fCustomerID
                LEFT JOIN (
                    SELECT fCustomerID, SUM(fPayable) AS dd
                    FROM v_all_sales as Q_1
                    GROUP BY fCustomerID
                ) QDD
                ON QDD.fCustomerID = c.fCustomerID
            WHERE NOT (isnull(QDD.dd)
            AND isnull(QSK.sk)) AND {wherestring}"""
        wherestring = """(
            fCustomerName like '%{key}%' or
            fNUIT like '%{key}%'
        )"""
        txt = self.ui.lineEdit.text()
        txt = txt if txt else ''
        wherestring = wherestring.format(key=txt)
        sql = sql.format(wherestring=wherestring)

        tv = self.ui.tableView
        self.dataInfo = JPQueryFieldInfo(sql)
        self.mod = JPTableViewModelReadOnly(tv, self.dataInfo)
        tv.setModel(self.mod)
        tv.resizeColumnsToContents()

        tv.selectionModel().currentRowChanged[QModelIndex,
                                              QModelIndex].connect(
                                                  self.refreshRec)
        tv.selectionModel().currentRowChanged[QModelIndex,
                                              QModelIndex].connect(
                                                  self.refreshOrder)
Пример #6
0
 def actionClick(self):
     key = self.ui.lineEdit.text()
     key = key if key else ''
     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()