From fb63be96f7f9f9a774fd42b94db39077bfd9a5f9 Mon Sep 17 00:00:00 2001 From: Aungkokolin1997 Date: Wed, 17 Jul 2024 12:12:07 +0800 Subject: [PATCH 1/2] [ADD] account_invoice_line_salesperson --- account_invoice_line_salesperson/README.rst | 52 +++ account_invoice_line_salesperson/__init__.py | 1 + .../__manifest__.py | 15 + .../models/__init__.py | 1 + .../models/account_invoice.py | 23 + .../readme/DESCRIPTION.rst | 1 + .../static/description/index.html | 407 ++++++++++++++++++ .../views/account_invoice_views.xml | 14 + .../addons/account_invoice_line_salesperson | 1 + .../account_invoice_line_salesperson/setup.py | 6 + 10 files changed, 521 insertions(+) create mode 100644 account_invoice_line_salesperson/README.rst create mode 100644 account_invoice_line_salesperson/__init__.py create mode 100644 account_invoice_line_salesperson/__manifest__.py create mode 100644 account_invoice_line_salesperson/models/__init__.py create mode 100644 account_invoice_line_salesperson/models/account_invoice.py create mode 100644 account_invoice_line_salesperson/readme/DESCRIPTION.rst create mode 100644 account_invoice_line_salesperson/static/description/index.html create mode 100644 account_invoice_line_salesperson/views/account_invoice_views.xml create mode 120000 setup/account_invoice_line_salesperson/odoo/addons/account_invoice_line_salesperson create mode 100644 setup/account_invoice_line_salesperson/setup.py diff --git a/account_invoice_line_salesperson/README.rst b/account_invoice_line_salesperson/README.rst new file mode 100644 index 00000000..5d365803 --- /dev/null +++ b/account_invoice_line_salesperson/README.rst @@ -0,0 +1,52 @@ +================================ +Account Invoice Line Salesperson +================================ + +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |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-qrtl%2Fhls--custom-lightgray.png?logo=github + :target: https://github.com/qrtl/hls-custom/tree/12.0/account_invoice_line_salesperson + :alt: qrtl/hls-custom + +|badge1| |badge2| |badge3| + +This module adds the salesperson to the account invoice line based on the salesperson of the related sale order line or the salesperson of the invoice. + +**Table of contents** + +.. contents:: + :local: + +Bug Tracker +=========== + +Bugs are tracked on `GitHub 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 `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +~~~~~~~ + +* Quartile + +Maintainers +~~~~~~~~~~~ + +This module is part of the `qrtl/hls-custom `_ project on GitHub. + +You are welcome to contribute. diff --git a/account_invoice_line_salesperson/__init__.py b/account_invoice_line_salesperson/__init__.py new file mode 100644 index 00000000..0650744f --- /dev/null +++ b/account_invoice_line_salesperson/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/account_invoice_line_salesperson/__manifest__.py b/account_invoice_line_salesperson/__manifest__.py new file mode 100644 index 00000000..e74adca9 --- /dev/null +++ b/account_invoice_line_salesperson/__manifest__.py @@ -0,0 +1,15 @@ +# Copyright 2024 Quartile +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). +{ + "name": "Account Invoice Line Salesperson", + "version": "12.0.1.0.0", + "author": "Quartile", + "website": "https://www.quartile.co", + "category": "Invoice", + "license": "AGPL-3", + "depends": ["sale"], + "data": [ + "views/account_invoice_views.xml", + ], + "installable": True, +} diff --git a/account_invoice_line_salesperson/models/__init__.py b/account_invoice_line_salesperson/models/__init__.py new file mode 100644 index 00000000..8e072db8 --- /dev/null +++ b/account_invoice_line_salesperson/models/__init__.py @@ -0,0 +1 @@ +from . import account_invoice diff --git a/account_invoice_line_salesperson/models/account_invoice.py b/account_invoice_line_salesperson/models/account_invoice.py new file mode 100644 index 00000000..c8fa20fa --- /dev/null +++ b/account_invoice_line_salesperson/models/account_invoice.py @@ -0,0 +1,23 @@ +# Copyright 2024 Quartile +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import api, fields, models + + +class AccountInvoiceLine(models.Model): + _inherit = "account.invoice.line" + + user_id = fields.Many2one( + "res.users", compute="_compute_salesperson", string="Salesperson", store=True + ) + + @api.multi + @api.depends("sale_line_ids.order_id.user_id", "invoice_id.user_id") + def _compute_salesperson(self): + for line in self: + if line.invoice_type not in ("out_invoice", "out_refund"): + continue + if line.sale_line_ids: + line.user_id = line.sale_line_ids[0].order_id.user_id + continue + line.user_id = line.invoice_id.user_id diff --git a/account_invoice_line_salesperson/readme/DESCRIPTION.rst b/account_invoice_line_salesperson/readme/DESCRIPTION.rst new file mode 100644 index 00000000..199853fe --- /dev/null +++ b/account_invoice_line_salesperson/readme/DESCRIPTION.rst @@ -0,0 +1 @@ +This module adds the salesperson to the account invoice line based on the salesperson of the related sale order line or the salesperson of the invoice. diff --git a/account_invoice_line_salesperson/static/description/index.html b/account_invoice_line_salesperson/static/description/index.html new file mode 100644 index 00000000..17fd5ddc --- /dev/null +++ b/account_invoice_line_salesperson/static/description/index.html @@ -0,0 +1,407 @@ + + + + + + +Account Invoice Line Salesperson + + + +
+

Account Invoice Line Salesperson

+ + +

Beta License: AGPL-3 qrtl/hls-custom

+

This module adds the salesperson to the account invoice line based on the salesperson of the related sale order line or the salesperson of the invoice.

+

Table of contents

+ +
+

Bug Tracker

+

Bugs are tracked on GitHub 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.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Authors

+
    +
  • Quartile
  • +
+
+
+

Maintainers

+

This module is part of the qrtl/hls-custom project on GitHub.

+

You are welcome to contribute.

+
+
+
+ + diff --git a/account_invoice_line_salesperson/views/account_invoice_views.xml b/account_invoice_line_salesperson/views/account_invoice_views.xml new file mode 100644 index 00000000..49786bcd --- /dev/null +++ b/account_invoice_line_salesperson/views/account_invoice_views.xml @@ -0,0 +1,14 @@ + + + + account.invoice.form.inherit + account.invoice + + + + + + + + + diff --git a/setup/account_invoice_line_salesperson/odoo/addons/account_invoice_line_salesperson b/setup/account_invoice_line_salesperson/odoo/addons/account_invoice_line_salesperson new file mode 120000 index 00000000..3d5b4c05 --- /dev/null +++ b/setup/account_invoice_line_salesperson/odoo/addons/account_invoice_line_salesperson @@ -0,0 +1 @@ +../../../../account_invoice_line_salesperson \ No newline at end of file diff --git a/setup/account_invoice_line_salesperson/setup.py b/setup/account_invoice_line_salesperson/setup.py new file mode 100644 index 00000000..28c57bb6 --- /dev/null +++ b/setup/account_invoice_line_salesperson/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +) From 1f22e60cb21c275728efe798b43c2533e49633a7 Mon Sep 17 00:00:00 2001 From: Aungkokolin1997 Date: Wed, 17 Jul 2024 15:47:17 +0800 Subject: [PATCH 2/2] adj --- .../views/account_invoice_views.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/account_invoice_line_salesperson/views/account_invoice_views.xml b/account_invoice_line_salesperson/views/account_invoice_views.xml index 49786bcd..bdab63aa 100644 --- a/account_invoice_line_salesperson/views/account_invoice_views.xml +++ b/account_invoice_line_salesperson/views/account_invoice_views.xml @@ -6,8 +6,7 @@ - - +