Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[REF] x_product_pack: pricing refactor #173

Open
wants to merge 6 commits into
base: 17.0
Choose a base branch
from

Commits on Oct 8, 2024

  1. [REF] product_pack: Price computation refactor

    This commit improves the way the price of the packs is computed to
    ensure it aligns with the behavior of normal products in Odoo.
    
    Key improvements include:
    
    1. Refactor Pack Price Computation:
    
    Removed the inheritance from price_compute in favor of a clearer and
    more comprehensible _get_product_price method within the Pricelist class
    
    2. 'get_price' -> '_get_pack_line_price':
    
    The get_price method on pack lines has been improved and renamed to
    _get_pack_line_price. It is now capable of returning the price of the
     pack line for a specified pricelist.
    
    3. List Price Calculation:
    
    Enhanced the _compute_product_lst_price method to return the list price
    of a pack. It now leverages a new method analogous to price_compute,
    named _pack_line_price_compute, which can determine the prices of pack
    components, including nested packs.
    bruno-zanotti committed Oct 8, 2024
    Configuration menu
    Copy the full SHA
    04229c6 View commit details
    Browse the repository at this point in the history
  2. [REF] product_pack: exception packs totalized and non-detailed

    Packs totalized and non-detailed ignores the product pack list price
    when computing the price.
    
    This commit is a hack to keep the behavior of the modules before
    this refactor.
    
    More information in the issue OCA#169.
    bruno-zanotti committed Oct 8, 2024
    Configuration menu
    Copy the full SHA
    084670c View commit details
    Browse the repository at this point in the history
  3. [REF] sale_product_pack: Price computation refactor

    Adapt the module sale_product_pack to the price refactor
    bruno-zanotti committed Oct 8, 2024
    Configuration menu
    Copy the full SHA
    d799cf1 View commit details
    Browse the repository at this point in the history
  4. [FIX] sale_product_pack: Update Price Action

    Resolves an issue in the "Update Prices" action for packs.
    When update the pricelist, ignore all the "cero" lines, this
    is the components of packs "Detailed: Totalized in main product" or
    "Detailed - Ignored".
    
    We only want to update component lines if the parent pack is
    "Detailed - Detailed per component".
    
    Also keep in the so line the component discount settled in the parent
    pack settings.
    
    Steps to replicate the bug:
    1. In a Sale Order add a product "Detailed - Detailed per component"
    2. Save to see all the pack components
    3. Change the pricelist to one with discount
    4. Call the button action "Update Prices".
    
    Before this commit The price of the parent product gets updated,
    but the component prices remain unchanged. Even if the same product is
    added again (while retaining the first instance), the component prices
    show discrepancies.
    
    Now, when a pricelist with discounts is applied, all line items in the
    Sale Order including both parent and component products are updated
    accordingly.
    bruno-zanotti committed Oct 8, 2024
    Configuration menu
    Copy the full SHA
    cd6fb65 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    a8c2bab View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    3636017 View commit details
    Browse the repository at this point in the history