[Erp5-report] r15943 - /erp5/trunk/products/ERP5/Tool/SimulationTool.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Thu Aug 30 10:45:30 CEST 2007
Author: vincent
Date: Thu Aug 30 10:45:29 2007
New Revision: 15943
URL: http://svn.erp5.org?rev=15943&view=rev
Log:
Massive code factorisation.
Modified:
erp5/trunk/products/ERP5/Tool/SimulationTool.py
Modified: erp5/trunk/products/ERP5/Tool/SimulationTool.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Tool/SimulationTool.py?rev=15943&r1=15942&r2=15943&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Tool/SimulationTool.py (original)
+++ erp5/trunk/products/ERP5/Tool/SimulationTool.py Thu Aug 30 10:45:29 2007
@@ -470,7 +470,18 @@
sql_kw['input'] = input
sql_kw['output'] = output
- column_value_dict = {}
+ class DictMixIn(dict):
+ def set(dictionary, key, value):
+ result = not(not(value))
+ if result:
+ dictionary[key] = value
+ return result
+
+ def setUIDList(dictionary, key, value, as_text=0):
+ uid_list = self._generatePropertyUidList(value, as_text=as_text)
+ return dictionary.set(key, uid_list)
+
+ column_value_dict = DictMixIn()
if omit_mirror_date:
date_dict = {'query':[], 'operator':'and'}
@@ -494,112 +505,48 @@
column_value_dict['date'] = {'query': [to_date], 'range': 'ngt'}
column_value_dict['mirror_date'] = {'query': [from_date], 'range': 'nlt'}
- if resource_uid is not None :
- column_value_dict['resource_uid'] = resource_uid
- if section_uid is not None :
- column_value_dict['section_uid'] = section_uid
+ column_value_dict.set('resource_uid', resource_uid)
+ if column_value_dict.set('section_uid', section_uid):
sql_kw['section_filtered'] = 1
- if node_uid is not None :
- column_value_dict['node_uid'] = node_uid
-
- resource_uid_list = self._generatePropertyUidList(resource)
- if resource_uid_list:
- column_value_dict['resource_uid'] = resource_uid_list
-
- item_uid_list = self._generatePropertyUidList(item)
- if item_uid_list:
- column_value_dict['aggregate_uid'] = item_uid_list
-
- node_uid_list = self._generatePropertyUidList(node)
- if node_uid_list:
- column_value_dict['node_uid'] = node_uid_list
-
- payment_uid_list = self._generatePropertyUidList(payment)
- if payment_uid_list:
- column_value_dict['payment_uid'] = payment_uid_list
-
- section_uid_list = self._generatePropertyUidList(section)
- if section_uid_list:
- column_value_dict['section_uid'] = section_uid_list
+ column_value_dict.set('node_uid', node_uid)
+ column_value_dict.setUIDList('resource_uid', resource)
+ column_value_dict.setUIDList('aggregate_uid', item)
+ column_value_dict.setUIDList('node_uid', node)
+ column_value_dict.setUIDList('payment_uid', payment)
+ if column_value_dict.setUIDList('section_uid', section):
sql_kw['section_filtered'] = 1
-
- mirror_section_uid_list = self._generatePropertyUidList(mirror_section)
- if mirror_section_uid_list:
- column_value_dict['mirror_section_uid'] = mirror_section_uid_list
-
- variation_text_list = self._generatePropertyUidList(variation_text,
- as_text=1)
- if variation_text_list:
- column_value_dict['variation_text'] = variation_text_list
-
- sub_variation_text_list = self._generatePropertyUidList(
- sub_variation_text, as_text=1)
- if sub_variation_text_list:
- column_value_dict['sub_variation_text'] = sub_variation_text_list
-
- new_kw['column_value_dict'] = column_value_dict
-
- related_key_dict = {}
-
+ column_value_dict.setUIDList('mirror_section_uid', mirror_section)
+ column_value_dict.setUIDList('variation_text', variation_text,
+ as_text=1)
+ column_value_dict.setUIDList('sub_variation_text', sub_variation_text,
+ as_text=1)
+ new_kw['column_value_dict'] = column_value_dict.copy()
+
+ related_key_dict = DictMixIn()
# category membership
- resource_category_uid_list = self._generatePropertyUidList(
- resource_category)
- if resource_category_uid_list:
- related_key_dict['resource_category_uid'] = resource_category_uid_list
-
- node_category_uid_list = self._generatePropertyUidList(node_category)
- if node_category_uid_list:
- related_key_dict['node_category_uid'] = node_category_uid_list
-
- payment_category_uid_list = self._generatePropertyUidList(payment_category)
- if payment_category_uid_list:
- related_key_dict['payment_category_uid'] = payment_category_uid_list
-
- section_category_uid_list = self._generatePropertyUidList(section_category)
- if section_category_uid_list:
- related_key_dict['section_category_uid'] = section_category_uid_list
+ related_key_dict.setUIDList('resource_category_uid', resource_category)
+ related_key_dict.setUIDList('node_category_uid', node_category)
+ related_key_dict.setUIDList('payment_category_uid', payment_category)
+ if related_key_dict.setUIDList('section_category_uid',
+ section_category):
sql_kw['section_filtered'] = 1
-
- mirror_section_category_uid_list = self._generatePropertyUidList(
- mirror_section_category)
- if mirror_section_category_uid_list:
- related_key_dict['mirror_section_category_uid'] =\
- mirror_section_category_uid_list
-
+ related_key_dict.setUIDList('mirror_section_category_uid',
+ mirror_section_category)
# category strict membership
- resource_category_strict_membership_uid_list =\
- self._generatePropertyUidList(resource_category_strict_membership)
- if resource_category_strict_membership_uid_list:
- related_key_dict['resource_category_strict_membership_uid'] =\
- resource_category_strict_membership_uid_list
-
- node_category_strict_membership_uid_list =\
- self._generatePropertyUidList(node_category_strict_membership)
- if node_category_strict_membership_uid_list:
- related_key_dict['node_category_strict_membership_uid'] =\
- node_category_strict_membership_uid_list
-
- payment_category_strict_membership_uid_list =\
- self._generatePropertyUidList(payment_category_strict_membership)
- if payment_category_strict_membership_uid_list:
- related_key_dict['payment_category_strict_membership_uid'] =\
- payment_category_strict_membership_uid_list
-
- section_category_strict_membership_uid_list =\
- self._generatePropertyUidList(section_category_strict_membership)
- if section_category_strict_membership_uid_list:
- related_key_dict['section_category_strict_membership_uid'] =\
- section_category_strict_membership_uid_list
+ related_key_dict.setUIDList('resource_category_strict_membership_uid',
+ resource_category_strict_membership)
+ related_key_dict.setUIDList('node_category_strict_membership_uid',
+ node_category_strict_membership)
+ related_key_dict.setUIDList('payment_category_strict_membership_uid',
+ payment_category_strict_membership)
+ if related_key_dict.setUIDList('section_category_strict_membership_uid',
+ section_category_strict_membership):
sql_kw['section_filtered'] = 1
-
- mirror_section_category_strict_membership_uid_list =\
- self._generatePropertyUidList(
- mirror_section_category_strict_membership)
- if mirror_section_category_strict_membership_uid_list:
- related_key_dict['mirror_section_category_strict_membership_uid'] =\
- mirror_section_category_strict_membership_uid_list
-
- new_kw['related_key_dict'] = related_key_dict
+ related_key_dict.setUIDList(
+ 'mirror_section_category_strict_membership_uid',
+ mirror_section_category_strict_membership)
+
+ new_kw['related_key_dict'] = related_key_dict.copy()
#variation_category_uid_list = self._generatePropertyUidList(variation_category)
#if len(variation_category_uid_list) :
More information about the Erp5-report
mailing list