[REF] product_origin_char: simplify to template-based origin
- Move origin_text field from product.supplierinfo to product.template - Add related field in product.product for variant access - Remove dependency on product_main_seller - Update views to show field near category (editable) - Rewrite tests for new architecture - Update all documentation (README, readme/ fragments) - Bump version to 18.0.2.0.0
This commit is contained in:
parent
e2ced75ecd
commit
5efe57dc19
15 changed files with 180 additions and 402 deletions
|
|
@ -1,7 +1,6 @@
|
|||
# Copyright 2026 Criptomart
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
|
||||
from odoo import api
|
||||
from odoo import fields
|
||||
from odoo import models
|
||||
|
||||
|
|
@ -10,21 +9,6 @@ class ProductProduct(models.Model):
|
|||
_inherit = "product.product"
|
||||
|
||||
origin_text = fields.Char(
|
||||
string="Origin",
|
||||
compute="_compute_origin_text",
|
||||
store=False,
|
||||
help="Origin text from main vendor's supplierinfo",
|
||||
related="product_tmpl_id.origin_text",
|
||||
readonly=False,
|
||||
)
|
||||
|
||||
@api.depends("product_tmpl_id.main_seller_id", "seller_ids.origin_text")
|
||||
def _compute_origin_text(self):
|
||||
for product in self:
|
||||
if product.product_tmpl_id.main_seller_id:
|
||||
# Find the supplierinfo record for the main seller
|
||||
main_seller = product.product_tmpl_id.main_seller_id
|
||||
seller = product.seller_ids.filtered(
|
||||
lambda s, ms=main_seller: s.partner_id == ms
|
||||
)[:1]
|
||||
product.origin_text = seller.origin_text if seller else False
|
||||
else:
|
||||
product.origin_text = False
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue