Skip to content

Commit

Permalink
[IMP] chorus: show service code in invoice and sale.order view via a …
Browse files Browse the repository at this point in the history
…dedicated field

Remove service code from display_name of res.partner, because it has too many drawbacks (impact for those who use qweb reports, etc..)
  • Loading branch information
alexis-via committed Jan 30, 2025
1 parent 7ec9ac2 commit e7a4f01
Show file tree
Hide file tree
Showing 5 changed files with 47 additions and 15 deletions.
5 changes: 5 additions & 0 deletions l10n_fr_chorus_account/models/account_move.py
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,11 @@ class AccountMove(models.Model):
transmit_method_id = fields.Many2one(
readonly=True, states={"draft": [("readonly", False)]}
)
chorus_service_code = fields.Char(
related="partner_id.fr_chorus_service_id.code",
string="Chorus Service Code",
store=True,
)

@api.constrains("chorus_attachment_ids", "transmit_method_id")
def _check_chorus_attachments(self):
Expand Down
15 changes: 0 additions & 15 deletions l10n_fr_chorus_account/models/res_partner.py
Original file line number Diff line number Diff line change
Expand Up @@ -94,21 +94,6 @@ def check_fr_chorus_service(self):
}
)

def _get_name(self):
name = super()._get_name()
if (
name
and self.fr_chorus_service_id
and not self._context.get("hide_chorus_service")
):
if "\n" in name:
field_label = _("Chorus Service Code:")
name = f"{name}\n{field_label} {self.fr_chorus_service_id.code}"
else:
# We put it at the start, because it is cut if too long in M2O
name = f"(Chorus {self.fr_chorus_service_id.code}) {name})"
return name

def fr_chorus_api_structures_rechercher(self, api_params, session=None):
url_path = "structures/v1/rechercher"
payload = {
Expand Down
9 changes: 9 additions & 0 deletions l10n_fr_chorus_account/views/account_move.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,12 @@
<field name="model">account.move</field>
<field name="inherit_id" ref="account_invoice_transmit_method.view_move_form" />
<field name="arch" type="xml">
<field name="partner_id" position="after">
<field
name="chorus_service_code"
attrs="{'invisible': [('transmit_method_code', '!=', 'fr-chorus')]}"
/>
</field>
<button name="action_invoice_sent" position="after">
<button
name="%(account_invoice_chorus_send_action)d"
Expand Down Expand Up @@ -67,6 +73,9 @@
<field name="model">account.move</field>
<field name="inherit_id" ref="account.view_invoice_tree" />
<field name="arch" type="xml">
<field name="invoice_date" position="before">
<field name="chorus_service_code" optional="hide" />
</field>
<field name="payment_state" position="after">
<field name="chorus_status" optional="hide" />
</field>
Expand Down
5 changes: 5 additions & 0 deletions l10n_fr_chorus_sale/models/sale_order.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,11 @@ class SaleOrder(models.Model):
invoice_transmit_method_code = fields.Char(
related="partner_invoice_id.customer_invoice_transmit_method_id.code",
)
chorus_service_code = fields.Char(
related="partner_invoice_id.fr_chorus_service_id.code",
string="Chorus Service Code",
store=True,
)

def action_confirm(self):
"""Check validity of Chorus orders"""
Expand Down
28 changes: 28 additions & 0 deletions l10n_fr_chorus_sale/views/sale_order.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,38 @@
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_form" />
<field name="arch" type="xml">
<field name="partner_invoice_id" position="after">
<field
name="chorus_service_code"
attrs="{'invisible': [('invoice_transmit_method_code', '!=', 'fr-chorus')]}"
/>
</field>
<group name="sale_info" position="inside">
<field name="invoice_transmit_method_id" />
<field name="invoice_transmit_method_code" invisible="1" />
</group>
</field>
</record>
<record id="view_order_tree" model="ir.ui.view">
<field name="name">chorus.sale.order.tree</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_tree" />
<field name="arch" type="xml">
<field name="partner_id" position="after">
<field name="chorus_service_code" optional="hide" />
</field>
</field>
</record>
<record id="view_quotation_tree" model="ir.ui.view">
<field name="name">chorus.sale.order.quotation.tree</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_quotation_tree" />
<field name="arch" type="xml">
<field name="partner_id" position="after">
<field name="chorus_service_code" optional="hide" />
</field>
</field>
</record>


</odoo>

0 comments on commit e7a4f01

Please sign in to comment.