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

[17.0][MIG] product_variant_configurator: Migration to 17.0 #350

Closed

Conversation

BT-dmoreno
Copy link

No description provided.

zakiuu and others added 30 commits April 24, 2024 15:16
This module has been ported from the odoomrp repo.
the module name in the odoo mrp repo was product_variants_no_automatic_creation
the following improvement where done while porting this module:

* Improve the readme file with a technical description on how the module should
  be used with other modules.
* Add attribute col=4 to group parent for a better desplay of product category
  for view.
* Remove unnecessary @api.multi before compute or onchange methods.
* Move product.configurator.attribute model to the new
  product_configurator_attribute.py file.
* Add unit test for product.configurator.attribute model that includes test for
  _compute_possible_value_ids and _compute_price_extra methods.
* Rename XML files in views and security folder as per OCA guidelines.
* Improve test coverage for product_configurator.
* Add unit test for purchase.order and purchase.order.line models.
* Separate the purchase.order and purchase.order.line models code into two files.
* Rename XML files as per OCA guidelines.
* product_variant_configurator: set product_tmpl_id in
  onchange_product_id_product_configurator_old_api and
  onchange_product_id_product_configurator methods for product.configurator model.
* Add unit test for onchange_product_tmpl_id and onchange_product_attribute_ids.
…doomrp repo. the following improvements were done while porting this module:

* Adapt files as per OCA guidelines.
* Add unit test
What helps is setting the many2many_tags which seems to have an
influence even though the field is invisible. Without this you sometimes
get a warning asking if you want to discard the last change.
Setting the computed field readonly is also good practice.

[IMP] new api style in onchange for updating attributes list
[IMP] better to avoid overrides of onchange method (OCA#2)
[REF] refactoring of the onchanges

This should be easier to understand and cover all cases of
changing product template and product in any order, so you
always get a consistent list of attributes.

[FIX] fix tests in purchase_product_variant_configurator

[FIX] avoid systematic warning when creating new product templates
because I don't know how to emulate a true onchange that
populates _origin
… are for sale only

plus, fix the visibility rule of the button,
to show the button if there are attributes on the product
(otherwise it would stay hidden until the first 2 variants
have been created)

[FIX] more robust configurator onchanges

[FIX] return values for onchange_product_attribute_ids
…vepoint to discard created product variant in case of exception
* Issue with cache invalidation on create
* remove unused _create_variant_from_vals
* hide price_extra not applicable to purchase for now
* remove import on removed procurement_order.py file
* Fix tests in purchase_product_variant_configurator
* Fix tests in product_variant_configurator
…elete' attribute on the field owner_id declared as Integer is required since this field is declared as inverse of the field product_attribute_ids of the abstract model product.configurator
…f.attribute_line_ids/not tmpl.attribute_line_ids
With this, you can decide at product level which attributes are required
to be filled. Default is true for keeping the same logic with previous
version.
Updated by Update PO files to match POT (msgmerge) hook in Weblate.
mymage and others added 23 commits April 24, 2024 15:16
Currently translated at 41.5% (44 of 106 strings)

Translation: product-variant-16.0/product-variant-16.0-product_variant_configurator
Translate-URL: https://translation.odoo-community.org/projects/product-variant-16-0/product-variant-16-0-product_variant_configurator/it/
Currently translated at 100.0% (106 of 106 strings)

Translation: product-variant-16.0/product-variant-16.0-product_variant_configurator
Translate-URL: https://translation.odoo-community.org/projects/product-variant-16-0/product-variant-16-0-product_variant_configurator/it/
This fix solves a recursion problem caused when the groupby refers to a
field of a many2one model, and that model also has the same field name.
In this example, the stock.valuation.layer.tree view contains a groupby
product_id, and the product.product model already has a product_id field,
relating to the same model. Without this code we would reach a recursion error
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: product-variant-16.0/product-variant-16.0-product_variant_configurator
Translate-URL: https://translation.odoo-community.org/projects/product-variant-16-0/product-variant-16-0-product_variant_configurator/
Currently translated at 100.0% (107 of 107 strings)

Translation: product-variant-16.0/product-variant-16.0-product_variant_configurator
Translate-URL: https://translation.odoo-community.org/projects/product-variant-16-0/product-variant-16-0-product_variant_configurator/es/
Currently translated at 100.0% (107 of 107 strings)

Translation: product-variant-16.0/product-variant-16.0-product_variant_configurator
Translate-URL: https://translation.odoo-community.org/projects/product-variant-16-0/product-variant-16-0-product_variant_configurator/it/
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: product-variant-16.0/product-variant-16.0-product_variant_configurator
Translate-URL: https://translation.odoo-community.org/projects/product-variant-16-0/product-variant-16-0-product_variant_configurator/
Currently translated at 100.0% (106 of 106 strings)

Translation: product-variant-16.0/product-variant-16.0-product_variant_configurator
Translate-URL: https://translation.odoo-community.org/projects/product-variant-16-0/product-variant-16-0-product_variant_configurator/es/
Currently translated at 100.0% (106 of 106 strings)

Translation: product-variant-16.0/product-variant-16.0-product_variant_configurator
Translate-URL: https://translation.odoo-community.org/projects/product-variant-16-0/product-variant-16-0-product_variant_configurator/it/
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: product-variant-16.0/product-variant-16.0-product_variant_configurator
Translate-URL: https://translation.odoo-community.org/projects/product-variant-16-0/product-variant-16-0-product_variant_configurator/
Currently translated at 100.0% (107 of 107 strings)

Translation: product-variant-16.0/product-variant-16.0-product_variant_configurator
Translate-URL: https://translation.odoo-community.org/projects/product-variant-16-0/product-variant-16-0-product_variant_configurator/it/
This commit also update arguments passed to method _compute_price_rule
of price list model.
@HaraldPanten
Copy link

Hi @BT-dmoreno Will you continue with this PR?

THX

@pedrobaeza
Copy link
Member

To include #357

@BT-dmoreno
Copy link
Author

@HaraldPanten yes, I think I'm close to finish it. Tomorrow probably will have some time and hopefully I'm done. I need to squash my commits and make sure all tests are passed.

@HaraldPanten
Copy link

@HaraldPanten yes, I think I'm close to finish it. Tomorrow probably will have some time and hopefully I'm done. I need to squash my commits and make sure all tests are passed.

Nice! 👍

@HaraldPanten
Copy link

Superseded by #358

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.