diff --git a/ebill_paynet/messages/invoice-2013A-invocloud.xml b/ebill_paynet/messages/invoice-2013A-invocloud.xml index fecf085..4d278da 100644 --- a/ebill_paynet/messages/invoice-2013A-invocloud.xml +++ b/ebill_paynet/messages/invoice-2013A-invocloud.xml @@ -60,7 +60,7 @@ {{ bank.sanitized_acc_number }} {{ bank.acc_holder_name or bank.partner_id.name }} {# Is this the default for e-banking customers ? -#} - 209 + {{bank.bank_id.clearing}} diff --git a/ebill_paynet/models/account_invoice.py b/ebill_paynet/models/account_invoice.py index 9b4721b..616a91b 100644 --- a/ebill_paynet/models/account_invoice.py +++ b/ebill_paynet/models/account_invoice.py @@ -25,7 +25,7 @@ class AccountInvoice(models.Model): if self.transmit_method_id == paynet_method: contract = self.partner_id.get_active_contract(self.transmit_method_id) if contract: - self.invoice_partner_bank_id = ( + self.partner_bank_id = ( contract.paynet_service_id.partner_bank_id ) @@ -106,28 +106,26 @@ class AccountInvoice(models.Model): self.ensure_one() return [] - def log_invoice_accepted_by_system(self): + def log_invoice_accepted_by_system(self, provider = False): """ """ self.activity_feedback( ["ebill_paynet.mail_activity_dws_error"], feedback="It worked on a later try", ) - self.message_post(body=_("Invoice accepted by the Paynet system")) + self.message_post(body=_("Invoice accepted by the %s system" % (provider))) self.invoice_export_confirmed = True - def log_invoice_refused_by_system(self): + def log_invoice_refused_by_system(self, provider = False): """ """ activity_type = "ebill_paynet.mail_activity_dws_error" activity = self.activity_reschedule( [activity_type], date_deadline=fields.Date.today() ) - values = {} + if not activity: - message = self.env.ref("ebill_paynet.dws_reject_invoice")._render( - values=values - ) + message = _("The %s system rejected the eBill that was send." % (provider)) activity = self.activity_schedule( - activity_type, summary="Invoice rejected by Paynet", note=message + activity_type, summary="Invoice rejected by %s" % (provider), note=message ) # error_log = values.get("error_detail") # if not error_log: diff --git a/ebill_paynet/models/paynet_invoice_message.py b/ebill_paynet/models/paynet_invoice_message.py index 3aafb42..ceb248f 100644 --- a/ebill_paynet/models/paynet_invoice_message.py +++ b/ebill_paynet/models/paynet_invoice_message.py @@ -183,8 +183,9 @@ class PaynetInvoiceMessage(models.Model): def update_invoice_status(self): """Update the export status in the chatter.""" + provider = self.service_id.service_provider if self.service_id.service_provider else 'No provider chosen' for message in self: if message.state == "done": - message.invoice_id.log_invoice_accepted_by_system() + message.invoice_id.log_invoice_accepted_by_system(provider) elif message.state in ["reject", "error"]: - message.invoice_id.log_invoice_refused_by_system() + message.invoice_id.log_invoice_refused_by_system(provider) diff --git a/ebill_paynet/models/paynet_service.py b/ebill_paynet/models/paynet_service.py index b3326a3..ad2e358 100644 --- a/ebill_paynet/models/paynet_service.py +++ b/ebill_paynet/models/paynet_service.py @@ -53,7 +53,7 @@ class PaynetService(models.Model): readonly=True, ) active = fields.Boolean(default=True) - + #Adjustment to use InvoCloud service_provider = fields.Selection( selection=[("paynet", "Paynet"), ("invocloud", "InvoCloud")], @@ -61,7 +61,13 @@ class PaynetService(models.Model): default="paynet", help="There are some specific diference between provider", ) - + + @api.onchange('service_provider') + def _onchange_fill_provider_url(self): + if self.service_provider == 'invocloud': + self.url = 'https://api.invohub.ch/dws' + else: + self.url = 'https://dws.paynet.ch/DWS/DWS' @api.depends("use_test_service") def _compute_url(self):