From 549d782c882adfc2bc551bcccf09e7d2865a9992 Mon Sep 17 00:00:00 2001 From: ps-tubtim Date: Wed, 21 Jul 2021 17:54:11 +0700 Subject: [PATCH 1/6] [14.0][ADD] account_asset_number --- account_asset_number/README.rst | 86 ++++ account_asset_number/__init__.py | 4 + account_asset_number/__manifest__.py | 17 + account_asset_number/models/__init__.py | 4 + account_asset_number/models/account_asset.py | 47 ++ .../models/account_asset_profile.py | 23 + account_asset_number/readme/CONFIGURE.rst | 2 + account_asset_number/readme/CONTRIBUTORS.rst | 3 + account_asset_number/readme/DESCRIPTION.rst | 6 + account_asset_number/report/__init__.py | 3 + .../report/account_asset_number_report.xml | 65 +++ .../report/account_asset_report_xls.py | 24 + .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 431 ++++++++++++++++++ account_asset_number/views/account_asset.xml | 52 +++ .../views/account_asset_profile.xml | 23 + 16 files changed, 790 insertions(+) create mode 100644 account_asset_number/README.rst create mode 100644 account_asset_number/__init__.py create mode 100644 account_asset_number/__manifest__.py create mode 100644 account_asset_number/models/__init__.py create mode 100644 account_asset_number/models/account_asset.py create mode 100644 account_asset_number/models/account_asset_profile.py create mode 100644 account_asset_number/readme/CONFIGURE.rst create mode 100644 account_asset_number/readme/CONTRIBUTORS.rst create mode 100644 account_asset_number/readme/DESCRIPTION.rst create mode 100644 account_asset_number/report/__init__.py create mode 100644 account_asset_number/report/account_asset_number_report.xml create mode 100644 account_asset_number/report/account_asset_report_xls.py create mode 100644 account_asset_number/static/description/icon.png create mode 100644 account_asset_number/static/description/index.html create mode 100644 account_asset_number/views/account_asset.xml create mode 100644 account_asset_number/views/account_asset_profile.xml diff --git a/account_asset_number/README.rst b/account_asset_number/README.rst new file mode 100644 index 000000000..c6e25a12e --- /dev/null +++ b/account_asset_number/README.rst @@ -0,0 +1,86 @@ +======================== +Assets Management Number +======================== + +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! 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-OCA%2Faccount--financial--tools-lightgray.png?logo=github + :target: https://github.com/OCA/account-financial-tools/tree/14.0/account_asset_management_number + :alt: OCA/account-financial-tools +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/account-financial-tools-14-0/account-financial-tools-14-0-account_asset_management_number + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/92/14.0 + :alt: Try me on Runbot + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module adds a asset number for the asset's reference. + +**Notes:** + +If you check "Auto Asset Number by Sequence", +you will not be able to edit the asset number using that asset profile. + +**Table of contents** + +.. contents:: + :local: + +Configuration +============= + +You can set the default asset number by going to *Invoicing > Configuration > Asset Profile*, +and check *Auto Asset Number by Sequence* then select *Asset Number Sequence*. + +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 +~~~~~~~ + +* Ecosoft + +Contributors +~~~~~~~~~~~~ + +* `Ecosoft `__: + + * Pimolnat Suntian + +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. + +This module is part of the `OCA/account-financial-tools `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/account_asset_number/__init__.py b/account_asset_number/__init__.py new file mode 100644 index 000000000..37e105d03 --- /dev/null +++ b/account_asset_number/__init__.py @@ -0,0 +1,4 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import models +from . import report diff --git a/account_asset_number/__manifest__.py b/account_asset_number/__manifest__.py new file mode 100644 index 000000000..516ad3df9 --- /dev/null +++ b/account_asset_number/__manifest__.py @@ -0,0 +1,17 @@ +# Copyright 2021 Ecosoft Co., Ltd. (http://ecosoft.co.th) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +{ + "name": "Assets Number", + "version": "14.0.1.0.0", + "license": "AGPL-3", + "depends": ["account_asset_management"], + "author": "Ecosoft, Odoo Community Association (OCA)", + "website": "https://github.com/OCA/account-financial-tools", + "category": "Accounting & Finance", + "data": [ + "views/account_asset_profile.xml", + "views/account_asset.xml", + "report/account_asset_number_report.xml", + ], +} diff --git a/account_asset_number/models/__init__.py b/account_asset_number/models/__init__.py new file mode 100644 index 000000000..b2b73f37f --- /dev/null +++ b/account_asset_number/models/__init__.py @@ -0,0 +1,4 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import account_asset_profile +from . import account_asset diff --git a/account_asset_number/models/account_asset.py b/account_asset_number/models/account_asset.py new file mode 100644 index 000000000..e80cfacdf --- /dev/null +++ b/account_asset_number/models/account_asset.py @@ -0,0 +1,47 @@ +# Copyright 2021 Ecosoft Co., Ltd. (http://ecosoft.co.th) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import api, fields, models + + +class AccountAsset(models.Model): + _inherit = "account.asset" + _rec_name = "number" + + number = fields.Char( + string="Asset Number", + default="", + index=True, + copy=False, + ) + use_sequence = fields.Boolean(related="profile_id.use_sequence") + + def validate(self): + res = super().validate() + for asset in self: + asset_profile = asset.profile_id + if ( + asset.number in [False, ""] + and asset_profile.use_sequence + and asset_profile.sequence_id + ): + asset.number = asset_profile.sequence_id.next_by_id() + return res + + @api.model + def _xls_acquisition_fields(self): + acquisition_fields = super()._xls_acquisition_fields() + acquisition_fields.insert(acquisition_fields.index("name"), "number") + return acquisition_fields + + @api.model + def _xls_active_fields(self): + active_fields = super()._xls_active_fields() + active_fields.insert(active_fields.index("name"), "number") + return active_fields + + @api.model + def _xls_removal_fields(self): + removal_fields = super()._xls_removal_fields() + removal_fields.insert(removal_fields.index("name"), "number") + return removal_fields diff --git a/account_asset_number/models/account_asset_profile.py b/account_asset_number/models/account_asset_profile.py new file mode 100644 index 000000000..730776a4b --- /dev/null +++ b/account_asset_number/models/account_asset_profile.py @@ -0,0 +1,23 @@ +# Copyright 2021 Ecosoft Co., Ltd. (http://ecosoft.co.th) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import api, fields, models + + +class AccountAssetProfile(models.Model): + _inherit = "account.asset.profile" + + use_sequence = fields.Boolean( + string="Auto Asset Number by Sequence", + default=False, + help="If check, asset number auto run by sequence.", + ) + sequence_id = fields.Many2one( + comodel_name="ir.sequence", + string="Asset Number Sequence", + domain=lambda self: self._get_domain_sequence_id(), + ) + + @api.model + def _get_domain_sequence_id(self): + return [("company_id", "in", [False, self.env.company.id])] diff --git a/account_asset_number/readme/CONFIGURE.rst b/account_asset_number/readme/CONFIGURE.rst new file mode 100644 index 000000000..276289583 --- /dev/null +++ b/account_asset_number/readme/CONFIGURE.rst @@ -0,0 +1,2 @@ +You can set the default asset number by going to *Invoicing > Configuration > Asset Profile*, +and check *Auto Asset Number by Sequence* then select *Asset Number Sequence*. diff --git a/account_asset_number/readme/CONTRIBUTORS.rst b/account_asset_number/readme/CONTRIBUTORS.rst new file mode 100644 index 000000000..ea63aa7bc --- /dev/null +++ b/account_asset_number/readme/CONTRIBUTORS.rst @@ -0,0 +1,3 @@ +* `Ecosoft `__: + + * Pimolnat Suntian diff --git a/account_asset_number/readme/DESCRIPTION.rst b/account_asset_number/readme/DESCRIPTION.rst new file mode 100644 index 000000000..eb49b2a5c --- /dev/null +++ b/account_asset_number/readme/DESCRIPTION.rst @@ -0,0 +1,6 @@ +This module adds a asset number for the asset's reference. + +**Notes:** + +If you check "Auto Asset Number by Sequence", +you will not be able to edit the asset number using that asset profile. diff --git a/account_asset_number/report/__init__.py b/account_asset_number/report/__init__.py new file mode 100644 index 000000000..6203df4f1 --- /dev/null +++ b/account_asset_number/report/__init__.py @@ -0,0 +1,3 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import account_asset_report_xls diff --git a/account_asset_number/report/account_asset_number_report.xml b/account_asset_number/report/account_asset_number_report.xml new file mode 100644 index 000000000..d60e34b45 --- /dev/null +++ b/account_asset_number/report/account_asset_number_report.xml @@ -0,0 +1,65 @@ + + + + + + + Asset Number (PDF) + account.asset + qweb-pdf + account_asset_number.report_asset_number + account_asset_number.report_asset_number + 'Asset Number - %s' % (object.name) + + report + + diff --git a/account_asset_number/report/account_asset_report_xls.py b/account_asset_number/report/account_asset_report_xls.py new file mode 100644 index 000000000..f484b3564 --- /dev/null +++ b/account_asset_number/report/account_asset_report_xls.py @@ -0,0 +1,24 @@ +# Copyright 2021 Ecosoft Co., Ltd. (http://ecosoft.co.th) +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import models + + +class AssetReportXlsx(models.AbstractModel): + _inherit = "report.account_asset_management.asset_report_xls" + + def _get_asset_template(self): + res = super()._get_asset_template() + res.update( + { + "number": { + "header": {"type": "string", "value": self._("Number")}, + "asset": { + "type": "string", + "value": self._render("asset.number or ''"), + }, + "width": 20, + } + } + ) + return res diff --git a/account_asset_number/static/description/icon.png b/account_asset_number/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d GIT binary patch literal 9455 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 z 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 Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 diff --git a/account_asset_number/static/description/index.html b/account_asset_number/static/description/index.html new file mode 100644 index 000000000..53d67c911 --- /dev/null +++ b/account_asset_number/static/description/index.html @@ -0,0 +1,431 @@ + + + + + + +Assets Management Number + + + +
+

Assets Management Number

+ + +

Beta License: AGPL-3 OCA/account-financial-tools Translate me on Weblate Try me on Runbot

+

This module adds a asset number for the asset’s reference.

+

Notes:

+

If you check “Auto Asset Number by Sequence”, +you will not be able to edit the asset number using that asset profile.

+

Table of contents

+ +
+

Configuration

+

You can set the default asset number by going to Invoicing > Configuration > Asset Profile, +and check Auto Asset Number by Sequence then select Asset Number Sequence.

+
+
+

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

+
    +
  • Ecosoft
  • +
+
+
+

Contributors

+ +
+
+

Maintainers

+

This module is maintained by the OCA.

+Odoo Community Association +

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.

+

This module is part of the OCA/account-financial-tools project on GitHub.

+

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

+
+
+
+ + diff --git a/account_asset_number/views/account_asset.xml b/account_asset_number/views/account_asset.xml new file mode 100644 index 000000000..ec61d4645 --- /dev/null +++ b/account_asset_number/views/account_asset.xml @@ -0,0 +1,52 @@ + + + + account.asset.form + account.asset + + +

+ +

+
+
+ + account.asset.tree + account.asset + + + + + + + + + account.asset.search + account.asset + + + + ['|', ('name', 'ilike', self), ('number', 'ilike', self)] + + + +
diff --git a/account_asset_number/views/account_asset_profile.xml b/account_asset_number/views/account_asset_profile.xml new file mode 100644 index 000000000..8122e8348 --- /dev/null +++ b/account_asset_number/views/account_asset_profile.xml @@ -0,0 +1,23 @@ + + + + account.asset.profile.form + account.asset.profile + + + + + + + + + From 11380995bc946c83e82a6f569746e097096fc3b4 Mon Sep 17 00:00:00 2001 From: oca-ci Date: Thu, 5 May 2022 10:31:48 +0000 Subject: [PATCH 2/6] [UPD] Update account_asset_number.pot --- .../i18n/account_asset_number.pot | 98 +++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 account_asset_number/i18n/account_asset_number.pot diff --git a/account_asset_number/i18n/account_asset_number.pot b/account_asset_number/i18n/account_asset_number.pot new file mode 100644 index 000000000..eeaec1b15 --- /dev/null +++ b/account_asset_number/i18n/account_asset_number.pot @@ -0,0 +1,98 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_asset_number +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.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: account_asset_number +#: model:ir.actions.report,print_report_name:account_asset_number.report_account_asset_number +msgid "'Asset Number - %s' % (object.name)" +msgstr "" + +#. module: account_asset_number +#: model_terms:ir.ui.view,arch_db:account_asset_number.report_simple_asset_number +msgid "No number available" +msgstr "" + +#. module: account_asset_number +#: model:ir.model,name:account_asset_number.model_account_asset +msgid "Asset" +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset__number +msgid "Asset Number" +msgstr "" + +#. module: account_asset_number +#: model:ir.actions.report,name:account_asset_number.report_account_asset_number +msgid "Asset Number (PDF)" +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset_profile__sequence_id +msgid "Asset Number Sequence" +msgstr "" + +#. module: account_asset_number +#: model:ir.model,name:account_asset_number.model_account_asset_profile +msgid "Asset profile" +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset__use_sequence +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset_profile__use_sequence +msgid "Auto Asset Number by Sequence" +msgstr "" + +#. module: account_asset_number +#: model_terms:ir.ui.view,arch_db:account_asset_number.report_simple_asset_number +msgid "Barcode" +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset__display_name +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset_profile__display_name +#: model:ir.model.fields,field_description:account_asset_number.field_report_account_asset_management_asset_report_xls__display_name +msgid "Display Name" +msgstr "" + +#. module: account_asset_number +#: model:ir.model,name:account_asset_number.model_report_account_asset_management_asset_report_xls +msgid "Dynamic XLS asset report generator" +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset__id +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset_profile__id +#: model:ir.model.fields,field_description:account_asset_number.field_report_account_asset_management_asset_report_xls__id +msgid "ID" +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,help:account_asset_number.field_account_asset__use_sequence +#: model:ir.model.fields,help:account_asset_number.field_account_asset_profile__use_sequence +msgid "If check, asset number auto run by sequence." +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset____last_update +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset_profile____last_update +#: model:ir.model.fields,field_description:account_asset_number.field_report_account_asset_management_asset_report_xls____last_update +msgid "Last Modified on" +msgstr "" + +#. module: account_asset_number +#: code:addons/account_asset_number/report/account_asset_report_xls.py:0 +#, python-format +msgid "Number" +msgstr "" From b8daef5a2b7f0b3a42ace993ee49c0eb120d44dd Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Thu, 5 May 2022 10:37:19 +0000 Subject: [PATCH 3/6] [UPD] README.rst --- account_asset_number/README.rst | 14 +++++++------- account_asset_number/static/description/index.html | 14 +++++++------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/account_asset_number/README.rst b/account_asset_number/README.rst index c6e25a12e..c5e6a1df1 100644 --- a/account_asset_number/README.rst +++ b/account_asset_number/README.rst @@ -1,6 +1,6 @@ -======================== -Assets Management Number -======================== +============= +Assets Number +============= .. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! This file is generated by oca-gen-addon-readme !! @@ -14,10 +14,10 @@ Assets Management Number :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Faccount--financial--tools-lightgray.png?logo=github - :target: https://github.com/OCA/account-financial-tools/tree/14.0/account_asset_management_number + :target: https://github.com/OCA/account-financial-tools/tree/14.0/account_asset_number :alt: OCA/account-financial-tools .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/account-financial-tools-14-0/account-financial-tools-14-0-account_asset_management_number + :target: https://translation.odoo-community.org/projects/account-financial-tools-14-0/account-financial-tools-14-0-account_asset_number :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png :target: https://runbot.odoo-community.org/runbot/92/14.0 @@ -49,7 +49,7 @@ 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 `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -81,6 +81,6 @@ 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. -This module is part of the `OCA/account-financial-tools `_ project on GitHub. +This module is part of the `OCA/account-financial-tools `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/account_asset_number/static/description/index.html b/account_asset_number/static/description/index.html index 53d67c911..820b426b0 100644 --- a/account_asset_number/static/description/index.html +++ b/account_asset_number/static/description/index.html @@ -3,8 +3,8 @@ - -Assets Management Number + +Assets Number -
-

Assets Management Number

+
+

Assets Number

-

Beta License: AGPL-3 OCA/account-financial-tools Translate me on Weblate Try me on Runbot

+

Beta License: AGPL-3 OCA/account-financial-tools Translate me on Weblate Try me on Runbot

This module adds a asset number for the asset’s reference.

Notes:

If you check “Auto Asset Number by Sequence”, @@ -395,7 +395,7 @@ and check Auto Asset Number by Sequence then select Asset Number Se

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.

+feedback.

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

@@ -422,7 +422,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome

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.

-

This module is part of the OCA/account-financial-tools project on GitHub.

+

This module is part of the OCA/account-financial-tools project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

From 9f6167b6fe85a3e5107f9e1fa3260f8566194286 Mon Sep 17 00:00:00 2001 From: Bole Date: Mon, 22 Aug 2022 18:28:23 +0000 Subject: [PATCH 4/6] Added translation using Weblate (Croatian) --- account_asset_number/i18n/hr.po | 100 ++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 account_asset_number/i18n/hr.po diff --git a/account_asset_number/i18n/hr.po b/account_asset_number/i18n/hr.po new file mode 100644 index 000000000..d47505761 --- /dev/null +++ b/account_asset_number/i18n/hr.po @@ -0,0 +1,100 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * account_asset_number +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: hr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#. module: account_asset_number +#: model:ir.actions.report,print_report_name:account_asset_number.report_account_asset_number +msgid "'Asset Number - %s' % (object.name)" +msgstr "" + +#. module: account_asset_number +#: model_terms:ir.ui.view,arch_db:account_asset_number.report_simple_asset_number +msgid "No number available" +msgstr "" + +#. module: account_asset_number +#: model:ir.model,name:account_asset_number.model_account_asset +msgid "Asset" +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset__number +msgid "Asset Number" +msgstr "" + +#. module: account_asset_number +#: model:ir.actions.report,name:account_asset_number.report_account_asset_number +msgid "Asset Number (PDF)" +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset_profile__sequence_id +msgid "Asset Number Sequence" +msgstr "" + +#. module: account_asset_number +#: model:ir.model,name:account_asset_number.model_account_asset_profile +msgid "Asset profile" +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset__use_sequence +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset_profile__use_sequence +msgid "Auto Asset Number by Sequence" +msgstr "" + +#. module: account_asset_number +#: model_terms:ir.ui.view,arch_db:account_asset_number.report_simple_asset_number +msgid "Barcode" +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset__display_name +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset_profile__display_name +#: model:ir.model.fields,field_description:account_asset_number.field_report_account_asset_management_asset_report_xls__display_name +msgid "Display Name" +msgstr "" + +#. module: account_asset_number +#: model:ir.model,name:account_asset_number.model_report_account_asset_management_asset_report_xls +msgid "Dynamic XLS asset report generator" +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset__id +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset_profile__id +#: model:ir.model.fields,field_description:account_asset_number.field_report_account_asset_management_asset_report_xls__id +msgid "ID" +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,help:account_asset_number.field_account_asset__use_sequence +#: model:ir.model.fields,help:account_asset_number.field_account_asset_profile__use_sequence +msgid "If check, asset number auto run by sequence." +msgstr "" + +#. module: account_asset_number +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset____last_update +#: model:ir.model.fields,field_description:account_asset_number.field_account_asset_profile____last_update +#: model:ir.model.fields,field_description:account_asset_number.field_report_account_asset_management_asset_report_xls____last_update +msgid "Last Modified on" +msgstr "" + +#. module: account_asset_number +#: code:addons/account_asset_number/report/account_asset_report_xls.py:0 +#, python-format +msgid "Number" +msgstr "" From a31a0e26f5646fa0dfed9f28adb1cf8aa18000e8 Mon Sep 17 00:00:00 2001 From: Bole Date: Mon, 22 Aug 2022 18:30:30 +0000 Subject: [PATCH 5/6] Translated using Weblate (Croatian) Currently translated at 73.3% (11 of 15 strings) Translation: account-financial-tools-14.0/account-financial-tools-14.0-account_asset_number Translate-URL: https://translation.odoo-community.org/projects/account-financial-tools-14-0/account-financial-tools-14-0-account_asset_number/hr/ --- account_asset_number/i18n/hr.po | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/account_asset_number/i18n/hr.po b/account_asset_number/i18n/hr.po index d47505761..4513c9ef5 100644 --- a/account_asset_number/i18n/hr.po +++ b/account_asset_number/i18n/hr.po @@ -6,7 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 14.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" +"PO-Revision-Date: 2022-08-22 21:07+0000\n" +"Last-Translator: Bole \n" "Language-Team: none\n" "Language: hr\n" "MIME-Version: 1.0\n" @@ -14,41 +15,42 @@ msgstr "" "Content-Transfer-Encoding: \n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"X-Generator: Weblate 4.3.2\n" #. module: account_asset_number #: model:ir.actions.report,print_report_name:account_asset_number.report_account_asset_number msgid "'Asset Number - %s' % (object.name)" -msgstr "" +msgstr "'Broj sredstva - %s' % (object.name)" #. module: account_asset_number #: model_terms:ir.ui.view,arch_db:account_asset_number.report_simple_asset_number msgid "No number available" -msgstr "" +msgstr "Nema raspoloživih brojeva" #. module: account_asset_number #: model:ir.model,name:account_asset_number.model_account_asset msgid "Asset" -msgstr "" +msgstr "Sredstvo" #. module: account_asset_number #: model:ir.model.fields,field_description:account_asset_number.field_account_asset__number msgid "Asset Number" -msgstr "" +msgstr "Broj sredstva" #. module: account_asset_number #: model:ir.actions.report,name:account_asset_number.report_account_asset_number msgid "Asset Number (PDF)" -msgstr "" +msgstr "Broj sredstva (PDF)" #. module: account_asset_number #: model:ir.model.fields,field_description:account_asset_number.field_account_asset_profile__sequence_id msgid "Asset Number Sequence" -msgstr "" +msgstr "Brojevni krug sredstava" #. module: account_asset_number #: model:ir.model,name:account_asset_number.model_account_asset_profile msgid "Asset profile" -msgstr "" +msgstr "Profil sredstva" #. module: account_asset_number #: model:ir.model.fields,field_description:account_asset_number.field_account_asset__use_sequence @@ -59,14 +61,14 @@ msgstr "" #. module: account_asset_number #: model_terms:ir.ui.view,arch_db:account_asset_number.report_simple_asset_number msgid "Barcode" -msgstr "" +msgstr "Barkod" #. module: account_asset_number #: model:ir.model.fields,field_description:account_asset_number.field_account_asset__display_name #: model:ir.model.fields,field_description:account_asset_number.field_account_asset_profile__display_name #: model:ir.model.fields,field_description:account_asset_number.field_report_account_asset_management_asset_report_xls__display_name msgid "Display Name" -msgstr "" +msgstr "Prikazani naziv" #. module: account_asset_number #: model:ir.model,name:account_asset_number.model_report_account_asset_management_asset_report_xls @@ -78,7 +80,7 @@ msgstr "" #: model:ir.model.fields,field_description:account_asset_number.field_account_asset_profile__id #: model:ir.model.fields,field_description:account_asset_number.field_report_account_asset_management_asset_report_xls__id msgid "ID" -msgstr "" +msgstr "ID" #. module: account_asset_number #: model:ir.model.fields,help:account_asset_number.field_account_asset__use_sequence @@ -97,4 +99,4 @@ msgstr "" #: code:addons/account_asset_number/report/account_asset_report_xls.py:0 #, python-format msgid "Number" -msgstr "" +msgstr "Broj" From eb0d1f28f3772a7f917256501e929eb0465d0cdd Mon Sep 17 00:00:00 2001 From: Saran440 Date: Fri, 2 Dec 2022 12:06:26 +0700 Subject: [PATCH 6/6] [15.0][MIG] account_asset_number --- account_asset_number/__manifest__.py | 2 +- account_asset_number/tests/__init__.py | 1 + .../tests/test_account_asset_number.py | 57 +++++++++++++++++++ .../odoo/addons/account_asset_number | 1 + setup/account_asset_number/setup.py | 6 ++ 5 files changed, 66 insertions(+), 1 deletion(-) create mode 100644 account_asset_number/tests/__init__.py create mode 100644 account_asset_number/tests/test_account_asset_number.py create mode 120000 setup/account_asset_number/odoo/addons/account_asset_number create mode 100644 setup/account_asset_number/setup.py diff --git a/account_asset_number/__manifest__.py b/account_asset_number/__manifest__.py index 516ad3df9..3daf42c25 100644 --- a/account_asset_number/__manifest__.py +++ b/account_asset_number/__manifest__.py @@ -3,7 +3,7 @@ { "name": "Assets Number", - "version": "14.0.1.0.0", + "version": "15.0.1.0.0", "license": "AGPL-3", "depends": ["account_asset_management"], "author": "Ecosoft, Odoo Community Association (OCA)", diff --git a/account_asset_number/tests/__init__.py b/account_asset_number/tests/__init__.py new file mode 100644 index 000000000..4dc632356 --- /dev/null +++ b/account_asset_number/tests/__init__.py @@ -0,0 +1 @@ +from . import test_account_asset_number diff --git a/account_asset_number/tests/test_account_asset_number.py b/account_asset_number/tests/test_account_asset_number.py new file mode 100644 index 000000000..6dc90413d --- /dev/null +++ b/account_asset_number/tests/test_account_asset_number.py @@ -0,0 +1,57 @@ +# Copyright 2022 Ecosoft Co., Ltd. (http://ecosoft.co.th) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +import time + +from odoo.tests import tagged + +from odoo.addons.account_asset_management.tests.test_account_asset_management import ( + TestAssetManagement, +) + + +@tagged("post_install", "-at_install") +class TestAssetNumber(TestAssetManagement): + @classmethod + def setUpClass(cls): + super().setUpClass() + cls.sequence_asset = cls.env["ir.sequence"].create( + { + "name": "Asset Number Test", + "code": "account.asset.sequence", + "implementation": "standard", + "prefix": "AC", + "padding": 5, + } + ) + + def test_01_asset_number(self): + # use sequence number on profile_id + self.car5y.write( + { + "use_sequence": True, + "sequence_id": self.sequence_asset.id, + } + ) + asset = self.asset_model.create( + { + "name": "test asset", + "profile_id": self.car5y.id, + "purchase_value": 1000, + "salvage_value": 0, + "date_start": time.strftime("%Y-07-07"), + "method_time": "year", + "method": "degr-linear", + "method_progress_factor": 0.40, + "method_number": 5, + "method_period": "year", + "prorata": False, + } + ) + asset.compute_depreciation_board() + asset.refresh() + # check number in the asset + self.assertFalse(asset.number) + asset.validate() + self.assertTrue(asset.number) + self.assertEqual(asset.number[:2], "AC") diff --git a/setup/account_asset_number/odoo/addons/account_asset_number b/setup/account_asset_number/odoo/addons/account_asset_number new file mode 120000 index 000000000..1ae42b196 --- /dev/null +++ b/setup/account_asset_number/odoo/addons/account_asset_number @@ -0,0 +1 @@ +../../../../account_asset_number \ No newline at end of file diff --git a/setup/account_asset_number/setup.py b/setup/account_asset_number/setup.py new file mode 100644 index 000000000..28c57bb64 --- /dev/null +++ b/setup/account_asset_number/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +)