Merge branch '2bitKempf-2.0-fixed-patch-85198' into '2.0-fixed'

small fixes

See merge request flectra-community/l10n-switzerland-flectra!12
This commit is contained in:
Renzo Meister 2022-09-05 06:53:21 +00:00
commit 52043d8ea7
4 changed files with 19 additions and 14 deletions

View File

@ -60,7 +60,7 @@
<Acct-No>{{ bank.sanitized_acc_number }}</Acct-No> <Acct-No>{{ bank.sanitized_acc_number }}</Acct-No>
<Acct-Name>{{ bank.acc_holder_name or bank.partner_id.name }}</Acct-Name> <Acct-Name>{{ bank.acc_holder_name or bank.partner_id.name }}</Acct-Name>
{# Is this the default for e-banking customers ? -#} {# Is this the default for e-banking customers ? -#}
<BankId Type="BCNr-int" Country="CH">209</BankId> <BankId Type="BCNr-int" Country="CH">{{bank.bank_id.clearing}}</BankId>
</BANK-INFO> </BANK-INFO>
</BILLER> </BILLER>
<PAYER> <PAYER>

View File

@ -25,7 +25,7 @@ class AccountInvoice(models.Model):
if self.transmit_method_id == paynet_method: if self.transmit_method_id == paynet_method:
contract = self.partner_id.get_active_contract(self.transmit_method_id) contract = self.partner_id.get_active_contract(self.transmit_method_id)
if contract: if contract:
self.invoice_partner_bank_id = ( self.partner_bank_id = (
contract.paynet_service_id.partner_bank_id contract.paynet_service_id.partner_bank_id
) )
@ -106,28 +106,26 @@ class AccountInvoice(models.Model):
self.ensure_one() self.ensure_one()
return [] return []
def log_invoice_accepted_by_system(self): def log_invoice_accepted_by_system(self, provider = False):
""" """ """ """
self.activity_feedback( self.activity_feedback(
["ebill_paynet.mail_activity_dws_error"], ["ebill_paynet.mail_activity_dws_error"],
feedback="It worked on a later try", 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 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_type = "ebill_paynet.mail_activity_dws_error"
activity = self.activity_reschedule( activity = self.activity_reschedule(
[activity_type], date_deadline=fields.Date.today() [activity_type], date_deadline=fields.Date.today()
) )
values = {}
if not activity: if not activity:
message = self.env.ref("ebill_paynet.dws_reject_invoice")._render( message = _("The %s system rejected the eBill that was send." % (provider))
values=values
)
activity = self.activity_schedule( 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") # error_log = values.get("error_detail")
# if not error_log: # if not error_log:

View File

@ -183,8 +183,9 @@ class PaynetInvoiceMessage(models.Model):
def update_invoice_status(self): def update_invoice_status(self):
"""Update the export status in the chatter.""" """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: for message in self:
if message.state == "done": 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"]: elif message.state in ["reject", "error"]:
message.invoice_id.log_invoice_refused_by_system() message.invoice_id.log_invoice_refused_by_system(provider)

View File

@ -62,6 +62,12 @@ class PaynetService(models.Model):
help="There are some specific diference between provider", 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") @api.depends("use_test_service")
def _compute_url(self): def _compute_url(self):