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
1 change: 1 addition & 0 deletions sale_order_template_space/__init__.py
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
from . import models
from . import wizard
4 changes: 4 additions & 0 deletions sale_order_template_space/__manifest__.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,17 @@
"depends": [
"sale_management",
"sales_team",
"sale_order_line_input",
"sale_order_shorcut_line",
],
"data": [
"security/ir.model.access.csv",
"wizard/wiz_duplicate_sale_line_views.xml",
"views/sale_order_template_space_views.xml",
"views/sale_order_template_views.xml",
"views/sale_order_template_line_views.xml",
"views/sale_order_views.xml",
"views/sale_order_line_views.xml",
],
"installable": True,
}
64 changes: 61 additions & 3 deletions sale_order_template_space/i18n/es.po
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-19 08:46+0000\n"
"PO-Revision-Date: 2024-02-19 08:46+0000\n"
"POT-Creation-Date: 2024-04-17 12:13+0000\n"
"PO-Revision-Date: 2024-04-17 12:13+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
Expand All @@ -25,6 +25,11 @@ msgstr "# Líneas plantilla venta"
msgid "<span class=\"o_stat_text\">Sale Template Lines</span>"
msgstr "<span class=\"o_stat_text\">Líneas plantilla venta</span>"

#. module: sale_order_template_space
#: model_terms:ir.ui.view,arch_db:sale_order_template_space.wiz_duplicate_sale_line_form_view
msgid "Cancel"
msgstr "Cancelar"

#. module: sale_order_template_space
#: model_terms:ir.ui.view,arch_db:sale_order_template_space.view_order_form
msgid "Create sale lines"
Expand All @@ -33,12 +38,14 @@ msgstr "Crear líneas de venta"
#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__create_uid
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space__create_uid
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__create_uid
msgid "Created by"
msgstr "Creado por"

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__create_date
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space__create_date
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__create_date
msgid "Created on"
msgstr "Creado el"

Expand All @@ -50,9 +57,22 @@ msgstr "Borrar líneas venta"
#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__display_name
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space__display_name
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__display_name
msgid "Display Name"
msgstr "Mostrar Nombre"

#. module: sale_order_template_space
#: model:ir.actions.server,name:sale_order_template_space.model_sale_order_line_action_duplicate
#: model_terms:ir.ui.view,arch_db:sale_order_template_space.wiz_duplicate_sale_line_form_view
msgid "Duplicate Line"
msgstr "Duplicar línea"

#. module: sale_order_template_space
#: model:ir.actions.act_window,name:sale_order_template_space.wiz_duplicate_sale_line_action
#: model_terms:ir.ui.view,arch_db:sale_order_template_space.wiz_duplicate_sale_line_form_view
msgid "Duplicate Sale Order Line"
msgstr "Duplicar línea de pedido de venta"

#. module: sale_order_template_space
#: model_terms:ir.ui.view,arch_db:sale_order_template_space.sale_order_template_line_filter
msgid "Group By"
Expand All @@ -61,24 +81,28 @@ msgstr "Agrupar por"
#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__id
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space__id
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__id
msgid "ID"
msgstr ""
msgstr "ID"

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space____last_update
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space____last_update
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line____last_update
msgid "Last Modified on"
msgstr "Última modificación el"

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__write_uid
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space__write_uid
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__write_uid
msgid "Last Updated by"
msgstr "Última actualización opr"

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__write_date
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space__write_date
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__write_date
msgid "Last Updated on"
msgstr "Última actualización el"

Expand Down Expand Up @@ -130,6 +154,11 @@ msgstr "Renumerar secuencia líneas"
msgid "Sale Order"
msgstr "Pedido de venta"

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__sale_line_id
msgid "Sale Order Line"
msgstr "Línea pedido venta"

#. module: sale_order_template_space
#: model_terms:ir.ui.view,arch_db:sale_order_template_space.view_sales_order_filter
msgid "Sale Order Line Space"
Expand Down Expand Up @@ -191,11 +220,21 @@ msgstr "Buscar estancias"
msgid "Sequence"
msgstr "Secuencia"

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_line__sequence_to_view
msgid "Sequence to view"
msgstr "Secuencia para ver"

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__space_id
msgid "Space"
msgstr "Buscar estancias"

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_line__space_sequence
msgid "Space Sequence"
msgstr "Secuencia espacio"

#. module: sale_order_template_space
#: model:ir.actions.act_window,name:sale_order_template_space.action_sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template__space_ids
Expand All @@ -216,7 +255,26 @@ msgstr "Estancias para plantillas de pedido de venta"
msgid "Spaces For Sale Orders"
msgstr "Estancias para pedidos de venta"

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_line__sale_order_template_line_sequence
msgid "Template Line Sequence"
msgstr "Secuencia línea plantilla"

#. module: sale_order_template_space
#: model:ir.actions.act_window,name:sale_order_template_space.action_editabable_template_orders_lines
msgid "Template Order Lines"
msgstr "Plantilla línea de pedido"

#. module: sale_order_template_space
#: model:ir.model,name:sale_order_template_space.model_wiz_duplicate_sale_line
msgid "Wizard for duplicate sale line"
msgstr "Asistente para duplicar línea de venta"

#. module: sale_order_template_space
#. odoo-python
#: code:addons/sale_order_template_space/models/sale_order_line.py:0
#, python-format
msgid ""
"You can only duplicate 1 at a time, because then the screenmust be "
"refreshed."
msgstr "Solo puede duplicar 1 línea a la vez, porque se debe de refrescar la pantalla."
62 changes: 60 additions & 2 deletions sale_order_template_space/i18n/sale_order_template_space.pot
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-19 08:45+0000\n"
"PO-Revision-Date: 2024-02-19 08:45+0000\n"
"POT-Creation-Date: 2024-04-17 12:12+0000\n"
"PO-Revision-Date: 2024-04-17 12:12+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
Expand All @@ -25,6 +25,11 @@ msgstr ""
msgid "<span class=\"o_stat_text\">Sale Template Lines</span>"
msgstr ""

#. module: sale_order_template_space
#: model_terms:ir.ui.view,arch_db:sale_order_template_space.wiz_duplicate_sale_line_form_view
msgid "Cancel"
msgstr ""

#. module: sale_order_template_space
#: model_terms:ir.ui.view,arch_db:sale_order_template_space.view_order_form
msgid "Create sale lines"
Expand All @@ -33,12 +38,14 @@ msgstr ""
#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__create_uid
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space__create_uid
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__create_uid
msgid "Created by"
msgstr ""

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__create_date
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space__create_date
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__create_date
msgid "Created on"
msgstr ""

Expand All @@ -50,9 +57,22 @@ msgstr ""
#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__display_name
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space__display_name
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__display_name
msgid "Display Name"
msgstr ""

#. module: sale_order_template_space
#: model:ir.actions.server,name:sale_order_template_space.model_sale_order_line_action_duplicate
#: model_terms:ir.ui.view,arch_db:sale_order_template_space.wiz_duplicate_sale_line_form_view
msgid "Duplicate Line"
msgstr ""

#. module: sale_order_template_space
#: model:ir.actions.act_window,name:sale_order_template_space.wiz_duplicate_sale_line_action
#: model_terms:ir.ui.view,arch_db:sale_order_template_space.wiz_duplicate_sale_line_form_view
msgid "Duplicate Sale Order Line"
msgstr ""

#. module: sale_order_template_space
#: model_terms:ir.ui.view,arch_db:sale_order_template_space.sale_order_template_line_filter
msgid "Group By"
Expand All @@ -61,24 +81,28 @@ msgstr ""
#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__id
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space__id
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__id
msgid "ID"
msgstr ""

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space____last_update
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space____last_update
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line____last_update
msgid "Last Modified on"
msgstr ""

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__write_uid
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space__write_uid
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__write_uid
msgid "Last Updated by"
msgstr ""

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__write_date
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template_space__write_date
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__write_date
msgid "Last Updated on"
msgstr ""

Expand Down Expand Up @@ -130,6 +154,11 @@ msgstr ""
msgid "Sale Order"
msgstr ""

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_wiz_duplicate_sale_line__sale_line_id
msgid "Sale Order Line"
msgstr ""

#. module: sale_order_template_space
#: model_terms:ir.ui.view,arch_db:sale_order_template_space.view_sales_order_filter
msgid "Sale Order Line Space"
Expand Down Expand Up @@ -191,11 +220,21 @@ msgstr ""
msgid "Sequence"
msgstr ""

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_line__sequence_to_view
msgid "Sequence to view"
msgstr ""

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_space__space_id
msgid "Space"
msgstr ""

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_line__space_sequence
msgid "Space Sequence"
msgstr ""

#. module: sale_order_template_space
#: model:ir.actions.act_window,name:sale_order_template_space.action_sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_template__space_ids
Expand All @@ -216,7 +255,26 @@ msgstr ""
msgid "Spaces For Sale Orders"
msgstr ""

#. module: sale_order_template_space
#: model:ir.model.fields,field_description:sale_order_template_space.field_sale_order_line__sale_order_template_line_sequence
msgid "Template Line Sequence"
msgstr ""

#. module: sale_order_template_space
#: model:ir.actions.act_window,name:sale_order_template_space.action_editabable_template_orders_lines
msgid "Template Order Lines"
msgstr ""

#. module: sale_order_template_space
#: model:ir.model,name:sale_order_template_space.model_wiz_duplicate_sale_line
msgid "Wizard for duplicate sale line"
msgstr ""

#. module: sale_order_template_space
#. odoo-python
#: code:addons/sale_order_template_space/models/sale_order_line.py:0
#, python-format
msgid ""
"You can only duplicate 1 at a time, because then the screenmust be "
"refreshed."
msgstr ""
45 changes: 44 additions & 1 deletion sale_order_template_space/models/sale_order_line.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,56 @@
# Copyright 2024 Alfredo de la Fuente - AvanzOSC
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
from odoo import fields, models
from odoo import _, api, fields, models
from odoo.exceptions import ValidationError


class SaleOrderLine(models.Model):
_inherit = "sale.order.line"
_order = "order_id, sequence_to_view, id"

sale_order_space_id = fields.Many2one(
string="Sale Order Space",
comodel_name="sale.order.space",
copy=False,
)
space_sequence = fields.Integer(
string="Space Sequence",
related="sale_order_space_id.sequence",
store=True,
copy=False,
readonly=True,
)
sale_order_template_line_sequence = fields.Integer(
string="Template Line Sequence", default=0, copy=False
)
sequence_to_view = fields.Char(
string="Sequence to view",
compute="_compute_sequence_to_view",
store=True,
related=False,
copy=False,
)

@api.depends("space_sequence", "sale_order_template_line_sequence", "sequence")
def _compute_sequence_to_view(self):
for line in self:
line_sequence = line.sequence if line.sequence >= 0 else line.sequence * -1
sequence_to_view = "{}{}{}".format(
str(line.space_sequence).zfill(2),
str(line.sale_order_template_line_sequence).zfill(3),
line_sequence,
)
line.sequence_to_view = sequence_to_view

def action_duplicate_line(self):
if len(self) > 1:
raise ValidationError(
_(
"You can only duplicate 1 at a time, because then the screen"
"must be refreshed."
)
)
action = self.env["ir.actions.actions"]._for_xml_id(
"sale_order_template_space.wiz_duplicate_sale_line_action"
)
return action
Loading