Odoo Mindscape. Understand Odoo faster. Explore modules, fields, dependencies and version differences in one place instead of digging through the source code.

Module: Recurring - Contracts Management

Entity: contract.template.line

Compute Method: _compute_price_unit

Inputs Method Outputs
for line in self:
            if line.automatic_price and line.product_id:
                pricelist = (
                    line.contract_id.pricelist_id
                    or line.contract_id.partner_id.with_company(
                        line.contract_id.company_id
                    ).property_product_pricelist
                )
                qty = line.env.context.get("contract_line_qty", line.quantity)
                product = line.product_id.with_context(
                    quantity=qty,
                    pricelist=pricelist.id,
                    partner=line.contract_id.partner_id.id,
                    uom=line.uom_id.id,
                    date=line.env.context.get(
                        "old_date", fields.Date.context_today(line)
                    ),
                )
                line.price_unit = pricelist._get_product_price(product, quantity=qty)
            else:
                line.price_unit = line.specific_price

Back to entity