mirror of
				https://github.com/brain-tec/account_ebics.git
				synced 2025-11-04 07:00:35 +00:00 
			
		
		
		
	[IMP]account_ebics: file format filter on ebics_upload
Set file format fiter when creating the ebics.xfer wizard from a python method, e.g. 'EBICS UPLOAD' button on payment order.
This commit is contained in:
		@@ -1,9 +1,9 @@
 | 
				
			|||||||
# Copyright 2009-2022 Noviat.
 | 
					# Copyright 2009-2024 Noviat.
 | 
				
			||||||
# License LGPL-3 or later (http://www.gnu.org/licenses/lpgl).
 | 
					# License LGPL-3 or later (http://www.gnu.org/licenses/lpgl).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    'name': 'EBICS banking protocol',
 | 
					    'name': 'EBICS banking protocol',
 | 
				
			||||||
    'version': '13.0.1.3.3',
 | 
					    'version': '13.0.1.4.0',
 | 
				
			||||||
    'license': 'LGPL-3',
 | 
					    'license': 'LGPL-3',
 | 
				
			||||||
    'author': 'Noviat',
 | 
					    'author': 'Noviat',
 | 
				
			||||||
    'website': 'www.noviat.com',
 | 
					    'website': 'www.noviat.com',
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -53,7 +53,7 @@ class EbicsChangePassphrase(models.TransientModel):
 | 
				
			|||||||
            keyring.change_passphrase(self.new_pass)
 | 
					            keyring.change_passphrase(self.new_pass)
 | 
				
			||||||
        except ValueError as e:
 | 
					        except ValueError as e:
 | 
				
			||||||
            raise UserError(str(e))
 | 
					            raise UserError(str(e))
 | 
				
			||||||
        self.ebics_userid_id.ebics_passphrase = self.new_pass        
 | 
					        self.ebics_userid_id.ebics_passphrase = self.new_pass
 | 
				
			||||||
        self.note = "The EBICS Passphrase has been changed."
 | 
					        self.note = "The EBICS Passphrase has been changed."
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        module = __name__.split('addons.')[1].split('.')[0]
 | 
					        module = __name__.split('addons.')[1].split('.')[0]
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,13 +1,6 @@
 | 
				
			|||||||
# Copyright 2009-2022 Noviat.
 | 
					# Copyright 2009-2024 Noviat.
 | 
				
			||||||
# License LGPL-3 or later (http://www.gnu.org/licenses/lpgl).
 | 
					# License LGPL-3 or later (http://www.gnu.org/licenses/lpgl).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"""
 | 
					 | 
				
			||||||
import logging
 | 
					 | 
				
			||||||
logging.basicConfig(
 | 
					 | 
				
			||||||
    level=logging.DEBUG,
 | 
					 | 
				
			||||||
    format='[%(asctime)s] %(levelname)s - %(name)s: %(message)s')
 | 
					 | 
				
			||||||
"""
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
import base64
 | 
					import base64
 | 
				
			||||||
import logging
 | 
					import logging
 | 
				
			||||||
import os
 | 
					import os
 | 
				
			||||||
@@ -66,6 +59,9 @@ class EbicsXfer(models.TransientModel):
 | 
				
			|||||||
        string='EBICS File Format',
 | 
					        string='EBICS File Format',
 | 
				
			||||||
        help="Select EBICS File Format to upload/download."
 | 
					        help="Select EBICS File Format to upload/download."
 | 
				
			||||||
             "\nLeave blank to download all available files.")
 | 
					             "\nLeave blank to download all available files.")
 | 
				
			||||||
 | 
					    upload_format_ids = fields.Many2many(
 | 
				
			||||||
 | 
					        comodel_name="ebics.file.format",
 | 
				
			||||||
 | 
					        compute="_compute_upload_format_ids")
 | 
				
			||||||
    order_type = fields.Char(
 | 
					    order_type = fields.Char(
 | 
				
			||||||
        related='format_id.order_type',
 | 
					        related='format_id.order_type',
 | 
				
			||||||
        string='Order Type',
 | 
					        string='Order Type',
 | 
				
			||||||
@@ -91,6 +87,14 @@ class EbicsXfer(models.TransientModel):
 | 
				
			|||||||
        else:
 | 
					        else:
 | 
				
			||||||
            return cfg_mod
 | 
					            return cfg_mod
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @api.depends("ebics_config_id")
 | 
				
			||||||
 | 
					    def _compute_upload_format_ids(self):
 | 
				
			||||||
 | 
					        for rec in self:
 | 
				
			||||||
 | 
					            rec.upload_format_ids = False
 | 
				
			||||||
 | 
					            if not self.env.context.get("ebics_download"):
 | 
				
			||||||
 | 
					                rec.upload_format_ids = rec.ebics_config_id\
 | 
				
			||||||
 | 
					                    .ebics_file_format_ids.filtered(lambda r: r.type == "up")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @api.onchange('ebics_config_id')
 | 
					    @api.onchange('ebics_config_id')
 | 
				
			||||||
    def _onchange_ebics_config_id(self):
 | 
					    def _onchange_ebics_config_id(self):
 | 
				
			||||||
        ebics_userids = self.ebics_config_id.ebics_userid_ids
 | 
					        ebics_userids = self.ebics_config_id.ebics_userid_ids
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -45,7 +45,10 @@
 | 
				
			|||||||
          <field name="upload_data" filename="upload_fname" required="1"/>
 | 
					          <field name="upload_data" filename="upload_fname" required="1"/>
 | 
				
			||||||
          <field name="upload_fname" invisible="1"/>
 | 
					          <field name="upload_fname" invisible="1"/>
 | 
				
			||||||
          <field name="upload_fname_dummy"/>
 | 
					          <field name="upload_fname_dummy"/>
 | 
				
			||||||
          <field name="format_id" required="1"/>
 | 
					          <field name="upload_format_ids" invisible="1"/>
 | 
				
			||||||
 | 
					          <field name="format_id"
 | 
				
			||||||
 | 
					                 domain="[('id', 'in', upload_format_ids)]"
 | 
				
			||||||
 | 
					                 required="1"/>
 | 
				
			||||||
          <field name="order_type"/>
 | 
					          <field name="order_type"/>
 | 
				
			||||||
          <field name="test_mode" attrs="{'invisible': [('order_type', '!=', 'FUL')]}"/>
 | 
					          <field name="test_mode" attrs="{'invisible': [('order_type', '!=', 'FUL')]}"/>
 | 
				
			||||||
        </group>
 | 
					        </group>
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -41,7 +41,7 @@ class AccountPaymentOrder(models.Model):
 | 
				
			|||||||
                'default_upload_data': attach.datas,
 | 
					                'default_upload_data': attach.datas,
 | 
				
			||||||
                'default_upload_fname': attach.name,
 | 
					                'default_upload_fname': attach.name,
 | 
				
			||||||
                'origin': origin,
 | 
					                'origin': origin,
 | 
				
			||||||
                'force_comany': self.company_id.id,
 | 
					                'force_company': self.company_id.id,
 | 
				
			||||||
            })
 | 
					            })
 | 
				
			||||||
            ebics_xfer = self.env['ebics.xfer'].with_context(ctx).create({})
 | 
					            ebics_xfer = self.env['ebics.xfer'].with_context(ctx).create({})
 | 
				
			||||||
            ebics_xfer._onchange_ebics_config_id()
 | 
					            ebics_xfer._onchange_ebics_config_id()
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user