From dac29e54da479d1299a0045e8ae7b48bcab95225 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Calonne?= <aurel@nexedi.com> Date: Fri, 2 Jun 2006 09:50:58 +0000 Subject: [PATCH] 2006-06-02 aurel * finish the rewrite of fast input script * commit some xml format change git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@7585 20353a03-c40f-0410-a6d1-a30d3c3de9de --- .../z_related_destination_payment.xml | 18 +-- .../portal_types/Foreign%20Check.xml | 6 + ...Delivery_generateCashDetailInputDialog.xml | 129 +++++++----------- bt5/erp5_banking_core/bt/change_log | 3 + 4 files changed, 60 insertions(+), 96 deletions(-) diff --git a/bt5/erp5_banking_core/CatalogMethodTemplateItem/portal_catalog/erp5_mysql/z_related_destination_payment.xml b/bt5/erp5_banking_core/CatalogMethodTemplateItem/portal_catalog/erp5_mysql/z_related_destination_payment.xml index 37db4bfb49..e10202e512 100644 --- a/bt5/erp5_banking_core/CatalogMethodTemplateItem/portal_catalog/erp5_mysql/z_related_destination_payment.xml +++ b/bt5/erp5_banking_core/CatalogMethodTemplateItem/portal_catalog/erp5_mysql/z_related_destination_payment.xml @@ -15,16 +15,7 @@ <item> <key> <string>__ac_local_roles__</string> </key> <value> - <dictionary> - <item> - <key> <string>alex</string> </key> - <value> - <list> - <string>Owner</string> - </list> - </value> - </item> - </dictionary> + <none/> </value> </item> <item> @@ -73,12 +64,7 @@ <item> <key> <string>_owner</string> </key> <value> - <tuple> - <list> - <string>acl_users</string> - </list> - <string>yo</string> - </tuple> + <none/> </value> </item> <item> diff --git a/bt5/erp5_banking_core/PortalTypeTemplateItem/portal_types/Foreign%20Check.xml b/bt5/erp5_banking_core/PortalTypeTemplateItem/portal_types/Foreign%20Check.xml index 3ad4710bf8..024eca9695 100644 --- a/bt5/erp5_banking_core/PortalTypeTemplateItem/portal_types/Foreign%20Check.xml +++ b/bt5/erp5_banking_core/PortalTypeTemplateItem/portal_types/Foreign%20Check.xml @@ -24,6 +24,12 @@ <tuple/> </value> </item> + <item> + <key> <string>_aliases</string> </key> + <value> + <dictionary/> + </value> + </item> <item> <key> <string>_owner</string> </key> <value> diff --git a/bt5/erp5_banking_core/SkinTemplateItem/portal_skins/erp5_banking_core/CashDelivery_generateCashDetailInputDialog.xml b/bt5/erp5_banking_core/SkinTemplateItem/portal_skins/erp5_banking_core/CashDelivery_generateCashDetailInputDialog.xml index ee82da9112..aaafb27e96 100644 --- a/bt5/erp5_banking_core/SkinTemplateItem/portal_skins/erp5_banking_core/CashDelivery_generateCashDetailInputDialog.xml +++ b/bt5/erp5_banking_core/SkinTemplateItem/portal_skins/erp5_banking_core/CashDelivery_generateCashDetailInputDialog.xml @@ -292,6 +292,7 @@ if listbox is None:\n \n \n else :\n + # we want to update the listbox\n cash_status_list = kw[\'cash_status_list\']\n emission_letter_list = kw[\'emission_letter_list\']\n variation_list = kw[\'variation_list\']\n @@ -307,7 +308,7 @@ else :\n context.Base_updateDialogForm(listbox=listbox, empty_line_number=0)\n return context.asContext(context=None, portal_type=context.getPortalType() ,**kw ).CashDetail_fastInputForm(**kw)\n \n - # get the variation and the maximum line allowed for a variation\n + # get the maximum number of line allowed for a variation\n if column_base_category == \'cash_status\':\n columne_base_list = cash_status_list\n max_lines =len(emission_letter_list) * len(variation_list)\n @@ -317,77 +318,51 @@ else :\n else:\n column_base_list = variation_list\n max_lines =len(cash_status_list) * len(emission_letter_list)\n +\n + line_counter_dict = {}\n + # compute number of exisiting lines for a resource\n + for line in listbox:\n + resource_key = line[\'resource_id\']\n + if line_counter_dict.has_key(resource_key):\n + line_counter_dict[resource_key] = line_counter_dict[resource_key] + 1\n + else:\n + line_counter_dict[resource_key] = 1\n \n total_price = 0\n new_line_list = []\n - counter = 0\n -\n - preview_listbox_line = None\n - number_line_to_add = 0\n - number_same_line = 0\n -\n - listbox_line_count = len(listbox)\n - if listbox_line_count > 0:\n - listbox_line_count_plus_1 = listbox_line_count+1\n - else: # XXX when this can happen ?\n - listbox_line_count_plus_1 = listbox_line_count\n -\n - last_row = False\n - context.log("listbox", listbox)\n - # for x in listbox :\n - for i_listbox in xrange(0,listbox_line_count_plus_1) : # Element of ListBox\n - if i_listbox < listbox_line_count:\n - listbox_line = listbox[i_listbox]\n - del listbox_line[\'listbox_key\']\n - else:\n - last_row = True\n -\n - if preview_listbox_line is None : # first line\n - preview_listbox_line = listbox_line.copy()\n - elif last_row or preview_listbox_line[\'resource_id\'] <> listbox_line[\'resource_id\']:\n - # last line or line of different resource\n - if number_line_to_add > (max_lines - number_same_line) :\n - number_line_to_add = max_lines - number_same_line\n - if number_line_to_add > 0:\n - counter = 1\n - preview_listbox_line[\'number_line_to_add\'] = 0\n - for w in column_base_list:\n - preview_listbox_line[\'column\'+str(counter)] = 0\n - preview_listbox_line[\'price\'] = 0\n - counter += 1\n - for z in xrange(0,number_line_to_add) :\n - new_line_list.append(preview_listbox_line)\n -# raise \'KHA\',repr((a1,b1,c1, x[\'column4\'], preview_listbox_line[\'column4\'],montest[\'column4\']))\n - if last_row:\n - break\n -\n - preview_listbox_line = listbox_line.copy()\n - number_same_line = 0;\n - number_line_to_add = 0\n - number_same_line += 1\n - if max_lines > 1:\n - number_line_to_add += listbox_line[\'number_line_to_add\']\n - listbox_line[\'number_line_to_add\'] = 0\n - resource_list = context.portal_catalog(portal_type = (\'Banknote\',\'Coin\') ,id = listbox_line[\'resource_id\'])\n + # browse line to determine new lines to add\n + for line in listbox:\n + # must get the resource\n + resource_id = line[\'resource_id\']\n + resource_list = context.portal_catalog(portal_type = (\'Banknote\',\'Coin\') ,id = resource_id)\n resource_price = resource_list[0].getObject().getBasePrice()\n - listbox_line[\'resource_translated_title\'] = resource_list[0].getObject().getTranslatedTitle()\n -\n + line[\'resource_translated_title\'] = resource_list[0].getObject().getTranslatedTitle()\n + # get the number of lines to add\n + lines_to_add = line[\'number_line_to_add\']\n + line[\'number_line_to_add\'] = 0\n + # remove the key\n + del line[\'listbox_key\']\n + # create new line\n + for num in xrange(lines_to_add):\n + # make sure we don\'t have too many lines\n + if line_counter_dict[resource_id] <= max_lines:\n + line_counter_dict[resource_id] = line_counter_dict[resource_id] + 1\n + new_line = line.copy()\n + # set default quantity to 0\n + for column_nb in xrange(1, len(column_base_list) + 1):\n + new_line[\'column%s\' %(str(column_nb))] = 0\n + new_line[\'price\'] = 0\n + new_line_list.append(new_line)\n + # compute the price for existing line\n quantity = 0\n - counter = 1\n - for y in column_base_list:\n - cell_quantity = int(listbox_line[\'column\'+str(counter)] or 0)\n - quantity = quantity + cell_quantity\n - counter += 1\n - listbox_line[\'price\'] = int(quantity * resource_price)\n -# raise \'KHA\',repr(( x ))\n -\n - total_price += int(quantity * resource_price)\n + for column_nb in xrange(1, len(column_base_list) + 1):\n + quantity += line[\'column%s\' %(str(column_nb))]\n + line[\'price\'] = resource_price * quantity\n + total_price += line[\'price\']\n + # add current line\n + new_line_list.append(line)\n \n - new_line_list.append(listbox_line)\n listbox = new_line_list\n -\n -# raise \'KHA\',repr(( listbox ))\n -\n context.Base_updateDialogForm( listbox=listbox\n , calculated_price=total_price\n , empty_line_number=0)\n @@ -509,24 +484,18 @@ else :\n <string>columne_base_list</string> <string>max_lines</string> <string>column_base_list</string> + <string>line_counter_dict</string> + <string>line</string> + <string>resource_key</string> <string>new_line_list</string> - <string>preview_listbox_line</string> - <string>number_line_to_add</string> - <string>number_same_line</string> - <string>listbox_line_count</string> - <string>listbox_line_count_plus_1</string> - <string>last_row</string> + <string>resource_id</string> + <string>resource_list</string> + <string>lines_to_add</string> <string>xrange</string> - <string>i_listbox</string> - <string>listbox_line</string> - <string>True</string> - <string>w</string> + <string>num</string> + <string>new_line</string> + <string>column_nb</string> <string>str</string> - <string>z</string> - <string>resource_list</string> - <string>y</string> - <string>int</string> - <string>cell_quantity</string> </tuple> </value> </item> diff --git a/bt5/erp5_banking_core/bt/change_log b/bt5/erp5_banking_core/bt/change_log index 0a0f4dd1cb..2cad88e2be 100644 --- a/bt5/erp5_banking_core/bt/change_log +++ b/bt5/erp5_banking_core/bt/change_log @@ -1,3 +1,6 @@ +2006-06-02 aurel +* finish the rewrite of fast input script + 2006-05-18 aurel * update Delivery_getVaultItemList to take new categories into account and fix Baobab_getResourceVintageList -- 2.30.9