Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
116 changes: 116 additions & 0 deletions product_simple_seasonality/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
==========================
Product Simple Seasonality
==========================

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

.. |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--attribute-lightgray.png?logo=github
:target: https://github.com/OCA/product-attribute/tree/17.0/product_simple_seasonality
:alt: OCA/product-attribute
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/product-attribute-17-0/product-attribute-17-0-product_simple_seasonality
: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-attribute&target_branch=17.0
:alt: Try me on Runboat

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

This module adds a simple concept of seasonality for products

**Table of contents**

.. contents::
:local:

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

Create seasonalities and assign them to products

Use case:

Season are recurring specific periods each year.

Apply product to season(s) allows to apply specific process to these
products.

.. figure:: https://raw.githubusercontent.com/OCA/product-attribute/17.0/product_simple_seasonality/static/description/seasonality.png

.. figure:: https://raw.githubusercontent.com/OCA/product-attribute/17.0/product_simple_seasonality/static/description/product.png

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

We should consider the module product_seasonality by C2C so that they
can be merged in some way.

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/product-attribute/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-attribute/issues/new?body=module:%20product_simple_seasonality%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
-------

* Akretion

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

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

- Kevin Khao kevin.khao@akretion.com
- David Beal david.beal@akretion.com

- `Heliconia Solutions Pvt. Ltd. <https://www.heliconia.io>`__

- Bhavesh Heliconia

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

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

|maintainer-bealdav| |maintainer-kevinkhao|

This module is part of the `OCA/product-attribute <https://github.com/OCA/product-attribute/tree/17.0/product_simple_seasonality>`_ 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 product_simple_seasonality/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
20 changes: 20 additions & 0 deletions product_simple_seasonality/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Copyright 2024 Akretion
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

{
"name": "Product Simple Seasonality",
"summary": """
Product seasonality""",
"version": "17.0.1.0.0",
"license": "AGPL-3",
"author": "Akretion,Odoo Community Association (OCA)",
"website": "https://github.com/OCA/product-attribute",
"depends": ["product"],
"data": [
"views/product_packaging.xml",
"views/product_template.xml",
"views/seasonality.xml",
"security/seasonality.xml",
],
"maintainers": ["bealdav", "kevinkhao"],
}
98 changes: 98 additions & 0 deletions product_simple_seasonality/i18n/it.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * product_simple_seasonality
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-08-29 13:06+0000\n"
"Last-Translator: mymage <stefano.consolaro@mymage.it>\n"
"Language-Team: none\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"
"X-Generator: Weblate 5.6.2\n"

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__company_id
msgid "Company"
msgstr "Azienda"

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__create_uid
msgid "Created by"
msgstr "Creato da"

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__create_date
msgid "Created on"
msgstr "Creato il"

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__display_name
msgid "Display Name"
msgstr "Nome visualizzato"

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__id
msgid "ID"
msgstr "ID"

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality____last_update
msgid "Last Modified on"
msgstr "Ultima modifica il"

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__write_uid
msgid "Last Updated by"
msgstr "Ultimo aggiornamento di"

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__write_date
msgid "Last Updated on"
msgstr "Ultimo aggiornamento il"

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__name
msgid "Name"
msgstr "Nome"

#. module: product_simple_seasonality
#: model:ir.model,name:product_simple_seasonality.model_product_template
msgid "Product"
msgstr "Prodotto"

#. module: product_simple_seasonality
#: model:ir.model,name:product_simple_seasonality.model_product_packaging
msgid "Product Packaging"
msgstr "Imballaggio prodotto"

#. module: product_simple_seasonality
#: model:ir.ui.menu,name:product_simple_seasonality.seasonality_menu_act
msgid "Seasonalities"
msgstr "Stagionalità"

#. module: product_simple_seasonality
#: model:ir.actions.act_window,name:product_simple_seasonality.seasonality_act_window
#: model:ir.model,name:product_simple_seasonality.model_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_product_packaging__seasonality_ids
#: model:ir.model.fields,field_description:product_simple_seasonality.field_product_product__seasonality_ids
#: model:ir.model.fields,field_description:product_simple_seasonality.field_product_template__seasonality_ids
#: model:ir.ui.menu,name:product_simple_seasonality.seasonality_submenu
msgid "Seasonality"
msgstr "Stagionalità"

#. module: product_simple_seasonality
#: model:ir.model.fields,help:product_simple_seasonality.field_product_packaging__seasonality_ids
#: model:ir.model.fields,help:product_simple_seasonality.field_product_product__seasonality_ids
#: model:ir.model.fields,help:product_simple_seasonality.field_product_template__seasonality_ids
msgid ""
"This is an informative field to track which seasons this product should be "
"associated with"
msgstr ""
"Questo è un campo informativo per tracciare a quale stagione deve essere "
"associato il prodotto"
93 changes: 93 additions & 0 deletions product_simple_seasonality/i18n/product_simple_seasonality.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * product_simple_seasonality
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \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: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__company_id
msgid "Company"
msgstr ""

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__create_uid
msgid "Created by"
msgstr ""

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__create_date
msgid "Created on"
msgstr ""

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__display_name
msgid "Display Name"
msgstr ""

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__id
msgid "ID"
msgstr ""

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality____last_update
msgid "Last Modified on"
msgstr ""

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__write_uid
msgid "Last Updated by"
msgstr ""

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__write_date
msgid "Last Updated on"
msgstr ""

#. module: product_simple_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_seasonality__name
msgid "Name"
msgstr ""

#. module: product_simple_seasonality
#: model:ir.model,name:product_simple_seasonality.model_product_template
msgid "Product"
msgstr ""

#. module: product_simple_seasonality
#: model:ir.model,name:product_simple_seasonality.model_product_packaging
msgid "Product Packaging"
msgstr ""

#. module: product_simple_seasonality
#: model:ir.ui.menu,name:product_simple_seasonality.seasonality_menu_act
msgid "Seasonalities"
msgstr ""

#. module: product_simple_seasonality
#: model:ir.actions.act_window,name:product_simple_seasonality.seasonality_act_window
#: model:ir.model,name:product_simple_seasonality.model_seasonality
#: model:ir.model.fields,field_description:product_simple_seasonality.field_product_packaging__seasonality_ids
#: model:ir.model.fields,field_description:product_simple_seasonality.field_product_product__seasonality_ids
#: model:ir.model.fields,field_description:product_simple_seasonality.field_product_template__seasonality_ids
#: model:ir.ui.menu,name:product_simple_seasonality.seasonality_submenu
msgid "Seasonality"
msgstr ""

#. module: product_simple_seasonality
#: model:ir.model.fields,help:product_simple_seasonality.field_product_packaging__seasonality_ids
#: model:ir.model.fields,help:product_simple_seasonality.field_product_product__seasonality_ids
#: model:ir.model.fields,help:product_simple_seasonality.field_product_template__seasonality_ids
msgid ""
"This is an informative field to track which seasons this product should be "
"associated with"
msgstr ""
3 changes: 3 additions & 0 deletions product_simple_seasonality/models/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
from . import seasonality
from . import product_template
from . import product_packaging
13 changes: 13 additions & 0 deletions product_simple_seasonality/models/product_packaging.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Copyright 2024 Akretion
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from odoo import fields, models


class ProductPackaging(models.Model):
_inherit = "product.packaging"

seasonality_ids = fields.Many2many(
"seasonality",
related="product_id.seasonality_ids",
)
15 changes: 15 additions & 0 deletions product_simple_seasonality/models/product_template.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Copyright 2024 Akretion
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from odoo import fields, models


class ProductTemplate(models.Model):
_inherit = "product.template"

seasonality_ids = fields.Many2many(
"seasonality",
string="Seasonality",
help="This is an informative field to "
"track which seasons this product should be associated with",
)
12 changes: 12 additions & 0 deletions product_simple_seasonality/models/seasonality.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Copyright 2024 Akretion
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).

from odoo import fields, models


class Seasonality(models.Model):
_name = "seasonality"
_description = "Seasonality"

name = fields.Char(required=True)
company_id = fields.Many2one("res.company", default=lambda self: self.env.company)
3 changes: 3 additions & 0 deletions product_simple_seasonality/pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[build-system]
requires = ["whool"]
build-backend = "whool.buildapi"
11 changes: 11 additions & 0 deletions product_simple_seasonality/readme/CONFIGURE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
Create seasonalities and assign them to products

Use case:

Season are recurring specific periods each year.

Apply product to season(s) allows to apply specific process to these products.

.. figure:: ../static/description/seasonality.png

.. figure:: ../static/description/product.png
Loading