pykafe-commits Mailing List for pyKafe (Page 2)
Status: Pre-Alpha
Brought to you by:
jnmbk
You can subscribe to this list here.
| 2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(78) |
Jul
(8) |
Aug
|
Sep
|
Oct
|
Nov
(2) |
Dec
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2008 |
Jan
(11) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <jn...@us...> - 2007-06-11 04:22:43
|
Revision: 131
http://pykafe.svn.sourceforge.net/pykafe/?rev=131&view=rev
Author: jnmbk
Date: 2007-06-10 21:22:45 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
not needed any more
Modified Paths:
--------------
trunk/pykafe/server/server.py
Modified: trunk/pykafe/server/server.py
===================================================================
--- trunk/pykafe/server/server.py 2007-06-11 04:19:10 UTC (rev 130)
+++ trunk/pykafe/server/server.py 2007-06-11 04:22:45 UTC (rev 131)
@@ -347,7 +347,6 @@
self.threads = []
def initMembers(self, first = False):
- #TODO: Call this function after adding and deleting
if first:
self.members = []
self.ui.members_treeWidget.clear()
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-11 04:19:08
|
Revision: 130
http://pykafe.svn.sourceforge.net/pykafe/?rev=130&view=rev
Author: jnmbk
Date: 2007-06-10 21:19:10 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
code cleanup
Modified Paths:
--------------
trunk/pykafe/server/server.py
Modified: trunk/pykafe/server/server.py
===================================================================
--- trunk/pykafe/server/server.py 2007-06-11 02:20:21 UTC (rev 129)
+++ trunk/pykafe/server/server.py 2007-06-11 04:19:10 UTC (rev 130)
@@ -243,54 +243,8 @@
self.setText(5, self.session.endTime.time().toString("hh.mm"))
self.changeColor("green")
elif state == ClientSession.notReady:
- if self.session.state == ClientSession.waitingMoney:
+ if self.session.state in (ClientSession.waitingMoney, ClientSession.loggedIn):
self.server.payment(self)
- #total = self.session.calculateTotal(self.config)
- #dialog = Ui_PaymentDialog()
- #self.parent()
- """
- self.paymentDialog = QtGui.QDialog(self.parent())
- QtCore.QObject.connect(self.paymentDialog, QtCore.SIGNAL("accepted()"), self.sendOptions)
- settingsUi = Ui_SettingsWindow()
- settingsUi.setupUi(self.settingsDialog, self.config)
- self.settingsDialog.show()
- print "will pay", total
- payingType, credit = Database().runOnce("select paying_type, debt from members where username=?",(self.session.user,))[0]
- print payingType, credit
- if payingType == _("Pre Paid"):
- print "user is pre_paid and has %s credit" % currency(credit)
- for member in self.server.members:
- print member.userName, self.session.user
- if member.userName == self.session.user:
- if member.debt < total:
- QtGui.QMessageBox.warning(self.server.parent(), _("Low credit"), _("%s's credit has finished! Has %s debt.") % (member.userName, currency(total - member.debt)))
- logger.add(logger.logTypes.warning, _("Member has low credit"), self.name, member.userName, member.debt - total)
- member.debt -= total
- Database().runOnce("update members set debt=? where username=?", (member.debt, member.userName))
- else:
- #logger.add(logger.logTypes.information, _("Money paid"), self.name, member.userName, total)
- #Database().runOnce("insert into safe values(?,?,?)", (QtCore.QDateTime.currentDateTime().toTime_t(), self.config.last_cashier, total))
- #logger.add(logger.logTypes.information, _("money paid"), self.name, self.session.user, self.session.calculateTotal()
- """
- pass
- if self.session.state == ClientSession.loggedIn:
- self.server.payment(self)
- """total = self.session.calculateTotal(self.config)
- payingType, credit = Database().runOnce("select paying_type, debt from members where username=?",(self.session.user,))[0]
- if payingType == _("Pre Paid"):
- print "user is pre_paid and has %s credit" % currency(credit)
- for member in self.server.members:
- if member.userName == self.session.user:
- if member.debt < total:
- QtGui.QMessageBox.warning(self.server.parent(), _("Low credit"), _("%s's credit has finished! Has %s debt.") % (member.userName, currency(total - member.debt)))
- logger.add(logger.logTypes.warning, _("Member has low credit"), self.name, member.userName, member.debt - total)
- member.debt -= total
- Database().runOnce("update members set debt=? where username=?", (member.debt, member.userName))
- else:
- #logger.add(logger.logTypes.information, _("Money paid"), self.name, member.userName, total)
- #Database().runOnce("insert into safe values(?,?,?)", (QtCore.QDateTime.currentDateTime().toTime_t(), self.config.last_cashier, total))
- pass"""
- pass
if self.config.filter_enable:
message = "007"
filterFile = open(self.config.filter_file)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-11 02:20:19
|
Revision: 129
http://pykafe.svn.sourceforge.net/pykafe/?rev=129&view=rev
Author: jnmbk
Date: 2007-06-10 19:20:21 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
sync ui
Modified Paths:
--------------
trunk/pykafe/server/memberreports.ui
Modified: trunk/pykafe/server/memberreports.ui
===================================================================
--- trunk/pykafe/server/memberreports.ui 2007-06-11 02:19:57 UTC (rev 128)
+++ trunk/pykafe/server/memberreports.ui 2007-06-11 02:20:21 UTC (rev 129)
@@ -22,65 +22,6 @@
<property name="spacing" >
<number>6</number>
</property>
- <item row="2" column="1" >
- <widget class="QLabel" name="timeLabel" />
- </item>
- <item row="3" column="1" >
- <widget class="QLabel" name="totalLabel" />
- </item>
- <item row="3" column="0" >
- <widget class="QLabel" name="label_2" >
- <property name="text" >
- <string>Total:</string>
- </property>
- </widget>
- </item>
- <item row="2" column="0" >
- <widget class="QLabel" name="label_1" >
- <property name="text" >
- <string>Used Time:</string>
- </property>
- </widget>
- </item>
- <item row="1" column="0" colspan="2" >
- <widget class="QTreeWidget" name="ordersTreeWidget" >
- <column>
- <property name="text" >
- <string>Date</string>
- </property>
- </column>
- <column>
- <property name="text" >
- <string>Payment</string>
- </property>
- </column>
- <column>
- <property name="text" >
- <string>Cost</string>
- </property>
- </column>
- </widget>
- </item>
- <item row="4" column="1" >
- <widget class="QLabel" name="bytesLabel" />
- </item>
- <item row="4" column="0" >
- <widget class="QLabel" name="label_3" >
- <property name="text" >
- <string>Received/Sent data in KB:</string>
- </property>
- </widget>
- </item>
- <item row="5" column="0" colspan="2" >
- <widget class="QDialogButtonBox" name="buttonBox" >
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="standardButtons" >
- <set>QDialogButtonBox::Cancel|QDialogButtonBox::NoButton|QDialogButtonBox::Ok</set>
- </property>
- </widget>
- </item>
<item row="0" column="0" colspan="2" >
<layout class="QGridLayout" >
<property name="margin" >
@@ -90,10 +31,10 @@
<number>6</number>
</property>
<item row="1" column="0" >
- <widget class="QDateTimeEdit" name="dateTimeEdit_2" />
+ <widget class="QDateTimeEdit" name="end" />
</item>
<item rowspan="2" row="0" column="1" >
- <widget class="QToolButton" name="toolButton" >
+ <widget class="QToolButton" name="findButton" >
<property name="text" >
<string>Find</string>
</property>
@@ -112,10 +53,59 @@
</widget>
</item>
<item row="0" column="0" >
- <widget class="QDateTimeEdit" name="dateTimeEdit" />
+ <widget class="QDateTimeEdit" name="start" />
</item>
</layout>
</item>
+ <item row="4" column="0" colspan="2" >
+ <widget class="QDialogButtonBox" name="buttonBox" >
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="standardButtons" >
+ <set>QDialogButtonBox::Cancel|QDialogButtonBox::NoButton|QDialogButtonBox::Ok</set>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="0" >
+ <widget class="QLabel" name="label_3" >
+ <property name="text" >
+ <string>Received/Sent data in KB:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="1" >
+ <widget class="QLabel" name="bytesLabel" />
+ </item>
+ <item row="1" column="0" colspan="2" >
+ <widget class="QTreeWidget" name="paymentTree" >
+ <column>
+ <property name="text" >
+ <string>Date</string>
+ </property>
+ </column>
+ <column>
+ <property name="text" >
+ <string>Payment</string>
+ </property>
+ </column>
+ <column>
+ <property name="text" >
+ <string>Cost</string>
+ </property>
+ </column>
+ </widget>
+ </item>
+ <item row="2" column="0" >
+ <widget class="QLabel" name="label_2" >
+ <property name="text" >
+ <string>Total:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1" >
+ <widget class="QLabel" name="totalLabel" />
+ </item>
</layout>
</widget>
<resources/>
@@ -153,10 +143,10 @@
</hints>
</connection>
<connection>
- <sender>toolButton</sender>
+ <sender>findButton</sender>
<signal>clicked()</signal>
<receiver>MemberReports</receiver>
- <slot>close()</slot>
+ <slot></slot>
<hints>
<hint type="sourcelabel" >
<x>218</x>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-11 02:20:00
|
Revision: 128
http://pykafe.svn.sourceforge.net/pykafe/?rev=128&view=rev
Author: jnmbk
Date: 2007-06-10 19:19:57 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
yuppie k a
Modified Paths:
--------------
trunk/pykafe/server/server.py
Added Paths:
-----------
trunk/pykafe/server/memberreports.py
Added: trunk/pykafe/server/memberreports.py
===================================================================
--- trunk/pykafe/server/memberreports.py (rev 0)
+++ trunk/pykafe/server/memberreports.py 2007-06-11 02:19:57 UTC (rev 128)
@@ -0,0 +1,124 @@
+# -*- coding: utf-8 -*-
+#
+# Copyright (C) 2007, pyKafe Development Team
+#
+# This program is free software; you can redistribute it and/or modify it under
+# the terms of the GNU General Public License as published by the Free
+# Software Foundation; either version 2 of the License, or (at your option)
+# any later version.
+#
+# Please read the COPYING file.
+#
+
+from PyQt4 import QtCore, QtGui
+from database import Database
+from currencyformat import currency
+
+import locale, gettext
+locale.setlocale(locale.LC_ALL, "C")
+_ = gettext.translation("pyKafe_server", fallback=True).ugettext
+
+class Handler:
+ def __init__(self, ui, member):
+ self.ui = ui
+ self.memberName = member
+ self.ui.start.setDateTime(QtCore.QDateTime.currentDateTime().addDays(-7))
+ self.ui.end.setDateTime(QtCore.QDateTime.currentDateTime().addDays(1))
+ self.search()
+ def search(self):
+ self.ui.paymentTree.clear()
+ self.payments = []
+ startDate = self.ui.start.dateTime().toTime_t()
+ endDate = self.ui.end.dateTime().toTime_t()
+ results = Database().runOnce("select date, log_value, income from logs where member=? and date between ? and ?", (self.memberName, startDate, endDate))
+ received, sent, total = 0, 0, 0.0
+ for result in results:
+ date = QtCore.QDateTime.fromTime_t(result[0])
+ income = str(result[2])
+ if _("Money paid") in result[1]:
+ self.payments.append(QtGui.QTreeWidgetItem(self.ui.paymentTree, [date.toString("dd.MM.yyyy hh.mm"), _("Normal"), currency(income)]))
+ if _("cafeteria item sold") in result[1]:
+ self.payments.append(QtGui.QTreeWidgetItem(self.ui.paymentTree, [date.toString("dd.MM.yyyy hh.mm"), _("Cafeteria"), currency(float(income))]))
+ if _("received, sent:") in result[1]:
+ received += int(result[1][len(_("received, sent:")):result[1].rfind("|")])
+ sent += int(result[1].split("|")[1])
+ for payment in self.payments:
+ current = payment.text(2).split(" ")[0]
+ total += float(current.replace(',', '.'))
+ self.ui.totalLabel.setText(currency(total))
+ self.ui.bytesLabel.setText("%s / %s" % (str(received), str(sent)))
+
+class Ui_MemberReports(object):
+ def setupUi(self, MemberReports, member):
+ MemberReports.setObjectName("MemberReports")
+ MemberReports.resize(QtCore.QSize(QtCore.QRect(0,0,453,408).size()).expandedTo(MemberReports.minimumSizeHint()))
+ MemberReports.setWindowIcon(QtGui.QIcon("../../data/icons/pyKafe.png"))
+
+ self.gridlayout = QtGui.QGridLayout(MemberReports)
+ self.gridlayout.setMargin(9)
+ self.gridlayout.setSpacing(6)
+ self.gridlayout.setObjectName("gridlayout")
+
+ self.gridlayout1 = QtGui.QGridLayout()
+ self.gridlayout1.setMargin(0)
+ self.gridlayout1.setSpacing(6)
+ self.gridlayout1.setObjectName("gridlayout1")
+
+ self.end = QtGui.QDateTimeEdit(MemberReports)
+ self.end.setObjectName("end")
+ self.gridlayout1.addWidget(self.end,1,0,1,1)
+
+ self.findButton = QtGui.QToolButton(MemberReports)
+ self.findButton.setIcon(QtGui.QIcon("../../data/icons/find.png"))
+ self.findButton.setIconSize(QtCore.QSize(64,64))
+ self.findButton.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon)
+ self.findButton.setObjectName("findButton")
+ self.gridlayout1.addWidget(self.findButton,0,1,2,1)
+
+ self.start = QtGui.QDateTimeEdit(MemberReports)
+ self.start.setObjectName("start")
+ self.gridlayout1.addWidget(self.start,0,0,1,1)
+ self.gridlayout.addLayout(self.gridlayout1,0,0,1,2)
+
+ self.buttonBox = QtGui.QDialogButtonBox(MemberReports)
+ self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
+ self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Cancel|QtGui.QDialogButtonBox.NoButton|QtGui.QDialogButtonBox.Ok)
+ self.buttonBox.setObjectName("buttonBox")
+ self.gridlayout.addWidget(self.buttonBox,4,0,1,2)
+
+ self.label_3 = QtGui.QLabel(MemberReports)
+ self.label_3.setObjectName("label_3")
+ self.gridlayout.addWidget(self.label_3,3,0,1,1)
+
+ self.bytesLabel = QtGui.QLabel(MemberReports)
+ self.bytesLabel.setObjectName("bytesLabel")
+ self.gridlayout.addWidget(self.bytesLabel,3,1,1,1)
+
+ self.paymentTree = QtGui.QTreeWidget(MemberReports)
+ self.paymentTree.setObjectName("paymentTree")
+ self.gridlayout.addWidget(self.paymentTree,1,0,1,2)
+
+ self.label_2 = QtGui.QLabel(MemberReports)
+ self.label_2.setObjectName("label_2")
+ self.gridlayout.addWidget(self.label_2,2,0,1,1)
+
+ self.totalLabel = QtGui.QLabel(MemberReports)
+ self.totalLabel.setObjectName("totalLabel")
+ self.gridlayout.addWidget(self.totalLabel,2,1,1,1)
+
+ self.retranslateUi(MemberReports)
+ self.handler = Handler(self, member)
+ QtCore.QObject.connect(self.buttonBox,QtCore.SIGNAL("accepted()"),MemberReports.accept)
+ QtCore.QObject.connect(self.buttonBox,QtCore.SIGNAL("rejected()"),MemberReports.reject)
+ QtCore.QObject.connect(self.findButton,QtCore.SIGNAL("clicked()"),self.handler.search)
+ QtCore.QMetaObject.connectSlotsByName(MemberReports)
+
+ def retranslateUi(self, MemberReports):
+ MemberReports.setWindowTitle(QtGui.QApplication.translate("MemberReports", "Member Reports", None, QtGui.QApplication.UnicodeUTF8))
+ self.findButton.setText(QtGui.QApplication.translate("MemberReports", "Find", None, QtGui.QApplication.UnicodeUTF8))
+ self.label_3.setText(QtGui.QApplication.translate("MemberReports", "Received/Sent data in KB:", None, QtGui.QApplication.UnicodeUTF8))
+ self.paymentTree.headerItem().setText(0,QtGui.QApplication.translate("MemberReports", "Date", None, QtGui.QApplication.UnicodeUTF8))
+ self.paymentTree.headerItem().setText(1,QtGui.QApplication.translate("MemberReports", "Payment", None, QtGui.QApplication.UnicodeUTF8))
+ self.paymentTree.headerItem().setText(2,QtGui.QApplication.translate("MemberReports", "Cost", None, QtGui.QApplication.UnicodeUTF8))
+ self.label_2.setText(QtGui.QApplication.translate("MemberReports", "Total:", None, QtGui.QApplication.UnicodeUTF8))
+
Modified: trunk/pykafe/server/server.py
===================================================================
--- trunk/pykafe/server/server.py 2007-06-11 01:30:13 UTC (rev 127)
+++ trunk/pykafe/server/server.py 2007-06-11 02:19:57 UTC (rev 128)
@@ -21,6 +21,7 @@
from clientsettingswindow import Ui_ClientSettingsWindow
from currencyformat import currency
from payment import Ui_PaymentDialog
+from memberreports import Ui_MemberReports
import logger
import base64, sha, os
@@ -623,7 +624,14 @@
def memberReports(self):
"Shows statistics about selected member"
- pass
+ member = self.ui.members_treeWidget.currentItem()
+ if not member:
+ QtGui.QMessageBox.critical(self.parent(), _("Error"), _("You must select a member first"))
+ return
+ dialog = QtGui.QDialog(self.parent())
+ reportwindow = Ui_MemberReports()
+ reportwindow.setupUi(dialog, member.userName)
+ dialog.show()
def memberChanged(self, current, previous):
member = current
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-11 01:30:11
|
Revision: 127
http://pykafe.svn.sourceforge.net/pykafe/?rev=127&view=rev
Author: jnmbk
Date: 2007-06-10 18:30:13 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
this is served button
Modified Paths:
--------------
trunk/pykafe/server/mainwindow.py
Modified: trunk/pykafe/server/mainwindow.py
===================================================================
--- trunk/pykafe/server/mainwindow.py 2007-06-11 01:26:52 UTC (rev 126)
+++ trunk/pykafe/server/mainwindow.py 2007-06-11 01:30:13 UTC (rev 127)
@@ -635,7 +635,7 @@
self.orders_treeWidget_1.headerItem().setText(2,_("Cost"))
self.orders_treeWidget_1.headerItem().setText(3,_("Quantity"))
self.orders_cancelButton_1.setText(_("Cancel"))
- self.orders_deleteButton_1.setText(_("Delete"))
+ self.orders_deleteButton_1.setText(_("Served"))
self.orders_updateButton_1.setText(_("Update"))
self.orders_addButton_1.setText(_("Add"))
self.groupBox_3.setTitle(_("Cafeteria Stocks"))
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-11 01:28:11
|
Revision: 126
http://pykafe.svn.sourceforge.net/pykafe/?rev=126&view=rev
Author: jnmbk
Date: 2007-06-10 18:26:52 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
delete remaining orders
Modified Paths:
--------------
trunk/pykafe/server/server.py
Modified: trunk/pykafe/server/server.py
===================================================================
--- trunk/pykafe/server/server.py 2007-06-11 01:19:29 UTC (rev 125)
+++ trunk/pykafe/server/server.py 2007-06-11 01:26:52 UTC (rev 126)
@@ -893,4 +893,9 @@
Database().runOnce("update members set debt=? where username=?", (totalCost - credit, client.session.user))
else:
Database().runOnce("insert into safe values(?,?,?)", (QtCore.QDateTime.currentDateTime().toTime_t(), self.config.last_cashier, cost))
- logger.add(logger.logTypes.information, _("Money paid"), client.name, client.session.user, totalCost)
\ No newline at end of file
+ logger.add(logger.logTypes.information, _("Money paid"), client.name, client.session.user, totalCost)
+ for order in self.orders:
+ if order.clientName == client.name:
+ Database().runOnce("delete from orders where product_name=? and quantity=? and computer_name=?", (order.productName, order.quantity, order.clientName))
+ self.ui.orders_treeWidget_1.takeTopLevelItem(self.ui.orders_treeWidget_1.indexOfTopLevelItem(order))
+ del(self.orders[self.orders.index(order)])
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-11 01:19:31
|
Revision: 125
http://pykafe.svn.sourceforge.net/pykafe/?rev=125&view=rev
Author: jnmbk
Date: 2007-06-10 18:19:29 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
cafeteria seems OK
Modified Paths:
--------------
trunk/pykafe/server/payment.py
trunk/pykafe/server/server.py
Modified: trunk/pykafe/server/payment.py
===================================================================
--- trunk/pykafe/server/payment.py 2007-06-11 00:38:03 UTC (rev 124)
+++ trunk/pykafe/server/payment.py 2007-06-11 01:19:29 UTC (rev 125)
@@ -87,9 +87,8 @@
def retranslateUi(self, PaymentDialog):
PaymentDialog.setWindowTitle(QtGui.QApplication.translate("PaymentDialog", "Payment", None, QtGui.QApplication.UnicodeUTF8))
self.groupBox.setTitle(QtGui.QApplication.translate("PaymentDialog", "Cafeteria Costs", None, QtGui.QApplication.UnicodeUTF8))
- self.cafeteriaWidget.headerItem().setText(0,QtGui.QApplication.translate("PaymentDialog", "Date", None, QtGui.QApplication.UnicodeUTF8))
- self.cafeteriaWidget.headerItem().setText(1,QtGui.QApplication.translate("PaymentDialog", "Product", None, QtGui.QApplication.UnicodeUTF8))
- self.cafeteriaWidget.headerItem().setText(2,QtGui.QApplication.translate("PaymentDialog", "Price", None, QtGui.QApplication.UnicodeUTF8))
+ self.cafeteriaWidget.headerItem().setText(0,QtGui.QApplication.translate("PaymentDialog", "Product", None, QtGui.QApplication.UnicodeUTF8))
+ self.cafeteriaWidget.headerItem().setText(1,QtGui.QApplication.translate("PaymentDialog", "Price", None, QtGui.QApplication.UnicodeUTF8))
self.label_2.setText(QtGui.QApplication.translate("PaymentDialog", "Total Cost:", None, QtGui.QApplication.UnicodeUTF8))
self.label.setText(QtGui.QApplication.translate("PaymentDialog", "Used Time:", None, QtGui.QApplication.UnicodeUTF8))
self.label_3.setText(QtGui.QApplication.translate("PaymentDialog", "guest", None, QtGui.QApplication.UnicodeUTF8))
Modified: trunk/pykafe/server/server.py
===================================================================
--- trunk/pykafe/server/server.py 2007-06-11 00:38:03 UTC (rev 124)
+++ trunk/pykafe/server/server.py 2007-06-11 01:19:29 UTC (rev 125)
@@ -395,6 +395,7 @@
#TODO: Call this function after adding and deleting
if first:
self.members = []
+ self.ui.members_treeWidget.clear()
memberList = Database().run("select * from members where is_cashier='0'")
for memberInformation in memberList:
self.members.append(Member(self.ui.members_treeWidget, memberInformation[:7]))
@@ -869,10 +870,27 @@
paymentDialog = QtGui.QDialog(self.parent())
paymentUi = Ui_PaymentDialog()
paymentUi.setupUi(paymentDialog)
- paymentUi.totalCost.setValue(client.session.calculateTotal(self.config))
+ totalCost = client.session.calculateTotal(self.config)
+ cost = client.session.calculatePrice(self.config)
+ paymentUi.totalCost.setValue(totalCost)
paymentUi.label_3.setText("%s: %s" % (client.name, client.session.user))
time = client.session.startTime.secsTo(QtCore.QDateTime.currentDateTime())
paymentUi.usedTime.setTime(QtCore.QTime().addSecs(time))
for order in client.session.orders:
- QtGui.QTreeWidgetItem(paymentUi.cafeteriaWidget, order)
+ print order
+ QtGui.QTreeWidgetItem(paymentUi.cafeteriaWidget, [order[0], currency(order[1])])
paymentDialog.show()
+ payingType, credit = Database().runOnce("select paying_type, debt from members where username=?",(client.session.user,))[0]
+ if payingType == _("Pre Paid"):
+ credit = Database().runOnce("select debt from members where username = ?", (client.session.user,))[0][0]
+ if totalCost > credit:
+ QtGui.QMessageBox.warning(self.parent(), _("Low credit"), _("%s's credit has finished! Has %s debt.") % (client.session.user, currency(totalCost - credit)))
+ logger.add(logger.logTypes.warning, _("Member has low credit"), client.name, client.session.user, totalCost - credit)
+ else:
+ logger.add(logger.logTypes.information, _("Money paid"), client.name, client.session.user, totalCost)
+ Database().runOnce("insert into safe values(?,?,?)", (QtCore.QDateTime.currentDateTime().toTime_t(), self.config.last_cashier, cost))
+ self.initMembers()
+ Database().runOnce("update members set debt=? where username=?", (totalCost - credit, client.session.user))
+ else:
+ Database().runOnce("insert into safe values(?,?,?)", (QtCore.QDateTime.currentDateTime().toTime_t(), self.config.last_cashier, cost))
+ logger.add(logger.logTypes.information, _("Money paid"), client.name, client.session.user, totalCost)
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-11 00:38:06
|
Revision: 124
http://pykafe.svn.sourceforge.net/pykafe/?rev=124&view=rev
Author: jnmbk
Date: 2007-06-10 17:38:03 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
half of payment things
Modified Paths:
--------------
trunk/pykafe/server/payment.py
trunk/pykafe/server/server.py
Modified: trunk/pykafe/server/payment.py
===================================================================
--- trunk/pykafe/server/payment.py 2007-06-11 00:37:05 UTC (rev 123)
+++ trunk/pykafe/server/payment.py 2007-06-11 00:38:03 UTC (rev 124)
@@ -93,4 +93,3 @@
self.label_2.setText(QtGui.QApplication.translate("PaymentDialog", "Total Cost:", None, QtGui.QApplication.UnicodeUTF8))
self.label.setText(QtGui.QApplication.translate("PaymentDialog", "Used Time:", None, QtGui.QApplication.UnicodeUTF8))
self.label_3.setText(QtGui.QApplication.translate("PaymentDialog", "guest", None, QtGui.QApplication.UnicodeUTF8))
-
Modified: trunk/pykafe/server/server.py
===================================================================
--- trunk/pykafe/server/server.py 2007-06-11 00:37:05 UTC (rev 123)
+++ trunk/pykafe/server/server.py 2007-06-11 00:38:03 UTC (rev 124)
@@ -243,10 +243,11 @@
self.changeColor("green")
elif state == ClientSession.notReady:
if self.session.state == ClientSession.waitingMoney:
- total = self.session.calculateTotal(self.config)
self.server.payment(self)
+ #total = self.session.calculateTotal(self.config)
#dialog = Ui_PaymentDialog()
#self.parent()
+ """
self.paymentDialog = QtGui.QDialog(self.parent())
QtCore.QObject.connect(self.paymentDialog, QtCore.SIGNAL("accepted()"), self.sendOptions)
settingsUi = Ui_SettingsWindow()
@@ -269,9 +270,11 @@
#logger.add(logger.logTypes.information, _("Money paid"), self.name, member.userName, total)
#Database().runOnce("insert into safe values(?,?,?)", (QtCore.QDateTime.currentDateTime().toTime_t(), self.config.last_cashier, total))
#logger.add(logger.logTypes.information, _("money paid"), self.name, self.session.user, self.session.calculateTotal()
- pass
+ """
+ pass
if self.session.state == ClientSession.loggedIn:
- total = self.session.calculateTotal(self.config)
+ self.server.payment(self)
+ """total = self.session.calculateTotal(self.config)
payingType, credit = Database().runOnce("select paying_type, debt from members where username=?",(self.session.user,))[0]
if payingType == _("Pre Paid"):
print "user is pre_paid and has %s credit" % currency(credit)
@@ -285,7 +288,8 @@
else:
#logger.add(logger.logTypes.information, _("Money paid"), self.name, member.userName, total)
#Database().runOnce("insert into safe values(?,?,?)", (QtCore.QDateTime.currentDateTime().toTime_t(), self.config.last_cashier, total))
- pass
+ pass"""
+ pass
if self.config.filter_enable:
message = "007"
filterFile = open(self.config.filter_file)
@@ -302,6 +306,7 @@
self.sendMessage(message)
self.setTexts((2,3,4,5), ("","","",""))
self.changeColor("orange")
+ self.session.initialize()
elif state == ClientSession.requestedOpening:
self.changeColor("red")
elif state == ClientSession.waitingMoney:
@@ -864,8 +869,9 @@
paymentDialog = QtGui.QDialog(self.parent())
paymentUi = Ui_PaymentDialog()
paymentUi.setupUi(paymentDialog)
- paymentUi.totalCost.setValue(client.session.calculateTotal())
- time = client.session.startTime.secsTo(QtCore.QDateTime.currentDateTime())
+ paymentUi.totalCost.setValue(client.session.calculateTotal(self.config))
+ paymentUi.label_3.setText("%s: %s" % (client.name, client.session.user))
+ time = client.session.startTime.secsTo(QtCore.QDateTime.currentDateTime())
paymentUi.usedTime.setTime(QtCore.QTime().addSecs(time))
for order in client.session.orders:
QtGui.QTreeWidgetItem(paymentUi.cafeteriaWidget, order)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-11 00:37:04
|
Revision: 123
http://pykafe.svn.sourceforge.net/pykafe/?rev=123&view=rev
Author: jnmbk
Date: 2007-06-10 17:37:05 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
don't print
Modified Paths:
--------------
trunk/pykafe/client/client.py
Modified: trunk/pykafe/client/client.py
===================================================================
--- trunk/pykafe/client/client.py 2007-06-11 00:04:25 UTC (rev 122)
+++ trunk/pykafe/client/client.py 2007-06-11 00:37:05 UTC (rev 123)
@@ -171,7 +171,6 @@
currentTime = QtCore.QDateTime.currentDateTime()
usedTime = self.client.session.startTime.secsTo(currentTime)
remainingTime = QtCore.QDateTime()
- print self.client.session.startTime.toString("hh.mm"), currentTime.toString("hh.mm"), self.client.session.endTime.toString("hh.mm")
if self.client.session.endTime:
remainingTime.setTime_t(currentTime.secsTo(self.client.session.endTime))
else:
@@ -184,7 +183,7 @@
usedTime.toUTC().time().toString("hh.mm") + "|"
text += currency(self.client.session.calculatePrice(config))
sendDataToUi(str(data+text))
- if 120>remainingTime.toTime_t()>0:
+ if 180>remainingTime.toTime_t()>0:
sendDataToUi("024" + str(remainingTime.toTime_t()))
elif data[:3] == "018":
tcpSocket = QtNetwork.QTcpSocket()
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-11 00:04:24
|
Revision: 122
http://pykafe.svn.sourceforge.net/pykafe/?rev=122&view=rev
Author: jnmbk
Date: 2007-06-10 17:04:25 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
do it right way
Modified Paths:
--------------
trunk/pykafe/client/client.py
Modified: trunk/pykafe/client/client.py
===================================================================
--- trunk/pykafe/client/client.py 2007-06-10 23:08:21 UTC (rev 121)
+++ trunk/pykafe/client/client.py 2007-06-11 00:04:25 UTC (rev 122)
@@ -171,7 +171,8 @@
currentTime = QtCore.QDateTime.currentDateTime()
usedTime = self.client.session.startTime.secsTo(currentTime)
remainingTime = QtCore.QDateTime()
- if self.client.session.endTime and currentTime.secsTo(self.client.session.endTime)>0:
+ print self.client.session.startTime.toString("hh.mm"), currentTime.toString("hh.mm"), self.client.session.endTime.toString("hh.mm")
+ if self.client.session.endTime:
remainingTime.setTime_t(currentTime.secsTo(self.client.session.endTime))
else:
remainingTime.setTime_t(0)
@@ -226,12 +227,11 @@
self.session.setState(ClientSession.notReady)
sendDataToUi("020")
- def setState(self, state, user = "guest", endTime = ""):
+ def setState(self, state, user = "guest", endTime = None):
if state == ClientSession.loggedIn:
self.session.user = user
self.session.startTime = QtCore.QDateTime.currentDateTime()
- if endTime:
- self.session.endTime = endTime
+ self.session.endTime = endTime
self.session.receivedBytes, self.session.transferredBytes = getNetworkBytes()
print getNetworkBytes()
self.session.setState(state)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 23:08:24
|
Revision: 121
http://pykafe.svn.sourceforge.net/pykafe/?rev=121&view=rev
Author: jnmbk
Date: 2007-06-10 16:08:21 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
at least works
Modified Paths:
--------------
trunk/pykafe/server/server.py
Modified: trunk/pykafe/server/server.py
===================================================================
--- trunk/pykafe/server/server.py 2007-06-10 23:07:58 UTC (rev 120)
+++ trunk/pykafe/server/server.py 2007-06-10 23:08:21 UTC (rev 121)
@@ -244,7 +244,7 @@
elif state == ClientSession.notReady:
if self.session.state == ClientSession.waitingMoney:
total = self.session.calculateTotal(self.config)
- self.emit(QtCore.SIGNAL("payment"), self)
+ self.server.payment(self)
#dialog = Ui_PaymentDialog()
#self.parent()
self.paymentDialog = QtGui.QDialog(self.parent())
@@ -374,7 +374,6 @@
self.clients = []
for clientInformation in self.config.clientList:
client = Client(ui.main_treeWidget, clientInformation, self.config, self)
- QtCore.QObject.connect(client, QtCore.SIGNAL("payment"), self.payment)
self.clients.append(client)
self.ui.orders_idComboBox.addItem(clientInformation.name, QtCore.QVariant(clientInformation.ip))
ui.main_treeWidget.sortItems(0, QtCore.Qt.AscendingOrder)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 23:07:55
|
Revision: 120
http://pykafe.svn.sourceforge.net/pykafe/?rev=120&view=rev
Author: jnmbk
Date: 2007-06-10 16:07:58 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
quick fix
Modified Paths:
--------------
trunk/pykafe/client/session.py
trunk/pykafe/server/session.py
Modified: trunk/pykafe/client/session.py
===================================================================
--- trunk/pykafe/client/session.py 2007-06-10 22:28:07 UTC (rev 119)
+++ trunk/pykafe/client/session.py 2007-06-10 23:07:58 UTC (rev 120)
@@ -21,8 +21,11 @@
notConnected, notReady, ready, loggedIn, requestedOpening, waitingMoney = range(6)
def __init__(self):
self.state = 0
+ self.settings = None
+ self.initialize()
+
+ def initialize(self):
self.user = None
- self.settings = None
self.startTime = None
self.endTime = None
self.orders = []
@@ -35,13 +38,16 @@
price = float(config.price_fixedprice)
else:
price = float(config.price_onehourprice)/3600 * time
- return int(price/config.price_rounding)*config.price_rounding
+ return int(price/float(config.price_rounding))*float(config.price_rounding)
def calculateTotal(self, config):
total = self.calculatePrice(config)
for i in self.orders:
- total += i
+ total += i[1]
return total
+
+ def addOrder(self, productName, price):
+ self.orders.append([productName, price])
def toString(self):
"""returns current state as a string"""
Modified: trunk/pykafe/server/session.py
===================================================================
--- trunk/pykafe/server/session.py 2007-06-10 22:28:07 UTC (rev 119)
+++ trunk/pykafe/server/session.py 2007-06-10 23:07:58 UTC (rev 120)
@@ -38,7 +38,7 @@
price = float(config.price_fixedprice)
else:
price = float(config.price_onehourprice)/3600 * time
- return int(price/config.price_rounding)*config.price_rounding
+ return int(price/float(config.price_rounding))*float(config.price_rounding)
def calculateTotal(self, config):
total = self.calculatePrice(config)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 22:28:06
|
Revision: 119
http://pykafe.svn.sourceforge.net/pykafe/?rev=119&view=rev
Author: jnmbk
Date: 2007-06-10 15:28:07 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
cancel button isn't there
Modified Paths:
--------------
trunk/pykafe/server/payment.py
trunk/pykafe/server/payment.ui
Modified: trunk/pykafe/server/payment.py
===================================================================
--- trunk/pykafe/server/payment.py 2007-06-10 22:11:30 UTC (rev 118)
+++ trunk/pykafe/server/payment.py 2007-06-10 22:28:07 UTC (rev 119)
@@ -1,13 +1,14 @@
-# -*- coding: utf-8 -*-
-
-# Form implementation generated from reading ui file 'payment.ui'
#
-# Created: Mon Jun 11 00:40:07 2007
-# by: PyQt4 UI code generator 4.1.1
+# Copyright (C) 2007, pyKafe Development Team
#
-# WARNING! All changes made in this file will be lost!
+# This program is free software; you can redistribute it and/or modify it under
+# the terms of the GNU General Public License as published by the Free
+# Software Foundation; either version 2 of the License, or (at your option)
+# any later version.
+#
+# Please read the COPYING file.
+#
-import sys
from PyQt4 import QtCore, QtGui
class Ui_PaymentDialog(object):
@@ -81,7 +82,6 @@
self.retranslateUi(PaymentDialog)
QtCore.QObject.connect(self.buttonBox,QtCore.SIGNAL("accepted()"),PaymentDialog.accept)
- QtCore.QObject.connect(self.buttonBox,QtCore.SIGNAL("rejected()"),PaymentDialog.)
QtCore.QMetaObject.connectSlotsByName(PaymentDialog)
def retranslateUi(self, PaymentDialog):
Modified: trunk/pykafe/server/payment.ui
===================================================================
--- trunk/pykafe/server/payment.ui 2007-06-10 22:11:30 UTC (rev 118)
+++ trunk/pykafe/server/payment.ui 2007-06-10 22:28:07 UTC (rev 119)
@@ -151,21 +151,5 @@
</hint>
</hints>
</connection>
- <connection>
- <sender>buttonBox</sender>
- <signal>rejected()</signal>
- <receiver>PaymentDialog</receiver>
- <slot></slot>
- <hints>
- <hint type="sourcelabel" >
- <x>316</x>
- <y>260</y>
- </hint>
- <hint type="destinationlabel" >
- <x>286</x>
- <y>274</y>
- </hint>
- </hints>
- </connection>
</connections>
</ui>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 22:11:50
|
Revision: 118
http://pykafe.svn.sourceforge.net/pykafe/?rev=118&view=rev
Author: jnmbk
Date: 2007-06-10 15:11:30 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
update payment ui
Modified Paths:
--------------
trunk/pykafe/server/payment.ui
Modified: trunk/pykafe/server/payment.ui
===================================================================
--- trunk/pykafe/server/payment.ui 2007-06-10 22:10:40 UTC (rev 117)
+++ trunk/pykafe/server/payment.ui 2007-06-10 22:11:30 UTC (rev 118)
@@ -22,7 +22,7 @@
<property name="spacing" >
<number>6</number>
</property>
- <item row="1" column="0" >
+ <item row="2" column="0" >
<widget class="QGroupBox" name="groupBox" >
<property name="title" >
<string>Cafeteria Costs</string>
@@ -44,11 +44,6 @@
</property>
<column>
<property name="text" >
- <string>Date</string>
- </property>
- </column>
- <column>
- <property name="text" >
<string>Product</string>
</property>
</column>
@@ -62,7 +57,7 @@
</layout>
</widget>
</item>
- <item row="0" column="0" >
+ <item row="3" column="0" >
<layout class="QHBoxLayout" >
<property name="margin" >
<number>0</number>
@@ -71,22 +66,38 @@
<number>6</number>
</property>
<item>
- <widget class="QLabel" name="label" >
+ <widget class="QLabel" name="label_2" >
<property name="text" >
- <string>Used Time:</string>
+ <string>Total Cost:</string>
</property>
</widget>
</item>
<item>
- <widget class="QTimeEdit" name="usedTime" >
+ <widget class="QDoubleSpinBox" name="totalCost" >
<property name="readOnly" >
<bool>true</bool>
</property>
+ <property name="maximum" >
+ <double>1000000000.000000000000000</double>
+ </property>
</widget>
</item>
</layout>
</item>
- <item row="2" column="0" >
+ <item row="5" column="0" >
+ <widget class="QDialogButtonBox" name="buttonBox" >
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="standardButtons" >
+ <set>QDialogButtonBox::Ok</set>
+ </property>
+ <property name="centerButtons" >
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" >
<layout class="QHBoxLayout" >
<property name="margin" >
<number>0</number>
@@ -95,14 +106,14 @@
<number>6</number>
</property>
<item>
- <widget class="QLabel" name="label_2" >
+ <widget class="QLabel" name="label" >
<property name="text" >
- <string>Total Cost:</string>
+ <string>Used Time:</string>
</property>
</widget>
</item>
<item>
- <widget class="QSpinBox" name="totalCost" >
+ <widget class="QTimeEdit" name="usedTime" >
<property name="readOnly" >
<bool>true</bool>
</property>
@@ -110,13 +121,13 @@
</item>
</layout>
</item>
- <item row="4" column="0" >
- <widget class="QDialogButtonBox" name="buttonBox" >
- <property name="orientation" >
- <enum>Qt::Horizontal</enum>
+ <item row="0" column="0" >
+ <widget class="QLabel" name="label_3" >
+ <property name="text" >
+ <string>guest</string>
</property>
- <property name="standardButtons" >
- <set>QDialogButtonBox::Cancel|QDialogButtonBox::NoButton|QDialogButtonBox::Ok</set>
+ <property name="alignment" >
+ <set>Qt::AlignCenter</set>
</property>
</widget>
</item>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 22:10:57
|
Revision: 117
http://pykafe.svn.sourceforge.net/pykafe/?rev=117&view=rev
Author: jnmbk
Date: 2007-06-10 15:10:40 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
payment dialog, not tested
Modified Paths:
--------------
trunk/pykafe/server/server.py
trunk/pykafe/server/session.py
Added Paths:
-----------
trunk/pykafe/server/payment.py
Added: trunk/pykafe/server/payment.py
===================================================================
--- trunk/pykafe/server/payment.py (rev 0)
+++ trunk/pykafe/server/payment.py 2007-06-10 22:10:40 UTC (rev 117)
@@ -0,0 +1,96 @@
+# -*- coding: utf-8 -*-
+
+# Form implementation generated from reading ui file 'payment.ui'
+#
+# Created: Mon Jun 11 00:40:07 2007
+# by: PyQt4 UI code generator 4.1.1
+#
+# WARNING! All changes made in this file will be lost!
+
+import sys
+from PyQt4 import QtCore, QtGui
+
+class Ui_PaymentDialog(object):
+ def setupUi(self, PaymentDialog):
+ PaymentDialog.setObjectName("PaymentDialog")
+ PaymentDialog.resize(QtCore.QSize(QtCore.QRect(0,0,400,300).size()).expandedTo(PaymentDialog.minimumSizeHint()))
+ PaymentDialog.setWindowIcon(QtGui.QIcon("../../data/icons/pyKafe.png"))
+
+ self.gridlayout = QtGui.QGridLayout(PaymentDialog)
+ self.gridlayout.setMargin(9)
+ self.gridlayout.setSpacing(6)
+ self.gridlayout.setObjectName("gridlayout")
+
+ self.groupBox = QtGui.QGroupBox(PaymentDialog)
+ self.groupBox.setObjectName("groupBox")
+
+ self.gridlayout1 = QtGui.QGridLayout(self.groupBox)
+ self.gridlayout1.setMargin(9)
+ self.gridlayout1.setSpacing(6)
+ self.gridlayout1.setObjectName("gridlayout1")
+
+ self.cafeteriaWidget = QtGui.QTreeWidget(self.groupBox)
+ self.cafeteriaWidget.setRootIsDecorated(False)
+ self.cafeteriaWidget.setAllColumnsShowFocus(True)
+ self.cafeteriaWidget.setObjectName("cafeteriaWidget")
+ self.gridlayout1.addWidget(self.cafeteriaWidget,0,0,1,1)
+ self.gridlayout.addWidget(self.groupBox,2,0,1,1)
+
+ self.hboxlayout = QtGui.QHBoxLayout()
+ self.hboxlayout.setMargin(0)
+ self.hboxlayout.setSpacing(6)
+ self.hboxlayout.setObjectName("hboxlayout")
+
+ self.label_2 = QtGui.QLabel(PaymentDialog)
+ self.label_2.setObjectName("label_2")
+ self.hboxlayout.addWidget(self.label_2)
+
+ self.totalCost = QtGui.QDoubleSpinBox(PaymentDialog)
+ self.totalCost.setReadOnly(True)
+ self.totalCost.setMaximum(1000000000.0)
+ self.totalCost.setObjectName("totalCost")
+ self.hboxlayout.addWidget(self.totalCost)
+ self.gridlayout.addLayout(self.hboxlayout,3,0,1,1)
+
+ self.buttonBox = QtGui.QDialogButtonBox(PaymentDialog)
+ self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
+ self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Ok)
+ self.buttonBox.setCenterButtons(True)
+ self.buttonBox.setObjectName("buttonBox")
+ self.gridlayout.addWidget(self.buttonBox,5,0,1,1)
+
+ self.hboxlayout1 = QtGui.QHBoxLayout()
+ self.hboxlayout1.setMargin(0)
+ self.hboxlayout1.setSpacing(6)
+ self.hboxlayout1.setObjectName("hboxlayout1")
+
+ self.label = QtGui.QLabel(PaymentDialog)
+ self.label.setObjectName("label")
+ self.hboxlayout1.addWidget(self.label)
+
+ self.usedTime = QtGui.QTimeEdit(PaymentDialog)
+ self.usedTime.setReadOnly(True)
+ self.usedTime.setObjectName("usedTime")
+ self.hboxlayout1.addWidget(self.usedTime)
+ self.gridlayout.addLayout(self.hboxlayout1,1,0,1,1)
+
+ self.label_3 = QtGui.QLabel(PaymentDialog)
+ self.label_3.setAlignment(QtCore.Qt.AlignCenter)
+ self.label_3.setObjectName("label_3")
+ self.gridlayout.addWidget(self.label_3,0,0,1,1)
+
+ self.retranslateUi(PaymentDialog)
+ QtCore.QObject.connect(self.buttonBox,QtCore.SIGNAL("accepted()"),PaymentDialog.accept)
+ QtCore.QObject.connect(self.buttonBox,QtCore.SIGNAL("rejected()"),PaymentDialog.)
+ QtCore.QMetaObject.connectSlotsByName(PaymentDialog)
+
+ def retranslateUi(self, PaymentDialog):
+ PaymentDialog.setWindowTitle(QtGui.QApplication.translate("PaymentDialog", "Payment", None, QtGui.QApplication.UnicodeUTF8))
+ self.groupBox.setTitle(QtGui.QApplication.translate("PaymentDialog", "Cafeteria Costs", None, QtGui.QApplication.UnicodeUTF8))
+ self.cafeteriaWidget.headerItem().setText(0,QtGui.QApplication.translate("PaymentDialog", "Date", None, QtGui.QApplication.UnicodeUTF8))
+ self.cafeteriaWidget.headerItem().setText(1,QtGui.QApplication.translate("PaymentDialog", "Product", None, QtGui.QApplication.UnicodeUTF8))
+ self.cafeteriaWidget.headerItem().setText(2,QtGui.QApplication.translate("PaymentDialog", "Price", None, QtGui.QApplication.UnicodeUTF8))
+ self.label_2.setText(QtGui.QApplication.translate("PaymentDialog", "Total Cost:", None, QtGui.QApplication.UnicodeUTF8))
+ self.label.setText(QtGui.QApplication.translate("PaymentDialog", "Used Time:", None, QtGui.QApplication.UnicodeUTF8))
+ self.label_3.setText(QtGui.QApplication.translate("PaymentDialog", "guest", None, QtGui.QApplication.UnicodeUTF8))
+
Modified: trunk/pykafe/server/server.py
===================================================================
--- trunk/pykafe/server/server.py 2007-06-10 20:33:58 UTC (rev 116)
+++ trunk/pykafe/server/server.py 2007-06-10 22:10:40 UTC (rev 117)
@@ -20,6 +20,7 @@
from settingswindow import Ui_SettingsWindow
from clientsettingswindow import Ui_ClientSettingsWindow
from currencyformat import currency
+from payment import Ui_PaymentDialog
import logger
import base64, sha, os
@@ -243,6 +244,14 @@
elif state == ClientSession.notReady:
if self.session.state == ClientSession.waitingMoney:
total = self.session.calculateTotal(self.config)
+ self.emit(QtCore.SIGNAL("payment"), self)
+ #dialog = Ui_PaymentDialog()
+ #self.parent()
+ self.paymentDialog = QtGui.QDialog(self.parent())
+ QtCore.QObject.connect(self.paymentDialog, QtCore.SIGNAL("accepted()"), self.sendOptions)
+ settingsUi = Ui_SettingsWindow()
+ settingsUi.setupUi(self.settingsDialog, self.config)
+ self.settingsDialog.show()
print "will pay", total
payingType, credit = Database().runOnce("select paying_type, debt from members where username=?",(self.session.user,))[0]
print payingType, credit
@@ -364,7 +373,9 @@
self.parent().close()
self.clients = []
for clientInformation in self.config.clientList:
- self.clients.append(Client(ui.main_treeWidget, clientInformation, self.config, self))
+ client = Client(ui.main_treeWidget, clientInformation, self.config, self)
+ QtCore.QObject.connect(client, QtCore.SIGNAL("payment"), self.payment)
+ self.clients.append(client)
self.ui.orders_idComboBox.addItem(clientInformation.name, QtCore.QVariant(clientInformation.ip))
ui.main_treeWidget.sortItems(0, QtCore.Qt.AscendingOrder)
self.initMembers(first = True)
@@ -829,7 +840,7 @@
if client.name == order.clientName:
logger.add(logger.logTypes.information, _("cafeteria item sold"), order.clientName, client.session.user, order.price())
Database().runOnce("insert into safe values(?,?,?)", (QtCore.QDateTime.currentDateTime().toTime_t(), self.config.last_cashier, order.price()))
- client.session.orders.append(order.price())
+ client.session.addOrder(order.productName, order.price())
self.orderCancel(question = False)
def refreshLogs(self):
@@ -849,3 +860,14 @@
elif type == logger.logTypes.error: type = _("error")
elif type == logger.logTypes.information: type = _("information")
self.logs.append(Log(self.ui.logs_treeWidget, (time, type) + log[2:]))
+
+ def payment(self, client):
+ paymentDialog = QtGui.QDialog(self.parent())
+ paymentUi = Ui_PaymentDialog()
+ paymentUi.setupUi(paymentDialog)
+ paymentUi.totalCost.setValue(client.session.calculateTotal())
+ time = client.session.startTime.secsTo(QtCore.QDateTime.currentDateTime())
+ paymentUi.usedTime.setTime(QtCore.QTime().addSecs(time))
+ for order in client.session.orders:
+ QtGui.QTreeWidgetItem(paymentUi.cafeteriaWidget, order)
+ paymentDialog.show()
Modified: trunk/pykafe/server/session.py
===================================================================
--- trunk/pykafe/server/session.py 2007-06-10 20:33:58 UTC (rev 116)
+++ trunk/pykafe/server/session.py 2007-06-10 22:10:40 UTC (rev 117)
@@ -21,8 +21,11 @@
notConnected, notReady, ready, loggedIn, requestedOpening, waitingMoney = range(6)
def __init__(self):
self.state = 0
+ self.settings = None
+ self.initialize()
+
+ def initialize(self):
self.user = None
- self.settings = None
self.startTime = None
self.endTime = None
self.orders = []
@@ -40,8 +43,11 @@
def calculateTotal(self, config):
total = self.calculatePrice(config)
for i in self.orders:
- total += i
+ total += i[1]
return total
+
+ def addOrder(self, productName, price):
+ self.orders.append([productName, price])
def toString(self):
"""returns current state as a string"""
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 20:33:56
|
Revision: 116
http://pykafe.svn.sourceforge.net/pykafe/?rev=116&view=rev
Author: jnmbk
Date: 2007-06-10 13:33:58 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
set minvalue 2
Modified Paths:
--------------
trunk/pykafe/server/server.py
Modified: trunk/pykafe/server/server.py
===================================================================
--- trunk/pykafe/server/server.py 2007-06-10 20:28:14 UTC (rev 115)
+++ trunk/pykafe/server/server.py 2007-06-10 20:33:58 UTC (rev 116)
@@ -458,7 +458,7 @@
elif state == ClientSession.ready:
answer = QtGui.QInputDialog.getInteger(self.parent(), _("Enter time"), _("Enter time in minutes"),
int(self.config.price_fixedpriceminutes),
- int(self.config.price_fixedpriceminutes),
+ 2,
1440, 15)
if answer[1] != False:
myTime = QtCore.QDateTime.currentDateTime().addSecs(answer[0]*60)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 20:28:12
|
Revision: 115
http://pykafe.svn.sourceforge.net/pykafe/?rev=115&view=rev
Author: jnmbk
Date: 2007-06-10 13:28:14 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
runonce
Modified Paths:
--------------
trunk/pykafe/server/server.py
Modified: trunk/pykafe/server/server.py
===================================================================
--- trunk/pykafe/server/server.py 2007-06-10 20:25:32 UTC (rev 114)
+++ trunk/pykafe/server/server.py 2007-06-10 20:28:14 UTC (rev 115)
@@ -840,7 +840,7 @@
self.ui.logs_dateTimeEdit_1.setDateTime(self.ui.logs_dateTimeEdit_2.dateTime())
return
self.logs = []
- logs = Database().run("select date,log_type,log_value,cashier,computer,member,income from logs where date between ? and ?", (startDate, endDate))
+ logs = Database().runOnce("select date,log_type,log_value,cashier,computer,member,income from logs where date between ? and ?", (startDate, endDate))
for log in logs:
time = QtCore.QDateTime.fromTime_t(log[0]).toString("dd.MM.yyyy hh.mm")
type = log[1]
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 20:25:29
|
Revision: 114
http://pykafe.svn.sourceforge.net/pykafe/?rev=114&view=rev
Author: jnmbk
Date: 2007-06-10 13:25:32 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
fix rounding
Modified Paths:
--------------
trunk/pykafe/server/settings.py
trunk/pykafe/server/settingswindow.py
Modified: trunk/pykafe/server/settings.py
===================================================================
--- trunk/pykafe/server/settings.py 2007-06-10 19:45:52 UTC (rev 113)
+++ trunk/pykafe/server/settings.py 2007-06-10 20:25:32 UTC (rev 114)
@@ -232,18 +232,11 @@
self.ui.cashiers_username.setText(currentCashier.userName)
self.ui.cashiers_password.clear()
self.ui.cashiers_realName.setText(currentCashier.realName)
- def checkPricingRoundingValue(self):
- if self.ui.pricing_rounding.value() > self.ui.pricing_fixed.value():
- QtGui.QMessageBox.warning(self.parent, _("Warning"), _("Price rounding must be smaller than or equal to fixed price. Correct value will be set."))
- self.ui.pricing_rounding.setValue(self.ui.pricing_fixed.value())
def checkPricingOnehourValue(self):
if self.ui.pricing_fixed.value() > self.ui.pricing_onehour.value():
QtGui.QMessageBox.warning(self.parent, _("Warning"), _("One hour price must be bigger than or equal to fixed price. Correct value will be set."))
self.ui.pricing_onehour.setValue(self.ui.pricing_fixed.value())
def checkPricingFixedValue(self):
- if self.ui.pricing_rounding.value() > self.ui.pricing_fixed.value():
- QtGui.QMessageBox.warning(self.parent, _("Warning"), _("Fixed price must be bigger than or equal to price rounding. Correct value will be set."))
- self.ui.pricing_fixed.setValue(self.ui.pricing_rounding.value())
- elif self.ui.pricing_fixed.value() > self.ui.pricing_onehour.value():
+ if self.ui.pricing_fixed.value() > self.ui.pricing_onehour.value():
QtGui.QMessageBox.warning(self.parent, _("Warning"), _("Fixed price must be smaller than or equal to one hour price. Correct value will be set."))
self.ui.pricing_fixed.setValue(self.ui.pricing_onehour.value())
Modified: trunk/pykafe/server/settingswindow.py
===================================================================
--- trunk/pykafe/server/settingswindow.py 2007-06-10 19:45:52 UTC (rev 113)
+++ trunk/pykafe/server/settingswindow.py 2007-06-10 20:25:32 UTC (rev 114)
@@ -337,7 +337,6 @@
QtCore.QObject.connect(self.cashiers_reportsButton,QtCore.SIGNAL("clicked()"),self.manager.cashierReports)
QtCore.QObject.connect(self.pricing_fixed,QtCore.SIGNAL("valueChanged(double)"),self.manager.checkPricingFixedValue)
QtCore.QObject.connect(self.pricing_onehour,QtCore.SIGNAL("valueChanged(double)"),self.manager.checkPricingOnehourValue)
- QtCore.QObject.connect(self.pricing_rounding,QtCore.SIGNAL("valueChanged(double)"),self.manager.checkPricingRoundingValue)
QtCore.QMetaObject.connectSlotsByName(SettingsWindow)
SettingsWindow.setTabOrder(self.tabWidget,self.checkBox_2)
SettingsWindow.setTabOrder(self.checkBox_2,self.pricing_minutes)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 19:45:50
|
Revision: 113
http://pykafe.svn.sourceforge.net/pykafe/?rev=113&view=rev
Author: jnmbk
Date: 2007-06-10 12:45:52 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
forgot to delete TODO tag
Modified Paths:
--------------
trunk/pykafe/client/session.py
trunk/pykafe/server/session.py
Modified: trunk/pykafe/client/session.py
===================================================================
--- trunk/pykafe/client/session.py 2007-06-10 19:25:44 UTC (rev 112)
+++ trunk/pykafe/client/session.py 2007-06-10 19:45:52 UTC (rev 113)
@@ -34,7 +34,6 @@
if time/60 < int(config.price_fixedpriceminutes):
price = float(config.price_fixedprice)
else:
- #TODO: round the price using price_rounding
price = float(config.price_onehourprice)/3600 * time
return int(price/config.price_rounding)*config.price_rounding
Modified: trunk/pykafe/server/session.py
===================================================================
--- trunk/pykafe/server/session.py 2007-06-10 19:25:44 UTC (rev 112)
+++ trunk/pykafe/server/session.py 2007-06-10 19:45:52 UTC (rev 113)
@@ -34,7 +34,6 @@
if time/60 < int(config.price_fixedpriceminutes):
price = float(config.price_fixedprice)
else:
- #TODO: round the price using price_rounding
price = float(config.price_onehourprice)/3600 * time
return int(price/config.price_rounding)*config.price_rounding
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 19:25:41
|
Revision: 112
http://pykafe.svn.sourceforge.net/pykafe/?rev=112&view=rev
Author: jnmbk
Date: 2007-06-10 12:25:44 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
sync
Modified Paths:
--------------
trunk/pykafe/client/session.py
Modified: trunk/pykafe/client/session.py
===================================================================
--- trunk/pykafe/client/session.py 2007-06-10 19:23:32 UTC (rev 111)
+++ trunk/pykafe/client/session.py 2007-06-10 19:25:44 UTC (rev 112)
@@ -36,7 +36,8 @@
else:
#TODO: round the price using price_rounding
price = float(config.price_onehourprice)/3600 * time
- return price
+ return int(price/config.price_rounding)*config.price_rounding
+
def calculateTotal(self, config):
total = self.calculatePrice(config)
for i in self.orders:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 19:23:30
|
Revision: 111
http://pykafe.svn.sourceforge.net/pykafe/?rev=111&view=rev
Author: jnmbk
Date: 2007-06-10 12:23:32 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
make rounding work
Modified Paths:
--------------
trunk/pykafe/server/session.py
Modified: trunk/pykafe/server/session.py
===================================================================
--- trunk/pykafe/server/session.py 2007-06-10 18:54:45 UTC (rev 110)
+++ trunk/pykafe/server/session.py 2007-06-10 19:23:32 UTC (rev 111)
@@ -36,7 +36,8 @@
else:
#TODO: round the price using price_rounding
price = float(config.price_onehourprice)/3600 * time
- return price
+ return int(price/config.price_rounding)*config.price_rounding
+
def calculateTotal(self, config):
total = self.calculatePrice(config)
for i in self.orders:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 18:54:43
|
Revision: 110
http://pykafe.svn.sourceforge.net/pykafe/?rev=110&view=rev
Author: jnmbk
Date: 2007-06-10 11:54:45 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
new uis
Added Paths:
-----------
trunk/pykafe/server/memberreports.ui
trunk/pykafe/server/payment.ui
Added: trunk/pykafe/server/memberreports.ui
===================================================================
--- trunk/pykafe/server/memberreports.ui (rev 0)
+++ trunk/pykafe/server/memberreports.ui 2007-06-10 18:54:45 UTC (rev 110)
@@ -0,0 +1,172 @@
+<ui version="4.0" >
+ <class>MemberReports</class>
+ <widget class="QDialog" name="MemberReports" >
+ <property name="geometry" >
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>453</width>
+ <height>408</height>
+ </rect>
+ </property>
+ <property name="windowTitle" >
+ <string>Member Reports</string>
+ </property>
+ <property name="windowIcon" >
+ <iconset>../../data/icons/pyKafe.png</iconset>
+ </property>
+ <layout class="QGridLayout" >
+ <property name="margin" >
+ <number>9</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item row="2" column="1" >
+ <widget class="QLabel" name="timeLabel" />
+ </item>
+ <item row="3" column="1" >
+ <widget class="QLabel" name="totalLabel" />
+ </item>
+ <item row="3" column="0" >
+ <widget class="QLabel" name="label_2" >
+ <property name="text" >
+ <string>Total:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0" >
+ <widget class="QLabel" name="label_1" >
+ <property name="text" >
+ <string>Used Time:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0" colspan="2" >
+ <widget class="QTreeWidget" name="ordersTreeWidget" >
+ <column>
+ <property name="text" >
+ <string>Date</string>
+ </property>
+ </column>
+ <column>
+ <property name="text" >
+ <string>Payment</string>
+ </property>
+ </column>
+ <column>
+ <property name="text" >
+ <string>Cost</string>
+ </property>
+ </column>
+ </widget>
+ </item>
+ <item row="4" column="1" >
+ <widget class="QLabel" name="bytesLabel" />
+ </item>
+ <item row="4" column="0" >
+ <widget class="QLabel" name="label_3" >
+ <property name="text" >
+ <string>Received/Sent data in KB:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="0" colspan="2" >
+ <widget class="QDialogButtonBox" name="buttonBox" >
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="standardButtons" >
+ <set>QDialogButtonBox::Cancel|QDialogButtonBox::NoButton|QDialogButtonBox::Ok</set>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="0" colspan="2" >
+ <layout class="QGridLayout" >
+ <property name="margin" >
+ <number>0</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item row="1" column="0" >
+ <widget class="QDateTimeEdit" name="dateTimeEdit_2" />
+ </item>
+ <item rowspan="2" row="0" column="1" >
+ <widget class="QToolButton" name="toolButton" >
+ <property name="text" >
+ <string>Find</string>
+ </property>
+ <property name="icon" >
+ <iconset>../../data/icons/find.png</iconset>
+ </property>
+ <property name="iconSize" >
+ <size>
+ <width>64</width>
+ <height>64</height>
+ </size>
+ </property>
+ <property name="toolButtonStyle" >
+ <enum>Qt::ToolButtonTextUnderIcon</enum>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="0" >
+ <widget class="QDateTimeEdit" name="dateTimeEdit" />
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>accepted()</signal>
+ <receiver>MemberReports</receiver>
+ <slot>accept()</slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>248</x>
+ <y>254</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>157</x>
+ <y>274</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>rejected()</signal>
+ <receiver>MemberReports</receiver>
+ <slot>reject()</slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>316</x>
+ <y>260</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>286</x>
+ <y>274</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>toolButton</sender>
+ <signal>clicked()</signal>
+ <receiver>MemberReports</receiver>
+ <slot>close()</slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>218</x>
+ <y>56</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>132</x>
+ <y>119</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
Added: trunk/pykafe/server/payment.ui
===================================================================
--- trunk/pykafe/server/payment.ui (rev 0)
+++ trunk/pykafe/server/payment.ui 2007-06-10 18:54:45 UTC (rev 110)
@@ -0,0 +1,160 @@
+<ui version="4.0" >
+ <class>PaymentDialog</class>
+ <widget class="QDialog" name="PaymentDialog" >
+ <property name="geometry" >
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>400</width>
+ <height>300</height>
+ </rect>
+ </property>
+ <property name="windowTitle" >
+ <string>Payment</string>
+ </property>
+ <property name="windowIcon" >
+ <iconset>../../data/icons/pyKafe.png</iconset>
+ </property>
+ <layout class="QGridLayout" >
+ <property name="margin" >
+ <number>9</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item row="1" column="0" >
+ <widget class="QGroupBox" name="groupBox" >
+ <property name="title" >
+ <string>Cafeteria Costs</string>
+ </property>
+ <layout class="QGridLayout" >
+ <property name="margin" >
+ <number>9</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item row="0" column="0" >
+ <widget class="QTreeWidget" name="cafeteriaWidget" >
+ <property name="rootIsDecorated" >
+ <bool>false</bool>
+ </property>
+ <property name="allColumnsShowFocus" >
+ <bool>true</bool>
+ </property>
+ <column>
+ <property name="text" >
+ <string>Date</string>
+ </property>
+ </column>
+ <column>
+ <property name="text" >
+ <string>Product</string>
+ </property>
+ </column>
+ <column>
+ <property name="text" >
+ <string>Price</string>
+ </property>
+ </column>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item row="0" column="0" >
+ <layout class="QHBoxLayout" >
+ <property name="margin" >
+ <number>0</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item>
+ <widget class="QLabel" name="label" >
+ <property name="text" >
+ <string>Used Time:</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QTimeEdit" name="usedTime" >
+ <property name="readOnly" >
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="2" column="0" >
+ <layout class="QHBoxLayout" >
+ <property name="margin" >
+ <number>0</number>
+ </property>
+ <property name="spacing" >
+ <number>6</number>
+ </property>
+ <item>
+ <widget class="QLabel" name="label_2" >
+ <property name="text" >
+ <string>Total Cost:</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QSpinBox" name="totalCost" >
+ <property name="readOnly" >
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="4" column="0" >
+ <widget class="QDialogButtonBox" name="buttonBox" >
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="standardButtons" >
+ <set>QDialogButtonBox::Cancel|QDialogButtonBox::NoButton|QDialogButtonBox::Ok</set>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>accepted()</signal>
+ <receiver>PaymentDialog</receiver>
+ <slot>accept()</slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>248</x>
+ <y>254</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>157</x>
+ <y>274</y>
+ </hint>
+ </hints>
+ </connection>
+ <connection>
+ <sender>buttonBox</sender>
+ <signal>rejected()</signal>
+ <receiver>PaymentDialog</receiver>
+ <slot></slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>316</x>
+ <y>260</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>286</x>
+ <y>274</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 18:54:21
|
Revision: 109
http://pykafe.svn.sourceforge.net/pykafe/?rev=109&view=rev
Author: jnmbk
Date: 2007-06-10 11:54:22 -0700 (Sun, 10 Jun 2007)
Log Message:
-----------
two new todos
Modified Paths:
--------------
trunk/pykafe/server/server.py
Modified: trunk/pykafe/server/server.py
===================================================================
--- trunk/pykafe/server/server.py 2007-06-10 06:07:36 UTC (rev 108)
+++ trunk/pykafe/server/server.py 2007-06-10 18:54:22 UTC (rev 109)
@@ -139,6 +139,8 @@
usedTime = QtCore.QDateTime()
usedTime.setTime_t(self.client.session.startTime.secsTo(QtCore.QDateTime.currentDateTime()))
self.emit(QtCore.SIGNAL("changetext"),4,usedTime.toUTC().time().toString("hh.mm"))
+ if self.client.session.endTime and QtCore.QDateTime.currentDateTime().__gt__(self.client.session.endTime):
+ self.emit(QtCore.SIGNAL("timepassed"))
self.sleep(int(self.config.ui_refreshdelay))
class Log(QtGui.QTreeWidgetItem):
@@ -196,6 +198,7 @@
self.fillList(clientInformation)
watcherThread = ClientThread(self, config)
QtCore.QObject.connect(watcherThread, QtCore.SIGNAL("changetext"), self.setText)
+ QtCore.QObject.connect(watcherThread, QtCore.SIGNAL("timepassed"), self.timeWarning)
watcherThread.start()
self.threads = [watcherThread]
@@ -219,6 +222,8 @@
def changeColor(self, colorName):
for i in range(self.columnCount()):
self.setBackground(i, QtGui.QBrush(QtGui.QColor(colorName)))
+ def timeWarning(self):
+ self.setBackground(5, QtGui.QBrush(QtGui.QColor("red")))
def sendMessage(self, message):
thread = MessageSender(self.ip, int(self.config.network_port), message)
@@ -269,8 +274,9 @@
member.debt -= total
Database().runOnce("update members set debt=? where username=?", (member.debt, member.userName))
else:
- logger.add(logger.logTypes.information, _("Money paid"), self.name, member.userName, total)
- Database().runOnce("insert into safe values(?,?,?)", (QtCore.QDateTime.currentDateTime().toTime_t(), self.config.last_cashier, total))
+ #logger.add(logger.logTypes.information, _("Money paid"), self.name, member.userName, total)
+ #Database().runOnce("insert into safe values(?,?,?)", (QtCore.QDateTime.currentDateTime().toTime_t(), self.config.last_cashier, total))
+ pass
if self.config.filter_enable:
message = "007"
filterFile = open(self.config.filter_file)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 06:08:41
|
Revision: 108
http://pykafe.svn.sourceforge.net/pykafe/?rev=108&view=rev
Author: jnmbk
Date: 2007-06-09 23:07:36 -0700 (Sat, 09 Jun 2007)
Log Message:
-----------
done
Modified Paths:
--------------
trunk/pykafe/client/clientmain.py
Modified: trunk/pykafe/client/clientmain.py
===================================================================
--- trunk/pykafe/client/clientmain.py 2007-06-10 05:33:31 UTC (rev 107)
+++ trunk/pykafe/client/clientmain.py 2007-06-10 06:07:36 UTC (rev 108)
@@ -52,12 +52,11 @@
text = data[3:]
text1, text2 = text.split('|',1)
self.emit(QtCore.SIGNAL("updateLabels"), str(text1), str(text2))
- #TODO: Show a baloon when we're close to the end time
if data[:3] == "021":
wallpaper = os.popen("dcop kdesktop KBackgroundIface currentWallpaper 1").read().strip()
self.sendMessage("022" + wallpaper)
if data[:3] == "024":
- self.emit(QtCore.SIGNAL("showMessage"), _("Warning"), _("You have %s seconds remaining!") % data[3:], QtGui.QSystemTrayIcon.Warning, 60000)
+ self.emit(QtCore.SIGNAL("showMessage"), _("Warning"), _("You have %s seconds remaining!") % data[3:], QtGui.QSystemTrayIcon.Warning, 30000)
self.tcpSocket.disconnectFromHost()
class PykafeClientMain(QtNetwork.QTcpServer):
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jn...@us...> - 2007-06-10 05:33:29
|
Revision: 107
http://pykafe.svn.sourceforge.net/pykafe/?rev=107&view=rev
Author: jnmbk
Date: 2007-06-09 22:33:31 -0700 (Sat, 09 Jun 2007)
Log Message:
-----------
remaining time warning
Modified Paths:
--------------
trunk/pykafe/client/client.py
trunk/pykafe/client/clientmain.py
Modified: trunk/pykafe/client/client.py
===================================================================
--- trunk/pykafe/client/client.py 2007-06-10 05:32:38 UTC (rev 106)
+++ trunk/pykafe/client/client.py 2007-06-10 05:33:31 UTC (rev 107)
@@ -183,6 +183,8 @@
usedTime.toUTC().time().toString("hh.mm") + "|"
text += currency(self.client.session.calculatePrice(config))
sendDataToUi(str(data+text))
+ if 120>remainingTime.toTime_t()>0:
+ sendDataToUi("024" + str(remainingTime.toTime_t()))
elif data[:3] == "018":
tcpSocket = QtNetwork.QTcpSocket()
tcpSocket.connectToHost(QtNetwork.QHostAddress(config.network_serverIP), config.network_port)
Modified: trunk/pykafe/client/clientmain.py
===================================================================
--- trunk/pykafe/client/clientmain.py 2007-06-10 05:32:38 UTC (rev 106)
+++ trunk/pykafe/client/clientmain.py 2007-06-10 05:33:31 UTC (rev 107)
@@ -52,9 +52,12 @@
text = data[3:]
text1, text2 = text.split('|',1)
self.emit(QtCore.SIGNAL("updateLabels"), str(text1), str(text2))
+ #TODO: Show a baloon when we're close to the end time
if data[:3] == "021":
wallpaper = os.popen("dcop kdesktop KBackgroundIface currentWallpaper 1").read().strip()
self.sendMessage("022" + wallpaper)
+ if data[:3] == "024":
+ self.emit(QtCore.SIGNAL("showMessage"), _("Warning"), _("You have %s seconds remaining!") % data[3:], QtGui.QSystemTrayIcon.Warning, 60000)
self.tcpSocket.disconnectFromHost()
class PykafeClientMain(QtNetwork.QTcpServer):
@@ -70,6 +73,7 @@
QtCore.QObject.connect(thread,QtCore.SIGNAL("close"),self.parent().close)
QtCore.QObject.connect(thread,QtCore.SIGNAL("message"),self.ui.statusbar.showMessage)
QtCore.QObject.connect(thread,QtCore.SIGNAL("updateLabels"),self.ui.updateLabels)
+ QtCore.QObject.connect(thread,QtCore.SIGNAL("showMessage"),self.ui.trayIcon.showMessage)
thread.start()
self.threads.append(thread)
def sendMessage(self, data):
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|