[Erp5-report] r31198 kazuhiko - in /erp5/trunk/products/ERP5: ./ Document/

nobody at svn.erp5.org nobody at svn.erp5.org
Wed Dec 9 16:13:15 CET 2009


Author: kazuhiko
Date: Wed Dec  9 16:13:14 2009
New Revision: 31198

URL: http://svn.erp5.org?rev=31198&view=rev
Log:
IMovementGenerator's getAggregatedMovementList() should return a list of temporary Simulation Movements.

Modified:
    erp5/trunk/products/ERP5/Document/NewOrderRule.py
    erp5/trunk/products/ERP5/MovementCollectionDiff.py

Modified: erp5/trunk/products/ERP5/Document/NewOrderRule.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/NewOrderRule.py?rev=31198&r1=31197&r2=31198&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/NewOrderRule.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/NewOrderRule.py [utf8] Wed Dec  9 16:13:14 2009
@@ -34,6 +34,7 @@
 from Products.ERP5Type import Permissions, PropertySheet, interfaces
 from Products.ERP5.Document.Predicate import Predicate
 from Products.ERP5.mixin.rule import RuleMixin
+from Products.ERP5.MovementCollectionDiff import _getPropertyAndCategoryList
 
 class NewOrderRule(RuleMixin, Predicate):
   """
@@ -106,8 +107,14 @@
                                 rounding=False):
     """Input movement list comes from order"""
     order = context.getDefaultCausalityValue()
-    if order is not None:
-      return [x.asContext(order=x.getRelativeUrl()) for x in order.getMovementList(
-        portal_type=order.getPortalOrderMovementTypeList())]
-    else:
-      return []
+    ret = []
+    for movement in order.getMovementList(
+      portal_type=order.getPortalOrderMovementTypeList()):
+      kw = _getPropertyAndCategoryList(movement)
+      simulation_movement = context.newContent(
+        portal_type=RuleMixin.movement_type,
+        temp_object=True,
+        order_value=movement,
+        **kw)
+      ret.append(simulation_movement)
+    return ret

Modified: erp5/trunk/products/ERP5/MovementCollectionDiff.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/MovementCollectionDiff.py?rev=31198&r1=31197&r2=31198&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/MovementCollectionDiff.py [utf8] (original)
+++ erp5/trunk/products/ERP5/MovementCollectionDiff.py [utf8] Wed Dec  9 16:13:14 2009
@@ -89,8 +89,10 @@
     """
     property_dict = self._property_dict_dict.get(movement)
     if property_dict is None:
-      # movement should be 'New Movement'
-      return self._getPropertyAndCategoryList(movement)
+      # movement should be 'Temporary Simulation Movement'
+      return dict([(x,y) for x,y in movement.__dict__.items() \
+                   if not x.startswith('_') and \
+                   not x in ('id', 'portal_type', 'uid')])
     else:
       return property_dict
 




More information about the Erp5-report mailing list