Commit c9c8053b authored by Vincent Pelletier's avatar Vincent Pelletier

WIP all: Stop using ComplexQuery deprecated "operator" argument.

parent 77a1b9ce
......@@ -102,7 +102,7 @@ if request.get('omit_grouping_reference', False):
params['grouping_query'] = ComplexQuery(
Query(grouping_reference=None),
Query(grouping_date=at_date, range="min"),
operator="OR")
logical_operator="OR")
else:
params['grouping_reference'] = None
......
......@@ -17,7 +17,7 @@ inventory_query = {
'grouping_query': ComplexQuery(
Query(grouping_reference=None),
Query(grouping_date=at_date, range="min"),
operator="OR"),
logical_operator="OR"),
'simulation_state': params['simulation_state'],
'node_uid': kw['node_uid'],
'portal_type': portal.getPortalAccountingMovementTypeList(),
......
......@@ -15,7 +15,7 @@ section_uid = portal.Base_getSectionUidListForSectionCategory(
grouping_query = ComplexQuery(
Query(grouping_reference=None),
Query(grouping_date=at_date, range="min"),
operator="OR")
logical_operator="OR")
account_number_memo = {}
def getAccountNumber(account_url):
......
......@@ -69,7 +69,7 @@ else:
if title:
search_kw['title_query'] = ComplexQuery(Query(title=title),
Query(parent_title=title),
operator='OR')
logical_operator='OR')
if delivery_reference:
search_kw['parent_reference'] = delivery_reference
if debit_price:
......
......@@ -93,7 +93,7 @@ if portal.portal_selections.getSelectionParamsFor(selection_name).get('hide_grou
params['grouping_query'] = ComplexQuery(
Query(grouping_reference=None),
Query(grouping_date=params['at_date'], range="min"),
operator="OR")
logical_operator="OR")
else:
params['grouping_reference'] = None
......
......@@ -11,5 +11,5 @@ return ComplexQuery(
Query(validation_state=('published', 'published_alive', 'released', 'released_alive', 'shared', 'shared_alive'),
reference='!=None'),
Query(validation_state='embedded', parent_uid=context.getUid()),
operator='or'),
operator='and')
logical_operator='or'),
logical_operator='and')
......@@ -367,7 +367,7 @@ class JioGeneric():
try:
while True: query_dict['query_list'].remove(None)
except ValueError: pass
return ComplexQuery(operator=query_dict['operator'],
return ComplexQuery(logical_operator=query_dict['operator'],
*query_dict['query_list'])
return None
return rec(query_dict)
......@@ -380,7 +380,7 @@ class JioGeneric():
kw['query'] = ComplexQuery(
kw['query'],
ComplexQuery(
operator='or',
logical_operator='or',
*[SimpleQuery(comparison_operator="=", portal_type=x) \
for x in self.allowed_portal_type_list]
),
......@@ -388,7 +388,7 @@ class JioGeneric():
)
else:
kw['query'] = ComplexQuery(
operator='or',
logical_operator='or',
*[SimpleQuery(comparison_operator="=", portal_type=x) \
for x in self.allowed_portal_type_list]
)
......@@ -438,7 +438,7 @@ class JioGeneric():
# editkw['query'] = ComplexQuery(
# editkw['query'],
# ComplexQuery(
# operator='or',
# logical_operator='or',
# *[SimpleQuery(comparison_operator="=", portal_type=x) \
# for x in self.allowed_portal_type_list]
# ),
......
......@@ -30,7 +30,7 @@ for action in ordered_global_action_list:
sub_query_list = []
for k, v in query_dict.items():
sub_query_list.append(Query(**{k: v}))
complex_query = ComplexQuery(*sub_query_list, **dict(operator="AND"))
complex_query = ComplexQuery(logical_operator="AND", *sub_query_list)
# add to query filtering by local roles as defined in worklist
complex_query = portal.portal_catalog.getSecurityQuery(query=complex_query, local_roles=local_roles)
query_list.append(complex_query)
......@@ -43,7 +43,7 @@ if not query_list:
return []
# Invoke catalog
query = ComplexQuery(*query_list, **dict(operator="OR"))
query = ComplexQuery(logical_operator="OR", *query_list)
#query = portal.portal_catalog.getSecurityQuery(query)
#result_list = portal.portal_catalog(query=query,
# sort_on='modification_date',
......
......@@ -18,7 +18,7 @@ for base_category_name, category in category_dict.items():
key='ExactMatch'),
Query(reference=category,
key='ExactMatch'),
operator='OR'),
logical_operator='OR'),
ComplexQuery(Query(relative_url='%s/%%' % base_category_name)))
category_value = portal.portal_catalog.getResultValue(query=query)
......
......@@ -11,7 +11,7 @@ catalog_kw = {'query': ComplexQuery(Query(start_date=">=%s" % from_date.strftime
Query(stop_date="<=%s" % to_date.strftime("%Y/%m/%d")),
Query(destination_trade_uid=Query(destination_trade_uid=destination_trade.getUid())),
Query(simulation_state='!=cancelled'),
operator="AND")}
logical_operator="AND")}
paysheet_list = portal.accounting_module.searchFolder(portal_type="Pay Sheet Transaction", **catalog_kw)
......
......@@ -19,7 +19,7 @@ query = ComplexQuery(Query(parent_uid=event_uid_list),
Query(uid=event_uid_list),
Query(parent_uid=attachment_pdf_uid_list),
Query(uid=attachment_pdf_uid_list),
operator="OR")
logical_operator="OR")
kw['portal_type'] = ('PDF','Image') + context.getPortalDocumentTypeList()+context.getPortalEventTypeList()
return context.portal_catalog(query=query, **kw)
......@@ -19,7 +19,7 @@ query = ComplexQuery(Query(parent_uid=event_uid_list),
Query(uid=event_uid_list),
Query(parent_uid=attachment_pdf_uid_list),
Query(uid=attachment_pdf_uid_list),
operator="OR")
logical_operator="OR")
kw['portal_type'] = ('PDF')
......
......@@ -30,7 +30,7 @@ query = ComplexQuery(Query(parent_uid=event_uid_list),
Query(uid=event_uid_list),
Query(parent_uid=attachment_pdf_uid_list),
Query(uid=attachment_pdf_uid_list),
operator="OR")
logical_operator="OR")
kw['portal_type'] = ('PDF')
result_uid = [x.getUid() for x in context.portal_catalog(query=query, **kw)]
......
......@@ -48,7 +48,7 @@ for item in items:
# query = ComplexQuery(Query(title=person_title),
# Query(birth_date=item['start_date']),
# Query(birthplace_city=item['default_birthplace_address_city']),
# operator="AND")
# logical_operator="AND")
# best_candidate_list=list(context.portal_catalog(portal_type='Person',
# query=query))
#verify that the new person is not selected more than once in the fast input
......
......@@ -46,7 +46,7 @@ for item in items:
# query = ComplexQuery(Query(title=person_title),
# Query(birth_date=item['start_date']),
# Query(birthplace_city=item['default_birthplace_address_city']),
# operator="AND")
# logical_operator="AND")
# best_candidate_list=list(context.portal_catalog(portal_type='Person',
# query=query))
#verify that the new person is not selected more than once in the fast input
......
......@@ -54,31 +54,31 @@ if person_start_date == None or person_birthplace == None:
Query(title = person_title_reversed),
Query(title = person_first_name),
Query(title = person_last_name),
operator = "OR")
logical_operator = "OR")
else:
query = ComplexQuery(Query(title = person_title),
ComplexQuery(
Query(title = person_title),
Query(birth_date = person_start_date),
operator = "AND"),
logical_operator = "AND"),
ComplexQuery(
Query(title = person_title),
Query(birthplace_city = person_birthplace),
operator = "AND"),
logical_operator = "AND"),
ComplexQuery(
Query(birth_date = person_start_date),
Query(birthplace_city = person_birthplace),
operator = "AND"),
logical_operator = "AND"),
ComplexQuery(
Query(title = person_title_reversed),
Query(title = person_first_name),
Query(title = person_last_name),
operator = "OR"),
logical_operator = "OR"),
ComplexQuery(
Query(title = person_title),
Query(birth_date = [DateTime(person_start_date.year(), 1, 1), DateTime(person_start_date.year(), 12, 31),],range = 'minmax'),
operator = "AND"),
operator = "OR")
logical_operator = "AND"),
logical_operator = "OR")
#select_expression = \
#"""((title ="%s") + (start_date ="%s") + (birthplace_city ="%s"))AS result_order
#""" % (person_title, person_start_date, person_birthplace)
......
......@@ -79,7 +79,7 @@ new_registry_number = request_eform.portal_ids.generateNewId(
query=ComplexQuery(Query(title=request_eform.getTitle()),
Query(birth_date=request_eform.getStartDate()),
Query(birthplace_city=request_eform.getDefaultBirthplaceAddressCity()),
operator="AND")
logical_operator="AND")
person_list = [person.getObject() for person in person_module.searchFolder(query=query)]
if request_eform.getBeginning() or request_eform.getOpening():
if len(person_list) == 0:
......
......@@ -49,7 +49,7 @@ request_eform.setTitle(request_eform.getOwnerFirstName()+' '+request_eform.getOw
query=ComplexQuery(Query(title=request_eform.getTitle()),
Query(birth_date=request_eform.getOwnerBirthday()),
Query(birthplace_city=request_eform.getOwnerBirthplace()),
operator="AND")
logical_operator="AND")
person_list=[person.getObject() for person in \
context.portal_catalog(portal_type='Person',query=query)]
......
......@@ -16,11 +16,11 @@ new_test_result_list = []
context.log("rev_query_list", rev_query_list)
if rev_query_list:
result = context.searchFolder(title='PERF-ERP5-MASTER', simulation_state='stopped',
revision=ComplexQuery(operator='AND', *rev_query_list),
revision=ComplexQuery(logical_operator='AND', *rev_query_list),
sort_on=(('delivery.start_date', 'ASC'),),src__=1)
context.log("result", result)
for test in context.searchFolder(title='PERF-ERP5-MASTER', simulation_state='stopped',
revision=ComplexQuery(operator='AND', *rev_query_list),
revision=ComplexQuery(logical_operator='AND', *rev_query_list),
sort_on=(('delivery.start_date', 'ASC'),)):
test = test.getObject()
if revision != test.getReference():
......
......@@ -204,7 +204,7 @@ class NodeBudgetVariation(BudgetVariation):
query = ComplexQuery(
NegatedQuery(Query(**{axis: other_uid_list})),
Query(**{axis: None}),
operator="OR")
logical_operator="OR")
else:
value = portal_categories.getCategoryValue(node_url,
......@@ -219,7 +219,7 @@ class NodeBudgetVariation(BudgetVariation):
query_dict[axis] = ComplexQuery(
query,
Query(**{axis: query_dict[axis]}),
operator='OR')
logical_operator='OR')
else:
query_dict[axis] = query
......@@ -297,7 +297,7 @@ class NodeBudgetVariation(BudgetVariation):
query_dict[axis] = ComplexQuery(
Query(**{axis: None}),
Query(**{axis: query_dict[axis]}),
operator="OR")
logical_operator="OR")
else:
query_dict[axis] = Query(**{axis: None})
return query_dict
......
......@@ -246,7 +246,7 @@ class SimulationTool(BaseTool):
simulation_query = ComplexQuery(
self._getIncreaseQuery(table, 'quantity', True),
SimpleQuery(**{table + '.simulation_state': input_simulation_state}),
operator='AND',
logical_operator='AND',
)
output_simulation_state = simulation_state_dict.get('output_simulation_state')
if output_simulation_state is not None:
......@@ -255,9 +255,9 @@ class SimulationTool(BaseTool):
ComplexQuery(
self._getIncreaseQuery(table, 'quantity', False),
SimpleQuery(**{table + '.simulation_state': output_simulation_state}),
operator='AND',
logical_operator='AND',
),
operator='OR'
logical_operator='OR'
)
return simulation_query
......@@ -378,14 +378,14 @@ class SimulationTool(BaseTool):
ComplexQuery(
SimpleQuery(comparison_operator='<', **{table + '.' + column: 0}),
SimpleQuery(**{table + '.is_cancellation': increase}),
operator='AND',
logical_operator='AND',
),
ComplexQuery(
SimpleQuery(comparison_operator='>=', **{table + '.' + column: 0}),
SimpleQuery(**{table + '.is_cancellation': not increase}),
operator='AND',
logical_operator='AND',
),
operator='OR',
logical_operator='OR',
)
def _generateSQLKeywordDict(self, table='stock', **kw):
......@@ -491,7 +491,7 @@ class SimulationTool(BaseTool):
simulation_query = ComplexQuery(
simulation_query,
reserved_query,
operator='OR',
logical_operator='OR',
)
if simulation_query is not None:
new_kw['query'] = simulation_query
......
......@@ -11,6 +11,6 @@ if follow_up_related_document_list:
kw['query'] = ComplexQuery(
kw['query'],
Query(uid=[x.getUid() for x in follow_up_related_document_list]),
operator='or')
logical_operator='or')
return portal_catalog(portal_type=portal_type, limit=limit, **kw)
......@@ -61,7 +61,7 @@ for key in sorted(request.form.keys()):
q_kw = {key : None}
left_join_list.append(key)
left_join_list.append('strict_%s' % key)
query_list.append(ComplexQuery(NegatedQuery(Query(**nq_kw)), Query(**q_kw), operator="OR"))
query_list.append(ComplexQuery(NegatedQuery(Query(**nq_kw)), Query(**q_kw), logical_operator="OR"))
new_mapping[key] = ""
new_mapping["dialog_%s" %(key,)] = value
new_mapping["dialog_excluded_%s" %(key,)] = True
......
......@@ -6,5 +6,5 @@ from Products.ZSQLCatalog.SQLCatalog import Query
query = ComplexQuery(Query(title=value),
Query(reference=value),
operator="OR")
logical_operator="OR")
return query
......@@ -619,8 +619,7 @@ class CatalogTool (UniqueObject, ZCatalog, CMFCoreCatalogTool, ActiveObject):
for key, value in role_column_dict.items():
new_query = Query(**{key : value})
query_list.append(new_query)
operator_kw = {'operator': 'OR'}
role_query = ComplexQuery(*query_list, **operator_kw)
role_query = ComplexQuery(logical_operator='OR', *query_list)
if security_uid_dict:
catalog_security_uid_groups_columns_dict = \
self.getSQLCatalog().getSQLCatalogSecurityUidGroupsColumnsDict()
......@@ -634,12 +633,12 @@ class CatalogTool (UniqueObject, ZCatalog, CMFCoreCatalogTool, ActiveObject):
security_uid_list,
'operator': 'IN'}))
security_uid_query = ComplexQuery(*query_list, operator='OR')
security_uid_query = ComplexQuery(*query_list, logical_operator='OR')
if role_query:
if security_uid_query:
# merge
query = ComplexQuery(security_uid_query, role_query, operator='OR')
query = ComplexQuery(security_uid_query, role_query, logical_operator='OR')
else:
query = role_query
elif security_uid_query:
......@@ -659,9 +658,8 @@ class CatalogTool (UniqueObject, ZCatalog, CMFCoreCatalogTool, ActiveObject):
for key, value in local_role_column_dict.items():
new_query = Query(**{key : value})
query_list.append(new_query)
operator_kw = {'operator': 'AND'}
local_role_query = ComplexQuery(*query_list, **operator_kw)
query = ComplexQuery(query, local_role_query, operator='AND')
local_role_query = ComplexQuery(logical_operator='AND', *query_list)
query = ComplexQuery(query, local_role_query, logical_operator='AND')
return query
......
......@@ -1213,7 +1213,7 @@ class TestERP5Catalog(ERP5TypeTestCase, LogInterceptor):
# title='bcd' OR description='efg'
catalog_kw = {'query':ComplexQuery(Query(title='bcd'),
Query(description='efg'),
operator='OR')}
logical_operator='OR')}
self.failIfDifferentSet([org_b.getPath(), org_c.getPath()],
[x.path for x in self.getCatalogTool()(
portal_type='Organisation',**catalog_kw)])
......@@ -1222,11 +1222,11 @@ class TestERP5Catalog(ERP5TypeTestCase, LogInterceptor):
# title='foo' and description='bar'
catalog_kw = {'query':ComplexQuery(ComplexQuery(SimpleQuery(title='abc'),
SimpleQuery(description='abc'),
operator='AND'),
logical_operator='AND'),
ComplexQuery(SimpleQuery(title='foo'),
SimpleQuery(description='bar'),
operator='AND'),
operator='OR')}
logical_operator='AND'),
logical_operator='OR')}
self.failIfDifferentSet([org_a.getPath(), org_f.getPath()],
[x.path for x in self.getCatalogTool()(
portal_type='Organisation',**catalog_kw)])
......@@ -1719,7 +1719,7 @@ class TestERP5Catalog(ERP5TypeTestCase, LogInterceptor):
# First try without aliases
query1 = Query(parent_portal_type="Organisation")
query2 = Query(grand_parent_portal_type="Organisation Module")
complex_query = ComplexQuery(query1, query2, operator="AND")
complex_query = ComplexQuery(query1, query2, logical_operator="AND")
self.failIfDifferentSet([org_a.getPath() + '/default_address'],
[x.path for x in self.getCatalogTool()(query=complex_query)])
# Then try with aliases
......@@ -1728,7 +1728,7 @@ class TestERP5Catalog(ERP5TypeTestCase, LogInterceptor):
query2 = Query(grand_parent_portal_type="Organisation Module",
table_alias_list=(("catalog" , "parent"),
("catalog", "grand_parent")))
complex_query = ComplexQuery(query1, query2, operator="AND")
complex_query = ComplexQuery(query1, query2, logical_operator="AND")
self.failIfDifferentSet([org_a.getPath() + '/default_address'],
[x.path for x in self.getCatalogTool()(query=complex_query)])
sql_kw = self.getCatalogTool().buildSQLQuery(query=complex_query)
......@@ -2180,27 +2180,27 @@ class TestERP5Catalog(ERP5TypeTestCase, LogInterceptor):
# complex query
query = ComplexQuery(Query(portal_type='Person'),
Query(region_uid=asia.getUid()),
operator='AND')
logical_operator='AND')
self.assertEqual(len(catalog(query=query)), 1)
# complex query
query = ComplexQuery(Query(portal_type='Person'),
Query(region_uid=(africa.getUid(), asia.getUid())),
operator='AND')
logical_operator='AND')
self.assertEqual(len(catalog(query=query)), 2)
# more complex query
query_find_european = ComplexQuery(Query(portal_type='Person'),
Query(region_uid=europe.getUid()),
operator='AND')
logical_operator='AND')
self.assertEqual(len(catalog(query=query_find_european)), 1)
query_find_name_erp5 = ComplexQuery(Query(portal_type='Person'),
Query(title='%ERP5'),
operator='AND')
logical_operator='AND')
self.assertEqual(len(catalog(query=query_find_name_erp5)), 2)
self.assertRaises(NotImplementedError, ComplexQuery, query_find_european, query_find_name_erp5, operator='OR')
self.assertRaises(NotImplementedError, ComplexQuery, query_find_european, query_find_name_erp5, logical_operator='OR')
def test_check_security_table_content(self):
sql_connection = self.getSQLConnection()
......@@ -3525,19 +3525,19 @@ VALUES
'site_reference="foo" AND function_description="bar"',
ComplexQuery(Query(site_reference='foo'),
Query(function_description='bar'),
operator='AND'))
logical_operator='AND'))
# Double join on same relation
check(both_object_list,
'site_reference="foo" AND site_description="bar"',
ComplexQuery(Query(site_reference='foo'),
Query(site_description='bar'),
operator='AND'))
logical_operator='AND'))
# Double join on same related key
check(title_object_list,
'site_title="foo1" AND site_title="foo2"',
ComplexQuery(Query(site_title='=foo1'),
Query(site_title='=foo2'),
operator='AND'))
logical_operator='AND'))
def test_SearchFolderWithRelatedDynamicRelatedKey(self):
# Create some objects
......
......@@ -282,9 +282,9 @@ def generateNestedQuery(getQuery, priority_list, criterion_dict,
**{my_criterion_id: criterion_value})
if isinstance(criterion_value, ExclusionTuple):
query = NegatedQuery(query)
query = ComplexQuery(operator='OR',
query = ComplexQuery(logical_operator='OR',
*(query, getQuery(**{my_criterion_id: None})))
append(ComplexQuery(query, subcriterion_query, operator='AND'))
append(ComplexQuery(query, subcriterion_query, logical_operator='AND'))
else:
possible_value_list = tuple()
impossible_value_list = tuple()
......@@ -315,12 +315,12 @@ def generateNestedQuery(getQuery, priority_list, criterion_dict,
**{my_criterion_id: impossible_value_list}
)
query = NegatedQuery(query)
query = ComplexQuery(operator='OR',
query = ComplexQuery(logical_operator='OR',
*(query, getQuery(**{my_criterion_id: None})))
value_query_list.append(query)
append(ComplexQuery(operator='AND', *value_query_list))
append(ComplexQuery(logical_operator='AND', *value_query_list))
if len(query_list):
return ComplexQuery(operator='OR', *query_list)
return ComplexQuery(logical_operator='OR', *query_list)
return None
def getWorklistListQuery(getQuery, grouped_worklist_dict):
......
......@@ -162,7 +162,7 @@ def wholePeriod(search_key, group, column, value_list, exclude=False):
first_date, second_date = getPeriodBoundaries(value)
append(ComplexQuery([SimpleQuery(search_key=search_key, comparison_operator=first_operator, group=group, **{column: first_date}),
SimpleQuery(search_key=search_key, comparison_operator=second_operator, group=group, **{column: second_date})],
operator=logical_operator))
logical_operator=logical_operator))
return query_list
def matchWholePeriod(search_key, group, column, value_list, *ignored):
......
......@@ -231,7 +231,7 @@ class RelatedKey(SearchKey):
# Example:
# ComplexQuery(Query(title="foo"),
# Query(subordination_title="bar")
# , operator='OR')
# , logical_operator='OR')
# Former catalog rendering (truncated where-expression):
# AND ((catalog.title LIKE '%foo%') OR
# (related_catalog_1.title LIKE '%bar%'))
......
......@@ -362,7 +362,7 @@ class SearchKey(object):
if len(query_list) == 1:
query = query_list[0]
else:
query = ComplexQuery(query_list, operator=logical_operator)
query = ComplexQuery(query_list, logical_operator=logical_operator)
return query
def parseSearchText(self, value, is_column):
......
......@@ -825,7 +825,7 @@ class TestSQLCatalog(ERP5TypeTestCase):
#return catalog(title={'query': 'a', 'operator': 'not'})
#return catalog(title={'query': ['a', 'b'], 'operator': 'not'})
#return context.portal_catalog(source_title="toto", source_description="tutu", src__=1)
#print catalog(query=ComplexQuery(Query(title='1'), ComplexQuery(Query(portal_type='Foo') ,Query(portal_type='Bar'), operator='or'), operator='and'))
#print catalog(query=ComplexQuery(Query(title='1'), ComplexQuery(Query(portal_type='Foo') ,Query(portal_type='Bar'), logical_operator='or'), logical_operator='and'))
#print catalog(title={'query': ('path', 2), 'operator': 'and'}, exception=TypeError)
#print catalog(sort_on=[('source_title', )], check_search_text=False)
#print catalog(query=ComplexQuery(Query(source_title='foo'), Query(source_title='bar')), sort_on=[('source_title', ), ('source_title_1', )], check_search_text=False)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment