[IMP] account_advanced_protection_features: control bank statement lines deletion with allow_bank_statement_deletion journal param

This commit is contained in:
2025-08-29 10:36:33 +02:00
parent 2bef8b4e0c
commit e437d7fdf2
3 changed files with 58 additions and 13 deletions

View File

@@ -8,6 +8,21 @@ class AccountBankStatement(models.Model):
for statement in self:
if not statement.journal_id.allow_bank_statement_deletion:
raise UserError(
_(f"The deletion of bank statements is not allowed for the journal {statement.journal_id.display_name}.")
_("The deletion of bank statements is not allowed for the journal %s.") % statement.journal_id.display_name
)
# we delete all the statement lines before deleting the statement itself
for line in statement.line_ids:
line.unlink()
return super(AccountBankStatement, self).unlink()
class AccountBankStatementLine(models.Model):
_inherit = "account.bank.statement.line"
def unlink(self):
for line in self:
if not line.journal_id.allow_bank_statement_deletion:
raise UserError(
_("The deletion of bank statement lines is not allowed for the journal %s.") % line.journal_id.display_name
)
return super(AccountBankStatementLine, self).unlink()