commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

gnue-pos/src Handler.py POSClient.py frontends/...


From: Jason Cater
Subject: gnue-pos/src Handler.py POSClient.py frontends/...
Date: Thu, 17 Jul 2003 01:16:44 -0400

CVSROOT:        /cvsroot/gnue
Module name:    gnue-pos
Branch:         
Changes by:     Jason Cater <address@hidden>    03/07/17 01:16:44

Modified files:
        src            : Handler.py POSClient.py 
        src/frontends/wx: Driver.py 
        src/hardware/receiptprinter: plain.py 

Log message:
        more work on backend stuff

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-pos/src/Handler.py.diff?tr1=1.6&tr2=1.7&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-pos/src/POSClient.py.diff?tr1=1.12&tr2=1.13&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-pos/src/frontends/wx/Driver.py.diff?tr1=1.12&tr2=1.13&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue-pos/src/hardware/receiptprinter/plain.py.diff?tr1=1.5&tr2=1.6&r1=text&r2=text

Patches:
Index: gnue-pos/src/Handler.py
diff -c gnue-pos/src/Handler.py:1.6 gnue-pos/src/Handler.py:1.7
*** gnue-pos/src/Handler.py:1.6 Mon Jul  7 01:29:13 2003
--- gnue-pos/src/Handler.py     Thu Jul 17 01:16:43 2003
***************
*** 38,51 ****
    def __init__(self, client):
      events.EventAware.__init__(self, client)
  
!     self.__ManualItemSKUisDepartment = gConfig('ManualItemSKUisDepartment')
!     self.__ManualItemRequestBasePrice = gConfig('ManualItemRequestBasePrice')
!     self.__TaxRate = float(gConfig('TaxRate'))/100
! 
!     self.__loggedin = 0
!     self.__quantityRequestedFlag = 0
!     self.__ticket = 0
!     self.__quantity = 1
  
      self.registerEventListeners( {
              'BeginTicket': self._BeginTicket,
--- 38,51 ----
    def __init__(self, client):
      events.EventAware.__init__(self, client)
  
!     self._ManualItemSKUisDepartment = gConfig('ManualItemSKUisDepartment')
!     self._ManualItemRequestBasePrice = gConfig('ManualItemRequestBasePrice')
!     self._TaxRate = float(gConfig('TaxRate'))/100
! 
!     self._loggedin = 0
!     self._quantityRequestedFlag = 0
!     self._ticket = 0
!     self._quantity = 1
  
      self.registerEventListeners( {
              'BeginTicket': self._BeginTicket,
***************
*** 105,111 ****
  
  
    def _LoginEntered(self, event):
!     self.__login = event.value
      self.dispatchEvent('RequestPassword')
  
    def _RequestPassword(self, event):
--- 105,111 ----
  
  
    def _LoginEntered(self, event):
!     self._login = event.value
      self.dispatchEvent('RequestPassword')
  
    def _RequestPassword(self, event):
***************
*** 115,125 ****
                         response="PasswordEntered")
  
    def _PasswordEntered(self, event):
!     rs = self.dispatchEvent('VerifyLogin', login=self.__login, 
password=event.value)
      if rs:
        self.dispatchEvent('RequestLogin')
        return
!     self.__loggedin = 1
      self.dispatchEvent('RequestSKU')
  
  
--- 115,125 ----
                         response="PasswordEntered")
  
    def _PasswordEntered(self, event):
!     rs = self.dispatchEvent('VerifyLogin', login=self._login, 
password=event.value)
      if rs:
        self.dispatchEvent('RequestLogin')
        return
!     self._loggedin = 1
      self.dispatchEvent('RequestSKU')
  
  
***************
*** 129,144 ****
  
      if event.next == 'RequestQuantity':
        rs = 0
!       if not self.__ticket:
          self.dispatchEvent('RequestBeginTicket')
        self.dispatchEvent('RequestQuantity')
  
      elif event.value:
!       if not self.__ticket:
          self.dispatchEvent('RequestBeginTicket')
!       rs = self.dispatchEvent('ProcessSKU', sku=event.value, origEvent=event, 
quantity=self.__quantity)
      else:
!       if not self.__ticket and event.next in ('RequestTaxExemption',):
          self.dispatchEvent('RequestBeginTicket')
  
        rs = 1
--- 129,144 ----
  
      if event.next == 'RequestQuantity':
        rs = 0
!       if not self._ticket:
          self.dispatchEvent('RequestBeginTicket')
        self.dispatchEvent('RequestQuantity')
  
      elif event.value:
!       if not self._ticket:
          self.dispatchEvent('RequestBeginTicket')
!       rs = self.dispatchEvent('ProcessSKU', sku=event.value, origEvent=event, 
quantity=self._quantity)
      else:
!       if not self._ticket and event.next in ('RequestTaxExemption',):
          self.dispatchEvent('RequestBeginTicket')
  
        rs = 1
***************
*** 152,159 ****
        self.dispatchEvent('RequestSKU')
  
      try:
!       self.__quantity = float(event.value)
!       if self.__quantity < 0:
          raise ValueError
        self.dispatchEvent('RequestSKU')
      except ValueError:
--- 152,159 ----
        self.dispatchEvent('RequestSKU')
  
      try:
!       self._quantity = float(event.value)
!       if self._quantity < 0:
          raise ValueError
        self.dispatchEvent('RequestSKU')
      except ValueError:
***************
*** 166,247 ****
        self.dispatchEvent('RequestSKU')
        return
      v = int(event.value) - 1
!     if v >= len(self.__items):
        self.dispatchEvent('RequestCancelItem')
!     elif not hasattr(self.__items[v],'CANCELED'):
        attrs = {}
        for attr, value in event.__dict__.items():
          if attr[0] != '_' and type(value) != types.MethodType:
            attrs[attr] = value
        attrs['origlineitem'] = v + 1
!       attrs['lineitem'] = len(self.__items)
        attrs['extended'] *= -1
        attrs['each'] *= -1
!       self.__items[v].CANCELED = 1
      self.dispatchEvent('CancelItem', **attrs)
  
  
    def _BeginManualItem(self, event):
!     self.__manualSKU = event.sku
!     if self.__ManualItemSKUisDepartment:
!       self.__manualDepartment = event.sku
!       self.__manualEvents = ['RequestManualDescription']
      else:
!       self.__manualEvents = 
['RequestManualDepartment','RequestManualDescription']
  
!     if self.__ManualItemRequestBasePrice:
!       self.__manualEvents += ['RequestManualBasePrice','RequestManualPrice']
!       self.__manualBasePrice = 0
      else:
!       self.__manualEvents += ['RequestManualPrice']
  
!     self.__manualEvents.append('RequestEndManualItem')
  
!     event.dispatchAfter(self.__manualEvents.pop(0))
  
    def _ManualDepartmentEntered(self, event):
      if not len(event.value):
        self.dispatchEvent('Warning',message='Department must be entered')
        self.dispatchEvent('RequestManualDepartment')
        return
!     self.__manualDepartment = event.value
!     self.dispatchEvent(self.__manualEvents.pop(0))
  
    def _ManualDescriptionEntered(self, event):
      if not len(event.value):
        self.dispatchEvent('Warning',message='Description must be entered')
        self.dispatchEvent('RequestManualDescription')
        return
!     self.__manualDescription = event.value
!     self.dispatchEvent(self.__manualEvents.pop(0))
  
    def _ManualBasePriceEntered(self, event):
      try:
!       self.__manualBasePrice = float(event.value)
!       if self.__manualBasePrice < 0:
          raise ValueError
      except ValueError:
        self.dispatchEvent('Warning',message='Base price must be entered')
        self.dispatchEvent('RequestManualBasePrice')
        return
  
!     v = self.__manualEvents.pop(0)
      if v == 'RequestManualPrice':
!       self.dispatchEvent(v, default=self.__manualBasePrice)
      else:
        self.dispatchEvent(v)
  
    def _ManualPriceEntered(self, event):
      try:
!       self.__manualPrice = float(event.value)
!       if self.__manualPrice < 0:
          raise ValueError
      except ValueError:
        self.dispatchEvent('Warning',message='Item price must be entered')
        self.dispatchEvent('RequestManualPrice')
        return
  
!     self.dispatchEvent(self.__manualEvents.pop(0))
  
  
    def _RequestBeginLayaway(self, event):
--- 166,247 ----
        self.dispatchEvent('RequestSKU')
        return
      v = int(event.value) - 1
!     if v >= len(self._items):
        self.dispatchEvent('RequestCancelItem')
!     elif not hasattr(self._items[v],'CANCELED'):
        attrs = {}
        for attr, value in event.__dict__.items():
          if attr[0] != '_' and type(value) != types.MethodType:
            attrs[attr] = value
        attrs['origlineitem'] = v + 1
!       attrs['lineitem'] = len(self._items)
        attrs['extended'] *= -1
        attrs['each'] *= -1
!       self._items[v].CANCELED = 1
      self.dispatchEvent('CancelItem', **attrs)
  
  
    def _BeginManualItem(self, event):
!     self._manualSKU = event.sku
!     if self._ManualItemSKUisDepartment:
!       self._manualDepartment = event.sku
!       self._manualEvents = ['RequestManualDescription']
      else:
!       self._manualEvents = 
['RequestManualDepartment','RequestManualDescription']
  
!     if self._ManualItemRequestBasePrice:
!       self._manualEvents += ['RequestManualBasePrice','RequestManualPrice']
!       self._manualBasePrice = 0
      else:
!       self._manualEvents += ['RequestManualPrice']
  
!     self._manualEvents.append('RequestEndManualItem')
  
!     event.dispatchAfter(self._manualEvents.pop(0))
  
    def _ManualDepartmentEntered(self, event):
      if not len(event.value):
        self.dispatchEvent('Warning',message='Department must be entered')
        self.dispatchEvent('RequestManualDepartment')
        return
!     self._manualDepartment = event.value
!     self.dispatchEvent(self._manualEvents.pop(0))
  
    def _ManualDescriptionEntered(self, event):
      if not len(event.value):
        self.dispatchEvent('Warning',message='Description must be entered')
        self.dispatchEvent('RequestManualDescription')
        return
!     self._manualDescription = event.value
!     self.dispatchEvent(self._manualEvents.pop(0))
  
    def _ManualBasePriceEntered(self, event):
      try:
!       self._manualBasePrice = float(event.value)
!       if self._manualBasePrice < 0:
          raise ValueError
      except ValueError:
        self.dispatchEvent('Warning',message='Base price must be entered')
        self.dispatchEvent('RequestManualBasePrice')
        return
  
!     v = self._manualEvents.pop(0)
      if v == 'RequestManualPrice':
!       self.dispatchEvent(v, default=self._manualBasePrice)
      else:
        self.dispatchEvent(v)
  
    def _ManualPriceEntered(self, event):
      try:
!       self._manualPrice = float(event.value)
!       if self._manualPrice < 0:
          raise ValueError
      except ValueError:
        self.dispatchEvent('Warning',message='Item price must be entered')
        self.dispatchEvent('RequestManualPrice')
        return
  
!     self.dispatchEvent(self._manualEvents.pop(0))
  
  
    def _RequestBeginLayaway(self, event):
***************
*** 269,275 ****
                       'RequestLogOut',
                       'RequestExit' ]
  
!     if self.__ticket:
        endingEvents += ['RequestSuspendTicket',
                         'RequestCancelTicket',
                         'RequestTender',
--- 269,275 ----
                       'RequestLogOut',
                       'RequestExit' ]
  
!     if self._ticket:
        endingEvents += ['RequestSuspendTicket',
                         'RequestCancelTicket',
                         'RequestTender',
***************
*** 303,309 ****
      pass
  
    def _RequestCancelItem(self, event):
!     self.dispatchEvent('Prompt', response='CancelItemEntered', label='Enter 
Line # to Cancel:', default=len(self.__items))
  
    def _RequestDuplicateLastItem(self, event):
      pass
--- 303,309 ----
      pass
  
    def _RequestCancelItem(self, event):
!     self.dispatchEvent('Prompt', response='CancelItemEntered', label='Enter 
Line # to Cancel:', default=len(self._items))
  
    def _RequestDuplicateLastItem(self, event):
      pass
***************
*** 338,371 ****
  
  
    def _RequestEndManualItem(self, event):
!     self.dispatchEvent('EndManualItem', sku=self.__manualSKU,
!                        description=self.__manualDescription,
!                        department=self.__manualDepartment,
!                        baseprice=self.__manualBasePrice,
!                        quantity=self.__quantity,
!                        price=self.__manualPrice,
                         taxable=1)
  
!     self.dispatchEvent('AddTicketItem', department=self.__manualDepartment,
!                            sku=self.__manualSKU,
!                            quantity=self.__quantity,
!                            description=self.__manualDescription,
!                            base=self.__manualBasePrice,
!                            each=self.__manualPrice,
!                            extended=round(self.__manualPrice * 
self.__quantity,2),
                             taxable=1,
!                            lineitem=len(self.__items)+1)
!     self.__quantity = 1
      self.dispatchEvent('RequestSKU')
  
    def _BeginTicket(self, event):
!     self.__ticket = event.serial
!     self.__taxTotal = 0
!     self.__subTotal = 0
!     self.__payments = 0
!     self.__taxExempt = 0
!     self.__layaway = 0
!     self.__items = []
      self.dispatchEvent('UpdateTotal', field="subtotal", amount=0.0)
      self.dispatchEvent('UpdateTotal', field="tax", amount=0.0)
      self.dispatchEvent('UpdateTotal', field="total", amount=0.0)
--- 338,372 ----
  
  
    def _RequestEndManualItem(self, event):
!     self.dispatchEvent('EndManualItem', sku=self._manualSKU,
!                        description=self._manualDescription,
!                        department=self._manualDepartment,
!                        baseprice=self._manualBasePrice,
!                        quantity=self._quantity,
!                        price=self._manualPrice,
!                        extended = self._quantity * self._manualPrice,
                         taxable=1)
  
!     self.dispatchEvent('AddTicketItem', department=self._manualDepartment,
!                            sku=self._manualSKU,
!                            quantity=self._quantity,
!                            description=self._manualDescription,
!                            base=self._manualBasePrice,
!                            each=self._manualPrice,
!                            extended=round(self._manualPrice * 
self._quantity,2),
                             taxable=1,
!                            lineitem=len(self._items))
!     self._quantity = 1
      self.dispatchEvent('RequestSKU')
  
    def _BeginTicket(self, event):
!     self._ticket = event.serial
!     self._taxTotal = 0
!     self._subTotal = 0
!     self._payments = 0
!     self._taxExempt = 0
!     self._layaway = 0
!     self._items = []
      self.dispatchEvent('UpdateTotal', field="subtotal", amount=0.0)
      self.dispatchEvent('UpdateTotal', field="tax", amount=0.0)
      self.dispatchEvent('UpdateTotal', field="total", amount=0.0)
***************
*** 375,396 ****
      event.dispatchAfter('RequestSKU')
  
    def _CancelTicket(self, event):
!     self.__ticket = 0
      event.dispatchAfter('RequestSKU')
  
    def _AddTicketItem(self, event):
!     self.__subTotal += event.extended
      if event.taxable:
!       self.__taxTotal += event.extended
!     self.__items.append(event)
!     event.lineitem=len(self.__items)+1
      self._updateTotals()
  
    def _BeginLayaway(self, event):
!     self.__layaway = 1
  
    def _EndLayaway(self, event):
!     self.__layaway = 0
      self.dispatchEvent('EndTicket')
  
    def _AddTender(self, event):
--- 376,397 ----
      event.dispatchAfter('RequestSKU')
  
    def _CancelTicket(self, event):
!     self._ticket = 0
      event.dispatchAfter('RequestSKU')
  
    def _AddTicketItem(self, event):
!     self._subTotal += event.extended
      if event.taxable:
!       self._taxTotal += event.extended
!     self._items.append(event)
!     event.lineitem=len(self._items)+1
      self._updateTotals()
  
    def _BeginLayaway(self, event):
!     self._layaway = 1
  
    def _EndLayaway(self, event):
!     self._layaway = 0
      self.dispatchEvent('EndTicket')
  
    def _AddTender(self, event):
***************
*** 407,425 ****
  
    def _TaxExemptionEntered(self, event):
      if event.value:
!       self.__taxExempt = 1
      else:
!       self.__taxExempt = 0
      self._updateTotals()
      self.dispatchEvent('RequestSKU')
  
  
    def _updateTotals(self):
!     tax = round(self.__taxTotal* self.__TaxRate,2) * (self.__taxExempt == 0)
!     self.dispatchEvent('UpdateTotal', field="subtotal", 
amount=self.__subTotal)
      self.dispatchEvent('UpdateTotal', field="tax", amount=tax)
!     self.dispatchEvent('UpdateTotal', field="total", amount=self.__subTotal + 
tax)
!     self.dispatchEvent('UpdateTotal', field="balance", amount=self.__subTotal 
+ tax - self.__payments)
!     tax = round(self.__taxTotal* self.__TaxRate,2)
  
  
--- 408,426 ----
  
    def _TaxExemptionEntered(self, event):
      if event.value:
!       self._taxExempt = 1
      else:
!       self._taxExempt = 0
      self._updateTotals()
      self.dispatchEvent('RequestSKU')
  
  
    def _updateTotals(self):
!     tax = round(self._taxTotal* self._TaxRate,2) * (self._taxExempt == 0)
!     self.dispatchEvent('UpdateTotal', field="subtotal", amount=self._subTotal)
      self.dispatchEvent('UpdateTotal', field="tax", amount=tax)
!     self.dispatchEvent('UpdateTotal', field="total", amount=self._subTotal + 
tax)
!     self.dispatchEvent('UpdateTotal', field="balance", amount=self._subTotal 
+ tax - self._payments)
!     tax = round(self._taxTotal* self._TaxRate,2)
  
  
Index: gnue-pos/src/POSClient.py
diff -c gnue-pos/src/POSClient.py:1.12 gnue-pos/src/POSClient.py:1.13
*** gnue-pos/src/POSClient.py:1.12      Mon Jul  7 01:29:13 2003
--- gnue-pos/src/POSClient.py   Thu Jul 17 01:16:43 2003
***************
*** 93,99 ****
      # assign register name from 1st free argument
      #
      try:
!       registername = self.ARGUMENTS[0]
      except:
        try:
          import socket
--- 93,99 ----
      # assign register name from 1st free argument
      #
      try:
!       self.registername = registername = self.ARGUMENTS[0]
      except:
        try:
          import socket
Index: gnue-pos/src/frontends/wx/Driver.py
diff -c gnue-pos/src/frontends/wx/Driver.py:1.12 
gnue-pos/src/frontends/wx/Driver.py:1.13
*** gnue-pos/src/frontends/wx/Driver.py:1.12    Mon Jul  7 01:29:13 2003
--- gnue-pos/src/frontends/wx/Driver.py Thu Jul 17 01:16:44 2003
***************
*** 174,180 ****
      bottomPanel.SetAutoLayout(1)
  
      self.receiptList = receiptList = wxListCtrl(frame, -1,
!               style=wxLC_REPORT|wxLC_HRULES|wxLC_VRULES|wxLC_SINGLE_SEL)
  
      # Add the columns for our receipt list
      i = 0
--- 174,180 ----
      bottomPanel.SetAutoLayout(1)
  
      self.receiptList = receiptList = wxListCtrl(frame, -1,
!               
style=wxLC_REPORT|wxLC_HRULES|wxLC_VRULES|wxLC_SINGLE_SEL|wxSIMPLE_BORDER)
  
      # Add the columns for our receipt list
      i = 0
***************
*** 186,192 ****
  
        i += 1
  
!     totalPanel2 = wxPanel(bottomPanel, -1, style=wxRAISED_BORDER)
      totalSizer2 = wxBoxSizer(wxVERTICAL)
      totalPanel2.SetSizer(totalSizer2)
      totalPanel2.SetAutoLayout(1)
--- 186,192 ----
  
        i += 1
  
!     totalPanel2 = wxPanel(bottomPanel, -1, style=wxSIMPLE_BORDER)
      totalSizer2 = wxBoxSizer(wxVERTICAL)
      totalPanel2.SetSizer(totalSizer2)
      totalPanel2.SetAutoLayout(1)
***************
*** 226,232 ****
      bottomPanel.Fit()
  
      frameSizer.Add(topPanel, 0, wxEXPAND)
!     frameSizer.Add(receiptList, 3, wxEXPAND)
      frameSizer.Add(bottomPanel, 0, wxEXPAND)
  
  
--- 226,232 ----
      bottomPanel.Fit()
  
      frameSizer.Add(topPanel, 0, wxEXPAND)
!     frameSizer.Add(receiptList, 3, wxEAST|wxWEST|wxEXPAND, 20)
      frameSizer.Add(bottomPanel, 0, wxEXPAND)
  
  
Index: gnue-pos/src/hardware/receiptprinter/plain.py
diff -c gnue-pos/src/hardware/receiptprinter/plain.py:1.5 
gnue-pos/src/hardware/receiptprinter/plain.py:1.6
*** gnue-pos/src/hardware/receiptprinter/plain.py:1.5   Mon Jul  7 01:29:13 2003
--- gnue-pos/src/hardware/receiptprinter/plain.py       Thu Jul 17 01:16:44 2003
***************
*** 56,61 ****
--- 56,62 ----
      self.instance = instance
      self.__dict__.update(params)
      self.output = None
+     self.totals = {}
      self.width = hasattr(self,'width') and self.width or 40
  
      self.totalFields = (  ('subtotal',_('Subtotal')),
***************
*** 133,141 ****
    def _CancelTicketItem(self, event):
      pass
  
    def _UpdateTotal(self, event):
      self.totals[event.field] = event.amount
  
  
    def write(self, text, double=0, color=0, alignment=0):
!     pass
\ No newline at end of file
--- 134,143 ----
    def _CancelTicketItem(self, event):
      pass
  
+ 
    def _UpdateTotal(self, event):
      self.totals[event.field] = event.amount
  
  
    def write(self, text, double=0, color=0, alignment=0):
!     pass




reply via email to

[Prev in Thread] Current Thread [Next in Thread]