Skip to content

Commit

Permalink
Merge PR #1271 into 14.0
Browse files Browse the repository at this point in the history
Signed-off-by bguillot
  • Loading branch information
OCA-git-bot committed Oct 12, 2023
2 parents 7cf7770 + 51ee61c commit bec93fb
Show file tree
Hide file tree
Showing 27 changed files with 812 additions and 3 deletions.
6 changes: 4 additions & 2 deletions .copier-answers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,10 @@ include_wkhtmltopdf: false
odoo_version: 14.0
org_name: Odoo Community Association (OCA)
org_slug: OCA
rebel_module_groups: []
repo_description: 'TODO: add repo description.'
rebel_module_groups:
- product_expiry_simple
- stock_mass_scrap,stock_move_quick_lot
repo_description: Odoo Stock, Workflow and Organization
repo_name: stock-logistics-workflow
repo_slug: stock-logistics-workflow
repo_website: https://github.com/OCA/stock-logistics-workflow
Expand Down
19 changes: 19 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,25 @@ jobs:
matrix:
include:
- container: ghcr.io/oca/oca-ci/py3.6-odoo14.0:latest
include: "product_expiry_simple"
makepot: "true"
name: test with Odoo
- container: ghcr.io/oca/oca-ci/py3.6-ocb14.0:latest
include: "product_expiry_simple"
name: test with OCB
- container: ghcr.io/oca/oca-ci/py3.6-odoo14.0:latest
include: "stock_mass_scrap,stock_move_quick_lot"
makepot: "true"
name: test with Odoo
- container: ghcr.io/oca/oca-ci/py3.6-ocb14.0:latest
include: "stock_mass_scrap,stock_move_quick_lot"
name: test with OCB
- container: ghcr.io/oca/oca-ci/py3.6-odoo14.0:latest
exclude: "product_expiry_simple,stock_mass_scrap,stock_move_quick_lot"
makepot: "true"
name: test with Odoo
- container: ghcr.io/oca/oca-ci/py3.6-ocb14.0:latest
exclude: "product_expiry_simple,stock_mass_scrap,stock_move_quick_lot"
name: test with OCB
services:
postgres:
Expand All @@ -49,6 +65,9 @@ jobs:
POSTGRES_DB: odoo
ports:
- 5432:5432
env:
INCLUDE: "${{ matrix.include }}"
EXCLUDE: "${{ matrix.exclude }}"
steps:
- uses: actions/checkout@v2
with:
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

# stock-logistics-workflow

TODO: add repo description.
Odoo Stock, Workflow and Organization

<!-- /!\ do not modify below this line -->

Expand Down
63 changes: 63 additions & 0 deletions product_expiry_simple/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3

=====================
Product Expiry Simple
=====================

This module is similar to the official `product_expiry <https://www.odoo.com/apps/modules/11.0/product_expiry/>`_ module that adds support for *Expiry Dates* on products, but it is both simpler and better:

* Only one *Expiry Date* field instead of 4 fields (End of Life Date, Best before Date, Removal Date, Alert Date)!
* Use date field instead of datetime field for *Expiry Date*
* No automatic computing of Expiry Date based on a delay configured on product because it is not used most of the time (for manufacturing companies, the rules that control expiry dates are usually more complex than that ; for reseller companies, they have to copy the expiry date written on the good when they receive it in their warehouse)
* List views of production lots and quants have a color depending on expiry date: green if expiry date is in the future, red if it is in the past.
* Ability to show stats about expiry dates on quants pivot table (because, with this module, the *Expiry Date* is a related stored field on stock.quant).

This modules keeps the main feature of the official *product_expiry* module: the support of FEFO (First Expiry First Out).

I decided to develop this module because, after implementing *product_expiry* at several companies, I noticed that I spent more time inheriting the official *product_expiry* module to make always the same kind of changes that re-developping a simpler and better alternative.

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

No configuration needed.

Usage
=====

.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
:alt: Try me on Runbot
:target: https://runbot.odoo-community.org/runbot/154/11.0

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 smashing it by providing a detailed and welcomed feedback.

Credits
=======

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

* Alexis de Lattre <[email protected]>
* Alan Ramos <[email protected]>

Maintainer
----------

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

This module is maintained by the OCA.

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.

To contribute to this module, please visit https://odoo-community.org.
1 change: 1 addition & 0 deletions product_expiry_simple/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
27 changes: 27 additions & 0 deletions product_expiry_simple/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Copyright 2017-2021 Akretion France (http://www.akretion.com/)
# Copyright 2018-2021 Jarsa Sistemas (Alan Ramos <[email protected]>)
# @author: Alexis de Lattre <[email protected]>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

{
"name": "Product Expiry Simple",
"version": "14.0.1.0.0",
"category": "Product",
"license": "AGPL-3",
"summary": "Simpler and better alternative to the official product_expiry module",
"author": "Akretion,Jarsa Sistemas,Odoo Community Association (OCA)",
"maintainers": ["alexis-via"],
"website": "https://github.com/OCA/stock-logistics-workflow",
"depends": [
"stock",
],
"excludes": ["product_expiry"],
"data": [
"data/product_removal.xml",
"views/stock_production_lot.xml",
"views/stock_quant.xml",
"views/stock_move_line.xml",
"views/stock_picking.xml",
],
"installable": True,
}
7 changes: 7 additions & 0 deletions product_expiry_simple/data/product_removal.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<?xml version="1.0" ?>
<odoo>
<record id="removal_fefo" model="product.removal">
<field name="name">First Expiry First Out (FEFO)</field>
<field name="method">fefo</field>
</record>
</odoo>
55 changes: 55 additions & 0 deletions product_expiry_simple/i18n/de.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * product_expiry_simple
#
# Translators:
# OCA Transbot <[email protected]>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-12-03 03:55+0000\n"
"PO-Revision-Date: 2017-12-03 03:55+0000\n"
"Last-Translator: OCA Transbot <[email protected]>, 2017\n"
"Language-Team: German (https://www.transifex.com/oca/teams/23907/de/)\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. module: product_expiry_simple
#: model:ir.ui.view,arch_db:product_expiry_simple.quant_search_view
#: model:ir.ui.view,arch_db:product_expiry_simple.search_product_lot_filter
msgid "Expired"
msgstr ""

#. module: product_expiry_simple
#: model:ir.model.fields,field_description:product_expiry_simple.field_stock_move_line_expiry_date
#: model:ir.model.fields,field_description:product_expiry_simple.field_stock_production_lot_expiry_date
#: model:ir.model.fields,field_description:product_expiry_simple.field_stock_quant_expiry_date
#: model:ir.ui.view,arch_db:product_expiry_simple.quant_search_view
#: model:ir.ui.view,arch_db:product_expiry_simple.search_product_lot_filter
msgid "Expiry Date"
msgstr ""

#. module: product_expiry_simple
#: model:ir.model,name:product_expiry_simple.model_stock_production_lot
msgid "Lot/Serial"
msgstr "Los/Serie"

#. module: product_expiry_simple
#: model:ir.ui.view,arch_db:product_expiry_simple.quant_search_view
#: model:ir.ui.view,arch_db:product_expiry_simple.search_product_lot_filter
msgid "Not Expired"
msgstr ""

#. module: product_expiry_simple
#: model:ir.model,name:product_expiry_simple.model_stock_move_line
msgid "Packing Operation"
msgstr ""

#. module: product_expiry_simple
#: model:ir.model,name:product_expiry_simple.model_stock_quant
msgid "Quants"
msgstr ""
53 changes: 53 additions & 0 deletions product_expiry_simple/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * product_expiry_simple
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 11.0+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-01-05 02:21+0000\n"
"PO-Revision-Date: 2018-01-05 02:21+0000\n"
"Last-Translator: <>\n"
"Language-Team: \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: product_expiry_simple
#: model:ir.ui.view,arch_db:product_expiry_simple.quant_search_view
#: model:ir.ui.view,arch_db:product_expiry_simple.search_product_lot_filter
msgid "Expired"
msgstr "Expirado"

#. module: product_expiry_simple
#: model:ir.model.fields,field_description:product_expiry_simple.field_stock_move_line_expiry_date
#: model:ir.model.fields,field_description:product_expiry_simple.field_stock_production_lot_expiry_date
#: model:ir.model.fields,field_description:product_expiry_simple.field_stock_quant_expiry_date
#: model:ir.ui.view,arch_db:product_expiry_simple.quant_search_view
#: model:ir.ui.view,arch_db:product_expiry_simple.search_product_lot_filter
msgid "Expiry Date"
msgstr "Fecha de Expiración"

#. module: product_expiry_simple
#: model:ir.model,name:product_expiry_simple.model_stock_production_lot
msgid "Lot/Serial"
msgstr "Lote/Nº de serie"

#. module: product_expiry_simple
#: model:ir.ui.view,arch_db:product_expiry_simple.quant_search_view
#: model:ir.ui.view,arch_db:product_expiry_simple.search_product_lot_filter
msgid "Not Expired"
msgstr "No Expirado"

#. module: product_expiry_simple
#: model:ir.model,name:product_expiry_simple.model_stock_move_line
msgid "Packing Operation"
msgstr ""

#. module: product_expiry_simple
#: model:ir.model,name:product_expiry_simple.model_stock_quant
msgid "Quants"
msgstr "Quants"
55 changes: 55 additions & 0 deletions product_expiry_simple/i18n/it.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * product_expiry_simple
#
# Translators:
# OCA Transbot <[email protected]>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-12-03 03:55+0000\n"
"PO-Revision-Date: 2017-12-03 03:55+0000\n"
"Last-Translator: OCA Transbot <[email protected]>, 2017\n"
"Language-Team: Italian (https://www.transifex.com/oca/teams/23907/it/)\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. module: product_expiry_simple
#: model:ir.ui.view,arch_db:product_expiry_simple.quant_search_view
#: model:ir.ui.view,arch_db:product_expiry_simple.search_product_lot_filter
msgid "Expired"
msgstr ""

#. module: product_expiry_simple
#: model:ir.model.fields,field_description:product_expiry_simple.field_stock_move_line_expiry_date
#: model:ir.model.fields,field_description:product_expiry_simple.field_stock_production_lot_expiry_date
#: model:ir.model.fields,field_description:product_expiry_simple.field_stock_quant_expiry_date
#: model:ir.ui.view,arch_db:product_expiry_simple.quant_search_view
#: model:ir.ui.view,arch_db:product_expiry_simple.search_product_lot_filter
msgid "Expiry Date"
msgstr ""

#. module: product_expiry_simple
#: model:ir.model,name:product_expiry_simple.model_stock_production_lot
msgid "Lot/Serial"
msgstr "Lotto/Numero di serie"

#. module: product_expiry_simple
#: model:ir.ui.view,arch_db:product_expiry_simple.quant_search_view
#: model:ir.ui.view,arch_db:product_expiry_simple.search_product_lot_filter
msgid "Not Expired"
msgstr ""

#. module: product_expiry_simple
#: model:ir.model,name:product_expiry_simple.model_stock_move_line
msgid "Packing Operation"
msgstr ""

#. module: product_expiry_simple
#: model:ir.model,name:product_expiry_simple.model_stock_quant
msgid "Quants"
msgstr ""
56 changes: 56 additions & 0 deletions product_expiry_simple/i18n/nl_NL.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * product_expiry_simple
#
# Translators:
# Peter Hageman <[email protected]>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-06-17 01:29+0000\n"
"PO-Revision-Date: 2017-06-17 01:29+0000\n"
"Last-Translator: Peter Hageman <[email protected]>, 2017\n"
"Language-Team: Dutch (Netherlands) (https://www.transifex.com/oca/"
"teams/23907/nl_NL/)\n"
"Language: nl_NL\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. module: product_expiry_simple
#: model:ir.ui.view,arch_db:product_expiry_simple.quant_search_view
#: model:ir.ui.view,arch_db:product_expiry_simple.search_product_lot_filter
msgid "Expired"
msgstr "Vervallen"

#. module: product_expiry_simple
#: model:ir.model.fields,field_description:product_expiry_simple.field_stock_move_line_expiry_date
#: model:ir.model.fields,field_description:product_expiry_simple.field_stock_production_lot_expiry_date
#: model:ir.model.fields,field_description:product_expiry_simple.field_stock_quant_expiry_date
#: model:ir.ui.view,arch_db:product_expiry_simple.quant_search_view
#: model:ir.ui.view,arch_db:product_expiry_simple.search_product_lot_filter
msgid "Expiry Date"
msgstr "Vervaldatum"

#. module: product_expiry_simple
#: model:ir.model,name:product_expiry_simple.model_stock_production_lot
msgid "Lot/Serial"
msgstr ""

#. module: product_expiry_simple
#: model:ir.ui.view,arch_db:product_expiry_simple.quant_search_view
#: model:ir.ui.view,arch_db:product_expiry_simple.search_product_lot_filter
msgid "Not Expired"
msgstr "Niet Vervallen"

#. module: product_expiry_simple
#: model:ir.model,name:product_expiry_simple.model_stock_move_line
msgid "Packing Operation"
msgstr ""

#. module: product_expiry_simple
#: model:ir.model,name:product_expiry_simple.model_stock_quant
msgid "Quants"
msgstr ""
Loading

0 comments on commit bec93fb

Please sign in to comment.