Skip to content

Commit 6a5fa2f

Browse files
committed
[ADD] l10n_it_delivery_note_order_link: aggiunta PR OCA#4702
1 parent 705969e commit 6a5fa2f

18 files changed

Lines changed: 920 additions & 0 deletions
Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
==========================================================================
2+
ITA - Documento di trasporto - Collegamento con ordine di vendita/acquisto
3+
==========================================================================
4+
5+
..
6+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
7+
!! This file is generated by oca-gen-addon-readme !!
8+
!! changes will be overwritten. !!
9+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
10+
!! source digest: sha256:3875d27531c24b26cf6793c8d023ea5f3a415d632c7c980e2e7f26d3ae7bcb9f
11+
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
12+
13+
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
14+
:target: https://odoo-community.org/page/development-status
15+
:alt: Beta
16+
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
17+
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
18+
:alt: License: AGPL-3
19+
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fl10n--italy-lightgray.png?logo=github
20+
:target: https://github.com/OCA/l10n-italy/tree/18.0/l10n_it_delivery_note_order_link
21+
:alt: OCA/l10n-italy
22+
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
23+
:target: https://translation.odoo-community.org/projects/l10n-italy-18-0/l10n-italy-18-0-l10n_it_delivery_note_order_link
24+
:alt: Translate me on Weblate
25+
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
26+
:target: https://runboat.odoo-community.org/builds?repo=OCA/l10n-italy&target_branch=18.0
27+
:alt: Try me on Runboat
28+
29+
|badge1| |badge2| |badge3| |badge4| |badge5|
30+
31+
**English**
32+
33+
This module link delivery notes to sale/purchase orders.
34+
35+
**Italiano**
36+
37+
Questo modulo consente di collegare gli ordini di vendita/acquisto ai
38+
DDT.
39+
40+
**Table of contents**
41+
42+
.. contents::
43+
:local:
44+
45+
Configuration
46+
=============
47+
48+
**English**
49+
50+
No configuration required after module installation.
51+
52+
**Italiano**
53+
54+
Dopo l'installazione del modulo non sono necessarie ulteriori
55+
configurazioni.
56+
57+
Usage
58+
=====
59+
60+
**English**
61+
62+
A smart button will appear on each sale/purchase order, so you can link
63+
them to DNs.
64+
65+
**Italiano**
66+
67+
Su ciascun ordine di vendita/acquisto comparirà un pulsante (smart
68+
button) che permette di collegarlo ai DDT.
69+
70+
Bug Tracker
71+
===========
72+
73+
Bugs are tracked on `GitHub Issues <https://github.com/OCA/l10n-italy/issues>`_.
74+
In case of trouble, please check there if your issue has already been reported.
75+
If you spotted it first, help us to smash it by providing a detailed and welcomed
76+
`feedback <https://github.com/OCA/l10n-italy/issues/new?body=module:%20l10n_it_delivery_note_order_link%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
77+
78+
Do not contact contributors directly about support or help with technical issues.
79+
80+
Credits
81+
=======
82+
83+
Authors
84+
-------
85+
86+
* Openindustry.it Sas
87+
88+
Contributors
89+
------------
90+
91+
- Andrea Piovesana <andrea.m.piovesana@gmail.com>
92+
93+
- Giuseppe Borruso - Dinamiche Aziendali srl
94+
<gborruso@dinamicheaziendali.com>
95+
96+
- Ooops <https://www.ooops404.com>:
97+
98+
- Giovanni Serra <giovanni@gslab.it>
99+
- Foresti Francesco <francesco.foresti@ooops404.com>
100+
101+
Maintainers
102+
-----------
103+
104+
This module is maintained by the OCA.
105+
106+
.. image:: https://odoo-community.org/logo.png
107+
:alt: Odoo Community Association
108+
:target: https://odoo-community.org
109+
110+
OCA, or the Odoo Community Association, is a nonprofit organization whose
111+
mission is to support the collaborative development of Odoo features and
112+
promote its widespread use.
113+
114+
.. |maintainer-andreampiovesana| image:: https://github.com/andreampiovesana.png?size=40px
115+
:target: https://github.com/andreampiovesana
116+
:alt: andreampiovesana
117+
118+
Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:
119+
120+
|maintainer-andreampiovesana|
121+
122+
This module is part of the `OCA/l10n-italy <https://github.com/OCA/l10n-italy/tree/18.0/l10n_it_delivery_note_order_link>`_ project on GitHub.
123+
124+
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
from . import models
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Copyright (c) 2019, Openindustry.it Sas
2+
# @author: Andrea Piovesana <andrea.m.piovesana@gmail.com>
3+
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
4+
5+
# noinspection PyStatementEffect
6+
{
7+
"name": "ITA - Documento di trasporto - Collegamento con ordine di "
8+
"vendita/acquisto",
9+
"summary": "Crea collegamento tra i DDT e ordine di vendita/acquisto",
10+
"author": "Openindustry.it Sas, Odoo Community Association (OCA)",
11+
"website": "https://github.com/OCA/l10n-italy",
12+
"version": "18.0.1.0.0",
13+
"license": "AGPL-3",
14+
"maintainers": ["andreampiovesana"],
15+
"category": "Localization/Italy",
16+
"depends": [
17+
"purchase_stock",
18+
"sale_stock",
19+
"l10n_it_delivery_note",
20+
],
21+
"data": [
22+
"views/purchase_order.xml",
23+
"views/sale_order.xml",
24+
],
25+
}
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# Translation of Odoo Server.
2+
# This file contains the translation of the following modules:
3+
# * l10n_it_delivery_note_order_link
4+
#
5+
msgid ""
6+
msgstr ""
7+
"Project-Id-Version: Odoo Server 12.0\n"
8+
"Report-Msgid-Bugs-To: \n"
9+
"POT-Creation-Date: 2020-10-15 08:42+0000\n"
10+
"PO-Revision-Date: 2023-09-20 06:39+0000\n"
11+
"Last-Translator: Francesco Foresti <francesco.foresti@ooops404.com>\n"
12+
"Language-Team: \n"
13+
"Language: it\n"
14+
"MIME-Version: 1.0\n"
15+
"Content-Type: text/plain; charset=UTF-8\n"
16+
"Content-Transfer-Encoding: \n"
17+
"Plural-Forms: nplurals=2; plural=n != 1;\n"
18+
"X-Generator: Weblate 4.17\n"
19+
20+
#. module: l10n_it_delivery_note_order_link
21+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_purchase_order__delivery_note_ids
22+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_sale_order__delivery_note_ids
23+
msgid "Delivery Note"
24+
msgstr "DdT"
25+
26+
#. module: l10n_it_delivery_note_order_link
27+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_purchase_order__delivery_note_count
28+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_sale_order__delivery_note_count
29+
msgid "Delivery Note Count"
30+
msgstr "Conto DdT"
31+
32+
#. module: l10n_it_delivery_note_order_link
33+
#: model:ir.model,name:l10n_it_delivery_note_order_link.model_stock_delivery_note_line
34+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_purchase_order_line__delivery_note_line_ids
35+
msgid "Delivery Note Line"
36+
msgstr "Riga DdT"
37+
38+
#. module: l10n_it_delivery_note_order_link
39+
#: model_terms:ir.ui.view,arch_db:l10n_it_delivery_note_order_link.purchase_order_form_view_delivery_note
40+
#: model_terms:ir.ui.view,arch_db:l10n_it_delivery_note_order_link.sale_order_form_view
41+
msgid "Delivery Notes"
42+
msgstr "DdT"
43+
44+
#. module: l10n_it_delivery_note_order_link
45+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_purchase_order_line__delivery_picking_id
46+
msgid "Delivery Picking"
47+
msgstr "Prelievo DdT"
48+
49+
#. module: l10n_it_delivery_note_order_link
50+
#: model:ir.model,name:l10n_it_delivery_note_order_link.model_purchase_order
51+
msgid "Purchase Order"
52+
msgstr "Ordine di acquisto"
53+
54+
#. module: l10n_it_delivery_note_order_link
55+
#: model:ir.model,name:l10n_it_delivery_note_order_link.model_purchase_order_line
56+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_stock_delivery_note_line__purchase_line_id
57+
msgid "Purchase Order Line"
58+
msgstr "Riga ordine di acquisto"
59+
60+
#. module: l10n_it_delivery_note_order_link
61+
#: model:ir.model,name:l10n_it_delivery_note_order_link.model_sale_order
62+
msgid "Sales Order"
63+
msgstr "Ordine di vendita"
64+
65+
#~ msgid "Sale Order"
66+
#~ msgstr "Ordine di vendita"
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
# Translation of Odoo Server.
2+
# This file contains the translation of the following modules:
3+
# * l10n_it_delivery_note_order_link
4+
#
5+
msgid ""
6+
msgstr ""
7+
"Project-Id-Version: Odoo Server 16.0\n"
8+
"Report-Msgid-Bugs-To: \n"
9+
"Last-Translator: \n"
10+
"Language-Team: \n"
11+
"MIME-Version: 1.0\n"
12+
"Content-Type: text/plain; charset=UTF-8\n"
13+
"Content-Transfer-Encoding: \n"
14+
"Plural-Forms: \n"
15+
16+
#. module: l10n_it_delivery_note_order_link
17+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_purchase_order__delivery_note_ids
18+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_sale_order__delivery_note_ids
19+
msgid "Delivery Note"
20+
msgstr ""
21+
22+
#. module: l10n_it_delivery_note_order_link
23+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_purchase_order__delivery_note_count
24+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_sale_order__delivery_note_count
25+
msgid "Delivery Note Count"
26+
msgstr ""
27+
28+
#. module: l10n_it_delivery_note_order_link
29+
#: model:ir.model,name:l10n_it_delivery_note_order_link.model_stock_delivery_note_line
30+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_purchase_order_line__delivery_note_line_ids
31+
msgid "Delivery Note Line"
32+
msgstr ""
33+
34+
#. module: l10n_it_delivery_note_order_link
35+
#: model_terms:ir.ui.view,arch_db:l10n_it_delivery_note_order_link.purchase_order_form_view_delivery_note
36+
#: model_terms:ir.ui.view,arch_db:l10n_it_delivery_note_order_link.sale_order_form_view
37+
msgid "Delivery Notes"
38+
msgstr ""
39+
40+
#. module: l10n_it_delivery_note_order_link
41+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_purchase_order_line__delivery_picking_id
42+
msgid "Delivery Picking"
43+
msgstr ""
44+
45+
#. module: l10n_it_delivery_note_order_link
46+
#: model:ir.model,name:l10n_it_delivery_note_order_link.model_purchase_order
47+
msgid "Purchase Order"
48+
msgstr ""
49+
50+
#. module: l10n_it_delivery_note_order_link
51+
#: model:ir.model,name:l10n_it_delivery_note_order_link.model_purchase_order_line
52+
#: model:ir.model.fields,field_description:l10n_it_delivery_note_order_link.field_stock_delivery_note_line__purchase_line_id
53+
msgid "Purchase Order Line"
54+
msgstr ""
55+
56+
#. module: l10n_it_delivery_note_order_link
57+
#: model:ir.model,name:l10n_it_delivery_note_order_link.model_sale_order
58+
msgid "Sales Order"
59+
msgstr ""
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
from . import purchase_order
2+
from . import sale_order
3+
from . import stock_delivery_note
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
# Copyright (c) 2019, Link IT Europe Srl
2+
# @author: Matteo Bilotta <mbilotta@linkeurope.it>
3+
4+
from odoo import fields, models
5+
6+
7+
class PurchaseOrder(models.Model):
8+
_inherit = "purchase.order"
9+
10+
delivery_note_ids = fields.Many2many(
11+
"stock.delivery.note", compute="_compute_delivery_notes"
12+
)
13+
delivery_note_count = fields.Integer(compute="_compute_delivery_notes")
14+
15+
def _compute_delivery_notes(self):
16+
for order in self:
17+
delivery_notes = order.order_line.mapped(
18+
"delivery_note_line_ids.delivery_note_id"
19+
)
20+
21+
order.delivery_note_ids = delivery_notes
22+
order.delivery_note_count = len(delivery_notes)
23+
24+
def goto_delivery_notes(self, **kwargs):
25+
delivery_notes = self.mapped("delivery_note_ids")
26+
action = self.env["ir.actions.act_window"]._for_xml_id(
27+
"l10n_it_delivery_note.stock_delivery_note_action"
28+
)
29+
action.update(kwargs)
30+
31+
if len(delivery_notes) > 1:
32+
action["domain"] = [("id", "in", delivery_notes.ids)]
33+
34+
elif len(delivery_notes) == 1:
35+
action["views"] = [
36+
(
37+
self.env.ref(
38+
"l10n_it_delivery_note." "stock_delivery_note_form_view"
39+
).id,
40+
"form",
41+
)
42+
]
43+
action["res_id"] = delivery_notes.id
44+
45+
else:
46+
action = {"type": "ir.actions.act_window_close"}
47+
48+
return action
49+
50+
51+
class PurchaseOrderLine(models.Model):
52+
_inherit = "purchase.order.line"
53+
54+
delivery_note_line_ids = fields.One2many(
55+
"stock.delivery.note.line", "purchase_line_id", readonly=True
56+
)
57+
delivery_picking_id = fields.Many2one("stock.picking", readonly=True, copy=False)
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# Copyright (c) 2019, Openindustry.it Sas
2+
# @author: Andrea Piovesana <andrea.m.piovesana@gmail.com>
3+
4+
from odoo import fields, models
5+
6+
7+
class SaleOrder(models.Model):
8+
_inherit = "sale.order"
9+
10+
delivery_note_ids = fields.Many2many(
11+
"stock.delivery.note", compute="_compute_delivery_notes"
12+
)
13+
delivery_note_count = fields.Integer(compute="_compute_delivery_notes")
14+
15+
def _compute_delivery_notes(self):
16+
for order in self:
17+
delivery_notes = order.order_line.mapped(
18+
"delivery_note_line_ids.delivery_note_id"
19+
)
20+
21+
order.delivery_note_ids = delivery_notes
22+
order.delivery_note_count = len(delivery_notes)
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# @author: Andrea Piovesana <andrea.m.piovesana@gmail.com>
2+
from odoo import fields, models
3+
4+
5+
class StockDeliveryNoteLine(models.Model):
6+
_inherit = "stock.delivery.note.line"
7+
8+
purchase_line_id = fields.Many2one(
9+
"purchase.order.line", related="move_id.purchase_line_id", store=True
10+
)
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[build-system]
2+
requires = ["whool"]
3+
build-backend = "whool.buildapi"

0 commit comments

Comments
 (0)