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] sale_product_pack: Migration to 17.0 #156

Merged
merged 67 commits into from
May 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
e1c3c73
[ADD] sale_product_pack: new module
ernestotejeda Sep 19, 2019
8092a09
[UPD] README.rst + [ADD] icon.png
OCA-git-bot Oct 22, 2019
b7d79d5
[UPD] Update sale_product_pack.pot
oca-travis Oct 22, 2019
a0f45fb
[IMP] sale_product_pack: add a Roadmap section to the readme
ernestotejeda Oct 22, 2019
d634b9b
[FIX] sale_product_pack: Unlink pack children lines before
pedrobaeza Dec 4, 2019
27f5071
[UPD] Update sale_product_pack.pot
oca-travis Dec 4, 2019
d6e784d
Update translation files
oca-transbot Dec 4, 2019
5d4536a
Added translation using Weblate (Portuguese)
pedrocs-exo Dec 12, 2019
f96628e
[FIX] sale_product_pack: Set price 0 for non detailed components in s…
pedrobaeza Dec 17, 2019
bce809b
[UPD] Update sale_product_pack.pot
oca-travis Dec 17, 2019
4f13a57
Update translation files
oca-transbot Dec 17, 2019
84358af
Added translation using Weblate (Catalan + Spanish)
CarlesAntoli Dec 27, 2019
3eafbf4
Allow to update product_uom_qty after sale is confirmed
hparfr May 12, 2020
0b3f75c
Administrative commits
oca-travis May 12, 2020
3276758
Add pack_modifiable in the sale order line.
hparfr Mar 18, 2020
12c8c61
[UPD] Update sale_product_pack.pot
oca-travis May 26, 2020
b06512d
Administrative commits
OCA-git-bot May 26, 2020
70edba9
Added translation using Weblate (French)
ypapouin May 28, 2020
02bf6bd
[IMP] sale_product_pack: black, isort, prettier
jjscarafia Jun 7, 2020
41c97a8
[MIG] sale_product_pack: Migration to 13.0
jjscarafia Jun 7, 2020
d40a5f5
[MIG] sale_product_pack: Migration to 13.0 (fix order line deleting)
Jul 8, 2020
3d14ee3
[UPD] Update sale_product_pack.pot
oca-travis Jul 13, 2020
f16e01f
[UPD] README.rst
OCA-git-bot Jul 13, 2020
55c9bdb
Update translation files
oca-transbot Aug 16, 2020
58c448c
[FIX] sale_product_pack: Missing write result
ypapouin Oct 9, 2020
002e349
Added translation using Weblate (Dutch)
bosd Dec 13, 2020
8589f31
Translated using Weblate (Dutch)
bosd Dec 13, 2020
f2d9a5a
[ADD] website_sale_product_pack: New module
chienandalu Jun 18, 2021
3849612
[FIX] sale_product_pack: Add pricelist to the sale order to avoid inc…
victoralmau Oct 20, 2021
546c4e9
sale_product_pack 13.0.1.0.2
OCA-git-bot Oct 21, 2021
876e68f
[IMP] sale_product_pack: black, isort, prettier
dreispt Nov 15, 2021
7d153c8
[MIG] sale_product_pack: Migration to 14.0
dreispt Nov 15, 2021
cb38cbe
[UPD] Update sale_product_pack.pot
oca-travis Jan 11, 2022
e4896ed
[UPD] README.rst
OCA-git-bot Jan 11, 2022
0e9bafd
[UPD] Update sale_product_pack.pot
oca-travis Jan 14, 2022
2142ada
Update translation files
oca-transbot Jan 14, 2022
b03d0e1
Translated using Weblate (Catalan)
Noel000 Feb 28, 2022
453398f
[14.0][IMP] sale_product_pack: Use multi create for pack lines
rousseldenis Mar 8, 2022
630f051
sale_product_pack 14.0.1.0.1
OCA-git-bot Mar 9, 2022
881941a
[14.0][IMP] sale_product_pack: add field in order to get 'do not expa…
rousseldenis Mar 16, 2022
283d7b5
[14.0][IMP] sale_product_pack: Use field instead of searches if we ha…
rousseldenis Mar 16, 2022
fcdc7ac
[14.0][IMP] sale_product_pack: Set sequence value in good function
rousseldenis Mar 16, 2022
e165788
[14.0][IMP] sale_product_pack: Add test for multi lines creation
rousseldenis Mar 16, 2022
775ec3d
[UPD] Update sale_product_pack.pot
Jun 28, 2022
fc4e8db
sale_product_pack 14.0.1.1.0
OCA-git-bot Jun 28, 2022
aac4dff
Update translation files
oca-transbot Jun 28, 2022
1ef411e
[IMP] Improve tests for sale_product_pack
cvinh Jul 5, 2022
02253c4
sale_product_pack 14.0.1.1.1
OCA-git-bot Jul 8, 2022
906c271
[MIG] sale_product_pack: Migration to 15.0
nicomacr Jun 2, 2022
22c462d
[UPD] Update sale_product_pack.pot
Nov 30, 2022
83b933a
[UPD] README.rst
OCA-git-bot Nov 30, 2022
b0de306
[MIG] sale_product_pack: Migration to 16.0
FrancoMaxime Feb 22, 2023
a2517dd
[FIX] sale_product_pack - Recomputes correctly the price of product_p…
FrancoMaxime Mar 2, 2023
af1a783
[FIX] sale_product_pack: fix error when creating Down Payment
augusto-weiss Mar 28, 2023
d068f8d
[FIX] sale_product_pack: for compatibility with sale_product_pack_ass…
augusto-weiss Apr 6, 2023
e01b8f9
[UPD] Update sale_product_pack.pot
Jun 5, 2023
e6635ab
[UPD] README.rst
OCA-git-bot Jun 5, 2023
ab726df
Update translation files
weblate Jun 5, 2023
a236690
[UPD] README.rst
OCA-git-bot Sep 3, 2023
4108911
Translated using Weblate (Spanish)
Ivorra78 Aug 23, 2023
ad07bd3
Added translation using Weblate (Italian)
mymage Nov 8, 2023
1f6f976
Translated using Weblate (Italian)
mymage Nov 9, 2023
6f5a9e3
Translated using Weblate (Italian)
mymage Nov 10, 2023
73670db
[IMP] sale_product_pack: add sale demo for each type of pack
ALopez-Adhoc Oct 30, 2023
aa2aab9
[BOT] post-merge updates
OCA-git-bot Nov 23, 2023
71a6a14
[IMP] sale_product_pack: pre-commit execution
bruno-zanotti Nov 30, 2023
34df5c0
[MIG] sale_product_pack: Migration to 17.0
bruno-zanotti Nov 30, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
135 changes: 135 additions & 0 deletions sale_product_pack/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
=================
Sale Product Pack
=================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:ef6b1970eeb7ec721ff9dc1a25df8405f64d7b864febeeb4146a4aa13d0855f4
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fproduct--pack-lightgray.png?logo=github
:target: https://github.com/OCA/product-pack/tree/17.0/sale_product_pack
:alt: OCA/product-pack
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/product-pack-17-0/product-pack-17-0-sale_product_pack
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/product-pack&target_branch=17.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module adds *Product Pack* functionality to sales orders. You can
choose a *Pack* in *sales order lines* and see different behaviors
depending on "Pack type" and "Pack component price" fields options
selected on this *Pack*.

**Table of contents**

.. contents::
:local:

Usage
=====

To use this module, you need to:

1. Go to *Sales > Products > Products*, create or select a product and
check *Is Pack?*
2. Set "Product type" and "Pack component price" fields in the *Pack*
page.
3. Add the products to be included in it.
4. Go to *Sales > Orders > Quotations* and create a Quotation.
5. Add a product that has checked "Is Pack?"
6. Save data and you will see an specific behavior depending on "Pack
type" and "Pack component price" fields options selected on this
*Pack*. For example, for products that has *Detailed* option selected
in "Pack type" field you will see one *sale order line* per component
that belong to this Pack. (See *Product pack* module README.rst file)

Known issues / Roadmap
======================

- If this module is installed and stock module is installed too, when
you create a Sale order for a *Non detailed* Pack and you confirm it,
a *Stock picking* is not created with the storable components of that
Pack. So, add a new module called *sale_stock_product_pack* that adds
that feature.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/product-pack/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/product-pack/issues/new?body=module:%20sale_product_pack%0Aversion:%2017.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
-------

* NaN·tic
* ADHOC SA
* Tecnativa

Contributors
------------

- `Tecnativa <https://www.tecnativa.com>`__:

- Ernesto Tejeda
- Pedro M. Baeza

- `Akretion <https://akretion.com>`__:

- Raphaël Reverdy

- `Open Source Integrators <https://opensourceintegrators.eu>`__:

- Daniel Reis <dreis@opensourceintegrators.com>

- `Acsone <https://www.acsone.eu/>`__:

- Maxime Franco

- `ADHOC SA <https://www.adhoc.com.ar>`__:

- Bruno Zanotti

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

.. |maintainer-ernestotejeda| image:: https://github.com/ernestotejeda.png?size=40px
:target: https://github.com/ernestotejeda
:alt: ernestotejeda

Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-ernestotejeda|

This module is part of the `OCA/product-pack <https://github.com/OCA/product-pack/tree/17.0/sale_product_pack>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
2 changes: 2 additions & 0 deletions sale_product_pack/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import models
19 changes: 19 additions & 0 deletions sale_product_pack/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Copyright 2019 NaN (http://www.nan-tic.com) - Àngel Àlvarez
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
{
"name": "Sale Product Pack",
"version": "17.0.1.0.0",
"category": "Sales",
"summary": "This module allows you to sell product packs",
"website": "https://github.com/OCA/product-pack",
"author": "NaN·tic, ADHOC SA, Tecnativa, Odoo Community Association (OCA)",
"maintainers": ["ernestotejeda"],
"license": "AGPL-3",
"depends": ["product_pack", "sale"],
"data": ["security/ir.model.access.csv", "views/product_pack_line_views.xml"],
"demo": [
"demo/product_pack_line_demo.xml",
"demo/sale_pack_demo.xml",
],
"installable": True,
}
23 changes: 23 additions & 0 deletions sale_product_pack/demo/product_pack_line_demo.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright 2019 Tecnativa - Ernesto Tejeda
License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -->
<odoo noupdate="1">
<record id="product_pack.pack_cpu_detailed_components_1" model="product.pack.line">
<field name="sale_discount" eval="10.0" />
</record>
<record id="product_pack.pack_cpu_detailed_components_3" model="product.pack.line">
<field name="sale_discount" eval="10.0" />
</record>
<record id="product_pack.pack_cpu_detailed_totalized_1" model="product.pack.line">
<field name="sale_discount" eval="10.0" />
</record>
<record id="product_pack.pack_cpu_detailed_totalized_3" model="product.pack.line">
<field name="sale_discount" eval="10.0" />
</record>
<record id="product_pack.pack_cpu_non_detailed_1" model="product.pack.line">
<field name="sale_discount" eval="10.0" />
</record>
<record id="product_pack.pack_cpu_non_detailed_3" model="product.pack.line">
<field name="sale_discount" eval="10.0" />
</record>
</odoo>
108 changes: 108 additions & 0 deletions sale_product_pack/demo/sale_pack_demo.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
<?xml version='1.0' encoding='utf-8' ?>
<odoo>
<!-- Sale order -->
<record id="portal_sale_order_3" model="sale.order">
<field name="partner_id" ref="base.partner_demo_portal" />
<field name="partner_invoice_id" ref="base.partner_demo_portal" />
<field name="partner_shipping_id" ref="base.partner_demo_portal" />
<field name="user_id" ref="base.user_admin" />
<field name="payment_term_id" ref="account.account_payment_term_30days" />
<field name="team_id" ref="sales_team.team_sales_department" />
<field
name="date_order"
eval="(DateTime.today() - relativedelta(months=1)).strftime('%Y-%m-%d %H:%M')"
/>
<field
name="message_partner_ids"
eval="[(4, ref('base.partner_demo_portal'))]"
/>
</record>

<!-- Sale order lines -->
<!-- Product pack: DETAILED - COMPONENTS -->
<record id="portal_sale_order_line_section_1" model="sale.order.line">
<field name="order_id" ref="portal_sale_order_3" />
<field name="name">Detailed Displayed Components Price</field>
<field name="display_type">line_section</field>
<field name="sequence">1</field>
</record>
<record id="portal_sale_order_line_6" model="sale.order.line">
<field name="order_id" ref="portal_sale_order_3" />
<field
name="product_id"
ref="product_pack.product_pack_cpu_detailed_components"
/>
<field name="sequence">2</field>
</record>
<!-- Product pack: DETAILED - TOTALIZED -->
<record id="portal_sale_order_line_section_2" model="sale.order.line">
<field name="order_id" ref="portal_sale_order_3" />
<field name="name">Detailed Totalized Components Price</field>
<field name="display_type">line_section</field>
<field name="sequence">3</field>
</record>
<record id="portal_sale_order_line_7" model="sale.order.line">
<field name="order_id" ref="portal_sale_order_3" />
<field
name="product_id"
ref="product_pack.product_pack_cpu_detailed_totalized"
/>
<field name="sequence">4</field>
</record>
<!-- Product pack: DETAILED - IGNORED -->
<record id="portal_sale_order_line_section_3" model="sale.order.line">
<field name="order_id" ref="portal_sale_order_3" />
<field name="name">Detailed Ignored Components Price</field>
<field name="display_type">line_section</field>
<field name="sequence">5</field>
</record>
<record id="portal_sale_order_line_8" model="sale.order.line">
<field name="order_id" ref="portal_sale_order_3" />
<field name="product_id" ref="product_pack.product_pack_cpu_detailed_ignored" />
<field name="sequence">6</field>
</record>
<!-- Product pack: NON DETAILED -->
<record id="portal_sale_order_line_section_4" model="sale.order.line">
<field name="order_id" ref="portal_sale_order_3" />
<field name="name">Not Detailed - Totalized Components Price</field>
<field name="display_type">line_section</field>
<field name="sequence">7</field>
</record>
<record id="portal_sale_order_line_9" model="sale.order.line">
<field name="order_id" ref="portal_sale_order_3" />
<field name="product_id" ref="product_pack.product_pack_cpu_non_detailed" />
<field name="sequence">8</field>
</record>
<!-- Components -->
<record id="portal_sale_order_line_section_5" model="sale.order.line">
<field name="order_id" ref="portal_sale_order_3" />
<field name="name">COMPONENTS</field>
<field name="display_type">line_section</field>
<field name="sequence">9</field>
</record>
<record id="portal_sale_order_line_components_1" model="sale.order.line">
<field name="order_id" ref="portal_sale_order_3" />
<field name="product_id" ref="product.product_product_20" />
<field name="sequence">10</field>
</record>

<record id="portal_sale_order_line_components_2" model="sale.order.line">
<field name="order_id" ref="portal_sale_order_3" />
<field name="product_id" ref="product.product_product_16" />
<field name="sequence">11</field>
</record>

<record id="portal_sale_order_components_3" model="sale.order.line">
<field name="order_id" ref="portal_sale_order_3" />
<field name="product_id" ref="product.product_product_24" />
<field name="sequence">12</field>
</record>

<function
model="sale.order"
name="action_confirm"
eval="[[
ref('portal_sale_order_3'),
]]"
/>
</odoo>
Loading
Loading