[POS-commit] r3263 - in stoqlib/trunk/stoqlib: gui/dialogs
Evandro Vale Miquelito
evandro at async.com.br
Sat Apr 8 12:44:34 BRT 2006
Author: evandro
Date: Sat Apr 8 12:44:34 2006
New Revision: 3263
Modified:
stoqlib/trunk/stoqlib/domain/sale.py
stoqlib/trunk/stoqlib/domain/till.py
stoqlib/trunk/stoqlib/gui/dialogs/tilloperation.py
Log:
Adding a get_available_sales classmethod and using it where it's necessary
Modified: stoqlib/trunk/stoqlib/domain/sale.py
==============================================================================
--- stoqlib/trunk/stoqlib/domain/sale.py (original)
+++ stoqlib/trunk/stoqlib/domain/sale.py Sat Apr 8 12:44:34 2006
@@ -28,6 +28,7 @@
from datetime import datetime
from sqlobject import UnicodeCol, DateTimeCol, ForeignKey, IntCol, SQLObject
+from sqlobject.sqlbuilder import AND
from zope.interface import implements
from kiwi.argcheck import argcheck
from kiwi.datatypes import currency
@@ -133,6 +134,23 @@
table.delete(item.id, connection=conn)
#
+ # Classmethods
+ #
+
+ @classmethod
+ def get_available_sales(cls, conn, till):
+ """Returns a list of all available sales for a given
+ till operation
+
+ @param conn: a Transaction sqlobject instance
+ @param till: a Till instance
+ """
+ q1 = cls.q._is_valid_model == True
+ q2 = cls.q.tillID == till.id
+ query = AND(q1, q2)
+ return cls.select(query, connection=conn)
+
+ #
# Auxiliar methods
#
@@ -144,7 +162,7 @@
def get_client_name(self):
if not self.client:
- return _(u'Anonymous')
+ return _(u'Not Specified')
return self.client.get_name()
@classmethod
Modified: stoqlib/trunk/stoqlib/domain/till.py
==============================================================================
--- stoqlib/trunk/stoqlib/domain/till.py (original)
+++ stoqlib/trunk/stoqlib/domain/till.py Sat Apr 8 12:44:34 2006
@@ -88,9 +88,8 @@
"""
conn = self.get_connection()
- result = Sale.selectBy(till=self, connection=conn)
-
query = AND(Sale.q.status == Sale.STATUS_CONFIRMED,
+ Sale.q._is_valid_model == True,
Sale.q.tillID == self.id)
result = Sale.select(query, connection=conn)
payments = []
@@ -134,7 +133,7 @@
raise ValueError("This till is already closed. Open a new till "
"before close it.")
conn = self.get_connection()
- sales = Sale.selectBy(till=self, connection=conn)
+ sales = Sale.get_available_sales(conn, self)
opened_sales = []
Modified: stoqlib/trunk/stoqlib/gui/dialogs/tilloperation.py
==============================================================================
--- stoqlib/trunk/stoqlib/gui/dialogs/tilloperation.py (original)
+++ stoqlib/trunk/stoqlib/gui/dialogs/tilloperation.py Sat Apr 8 12:44:34 2006
@@ -215,7 +215,7 @@
raise DatabaseInconsistency("Till instance must have a"
"IPaymentGroup facet")
group_ids = [group.id]
- for sale in Sale.selectBy(till=current_till, connection=self.conn):
+ for sale in Sale.get_available_sales(self.conn, current_till):
group = IPaymentGroup(sale, connection=self.conn)
if not group:
raise DatabaseInconsistency("Sale instance must have a"
More information about the POS-commit
mailing list