diff --git a/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_searcheditor_js.js b/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_searcheditor_js.js index e011b6dad14a9220350419d9ee8a9a68dc83eed5..a29a8523097d5755b57359ee21210c96cb4d6c60 100644 --- a/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_searcheditor_js.js +++ b/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_searcheditor_js.js @@ -427,7 +427,16 @@ sub_jio_query_detail_dict, search_column_list = [], search_column_dict = {}, - search_domain_dict = {}; + search_domain_dict = {}, + additional_search_column_list = [], + additional_search_column_dict = {}; + + function addAdditionalSearchColumn(key, prefixed_key, title) { + if (additional_search_column_dict.hasOwnProperty(key)) { return false; } + additional_search_column_dict[key] = true; + additional_search_column_list.push([prefixed_key, title]); + return true; + } len = options.search_column_list.length; for (i = 0; i < len; i += 1) { @@ -477,9 +486,15 @@ operator: jio_query.operator }); } else { + addAdditionalSearchColumn( + jio_query.key, + PREFIX_COLUMN + jio_query.key, + jio_query.key + ); query_list.push({ - key: PREFIX_RAW, - value: Query.objectToSearchText(jio_query) + key: PREFIX_COLUMN + jio_query.key, + value: jio_query.value, + operator: jio_query.operator }); } } else { @@ -520,9 +535,15 @@ operator: sub_jio_query.operator }); } else { + addAdditionalSearchColumn( + sub_jio_query.key, + PREFIX_COLUMN + sub_jio_query.key, + sub_jio_query.key + ); query_list.push({ - key: PREFIX_RAW, - value: Query.objectToSearchText(sub_jio_query) + key: PREFIX_COLUMN + sub_jio_query.key, + value: sub_jio_query.value, + operator: sub_jio_query.operator }); } } else { @@ -535,8 +556,12 @@ sub_jio_query_dict = sub_jio_query.toJSON(); sub_jio_query_detail_dict = detectAtleastoneexactmatchComplexQuery(sub_jio_query_dict); - if (sub_jio_query_detail_dict && - search_column_dict.hasOwnProperty(sub_jio_query_detail_dict.key)) { + if (sub_jio_query_detail_dict) { + addAdditionalSearchColumn( + sub_jio_query_detail_dict.key, + PREFIX_COLUMN + sub_jio_query_detail_dict.key, + sub_jio_query_detail_dict.key + ); querySetKeyInDeep( sub_jio_query_dict, PREFIX_COLUMN + sub_jio_query_detail_dict.key @@ -559,7 +584,7 @@ } return this.changeState({ - search_column_list: search_column_list, + search_column_list: search_column_list.concat(additional_search_column_list), begin_from_key: options.begin_from, // [{key: 'title', value: 'Foo', operator: 'like'}] query_list: query_list, diff --git a/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_searcheditor_js.xml b/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_searcheditor_js.xml index e6c9c78be54bf34de888d29515a8d955666fc913..5be386946726e470250a9cc5a5ae6ff56b7a8542 100644 --- a/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_searcheditor_js.xml +++ b/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_searcheditor_js.xml @@ -228,7 +228,7 @@ </item> <item> <key> <string>serial</string> </key> - <value> <string>973.42226.24018.7099</string> </value> + <value> <string>974.50067.21616.14233</string> </value> </item> <item> <key> <string>state</string> </key> @@ -246,7 +246,7 @@ </tuple> <state> <tuple> - <float>1550070921.26</float> + <float>1554214739.75</float> <string>UTC</string> </tuple> </state> diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_listbox_zuite/testFilterMultiValuedOperator.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_listbox_zuite/testFilterMultiValuedOperator.zpt index ee65a0875f407e4e2b2ee2b03b72a1064201805a..fbcba274caba2563e805dd5b6923287eaa5b9e98 100644 --- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_listbox_zuite/testFilterMultiValuedOperator.zpt +++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_listbox_zuite/testFilterMultiValuedOperator.zpt @@ -42,11 +42,7 @@ <td>${base_url}/web_site_module/renderjs_runner/#/bar_module</td> <td></td> </tr> -<tr> - <td>waitForElementPresent</td> - <td>//a[@data-i18n='Previous']</td> - <td></td> -</tr> +<tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_listbox_loaded" /> <!-- Prepare panel with a multi-valued operator --> <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/triggle_filter_and" /> diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_listbox_zuite/testFilterUnknownDomain.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_listbox_zuite/testFilterUnknownDomain.zpt index cca3bcfa18350b60ae1df646838971de53297fa4..1e5f4a7d8e43727e5754058c6e5f85290841f0e1 100644 --- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_listbox_zuite/testFilterUnknownDomain.zpt +++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_listbox_zuite/testFilterUnknownDomain.zpt @@ -50,7 +50,7 @@ <!-- Open the panel and submit it. Check that the new query string is not to much changed --> <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/triggle_filter_and" /> -<tal:block tal:define="filter_section_configuration python: {'key': 'RAW', 'value': 'selection_domain_bar_domain: "a"', 'index': 0}"> +<tal:block tal:define="filter_section_configuration python: {'key': 'COLUMN_selection_domain_bar_domain', 'value': 'a', 'index': 0}"> <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/check_filter_section" /> </tal:block> <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/submit_filter" /> diff --git a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_listbox_zuite/testFilterUnknownKey.zpt b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_listbox_zuite/testFilterUnknownKey.zpt index 89b62bc2036869e95d4e4f716af9b4d97e635b03..c7936326793dcc518ca1ecd53a91f57dd34200d0 100644 --- a/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_listbox_zuite/testFilterUnknownKey.zpt +++ b/bt5/erp5_web_renderjs_ui_test/PathTemplateItem/portal_tests/renderjs_ui_listbox_zuite/testFilterUnknownKey.zpt @@ -50,7 +50,7 @@ <!-- Open the panel and submit it. Check that the new query string is not to much changed --> <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/triggle_filter_and" /> -<tal:block tal:define="filter_section_configuration python: {'key': 'RAW', 'value': 'foo: "31085"', 'index': 0}"> +<tal:block tal:define="filter_section_configuration python: {'key': 'COLUMN_foo', 'value': '31085', 'index': 0}"> <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/check_filter_section" /> </tal:block> <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/submit_filter" /> @@ -100,6 +100,12 @@ <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/triggle_filter_and" /> +<tal:block tal:define="filter_section_configuration python: {'key': 'COLUMN_bar', 'value': '31084', 'index': 0}"> + <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/check_filter_section" /> +</tal:block> +<tal:block tal:define="filter_section_configuration python: {'key': 'COLUMN_foo', 'value': ['31085', '31086'], 'index': 1}"> + <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/check_filter_section" /> +</tal:block> <tal:block tal:define="filter_section_configuration python: {'index': 1}"> <tal:block metal:use-macro="here/Zuite_CommonTemplateForRenderjsUi/macros/remove_filter_section" /> </tal:block>