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

[IMP] stock_release_channel: Allow to have further tests flows with s… #17

Draft
wants to merge 35 commits into
base: 16.0-mig-stock_release_channel
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
1191674
Add stock_release_channel
guewen Nov 20, 2020
fd74536
Add automatic release of a batch of transfers
guewen Nov 25, 2020
7e5293d
Use queue_job for assigning the release channel
guewen Nov 25, 2020
0c308f2
Add release channel in transfer allocation view
guewen Nov 25, 2020
50c4bed
Add cron to re-assign release channel
guewen Nov 25, 2020
0bef6c0
Store release channel on stock.move
guewen Nov 25, 2020
29bd61d
Re-assign release channel after release
guewen Nov 25, 2020
fc04841
Add ~ in stock move counts
guewen Nov 25, 2020
76ffc99
Add totals in tree view
guewen Nov 25, 2020
58fd859
Filter on need_release is False for assigned too
guewen Nov 25, 2020
290c013
Improve kanban dashboard
guewen Dec 1, 2020
5e841c2
Assign release channel as sudo
guewen Dec 2, 2020
94b4ce5
Switch stock_release_channel to AGPL
guewen Jan 11, 2021
b0d416b
Extract ddmrp dependency to a glue module
guewen Jan 11, 2021
eab9d72
Add readme
guewen Jan 12, 2021
bab3624
Add tests
guewen Jan 12, 2021
bf38d62
Add commercial partner on transfers
guewen Jan 26, 2021
de8da9d
Add automatic release per group of commercial partner
guewen Jan 26, 2021
9c3e925
[IMP] stock_release_channel: overall progress as fraction
Mar 4, 2021
bdd7b22
stock_release_channel: Assign channel as technical user
mmequignon May 25, 2021
c8c5dfe
[MIG] Make modules uninstallable
sebalix Sep 13, 2021
65cfb7f
Allow to forbid the release on channel configuration
mmequignon Apr 9, 2021
1fdcf40
[IMP] stock_release_channel: black, isort, prettier
sebalix Sep 14, 2021
8067edc
[MIG] stock_release_channel: Migration to 14.0
sebalix Sep 13, 2021
03a6402
Fix access right issues when using actions
sebalix Jan 27, 2022
94d0c19
[FIX] stock_release_channel: increase user access rights
i-vyshnevska Feb 16, 2022
ba73df2
stock_release_channel: README + setup + strict
jbaudoux Nov 9, 2022
2de2355
[UPD] Update stock_release_channel.pot
Nov 11, 2022
9b92ec6
[UPD] README.rst
OCA-git-bot Nov 11, 2022
e8302bb
[ADD] icon.png
OCA-git-bot Nov 11, 2022
7fe37b9
[IMP] stock_release_channel: black, isort, prettier
lmignon Nov 14, 2022
adb8bce
[MIG] stock_release_channel: Migration to 16.0
lmignon Nov 14, 2022
63637da
stock_release_channel: multi warehouse
jbaudoux Dec 7, 2022
415cd2c
stock_release_channel: assign channel
jbaudoux Dec 7, 2022
2b7ad96
[IMP] stock_release_channel: Allow to have further tests flows with s…
rousseldenis Jan 31, 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
6 changes: 6 additions & 0 deletions setup/stock_release_channel/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,
)
130 changes: 130 additions & 0 deletions stock_release_channel/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
======================
Stock Release Channels
======================

.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |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%2Fwms-lightgray.png?logo=github
:target: https://github.com/OCA/wms/tree/16.0/stock_release_channel
:alt: OCA/wms
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/wms-16-0/wms-16-0-stock_release_channel
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
:target: https://runbot.odoo-community.org/runbot/285/16.0
:alt: Try me on Runbot

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

Release channels are:

* Release channels are created by stock managers (only pallets, only parcels, ...)
* A release channel has a sequence, a domain + possibility to use python code
* When a delivery is: created from a sales order / created as backorder /
released, each release channel is evaluated against it (domain + python code),
the delivery is assigned to the first channel that matches
* A release channel can change over time: for instance the evaluation of a
domain or rule can change if a delivery is only partially released
* A kanban board allows tracking how many [To Do Today, Released, Done Today,
Waiting, Late, Priority] Transfers are in each channel, plus quick access to
all the pick/pack transfers for released deliveries
* A button on each channel allows to release the next X (configured on the
channel) transfers (max X at a time, it releases X - currently released and
not done)

**Table of contents**

.. contents::
:local:

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

In Inventory > Configuration > Release Channels.
Only Stock Managers have write permissions.

Usage
=====

Use Inventory > Operations > Release Channels to access to the dashboard.

Each channel has a dashboard with statistics about the number of transfers
to release and of the progress of the released transfers.

When clicking on the "box" button, transfers are released automatically, to
reach a total of <Max Transfers to release> (option configured in the channel
settings).

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/wms/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
`feedback <https://github.com/OCA/wms/issues/new?body=module:%20stock_release_channel%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
~~~~~~~

* Camptocamp

Contributors
~~~~~~~~~~~~

* Guewen Baconnier <[email protected]>
* Matthieu Méquignon <[email protected]>
* Sébastien Alix <[email protected]>
* Jacques-Etienne Baudoux <[email protected]>

Design
~~~~~~

* Joël Grand-Guillaume <[email protected]>
* Jacques-Etienne Baudoux <[email protected]>

Other credits
~~~~~~~~~~~~~

**Financial support**

* Cosanum
* Camptocamp R&D

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

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

|maintainer-sebalix|

This module is part of the `OCA/wms <https://github.com/OCA/wms/tree/16.0/stock_release_channel>`_ 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_release_channel/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
35 changes: 35 additions & 0 deletions stock_release_channel/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Copyright 2020 Camptocamp
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html)

{
"name": "Stock Release Channels",
"summary": "Manage workload in WMS with release channels",
"version": "16.0.1.0.0",
"development_status": "Beta",
"license": "AGPL-3",
"author": "Camptocamp, Odoo Community Association (OCA)",
"maintainers": ["sebalix"],
"website": "https://github.com/OCA/wms",
"depends": [
"web",
"sale_stock",
"stock_available_to_promise_release", # OCA/wms
"queue_job", # OCA/queue
],
"data": [
# "views/assets.xml",
"views/stock_release_channel_views.xml",
"views/stock_picking_views.xml",
"data/stock_release_channel_data.xml",
"data/queue_job_data.xml",
"data/ir_cron_data.xml",
"security/stock_release_channel.xml",
],
"assets": {
"web.assets_backend": [
"stock_release_channel/static/src/scss/stock_release_channel.scss",
"stock_release_channel/static/src/js/progressbar_fractional_widget.js",
],
},
"installable": True,
}
16 changes: 16 additions & 0 deletions stock_release_channel/data/ir_cron_data.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo noupdate="1">

<!-- To plan during the night -->
<record id="ir_cron_stock_picking_assign_release_channel" model="ir.cron">
<field name="name">Re-assign release channel</field>
<field name="interval_number">1</field>
<field name="interval_type">days</field>
<field name="numbercall">-1</field>
<field name="active">False</field>
<field ref="stock.model_stock_picking" name="model_id" />
<field name="state">code</field>
<field name="code">model.assign_release_channel_on_all_need_release()</field>
</record>

</odoo>
18 changes: 18 additions & 0 deletions stock_release_channel/data/queue_job_data.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo noupdate="1">

<record model="queue.job.channel" id="stock_release_channel">
<field name="name">stock_release_channel</field>
<field name="parent_id" ref="queue_job.channel_root" />
</record>

<record
id="job_function_stock_picking_assign_release_channel"
model="queue.job.function"
>
<field name="model_id" ref="stock.model_stock_picking" />
<field name="method">assign_release_channel</field>
<field name="channel_id" ref="stock_release_channel" />
</record>

</odoo>
10 changes: 10 additions & 0 deletions stock_release_channel/data/stock_release_channel_data.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo noupdate="1">

<record model="stock.release.channel" id="stock_release_channel_default">
<field name="name">Default</field>
<field name="sequence">999</field>
<field name="rule_domain">[]</field>
</record>

</odoo>
Loading