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
64 changes: 64 additions & 0 deletions stock_location_tag/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
==================
Stock location tag
==================

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

.. |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-NuoBiT%2Fodoo--addons-lightgray.png?logo=github
:target: https://github.com/NuoBiT/odoo-addons/tree/18.0/stock_location_tag
:alt: NuoBiT/odoo-addons

|badge1| |badge2| |badge3|

This module adds tags on location.

**Table of contents**

.. contents::
:local:

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

Bugs are tracked on `GitHub Issues <https://github.com/NuoBiT/odoo-addons/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/NuoBiT/odoo-addons/issues/new?body=module:%20stock_location_tag%0Aversion:%2018.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
-------

* NuoBiT Solutions SL

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

- `NuoBiT <https://www.nuobit.com>`__:

- Eric Antones eantones@nuobit.com
- Bijaya Kumal bkumal@nuobit.com
- Deniz Gallo dgallo@nuobit.com

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

This module is part of the `NuoBiT/odoo-addons <https://github.com/NuoBiT/odoo-addons/tree/18.0/stock_location_tag>`_ project on GitHub.

You are welcome to contribute.
1 change: 1 addition & 0 deletions stock_location_tag/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
23 changes: 23 additions & 0 deletions stock_location_tag/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Copyright NuoBiT Solutions SL - Eric Antones <eantones@nuobit.com>
# Copyright NuoBiT Solutions SL 2025 - Bijaya Kumal <bkumal@nuobit.com>
# Copyright NuoBiT Solutions SL 2025 - Deniz Gallo <dgallo@nuobit.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl)

{
"name": "Stock location tag",
"summary": "This module adds tags on location",
"author": "NuoBiT Solutions SL",
"category": "Warehouse",
"version": "18.0.1.0.0",
"license": "AGPL-3",
"website": "https://github.com/NuoBiT/odoo-addons",
"depends": [
"stock",
],
"data": [
"security/stock_location_tag_security.xml",
"security/ir.model.access.csv",
"views/stock_location_views.xml",
"views/stock_location_tag_views.xml",
],
}
83 changes: 83 additions & 0 deletions stock_location_tag/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * stock_location_tag
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 18.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-09-22 07:38+0000\n"
"PO-Revision-Date: 2025-09-22 07:38+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_location_tag
#: model:ir.model.fields,field_description:stock_location_tag.field_stock_location_tag__color
msgid "Color Index"
msgstr "Indice de color"

#. module: stock_location_tag
#: model:ir.model.fields,field_description:stock_location_tag.field_stock_location_tag__company_id
msgid "Company"
msgstr "Compañía"

#. module: stock_location_tag
#: model:ir.model.fields,field_description:stock_location_tag.field_stock_location_tag__create_uid
msgid "Created by"
msgstr "Creado por"

#. module: stock_location_tag
#: model:ir.model.fields,field_description:stock_location_tag.field_stock_location_tag__create_date
msgid "Created on"
msgstr "Creado el"

#. module: stock_location_tag
#: model:ir.model.fields,field_description:stock_location_tag.field_stock_location_tag__display_name
msgid "Display Name"
msgstr "Nombre para mostrar"

#. module: stock_location_tag
#: model:ir.model.fields,field_description:stock_location_tag.field_stock_location_tag__id
msgid "ID"
msgstr "ID"

#. module: stock_location_tag
#: model:ir.model,name:stock_location_tag.model_stock_location
msgid "Inventory Locations"
msgstr "Ubicaciones de inventario"

#. module: stock_location_tag
#: model:ir.model.fields,field_description:stock_location_tag.field_stock_location_tag__write_uid
msgid "Last Updated by"
msgstr "Última actualización por"

#. module: stock_location_tag
#: model:ir.model.fields,field_description:stock_location_tag.field_stock_location_tag__write_date
msgid "Last Updated on"
msgstr "Última actualización el"

#. module: stock_location_tag
#: model:ir.actions.act_window,name:stock_location_tag.stock_location_tag_action
#: model:ir.model,name:stock_location_tag.model_stock_location_tag
#: model:ir.ui.menu,name:stock_location_tag.stock_location_tag_menu
msgid "Location Tags"
msgstr "Etiquetas de ubicación"

#. module: stock_location_tag
#: model:ir.model.fields,field_description:stock_location_tag.field_stock_location_tag__name
msgid "Name"
msgstr "Nombre"

#. module: stock_location_tag
#: model:ir.model.constraint,message:stock_location_tag.constraint_stock_location_tag_name_company_uniq
msgid "Tag name already exists. It must be unique per company!"
msgstr "¡El nombre de la etiqueta ya existe. ¡Debe ser único por compañía!"

#. module: stock_location_tag
#: model:ir.model.fields,field_description:stock_location_tag.field_stock_location__tag_ids
msgid "Tags"
msgstr "Etiquetas"
2 changes: 2 additions & 0 deletions stock_location_tag/models/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from . import stock_location
from . import stock_location_tag
16 changes: 16 additions & 0 deletions stock_location_tag/models/stock_location.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Copyright NuoBiT Solutions SL - Eric Antones <eantones@nuobit.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl)

from odoo import fields, models


class StockLocation(models.Model):
_inherit = "stock.location"

tag_ids = fields.Many2many(
comodel_name="stock.location.tag",
string="Tags",
relation="stock_location_location_tag_rel",
column1="location_id",
column2="tag_id",
)
27 changes: 27 additions & 0 deletions stock_location_tag/models/stock_location_tag.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Copyright NuoBiT Solutions SL - Eric Antones <eantones@nuobit.com>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl)

from odoo import fields, models


class StockLocationTag(models.Model):
_name = "stock.location.tag"
_description = "Location Tags"

name = fields.Char(required=True, translate=True)
color = fields.Integer(string="Color Index")
company_id = fields.Many2one(
"res.company",
string="Company",
default=lambda self: self.env.company,
readonly=True,
required=True,
)

_sql_constraints = [
(
"name_company_uniq",
"unique (name,company_id)",
"Tag name already exists. It must be unique per company!",
),
]
3 changes: 3 additions & 0 deletions stock_location_tag/pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[build-system]
requires = ["whool"]
build-backend = "whool.buildapi"
4 changes: 4 additions & 0 deletions stock_location_tag/readme/CONTRIBUTORS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
- [NuoBiT](https://www.nuobit.com):
- Eric Antones <eantones@nuobit.com>
- Bijaya Kumal <bkumal@nuobit.com>
- Deniz Gallo <dgallo@nuobit.com>
1 change: 1 addition & 0 deletions stock_location_tag/readme/DESCRIPTION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
This module adds tags on location.
3 changes: 3 additions & 0 deletions stock_location_tag/security/ir.model.access.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_stock_location_tag_manager,access_stock_location_tag.manager,model_stock_location_tag,stock.group_stock_manager,1,1,1,1
access_stock_location_tag_user,access_stock_location_tag.user,model_stock_location_tag,base.group_user,1,0,0,0
14 changes: 14 additions & 0 deletions stock_location_tag/security/stock_location_tag_security.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8" ?>
<!-- Copyright NuoBiT Solutions SL - Eric Antones <eantones@nuobit.com>
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl) -->
<odoo>
<record id="stock_location_tag_rule_company" model="ir.rule">
<field name="name">Stock location tag multi-company rule</field>
<field name="model_id" ref="model_stock_location_tag" />
<field name="global" eval="True" />
<field
name="domain_force"
>['|', ('company_id', '=', False), ('company_id', 'in', company_ids)]
</field>
</record>
</odoo>
Binary file added stock_location_tag/static/description/icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading