Skip to content

Commit

Permalink
Merge PR OCA#1547 into 16.0
Browse files Browse the repository at this point in the history
Signed-off-by rafaelbn
  • Loading branch information
OCA-git-bot committed Apr 18, 2024
2 parents 0e1c7f4 + aa76154 commit 68298d4
Show file tree
Hide file tree
Showing 22 changed files with 880 additions and 9 deletions.
4 changes: 2 additions & 2 deletions .copier-answers.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Do NOT update manually; changes here will be overwritten by Copier
_commit: v1.20-2-g9c473ce
_commit: v1.20-4-g56d206b
_src_path: gh:oca/oca-addons-repo-template
ci: GitHub
convert_readme_fragments_to_markdown: false
Expand All @@ -17,7 +17,7 @@ org_name: Odoo Community Association (OCA)
org_slug: OCA
rebel_module_groups:
- stock_picking_to_batch_group_fields
- stock_customer_deposit
- stock_customer_deposit,stock_customer_deposit_elaboration
repo_description: 'TODO: add repo description.'
repo_name: stock-logistics-workflow
repo_slug: stock-logistics-workflow
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/stale.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Stale PRs and issues policy
uses: actions/stale@v4
uses: actions/stale@v9
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
# General settings.
Expand Down Expand Up @@ -48,7 +48,7 @@ jobs:
# * Issues that are pending more information
# * Except Issues marked as "no stale"
- name: Needs more information stale issues policy
uses: actions/stale@v4
uses: actions/stale@v9
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
ascending: true
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,17 +43,17 @@ jobs:
name: test with OCB
makepot: "true"
- container: ghcr.io/oca/oca-ci/py3.10-odoo16.0:latest
include: "stock_customer_deposit"
include: "stock_customer_deposit,stock_customer_deposit_elaboration"
name: test with Odoo
- container: ghcr.io/oca/oca-ci/py3.10-ocb16.0:latest
include: "stock_customer_deposit"
include: "stock_customer_deposit,stock_customer_deposit_elaboration"
name: test with OCB
makepot: "true"
- container: ghcr.io/oca/oca-ci/py3.10-odoo16.0:latest
exclude: "stock_picking_to_batch_group_fields,stock_customer_deposit"
exclude: "stock_picking_to_batch_group_fields,stock_customer_deposit,stock_customer_deposit_elaboration"
name: test with Odoo
- container: ghcr.io/oca/oca-ci/py3.10-ocb16.0:latest
exclude: "stock_picking_to_batch_group_fields,stock_customer_deposit"
exclude: "stock_picking_to_batch_group_fields,stock_customer_deposit,stock_customer_deposit_elaboration"
name: test with OCB
makepot: "true"
services:
Expand Down
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ exclude: |
# Ignore build and dist directories in addons
/build/|/dist/|
# Ignore test files in addons
/tests/samples/*|
/tests/samples/.*|
# You don't usually want a bot to modify your legal texts
(LICENSE.*|COPYING.*)
default_language_version:
Expand Down
6 changes: 6 additions & 0 deletions setup/stock_customer_deposit_elaboration/setup.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
import setuptools

setuptools.setup(
setup_requires=['setuptools-odoo'],
odoo_addon=True,
)
141 changes: 141 additions & 0 deletions stock_customer_deposit_elaboration/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
==================================
Stock Customer Deposit Elaboration
==================================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:97104d33f7c61338fcd10441cdb5b2b1a9dcb088c68eb1ced109fcb7a8327656
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Alpha-red.png
:target: https://odoo-community.org/page/development-status
:alt: Alpha
.. |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%2Fstock--logistics--workflow-lightgray.png?logo=github
:target: https://github.com/OCA/stock-logistics-workflow/tree/16.0/stock_customer_deposit_elaboration
:alt: OCA/stock-logistics-workflow
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/stock-logistics-workflow-16-0/stock-logistics-workflow-16-0-stock_customer_deposit_elaboration
: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/stock-logistics-workflow&target_branch=16.0
:alt: Try me on Runboat

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

This module extends the functionality of customer deposits and sale
elaborations and allows the correct route selection in the order line.

.. IMPORTANT::
This is an alpha version, the data model and design can change at any time without warning.
Only for development or testing purpose, do not use in production.
`More details on development status <https://odoo-community.org/page/development-status>`_

**Table of contents**

.. contents::
:local:

Use Cases / Context
===================

This module was developed because the modules **sale_elaboration** and
**stock_customer_deposit** create a compute method for the order line
*route_id* field.

As odoo does not have a compute core method for this field, it cannot be
inherited so if you install both modules, one method will be overwritten
and one behaviour will be lost.

Configuration
=============

To configure this module, you need to:

Customer Deposits:

1. Go to Inventory > Configuration > Settings.
2. Enable Consignment.
3. Enable Multi-Step Routes.
4. Go to Inventory > Configuration > Warehouses.
5. Select the warehouse where you want to manage customer deposits.
6. Activate use customer deposits.

Sale elaboration:

1. Go to *Sale > Configuration > Products > Sale Elaboration*.
2. Create a new record.
3. Set a product linked to the elaboration.
4. Set a route to procure this elaboration.

Usage
=====

To use this module, you need to:

1. Go to Sales > Quotations.
2. Create new quotation to the desired customer.
3. Add storable product in order lines.
4. Activate **customer deposit** in quotation.
5. Check *route* in order line is customer deposit.
6. Add elaboration with route in order line.
7. Check *route* in order line is still customer deposit.
8. Deactivate **customer deposit** in quotation.
9. Check *route* in order line the route of elaboration.

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/stock-logistics-workflow/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/stock-logistics-workflow/issues/new?body=module:%20stock_customer_deposit_elaboration%0Aversion:%2016.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
-------

* Moduon

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

- Emilio Pascual (`Moduon <https://www.moduon.team/>`__)
- Rafael Blasco (`Moduon <https://www.moduon.team/>`__)

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-EmilioPascual| image:: https://github.com/EmilioPascual.png?size=40px
:target: https://github.com/EmilioPascual
:alt: EmilioPascual
.. |maintainer-rafaelbn| image:: https://github.com/rafaelbn.png?size=40px
:target: https://github.com/rafaelbn
:alt: rafaelbn

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

|maintainer-EmilioPascual| |maintainer-rafaelbn|

This module is part of the `OCA/stock-logistics-workflow <https://github.com/OCA/stock-logistics-workflow/tree/16.0/stock_customer_deposit_elaboration>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions stock_customer_deposit_elaboration/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
20 changes: 20 additions & 0 deletions stock_customer_deposit_elaboration/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Copyright 2024 Moduon Team S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl-3.0)

{
"name": "Stock Customer Deposit Elaboration",
"summary": "Glue module betwen stock_customer_deposit and sale_elaboration",
"version": "16.0.1.0.0",
"development_status": "Alpha",
"category": "Inventory/Delivery",
"website": "https://github.com/OCA/stock-logistics-workflow",
"author": "Moduon, Odoo Community Association (OCA)",
"maintainers": ["EmilioPascual", "rafaelbn"],
"license": "AGPL-3",
"application": False,
"auto_install": True,
"depends": [
"stock_customer_deposit",
"sale_elaboration",
],
}
28 changes: 28 additions & 0 deletions stock_customer_deposit_elaboration/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_customer_deposit_elaboration
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-03-20 09:56+0000\n"
"PO-Revision-Date: 2024-03-20 10:57+0100\n"
"Last-Translator: Emilio Pascual <[email protected]>\n"
"Language-Team: \n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 3.4.2\n"

#. module: stock_customer_deposit_elaboration
#: model:ir.model.fields,field_description:stock_customer_deposit_elaboration.field_sale_order_line__route_id
msgid "Route"
msgstr "Ruta"

#. module: stock_customer_deposit_elaboration
#: model:ir.model,name:stock_customer_deposit_elaboration.model_sale_order_line
msgid "Sales Order Line"
msgstr "Línea de pedido de venta"
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_customer_deposit_elaboration
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-03-20 09:56+0000\n"
"PO-Revision-Date: 2024-03-20 09:56+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: stock_customer_deposit_elaboration
#: model:ir.model.fields,field_description:stock_customer_deposit_elaboration.field_sale_order_line__route_id
msgid "Route"
msgstr ""

#. module: stock_customer_deposit_elaboration
#: model:ir.model,name:stock_customer_deposit_elaboration.model_sale_order_line
msgid "Sales Order Line"
msgstr ""
1 change: 1 addition & 0 deletions stock_customer_deposit_elaboration/models/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import sale_order_line
32 changes: 32 additions & 0 deletions stock_customer_deposit_elaboration/models/sale_order_line.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Copyright 2024 Moduon Team S.L.
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl-3.0)

from odoo import api, fields, models


class SaleOrderLine(models.Model):
_inherit = "sale.order.line"

route_id = fields.Many2one(
"stock.route", compute="_compute_route_id", store=True, readonly=False
)

@api.depends(
"product_id",
"warehouse_id.use_customer_deposits",
"order_id.customer_deposit",
"elaboration_ids",
)
def _compute_route_id(self):
for line in self:
line.route_id = line._get_stock_route()

def _get_stock_route(self):
self.ensure_one()
if (
self.warehouse_id.use_customer_deposits
and self.product_id.type == "product"
and self.order_id.customer_deposit
):
return self.warehouse_id.customer_deposit_route_id
return self.elaboration_ids.route_ids[:1]
18 changes: 18 additions & 0 deletions stock_customer_deposit_elaboration/readme/CONFIGURE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
To configure this module, you need to:

Customer Deposits:

1. Go to Inventory > Configuration > Settings.
2. Enable Consignment.
3. Enable Multi-Step Routes.
3. Go to Inventory > Configuration > Warehouses.
4. Select the warehouse where you want to manage customer deposits.
5. Activate use customer deposits.

Sale elaboration:

1. Go to *Sale > Configuration > Products > Sale Elaboration*.
2. Create a new record.
3. Set a product linked to the elaboration.
4. Set a route to procure this elaboration.

3 changes: 3 additions & 0 deletions stock_customer_deposit_elaboration/readme/CONTEXT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
This module was developed because the modules **sale_elaboration** and **stock_customer_deposit** create a compute method for the order line *route_id* field.

As odoo does not have a compute core method for this field, it cannot be inherited so if you install both modules, one method will be overwritten and one behaviour will be lost.
2 changes: 2 additions & 0 deletions stock_customer_deposit_elaboration/readme/CONTRIBUTORS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
- Emilio Pascual ([Moduon](https://www.moduon.team/))
- Rafael Blasco ([Moduon](https://www.moduon.team/))
1 change: 1 addition & 0 deletions stock_customer_deposit_elaboration/readme/DESCRIPTION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
This module extends the functionality of customer deposits and sale elaborations and allows the correct route selection in the order line.
14 changes: 14 additions & 0 deletions stock_customer_deposit_elaboration/readme/USAGE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
To use this module, you need to:

1. Go to Sales > Quotations.
2. Create new quotation to the desired customer.
4. Add storable product in order lines.
3. Activate **customer deposit** in quotation.
4. Check *route* in order line is customer deposit.
5. Add elaboration with route in order line.
6. Check *route* in order line is still customer deposit.
7. Deactivate **customer deposit** in quotation.
8. Check *route* in order line the route of elaboration.



Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 68298d4

Please sign in to comment.