diff --git a/l10n_it_ricevute_bancarie/README.rst b/l10n_it_ricevute_bancarie/README.rst index 8322221610eb..4e7c159085c4 100644 --- a/l10n_it_ricevute_bancarie/README.rst +++ b/l10n_it_ricevute_bancarie/README.rst @@ -7,7 +7,7 @@ ITA - Ricevute bancarie !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:100f1b7d1eb019a23cf3734dd6851726c6bb228961c00615be14977e5c7d470f + !! source digest: sha256:8e70b2caa85bc9320745588e56ff493847d8f8f11304c626249a3544e36cf536 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png @@ -108,10 +108,14 @@ esposizione, cioè l'importo dovuto dal cliente a fronte dell'emissione della RiBa non ancora scaduta. In maniera predefinita la data delle registrazioni dei pagamenti viene -impostata con la data di scadenza della RiBa, ma è possibile modificarla -successivamente a pagamento effettivamente avvenuto selezionando la -registrazione dalla vista ed elenco ed eseguendo l'azione "Imposta data -di pagamento RiBa". +impostata con la data di scadenza della RiBa, ma è possibile modificarla in due momenti: +- durante la creazione del pagamento, + cliccando su "Segna righe come pagate" o su "Segna coma pagata" + o usando l'azione "Registrazione Riba a data di scadenza" + e indicando una data nel campo `Data pagamento`, +- successivamente a pagamento effettivamente avvenuto selezionando la selezionando la + registrazione dalla vista ed elenco ed eseguendo l'azione "Imposta data + di pagamento RiBa". Known issues / Roadmap ====================== diff --git a/l10n_it_ricevute_bancarie/__manifest__.py b/l10n_it_ricevute_bancarie/__manifest__.py index a0974bdad241..7ae2aaf3434a 100644 --- a/l10n_it_ricevute_bancarie/__manifest__.py +++ b/l10n_it_ricevute_bancarie/__manifest__.py @@ -43,6 +43,7 @@ "views/riba_detail_view.xml", "views/wizard_presentation.xml", "views/wizard_due_date_settlement.xml", + "wizard/wizard_riba_multiple_payment_views.xml", ], "demo": ["demo/riba_demo.xml"], "installable": True, diff --git a/l10n_it_ricevute_bancarie/models/riba.py b/l10n_it_ricevute_bancarie/models/riba.py index 20c6df79a8a7..c29767be5508 100644 --- a/l10n_it_ricevute_bancarie/models/riba.py +++ b/l10n_it_ricevute_bancarie/models/riba.py @@ -95,7 +95,16 @@ def _compute_total_amount(self): ) date_accepted = fields.Date("Acceptance Date") date_accreditation = fields.Date("Credit Date") - date_paid = fields.Date("Payment Date", readonly=True) + date_paid = fields.Date( + string="Payment Date", + help="Default date for payments.", + readonly=True, + states={ + "credited": [ + ("readonly", False), + ], + }, + ) date_unsolved = fields.Date("Past Due Date", readonly=True) company_id = fields.Many2one( "res.company", @@ -187,10 +196,18 @@ def riba_cancel(self): distinta.state = "cancel" def settle_all_line(self): - for riba_list in self: - for line in riba_list.line_ids: - if line.state == "accredited": - line.riba_line_settlement() + payment_wizard_action = ( + self.env["riba.payment.multiple"] + .with_context( + active_ids=self.ids, + ) + .get_formview_action() + ) + payment_wizard_action.update( + name=_("Settle lines"), + target="new", + ) + return payment_wizard_action @api.onchange("date_accepted", "date_accreditation") def _onchange_date(self): @@ -475,7 +492,26 @@ def confirm(self): if not line.distinta_id.date_accepted: line.distinta_id.date_accepted = fields.Date.context_today(self) - def riba_line_settlement(self): + def button_settle(self): + payment_wizard_action = ( + self.env["riba.payment.multiple"] + .with_context( + active_ids=self.slip_id.ids, + default_riba_line_ids=self.ids, + ) + .get_formview_action() + ) + payment_wizard_action.update( + name=_("Settle line"), + target="new", + ) + return payment_wizard_action + + def riba_line_settlement(self, date=None): + """Create payment the acceptance move of each line in `self`. + + :param date: The created payment's date. + """ for riba_line in self: if not riba_line.distinta_id.config_id.settlement_journal_id: raise UserError(_("Please define a Settlement Journal.")) @@ -498,12 +534,13 @@ def riba_line_settlement(self): riba_line.distinta_id.name, riba_line.partner_id.name, ) + move_date = date or riba_line.due_date.strftime("%Y-%m-%d") settlement_move = move_model.create( { "journal_id": ( riba_line.distinta_id.config_id.settlement_journal_id.id ), - "date": riba_line.due_date.strftime("%Y-%m-%d"), + "date": move_date, "ref": move_ref, } ) diff --git a/l10n_it_ricevute_bancarie/readme/USAGE.rst b/l10n_it_ricevute_bancarie/readme/USAGE.rst index 2f49be5d4780..ae6d04a5a880 100644 --- a/l10n_it_ricevute_bancarie/readme/USAGE.rst +++ b/l10n_it_ricevute_bancarie/readme/USAGE.rst @@ -27,7 +27,11 @@ esposizione, cioè l'importo dovuto dal cliente a fronte dell'emissione della RiBa non ancora scaduta. In maniera predefinita la data delle registrazioni dei pagamenti viene -impostata con la data di scadenza della RiBa, ma è possibile modificarla -successivamente a pagamento effettivamente avvenuto selezionando la -registrazione dalla vista ed elenco ed eseguendo l'azione "Imposta data -di pagamento RiBa". +impostata con la data di scadenza della RiBa, ma è possibile modificarla in due momenti: +- durante la creazione del pagamento, + cliccando su "Segna righe come pagate" o su "Segna coma pagata" + o usando l'azione "Registrazione Riba a data di scadenza" + e indicando una data nel campo `Data pagamento`, +- successivamente a pagamento effettivamente avvenuto selezionando la selezionando la + registrazione dalla vista ed elenco ed eseguendo l'azione "Imposta data + di pagamento RiBa". diff --git a/l10n_it_ricevute_bancarie/security/ir.model.access.csv b/l10n_it_ricevute_bancarie/security/ir.model.access.csv index 1541f9c851ff..ef68d1d86c78 100644 --- a/l10n_it_ricevute_bancarie/security/ir.model.access.csv +++ b/l10n_it_ricevute_bancarie/security/ir.model.access.csv @@ -20,3 +20,4 @@ access_riba_file_export,riba_file_export,model_riba_file_export,account.group_ac access_presentation_riba_issue,access_presentation_riba_issue,model_presentation_riba_issue,account.group_account_invoice,1,1,1,1 access_riba_due_date_settlement,riba_due_date_settlement,model_riba_due_date_settlement,account.group_account_invoice,1,1,1,1 access_riba_payment_date,riba_payment_date,model_riba_payment_date,account.group_account_invoice,1,1,1,1 +access_riba_multiple_payment_date,Full access to Pay multiple RiBa lines,model_riba_payment_multiple,account.group_account_invoice,1,1,1,1 diff --git a/l10n_it_ricevute_bancarie/static/description/index.html b/l10n_it_ricevute_bancarie/static/description/index.html index 8949ec3ba7fd..d7d543fb2e45 100644 --- a/l10n_it_ricevute_bancarie/static/description/index.html +++ b/l10n_it_ricevute_bancarie/static/description/index.html @@ -448,9 +448,16 @@
In maniera predefinita la data delle registrazioni dei pagamenti viene impostata con la data di scadenza della RiBa, ma è possibile modificarla -successivamente a pagamento effettivamente avvenuto selezionando la -registrazione dalla vista ed elenco ed eseguendo l’azione “Imposta data -di pagamento RiBa”.
+in due momenti: +