[Erp5-report] r32008 kazuhiko - /erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/

nobody at svn.erp5.org nobody at svn.erp5.org
Wed Jan 27 10:54:48 CET 2010


Author: kazuhiko
Date: Wed Jan 27 10:54:44 2010
New Revision: 32008

URL: http://svn.erp5.org?rev=32008&view=rev
Log:
clean up code.

Modified:
    erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/DeliveryRule.py
    erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/InvoiceTransactionRule.py
    erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/InvoicingRule.py
    erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/OrderRule.py
    erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/PaymentRule.py
    erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/TradeModelRule.py

Modified: erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/DeliveryRule.py
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/DeliveryRule.py?rev=32008&r1=32007&r2=32008&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/DeliveryRule.py [utf8] (original)
+++ erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/DeliveryRule.py [utf8] Wed Jan 27 10:54:44 2010
@@ -37,11 +37,18 @@
 from Products.ERP5.mixin.movement_collection_updater import \
      MovementCollectionUpdaterMixin
 from Products.ERP5.mixin.movement_generator import MovementGeneratorMixin
-from Products.ERP5.MovementCollectionDiff import _getPropertyAndCategoryList
 
-# XXX this class should be moved to Rule.py once new simulation is fully
-# integrated.
-class Rule(RuleMixin, MovementCollectionUpdaterMixin, Predicate):
+class DeliveryRule(RuleMixin, MovementCollectionUpdaterMixin, Predicate):
+  """
+  Delivery Rule object make sure an Delivery in the simulation
+  is consistent with the real delivery
+
+  WARNING: what to do with movement split ?
+  """
+  # CMF Type Definition
+  meta_type = 'ERP5 Delivery Rule'
+  portal_type = 'Delivery Rule'
+
   # Declarative security
   security = ClassSecurityInfo()
   security.declareObjectProtected(Permissions.AccessContentsInformation)
@@ -63,38 +70,6 @@
     PropertySheet.Version,
     PropertySheet.Rule
     )
-
-  security.declareProtected(Permissions.View, 'getDivergenceList')
-  def getDivergenceList(self, movement):
-    """
-    Returns a list of divergences of the movements provided
-    in delivery_or_movement.
-
-    movement -- a movement, a delivery, a simulation movement,
-                or a list thereof
-    """
-    if movement.getDelivery() is None:
-      return []
-    result_list = []
-    for divergence_tester in self._getDivergenceTesterList(
-      exclude_quantity=False):
-      result = divergence_tester.explain(movement)
-      if isinstance(result, (list, tuple)): # for compatibility
-        result_list.extend(result)
-      elif result is not None:
-        result_list.append(result)
-    return result_list
-
-class DeliveryRule(Rule):
-  """
-  Delivery Rule object make sure an Delivery in the simulation
-  is consistent with the real delivery
-
-  WARNING: what to do with movement split ?
-  """
-  # CMF Type Definition
-  meta_type = 'ERP5 Delivery Rule'
-  portal_type = 'Delivery Rule'
 
   def _getMovementGenerator(self):
     """

Modified: erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/InvoiceTransactionRule.py
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/InvoiceTransactionRule.py?rev=32008&r1=32007&r2=32008&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/InvoiceTransactionRule.py [utf8] (original)
+++ erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/InvoiceTransactionRule.py [utf8] Wed Jan 27 10:54:44 2010
@@ -39,9 +39,17 @@
 from Products.ERP5.MovementCollectionDiff import _getPropertyAndCategoryList
 from Products.ERP5.Document.PredicateMatrix import PredicateMatrix
 
-# XXX this class should be moved to Rule.py once new simulation is fully
-# integrated.
-class Rule(RuleMixin, MovementCollectionUpdaterMixin, Predicate):
+class InvoiceTransactionRule(RuleMixin, MovementCollectionUpdaterMixin, Predicate, PredicateMatrix):
+  """
+  Invoice Transaction Rule object generates accounting movements for
+  each invoice movement based on category membership and other
+  predicated. Template accounting movements are stored in cells inside
+  an instance of the InvoiceTransactionRule.
+  """
+  # CMF Type Definition
+  meta_type = 'ERP5 Invoice Transaction Rule'
+  portal_type = 'Invoice Transaction Rule'
+
   # Declarative security
   security = ClassSecurityInfo()
   security.declareObjectProtected(Permissions.AccessContentsInformation)
@@ -63,38 +71,6 @@
     PropertySheet.Version,
     PropertySheet.Rule
     )
-
-  security.declareProtected(Permissions.View, 'getDivergenceList')
-  def getDivergenceList(self, movement):
-    """
-    Returns a list of divergences of the movements provided
-    in delivery_or_movement.
-
-    movement -- a movement, a delivery, a simulation movement,
-                or a list thereof
-    """
-    if movement.getDelivery() is None:
-      return []
-    result_list = []
-    for divergence_tester in self._getDivergenceTesterList(
-      exclude_quantity=False):
-      result = divergence_tester.explain(movement)
-      if isinstance(result, (list, tuple)): # for compatibility
-        result_list.extend(result)
-      elif result is not None:
-        result_list.append(result)
-    return result_list
-
-class InvoiceTransactionRule(Rule, PredicateMatrix):
-  """
-  Invoice Transaction Rule object generates accounting movements for
-  each invoice movement based on category membership and other
-  predicated. Template accounting movements are stored in cells inside
-  an instance of the InvoiceTransactionRule.
-  """
-  # CMF Type Definition
-  meta_type = 'ERP5 Invoice Transaction Rule'
-  portal_type = 'Invoice Transaction Rule'
 
   def _getMovementGenerator(self):
     """

Modified: erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/InvoicingRule.py
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/InvoicingRule.py?rev=32008&r1=32007&r2=32008&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/InvoicingRule.py [utf8] (original)
+++ erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/InvoicingRule.py [utf8] Wed Jan 27 10:54:44 2010
@@ -37,11 +37,15 @@
 from Products.ERP5.mixin.movement_collection_updater import \
      MovementCollectionUpdaterMixin
 from Products.ERP5.mixin.movement_generator import MovementGeneratorMixin
-from Products.ERP5.MovementCollectionDiff import _getPropertyAndCategoryList
 
-# XXX this class should be moved to Rule.py once new simulation is fully
-# integrated.
-class Rule(RuleMixin, MovementCollectionUpdaterMixin, Predicate):
+class InvoicingRule(RuleMixin, MovementCollectionUpdaterMixin, Predicate):
+  """
+  Invoicing Rule expand simulation created by a order or delivery rule.
+  """
+  # CMF Type Definition
+  meta_type = 'ERP5 Invoicing Rule'
+  portal_type = 'Invoicing Rule'
+
   # Declarative security
   security = ClassSecurityInfo()
   security.declareObjectProtected(Permissions.AccessContentsInformation)
@@ -63,35 +67,6 @@
     PropertySheet.Version,
     PropertySheet.Rule
     )
-
-  security.declareProtected(Permissions.View, 'getDivergenceList')
-  def getDivergenceList(self, movement):
-    """
-    Returns a list of divergences of the movements provided
-    in delivery_or_movement.
-
-    movement -- a movement, a delivery, a simulation movement,
-                or a list thereof
-    """
-    if movement.getDelivery() is None:
-      return []
-    result_list = []
-    for divergence_tester in self._getDivergenceTesterList(
-      exclude_quantity=False):
-      result = divergence_tester.explain(movement)
-      if isinstance(result, (list, tuple)): # for compatibility
-        result_list.extend(result)
-      elif result is not None:
-        result_list.append(result)
-    return result_list
-
-class InvoicingRule(Rule):
-  """
-  Invoicing Rule expand simulation created by a order or delivery rule.
-  """
-  # CMF Type Definition
-  meta_type = 'ERP5 Invoicing Rule'
-  portal_type = 'Invoicing Rule'
 
   def _getMovementGenerator(self):
     """

Modified: erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/OrderRule.py
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/OrderRule.py?rev=32008&r1=32007&r2=32008&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/OrderRule.py [utf8] (original)
+++ erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/OrderRule.py [utf8] Wed Jan 27 10:54:44 2010
@@ -37,11 +37,18 @@
 from Products.ERP5.mixin.movement_collection_updater import \
      MovementCollectionUpdaterMixin
 from Products.ERP5.mixin.movement_generator import MovementGeneratorMixin
-from Products.ERP5.MovementCollectionDiff import _getPropertyAndCategoryList
 
-# XXX this class should be moved to Rule.py once new simulation is fully
-# integrated.
-class Rule(RuleMixin, MovementCollectionUpdaterMixin, Predicate):
+class OrderRule(RuleMixin, MovementCollectionUpdaterMixin, Predicate):
+  """
+  Order Rule object make sure an Order in the simulation
+  is consistent with the real order
+
+  WARNING: what to do with movement split ?
+  """
+  # CMF Type Definition
+  meta_type = 'ERP5 Order Rule'
+  portal_type = 'Order Rule'
+
   # Declarative security
   security = ClassSecurityInfo()
   security.declareObjectProtected(Permissions.AccessContentsInformation)
@@ -63,38 +70,6 @@
     PropertySheet.Version,
     PropertySheet.Rule
     )
-
-  security.declareProtected(Permissions.View, 'getDivergenceList')
-  def getDivergenceList(self, movement):
-    """
-    Returns a list of divergences of the movements provided
-    in delivery_or_movement.
-
-    movement -- a movement, a delivery, a simulation movement,
-                or a list thereof
-    """
-    if movement.getDelivery() is None:
-      return []
-    result_list = []
-    for divergence_tester in self._getDivergenceTesterList(
-      exclude_quantity=False):
-      result = divergence_tester.explain(movement)
-      if isinstance(result, (list, tuple)): # for compatibility
-        result_list.extend(result)
-      elif result is not None:
-        result_list.append(result)
-    return result_list
-
-class OrderRule(Rule):
-  """
-  Order Rule object make sure an Order in the simulation
-  is consistent with the real order
-
-  WARNING: what to do with movement split ?
-  """
-  # CMF Type Definition
-  meta_type = 'ERP5 Order Rule'
-  portal_type = 'Order Rule'
 
   def _getMovementGenerator(self):
     """

Modified: erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/PaymentRule.py
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/PaymentRule.py?rev=32008&r1=32007&r2=32008&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/PaymentRule.py [utf8] (original)
+++ erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/PaymentRule.py [utf8] Wed Jan 27 10:54:44 2010
@@ -37,11 +37,16 @@
 from Products.ERP5.mixin.movement_collection_updater import \
      MovementCollectionUpdaterMixin
 from Products.ERP5.mixin.movement_generator import MovementGeneratorMixin
-from Products.ERP5.MovementCollectionDiff import _getPropertyAndCategoryList
 
-# XXX this class should be moved to Rule.py once new simulation is fully
-# integrated.
-class Rule(RuleMixin, MovementCollectionUpdaterMixin, Predicate):
+class PaymentRule(RuleMixin, MovementCollectionUpdaterMixin, Predicate):
+  """
+  Payment Rule generates payment simulation movement from invoice
+  transaction simulation movements.
+  """
+  # CMF Type Definition
+  meta_type = 'ERP5 Payment Rule'
+  portal_type = 'Payment Rule'
+
   # Declarative security
   security = ClassSecurityInfo()
   security.declareObjectProtected(Permissions.AccessContentsInformation)
@@ -63,36 +68,6 @@
     PropertySheet.Version,
     PropertySheet.Rule
     )
-
-  security.declareProtected(Permissions.View, 'getDivergenceList')
-  def getDivergenceList(self, movement):
-    """
-    Returns a list of divergences of the movements provided
-    in delivery_or_movement.
-
-    movement -- a movement, a delivery, a simulation movement,
-                or a list thereof
-    """
-    if movement.getDelivery() is None:
-      return []
-    result_list = []
-    for divergence_tester in self._getDivergenceTesterList(
-      exclude_quantity=False):
-      result = divergence_tester.explain(movement)
-      if isinstance(result, (list, tuple)): # for compatibility
-        result_list.extend(result)
-      elif result is not None:
-        result_list.append(result)
-    return result_list
-
-class PaymentRule(Rule):
-  """
-  Payment Rule generates payment simulation movement from invoice
-  transaction simulation movements.
-  """
-  # CMF Type Definition
-  meta_type = 'ERP5 Payment Rule'
-  portal_type = 'Payment Rule'
 
   def _getMovementGenerator(self):
     """

Modified: erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/TradeModelRule.py
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/TradeModelRule.py?rev=32008&r1=32007&r2=32008&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/TradeModelRule.py [utf8] (original)
+++ erp5/trunk/bt5/erp5_simulation/DocumentTemplateItem/TradeModelRule.py [utf8] Wed Jan 27 10:54:44 2010
@@ -37,11 +37,15 @@
 from Products.ERP5.mixin.movement_collection_updater import \
      MovementCollectionUpdaterMixin
 from Products.ERP5.mixin.movement_generator import MovementGeneratorMixin
-from Products.ERP5.MovementCollectionDiff import _getPropertyAndCategoryList
 
-# XXX this class should be moved to Rule.py once new simulation is fully
-# integrated.
-class Rule(RuleMixin, MovementCollectionUpdaterMixin, Predicate):
+class TradeModelRule(RuleMixin, MovementCollectionUpdaterMixin, Predicate):
+  """
+    Rule for Trade Model
+  """
+  # CMF Type Definition
+  meta_type = 'ERP5 Trade Model Rule'
+  portal_type = 'Trade Model Rule'
+
   # Declarative security
   security = ClassSecurityInfo()
   security.declareObjectProtected(Permissions.AccessContentsInformation)
@@ -63,35 +67,6 @@
     PropertySheet.Version,
     PropertySheet.Rule
     )
-
-  security.declareProtected(Permissions.View, 'getDivergenceList')
-  def getDivergenceList(self, movement):
-    """
-    Returns a list of divergences of the movements provided
-    in delivery_or_movement.
-
-    movement -- a movement, a delivery, a simulation movement,
-                or a list thereof
-    """
-    if movement.getDelivery() is None:
-      return []
-    result_list = []
-    for divergence_tester in self._getDivergenceTesterList(
-      exclude_quantity=False):
-      result = divergence_tester.explain(movement)
-      if isinstance(result, (list, tuple)): # for compatibility
-        result_list.extend(result)
-      elif result is not None:
-        result_list.append(result)
-    return result_list
-
-class TradeModelRule(Rule):
-  """
-    Rule for Trade Model
-  """
-  # CMF Type Definition
-  meta_type = 'ERP5 Trade Model Rule'
-  portal_type = 'Trade Model Rule'
 
   def _getMovementGenerator(self):
     """




More information about the Erp5-report mailing list