From 76aeac4c64a46756d30159a42499fccb045cef05 Mon Sep 17 00:00:00 2001 From: RPSJR Date: Thu, 23 Nov 2023 18:15:36 -0300 Subject: [PATCH 01/12] [ADD] fleet_vehicle_ownership rfc rfc clean up [RFC] cleanup redundant files pre-commit [RFC] improve res_partner pre-commit typo typo typo [RFC] default_owner_id [RFC] tests --- fleet_vehicle_ownership/README.rst | 106 ++++ fleet_vehicle_ownership/__init__.py | 1 + fleet_vehicle_ownership/__manifest__.py | 19 + .../demo/fleet_vehicle.xml | 21 + fleet_vehicle_ownership/models/__init__.py | 2 + .../models/fleet_vehicle.py | 18 + fleet_vehicle_ownership/models/res_partner.py | 38 ++ fleet_vehicle_ownership/readme/CONTEXT.md | 9 + .../readme/CONTRIBUTORS.md | 1 + fleet_vehicle_ownership/readme/DESCRIPTION.md | 1 + fleet_vehicle_ownership/readme/USAGE.md | 3 + .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 452 ++++++++++++++++++ fleet_vehicle_ownership/tests/__init__.py | 1 + .../tests/test_fleet_vehicle_owner.py | 77 +++ .../views/fleet_vehicle.xml | 23 + fleet_vehicle_ownership/views/res_partner.xml | 24 + 17 files changed, 796 insertions(+) create mode 100644 fleet_vehicle_ownership/README.rst create mode 100644 fleet_vehicle_ownership/__init__.py create mode 100644 fleet_vehicle_ownership/__manifest__.py create mode 100644 fleet_vehicle_ownership/demo/fleet_vehicle.xml create mode 100644 fleet_vehicle_ownership/models/__init__.py create mode 100644 fleet_vehicle_ownership/models/fleet_vehicle.py create mode 100644 fleet_vehicle_ownership/models/res_partner.py create mode 100644 fleet_vehicle_ownership/readme/CONTEXT.md create mode 100644 fleet_vehicle_ownership/readme/CONTRIBUTORS.md create mode 100644 fleet_vehicle_ownership/readme/DESCRIPTION.md create mode 100644 fleet_vehicle_ownership/readme/USAGE.md create mode 100644 fleet_vehicle_ownership/static/description/icon.png create mode 100644 fleet_vehicle_ownership/static/description/index.html create mode 100644 fleet_vehicle_ownership/tests/__init__.py create mode 100644 fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py create mode 100644 fleet_vehicle_ownership/views/fleet_vehicle.xml create mode 100644 fleet_vehicle_ownership/views/res_partner.xml diff --git a/fleet_vehicle_ownership/README.rst b/fleet_vehicle_ownership/README.rst new file mode 100644 index 000000000..eb952bd11 --- /dev/null +++ b/fleet_vehicle_ownership/README.rst @@ -0,0 +1,106 @@ +======================= +Fleet Vehicle Ownership +======================= + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:c10570fb68e2d39efee546647fe22fcfc8b4b8022f384619750d9cd0d8428027 + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |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%2Ffleet-lightgray.png?logo=github + :target: https://github.com/OCA/fleet/tree/14.0/fleet_vehicle_ownership + :alt: OCA/fleet +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/fleet-14-0/fleet-14-0-fleet_vehicle_ownership + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/fleet&target_branch=14.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module extends the functionality of fleet to support vehicle owner +data and to allow you to add vehicle ownership, linking partners to +vehicles + +**Table of contents** + +.. contents:: + :local: + +Use Cases / Context +=================== + +This is an extension of the 'fleet.vehicle' model in the Odoo framework. +It introduces a new field, 'owner_id', to track and associate the owner +of a vehicle. + +Fields: + +- owner_id: Many2one field linking to the 'res.partner' model. It + represents the owner of the vehicle. + +Usage: + +- This extension is particularly useful in scenarios where it's + essential to associate each fleet vehicle with a specific owner. +- The 'owner_id' field can be utilized to establish relationships with + partners in the 'res.partner' model, facilitating clear ownership + tracking. + +Usage +===== + +To use this module, you need to: + +1. Go to the veichle form and associate an owner or go to the partner + form and associate a vehicle. + +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 to smash it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +------- + +* RPSJR + +Contributors +------------ + +- Raimundo Junior raimundopsjr@gmail.com + +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/fleet `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/fleet_vehicle_ownership/__init__.py b/fleet_vehicle_ownership/__init__.py new file mode 100644 index 000000000..0650744f6 --- /dev/null +++ b/fleet_vehicle_ownership/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/fleet_vehicle_ownership/__manifest__.py b/fleet_vehicle_ownership/__manifest__.py new file mode 100644 index 000000000..65f7afb4b --- /dev/null +++ b/fleet_vehicle_ownership/__manifest__.py @@ -0,0 +1,19 @@ +# Copyright 2023 RPSJR +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +{ + "name": "Fleet Vehicle Ownership", + "summary": "Add vehicle ownership, linking partners to vehicles", + "version": "14.0.1.0.0", + "license": "AGPL-3", + "author": "RPSJR,Odoo Community Association (OCA)", + "website": "https://github.com/OCA/fleet", + "depends": ["fleet"], + "data": [ + "views/res_partner.xml", + "views/fleet_vehicle.xml", + ], + "demo": [ + "demo/fleet_vehicle.xml", + ], +} diff --git a/fleet_vehicle_ownership/demo/fleet_vehicle.xml b/fleet_vehicle_ownership/demo/fleet_vehicle.xml new file mode 100644 index 000000000..1e73af42f --- /dev/null +++ b/fleet_vehicle_ownership/demo/fleet_vehicle.xml @@ -0,0 +1,21 @@ + + + + + + 4-LH-44 + 44444 + 1 + Silver + Silverstone + + + kilometers + 44000 + + + diff --git a/fleet_vehicle_ownership/models/__init__.py b/fleet_vehicle_ownership/models/__init__.py new file mode 100644 index 000000000..b82fded72 --- /dev/null +++ b/fleet_vehicle_ownership/models/__init__.py @@ -0,0 +1,2 @@ +from . import fleet_vehicle +from . import res_partner diff --git a/fleet_vehicle_ownership/models/fleet_vehicle.py b/fleet_vehicle_ownership/models/fleet_vehicle.py new file mode 100644 index 000000000..9a3ce6b92 --- /dev/null +++ b/fleet_vehicle_ownership/models/fleet_vehicle.py @@ -0,0 +1,18 @@ +# Copyright 2023 RPSJR +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import fields, models + + +class FleetVehicle(models.Model): + + _inherit = "fleet.vehicle" + + owner_id = fields.Many2one( + "res.partner", + "Owner", + index=True, + tracking=True, + help="Owner of the vehicle", + copy=False, + ) diff --git a/fleet_vehicle_ownership/models/res_partner.py b/fleet_vehicle_ownership/models/res_partner.py new file mode 100644 index 000000000..af82e9c9d --- /dev/null +++ b/fleet_vehicle_ownership/models/res_partner.py @@ -0,0 +1,38 @@ +# Copyright 2023 RPSJR +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import api, fields, models + + +class ResPartner(models.Model): + _inherit = "res.partner" + + @api.depends("vehicle_ids") + def _compute_vehicle_count(self): + for rec in self: + rec.vehicle_count = len(rec.vehicle_ids) + + vehicle_ids = fields.One2many( + "fleet.vehicle", + "owner_id", + required=True, + help="Vehicles owned by this partner", + ) + vehicle_count = fields.Integer( + compute=_compute_vehicle_count, string="Number of Vehicles", store=True + ) + + def action_view_vehicles(self): + self.ensure_one() + xmlid = "fleet.fleet_vehicle_action" + action = self.env["ir.actions.act_window"]._for_xml_id(xmlid) + action["context"] = self.env.context.copy() + action["context"].update({"default_owner_id": self.id}) + if self.vehicle_count > 1: + action["domain"] = [("id", "in", self.vehicle_ids.ids)] + else: + action["views"] = [ + (self.env.ref("fleet.fleet_vehicle_view_form").id, "form") + ] + action["res_id"] = self.vehicle_ids and self.vehicle_ids.ids[0] or False + return action diff --git a/fleet_vehicle_ownership/readme/CONTEXT.md b/fleet_vehicle_ownership/readme/CONTEXT.md new file mode 100644 index 000000000..f0fb63ecc --- /dev/null +++ b/fleet_vehicle_ownership/readme/CONTEXT.md @@ -0,0 +1,9 @@ +This is an extension of the 'fleet.vehicle' model in the Odoo framework. +It introduces a new field, 'owner_id', to track and associate the owner of a vehicle. + +Fields: +- owner_id: Many2one field linking to the 'res.partner' model. It represents the owner of the vehicle. + +Usage: +- This extension is particularly useful in scenarios where it's essential to associate each fleet vehicle with a specific owner. +- The 'owner_id' field can be utilized to establish relationships with partners in the 'res.partner' model, facilitating clear ownership tracking. diff --git a/fleet_vehicle_ownership/readme/CONTRIBUTORS.md b/fleet_vehicle_ownership/readme/CONTRIBUTORS.md new file mode 100644 index 000000000..e3fe9dd49 --- /dev/null +++ b/fleet_vehicle_ownership/readme/CONTRIBUTORS.md @@ -0,0 +1 @@ +- Raimundo Junior diff --git a/fleet_vehicle_ownership/readme/DESCRIPTION.md b/fleet_vehicle_ownership/readme/DESCRIPTION.md new file mode 100644 index 000000000..8bfb0f1cb --- /dev/null +++ b/fleet_vehicle_ownership/readme/DESCRIPTION.md @@ -0,0 +1 @@ +This module extends the functionality of fleet to support vehicle owner data and to allow you to add vehicle ownership, linking partners to vehicles diff --git a/fleet_vehicle_ownership/readme/USAGE.md b/fleet_vehicle_ownership/readme/USAGE.md new file mode 100644 index 000000000..d0e67afdf --- /dev/null +++ b/fleet_vehicle_ownership/readme/USAGE.md @@ -0,0 +1,3 @@ +To use this module, you need to: + +1. Go to the veichle form and associate an owner or go to the partner form and associate a vehicle. diff --git a/fleet_vehicle_ownership/static/description/icon.png b/fleet_vehicle_ownership/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d GIT binary patch literal 9455 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 z z?n?eq1XP>p-IM$Z^C;2L3itnbJZAip*Zo0aw2bs8@(s^~*8T9go!%dHcAz2lM;`yp zD=7&xjFV$S&5uDaiScyD?B-i1ze`+CoRtz`Wn+Zl&#s4&}MO{@N!ufrzjG$B79)Y2d3tBk&)TxUTw@QS0TEL_?njX|@vq?Uz(nBFK5Pq7*xj#u*R&i|?7+6# z+|r_n#SW&LXhtheZdah{ZVoqwyT{D>MC3nkFF#N)xLi{p7J1jXlmVeb;cP5?e(=f# zuT7fvjSbjS781v?7{)-X3*?>tq?)Yd)~|1{BDS(pqC zC}~H#WXlkUW*H5CDOo<)#x7%RY)A;ShGhI5s*#cRDA8YgqG(HeKDx+#(ZQ?386dv! zlXCO)w91~Vw4AmOcATuV653fa9R$fyK8ul%rG z-wfS zihugoZyr38Im?Zuh6@RcF~t1anQu7>#lPpb#}4cOA!EM11`%f*07RqOVkmX{p~KJ9 z^zP;K#|)$`^Rb{rnHGH{~>1(fawV0*Z#)}M`m8-?ZJV<+e}s9wE# z)l&az?w^5{)`S(%MRzxdNqrs1n*-=jS^_jqE*5XDrA0+VE`5^*p3CuM<&dZEeCjoz zR;uu_H9ZPZV|fQq`Cyw4nscrVwi!fE6ciMmX$!_hN7uF;jjKG)d2@aC4ropY)8etW=xJvni)8eHi`H$%#zn^WJ5NLc-rqk|u&&4Z6fD_m&JfSI1Bvb?b<*n&sfl0^t z=HnmRl`XrFvMKB%9}>PaA`m-fK6a0(8=qPkWS5bb4=v?XcWi&hRY?O5HdulRi4?fN zlsJ*N-0Qw+Yic@s0(2uy%F@ib;GjXt01Fmx5XbRo6+n|pP(&nodMoap^z{~q ziEeaUT@Mxe3vJSfI6?uLND(CNr=#^W<1b}jzW58bIfyWTDle$mmS(|x-0|2UlX+9k zQ^EX7Nw}?EzVoBfT(-LT|=9N@^hcn-_p&sqG z&*oVs2JSU+N4ZD`FhCAWaS;>|wH2G*Id|?pa#@>tyxX`+4HyIArWDvVrX)2WAOQff z0qyHu&-S@i^MS-+j--!pr4fPBj~_8({~e1bfcl0wI1kaoN>mJL6KUPQm5N7lB(ui1 zE-o%kq)&djzWJ}ob<-GfDlkB;F31j-VHKvQUGQ3sp`CwyGJk_i!y^sD0fqC@$9|jO zOqN!r!8-p==F@ZVP=U$qSpY(gQ0)59P1&t@y?5rvg<}E+GB}26NYPp4f2YFQrQtot5mn3wu_qprZ=>Ig-$ zbW26Ws~IgY>}^5w`vTB(G`PTZaDiGBo5o(tp)qli|NeV( z@H_=R8V39rt5J5YB2Ky?4eJJ#b`_iBe2ot~6%7mLt5t8Vwi^Jy7|jWXqa3amOIoRb zOr}WVFP--DsS`1WpN%~)t3R!arKF^Q$e12KEqU36AWwnCBICpH4XCsfnyrHr>$I$4 z!DpKX$OKLWarN7nv@!uIA+~RNO)l$$w}p(;b>mx8pwYvu;dD_unryX_NhT8*Tj>BTrTTL&!?O+%Rv;b?B??gSzdp?6Uug9{ zd@V08Z$BdI?fpoCS$)t4mg4rT8Q_I}h`0d-vYZ^|dOB*Q^S|xqTV*vIg?@fVFSmMpaw0qtTRbx} z({Pg?#{2`sc9)M5N$*N|4;^t$+QP?#mov zGVC@I*lBVrOU-%2y!7%)fAKjpEFsgQc4{amtiHb95KQEwvf<(3T<9-Zm$xIew#P22 zc2Ix|App^>v6(3L_MCU0d3W##AB0M~3D00EWoKZqsJYT(#@w$Y_H7G22M~ApVFTRHMI_3be)Lkn#0F*V8Pq zc}`Cjy$bE;FJ6H7p=0y#R>`}-m4(0F>%@P|?7fx{=R^uFdISRnZ2W_xQhD{YuR3t< z{6yxu=4~JkeA;|(J6_nv#>Nvs&FuLA&PW^he@t(UwFFE8)|a!R{`E`K`i^ZnyE4$k z;(749Ix|oi$c3QbEJ3b~D_kQsPz~fIUKym($a_7dJ?o+40*OLl^{=&oq$<#Q(yyrp z{J-FAniyAw9tPbe&IhQ|a`DqFTVQGQ&Gq3!C2==4x{6EJwiPZ8zub-iXoUtkJiG{} zPaR&}_fn8_z~(=;5lD-aPWD3z8PZS@AaUiomF!G8I}Mf>e~0g#BelA-5#`cj;O5>N Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 diff --git a/fleet_vehicle_ownership/static/description/index.html b/fleet_vehicle_ownership/static/description/index.html new file mode 100644 index 000000000..ac1481ca2 --- /dev/null +++ b/fleet_vehicle_ownership/static/description/index.html @@ -0,0 +1,452 @@ + + + + + + +Fleet Vehicle Ownership + + + +
+

Fleet Vehicle Ownership

+ + +

Beta License: AGPL-3 OCA/fleet Translate me on Weblate Try me on Runboat

+

This module extends the functionality of fleet to support vehicle owner +data and to allow you to add vehicle ownership, linking partners to +vehicles

+

Table of contents

+ +
+

Use Cases / Context

+

This is an extension of the ‘fleet.vehicle’ model in the Odoo framework. +It introduces a new field, ‘owner_id’, to track and associate the owner +of a vehicle.

+

Fields:

+
    +
  • owner_id: Many2one field linking to the ‘res.partner’ model. It +represents the owner of the vehicle.
  • +
+

Usage:

+
    +
  • This extension is particularly useful in scenarios where it’s +essential to associate each fleet vehicle with a specific owner.
  • +
  • The ‘owner_id’ field can be utilized to establish relationships with +partners in the ‘res.partner’ model, facilitating clear ownership +tracking.
  • +
+
+
+

Usage

+

To use this module, you need to:

+
    +
  1. Go to the veichle form and associate an owner or go to the partner +form and associate a vehicle.
  2. +
+
+
+

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 to smash it by providing a detailed and welcomed +feedback.

+

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

+
+
+

Credits

+
+

Authors

+
    +
  • RPSJR
  • +
+
+
+

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/fleet project on GitHub.

+

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

+
+
+
+ + diff --git a/fleet_vehicle_ownership/tests/__init__.py b/fleet_vehicle_ownership/tests/__init__.py new file mode 100644 index 000000000..e739f779c --- /dev/null +++ b/fleet_vehicle_ownership/tests/__init__.py @@ -0,0 +1 @@ +from . import test_fleet_vehicle_owner diff --git a/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py b/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py new file mode 100644 index 000000000..87e73749b --- /dev/null +++ b/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py @@ -0,0 +1,77 @@ +from odoo.tests import SavepointCase + + +class TestFleetVehicleOwner(SavepointCase): + def setUp(self): + super(TestFleetVehicleOwner, self).setUp() + + # Create necessary test data here, such as a partner and vehicles + self.partner = self.env["res.partner"].create( + { + "name": "Lewis Hamilton", + } + ) + self.vehicle1 = self.env["fleet.vehicle"].create( + { + "license_plate": "1-ACK-554", + "vin_sn": "8833334", + "color": "Black", + "location": "Grand-Rosiere", + "doors": 5, + "driver_id": self.partner.id, + "owner_id": self.partner.id, + "odometer_unit": "kilometers", + "car_value": 20000, + "model_id": self.env.ref("fleet.model_astra").id, + } + ) + self.vehicle2 = self.env["fleet.vehicle"].create( + { + "license_plate": "1-ACK-544", + "vin_sn": "8833332", + "color": "Black", + "location": "Grand-Rosiere", + "doors": 5, + "driver_id": self.partner.id, + "owner_id": self.partner.id, + "odometer_unit": "kilometers", + "car_value": 30000, + "model_id": self.env.ref("fleet.model_astra").id, + } + ) + + def test_compute_vehicle_count(self): + # Check if the vehicle count is computed correctly, + # test starts with test partner owing 2 vehucles + self.assertEqual(self.partner.vehicle_count, 2, "Vehicle count is incorrect") + + def test_action_view_vehicles(self): + # Check if action_view_vehicles method returns the correct action + action = self.partner.action_view_vehicles() + + # Assert that the action is correctly configured + self.assertEqual( + action["res_model"], "fleet.vehicle", "Incorrect res_model in action" + ) + self.assertEqual(action["name"], "Vehicles", "Incorrect name in action") + + # Test when there is more than one vehicle + action = self.partner.action_view_vehicles() + self.assertTrue( + action["domain"], + "Incorrect domain when multiple vehicles", + ) + + # Test when there is only one vehicle + self.vehicle2.owner_id = None + action = self.partner.action_view_vehicles() + self.assertEqual( + action["views"], + [(self.env.ref("fleet.fleet_vehicle_view_form").id, "form")], + "Incorrect views when only one vehicle", + ) + self.assertEqual( + action["res_id"], + self.partner.vehicle_ids.ids[0], + "Incorrect res_id when only one vehicle", + ) diff --git a/fleet_vehicle_ownership/views/fleet_vehicle.xml b/fleet_vehicle_ownership/views/fleet_vehicle.xml new file mode 100644 index 000000000..901ae1f74 --- /dev/null +++ b/fleet_vehicle_ownership/views/fleet_vehicle.xml @@ -0,0 +1,23 @@ + + + + fleet.vehicle.form.inherited + fleet.vehicle + + + + + + + + + fleet.vehicle.tree.inherited + fleet.vehicle + + + + + + + + diff --git a/fleet_vehicle_ownership/views/res_partner.xml b/fleet_vehicle_ownership/views/res_partner.xml new file mode 100644 index 000000000..086703f99 --- /dev/null +++ b/fleet_vehicle_ownership/views/res_partner.xml @@ -0,0 +1,24 @@ + + + + + res.partner + + +
+ +
+
+
+
From 99921f112d55f714b6f6d05236c1aba0d5735919 Mon Sep 17 00:00:00 2001 From: oca-ci Date: Sun, 26 Nov 2023 18:21:23 +0000 Subject: [PATCH 02/12] [UPD] Update fleet_vehicle_ownership.pot --- .../i18n/fleet_vehicle_ownership.pot | 71 +++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot diff --git a/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot b/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot new file mode 100644 index 000000000..d7479182b --- /dev/null +++ b/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot @@ -0,0 +1,71 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fleet_vehicle_ownership +# +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: fleet_vehicle_ownership +#: model_terms:ir.ui.view,arch_db:fleet_vehicle_ownership.view_partner_vehicle_owner_form +msgid " Vehicles" +msgstr "" + +#. module: fleet_vehicle_ownership +#: model:ir.model,name:fleet_vehicle_ownership.model_res_partner +msgid "Contact" +msgstr "" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__display_name +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__display_name +msgid "Display Name" +msgstr "" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__id +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__id +msgid "ID" +msgstr "" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle____last_update +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner____last_update +msgid "Last Modified on" +msgstr "" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__vehicle_count +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_users__vehicle_count +msgid "Number of Vehicles" +msgstr "" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__owner_id +msgid "Owner" +msgstr "" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,help:fleet_vehicle_ownership.field_fleet_vehicle__owner_id +msgid "Owner of the vehicle" +msgstr "" + +#. module: fleet_vehicle_ownership +#: model:ir.model,name:fleet_vehicle_ownership.model_fleet_vehicle +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__vehicle_ids +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_users__vehicle_ids +msgid "Vehicle" +msgstr "" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,help:fleet_vehicle_ownership.field_res_partner__vehicle_ids +#: model:ir.model.fields,help:fleet_vehicle_ownership.field_res_users__vehicle_ids +msgid "Vehicles owned by this partner" +msgstr "" From a2854932c1ba12cb7c2047f0d3cb331e9dfe28b1 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Sun, 26 Nov 2023 18:24:48 +0000 Subject: [PATCH 03/12] [BOT] post-merge updates --- fleet_vehicle_ownership/README.rst | 2 +- fleet_vehicle_ownership/static/description/index.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/fleet_vehicle_ownership/README.rst b/fleet_vehicle_ownership/README.rst index eb952bd11..99a95c7f4 100644 --- a/fleet_vehicle_ownership/README.rst +++ b/fleet_vehicle_ownership/README.rst @@ -7,7 +7,7 @@ Fleet Vehicle Ownership !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:c10570fb68e2d39efee546647fe22fcfc8b4b8022f384619750d9cd0d8428027 + !! source digest: sha256:39c83b569e2c9772a90ddcbe8445fd5e2975d5381b987b8546fa07ebbe044843 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png diff --git a/fleet_vehicle_ownership/static/description/index.html b/fleet_vehicle_ownership/static/description/index.html index ac1481ca2..f14035c74 100644 --- a/fleet_vehicle_ownership/static/description/index.html +++ b/fleet_vehicle_ownership/static/description/index.html @@ -367,7 +367,7 @@

Fleet Vehicle Ownership

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:c10570fb68e2d39efee546647fe22fcfc8b4b8022f384619750d9cd0d8428027 +!! source digest: sha256:39c83b569e2c9772a90ddcbe8445fd5e2975d5381b987b8546fa07ebbe044843 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Beta License: AGPL-3 OCA/fleet Translate me on Weblate Try me on Runboat

This module extends the functionality of fleet to support vehicle owner From ea7743da239fc429501a4bd44a1f820228c90c44 Mon Sep 17 00:00:00 2001 From: mymage Date: Thu, 30 Nov 2023 12:46:40 +0000 Subject: [PATCH 04/12] Added translation using Weblate (Italian) --- fleet_vehicle_ownership/i18n/it.po | 74 ++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 fleet_vehicle_ownership/i18n/it.po diff --git a/fleet_vehicle_ownership/i18n/it.po b/fleet_vehicle_ownership/i18n/it.po new file mode 100644 index 000000000..ae8d6a5cd --- /dev/null +++ b/fleet_vehicle_ownership/i18n/it.po @@ -0,0 +1,74 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fleet_vehicle_ownership +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2023-11-30 15:35+0000\n" +"Last-Translator: mymage \n" +"Language-Team: none\n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" + +#. module: fleet_vehicle_ownership +#: model_terms:ir.ui.view,arch_db:fleet_vehicle_ownership.view_partner_vehicle_owner_form +msgid " Vehicles" +msgstr " Veicoli" + +#. module: fleet_vehicle_ownership +#: model:ir.model,name:fleet_vehicle_ownership.model_res_partner +msgid "Contact" +msgstr "Contatto" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__display_name +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__display_name +msgid "Display Name" +msgstr "Nome visualizzato" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__id +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__id +msgid "ID" +msgstr "ID" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle____last_update +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner____last_update +msgid "Last Modified on" +msgstr "Ultima modifica il" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__vehicle_count +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_users__vehicle_count +msgid "Number of Vehicles" +msgstr "Numero di veicoli" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__owner_id +msgid "Owner" +msgstr "Proprietario" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,help:fleet_vehicle_ownership.field_fleet_vehicle__owner_id +msgid "Owner of the vehicle" +msgstr "Proprietario del veicolo" + +#. module: fleet_vehicle_ownership +#: model:ir.model,name:fleet_vehicle_ownership.model_fleet_vehicle +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__vehicle_ids +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_users__vehicle_ids +msgid "Vehicle" +msgstr "Veicolo" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,help:fleet_vehicle_ownership.field_res_partner__vehicle_ids +#: model:ir.model.fields,help:fleet_vehicle_ownership.field_res_users__vehicle_ids +msgid "Vehicles owned by this partner" +msgstr "Veicoli proprietà di questo partner" From 4b911348bbe9f7c9a137e23c23e2c43400e2570c Mon Sep 17 00:00:00 2001 From: Ivorra78 Date: Tue, 19 Mar 2024 06:53:41 +0000 Subject: [PATCH 05/12] Added translation using Weblate (Spanish) --- fleet_vehicle_ownership/i18n/es.po | 74 ++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 fleet_vehicle_ownership/i18n/es.po diff --git a/fleet_vehicle_ownership/i18n/es.po b/fleet_vehicle_ownership/i18n/es.po new file mode 100644 index 000000000..ffe08afaf --- /dev/null +++ b/fleet_vehicle_ownership/i18n/es.po @@ -0,0 +1,74 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fleet_vehicle_ownership +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2024-03-19 08:36+0000\n" +"Last-Translator: Ivorra78 \n" +"Language-Team: none\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" + +#. module: fleet_vehicle_ownership +#: model_terms:ir.ui.view,arch_db:fleet_vehicle_ownership.view_partner_vehicle_owner_form +msgid " Vehicles" +msgstr " Vehículos" + +#. module: fleet_vehicle_ownership +#: model:ir.model,name:fleet_vehicle_ownership.model_res_partner +msgid "Contact" +msgstr "Contacto" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__display_name +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__display_name +msgid "Display Name" +msgstr "Mostrar Nombre" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__id +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__id +msgid "ID" +msgstr "ID" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle____last_update +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner____last_update +msgid "Last Modified on" +msgstr "Última Modificación el" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__vehicle_count +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_users__vehicle_count +msgid "Number of Vehicles" +msgstr "Número de Vehículos" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__owner_id +msgid "Owner" +msgstr "Porpietario" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,help:fleet_vehicle_ownership.field_fleet_vehicle__owner_id +msgid "Owner of the vehicle" +msgstr "Propietario del vehículo" + +#. module: fleet_vehicle_ownership +#: model:ir.model,name:fleet_vehicle_ownership.model_fleet_vehicle +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__vehicle_ids +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_users__vehicle_ids +msgid "Vehicle" +msgstr "Vehículo" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,help:fleet_vehicle_ownership.field_res_partner__vehicle_ids +#: model:ir.model.fields,help:fleet_vehicle_ownership.field_res_users__vehicle_ids +msgid "Vehicles owned by this partner" +msgstr "Vehículos propiedad de este socio" From b1e97577cc6afcc131cb66f9736ca6f1ee9c2a14 Mon Sep 17 00:00:00 2001 From: Marcel Savegnago Date: Fri, 13 Sep 2024 21:01:24 +0000 Subject: [PATCH 06/12] Added translation using Weblate (Portuguese (Brazil)) --- fleet_vehicle_ownership/i18n/pt_BR.po | 74 +++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 fleet_vehicle_ownership/i18n/pt_BR.po diff --git a/fleet_vehicle_ownership/i18n/pt_BR.po b/fleet_vehicle_ownership/i18n/pt_BR.po new file mode 100644 index 000000000..f4a3368e1 --- /dev/null +++ b/fleet_vehicle_ownership/i18n/pt_BR.po @@ -0,0 +1,74 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fleet_vehicle_ownership +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2024-09-13 23:06+0000\n" +"Last-Translator: Marcel Savegnago \n" +"Language-Team: none\n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n > 1;\n" +"X-Generator: Weblate 5.6.2\n" + +#. module: fleet_vehicle_ownership +#: model_terms:ir.ui.view,arch_db:fleet_vehicle_ownership.view_partner_vehicle_owner_form +msgid " Vehicles" +msgstr " Veículos" + +#. module: fleet_vehicle_ownership +#: model:ir.model,name:fleet_vehicle_ownership.model_res_partner +msgid "Contact" +msgstr "Contato" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__display_name +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__display_name +msgid "Display Name" +msgstr "Nome Exibido" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__id +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__id +msgid "ID" +msgstr "ID" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle____last_update +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner____last_update +msgid "Last Modified on" +msgstr "Última Modificação em" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__vehicle_count +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_users__vehicle_count +msgid "Number of Vehicles" +msgstr "Número do Veículos" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__owner_id +msgid "Owner" +msgstr "Proprietário" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,help:fleet_vehicle_ownership.field_fleet_vehicle__owner_id +msgid "Owner of the vehicle" +msgstr "Proprietário do Veículo" + +#. module: fleet_vehicle_ownership +#: model:ir.model,name:fleet_vehicle_ownership.model_fleet_vehicle +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__vehicle_ids +#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_users__vehicle_ids +msgid "Vehicle" +msgstr "Veículo" + +#. module: fleet_vehicle_ownership +#: model:ir.model.fields,help:fleet_vehicle_ownership.field_res_partner__vehicle_ids +#: model:ir.model.fields,help:fleet_vehicle_ownership.field_res_users__vehicle_ids +msgid "Vehicles owned by this partner" +msgstr "Veículos de propriedade deste parceiro" From 36f5c1688974a66df3d3bdc81b8d9c429dc355b6 Mon Sep 17 00:00:00 2001 From: cubells Date: Sat, 21 Jun 2025 10:03:59 +0200 Subject: [PATCH 07/12] [MIG] fleet_vehicle_ownership: Migration to 16.0 --- fleet_vehicle_ownership/README.rst | 44 ++++++++++++------- fleet_vehicle_ownership/__manifest__.py | 8 ++-- fleet_vehicle_ownership/i18n/es.po | 36 ++++++--------- .../i18n/fleet_vehicle_ownership.pot | 22 ++-------- fleet_vehicle_ownership/readme/CONTEXT.md | 12 +++-- .../readme/CONTRIBUTORS.md | 3 ++ fleet_vehicle_ownership/readme/DESCRIPTION.md | 3 +- fleet_vehicle_ownership/readme/USAGE.md | 3 +- .../static/description/index.html | 19 +++++--- .../tests/test_fleet_vehicle_owner.py | 6 +-- .../views/fleet_vehicle.xml | 23 ---------- .../views/fleet_vehicle_views.xml | 23 ++++++++++ ...{res_partner.xml => res_partner_views.xml} | 0 13 files changed, 102 insertions(+), 100 deletions(-) delete mode 100644 fleet_vehicle_ownership/views/fleet_vehicle.xml create mode 100644 fleet_vehicle_ownership/views/fleet_vehicle_views.xml rename fleet_vehicle_ownership/views/{res_partner.xml => res_partner_views.xml} (100%) diff --git a/fleet_vehicle_ownership/README.rst b/fleet_vehicle_ownership/README.rst index 99a95c7f4..660511335 100644 --- a/fleet_vehicle_ownership/README.rst +++ b/fleet_vehicle_ownership/README.rst @@ -7,7 +7,7 @@ Fleet Vehicle Ownership !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:39c83b569e2c9772a90ddcbe8445fd5e2975d5381b987b8546fa07ebbe044843 + !! source digest: sha256:6855b1c633821d645421301cc42921dbf194db7f1f00a6e7cd6accc815728790 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png @@ -17,20 +17,20 @@ Fleet Vehicle Ownership :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Ffleet-lightgray.png?logo=github - :target: https://github.com/OCA/fleet/tree/14.0/fleet_vehicle_ownership + :target: https://github.com/OCA/fleet/tree/16.0/fleet_vehicle_ownership :alt: OCA/fleet .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/fleet-14-0/fleet-14-0-fleet_vehicle_ownership + :target: https://translation.odoo-community.org/projects/fleet-16-0/fleet-16-0-fleet_vehicle_ownership :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png - :target: https://runboat.odoo-community.org/builds?repo=OCA/fleet&target_branch=14.0 + :target: https://runboat.odoo-community.org/builds?repo=OCA/fleet&target_branch=16.0 :alt: Try me on Runboat |badge1| |badge2| |badge3| |badge4| |badge5| This module extends the functionality of fleet to support vehicle owner data and to allow you to add vehicle ownership, linking partners to -vehicles +vehicles. **Table of contents** @@ -46,23 +46,23 @@ of a vehicle. Fields: -- owner_id: Many2one field linking to the 'res.partner' model. It - represents the owner of the vehicle. +- owner_id: Many2one field linking to the 'res.partner' model. It + represents the owner of the vehicle. Usage: -- This extension is particularly useful in scenarios where it's - essential to associate each fleet vehicle with a specific owner. -- The 'owner_id' field can be utilized to establish relationships with - partners in the 'res.partner' model, facilitating clear ownership - tracking. +- This extension is particularly useful in scenarios where it's + essential to associate each fleet vehicle with a specific owner. +- The 'owner_id' field can be utilized to establish relationships with + partners in the 'res.partner' model, facilitating clear ownership + tracking. Usage ===== To use this module, you need to: -1. Go to the veichle form and associate an owner or go to the partner +1. Go to the vehicle form and associate an owner or go to the partner form and associate a vehicle. Bug Tracker @@ -71,7 +71,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 to smash it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -86,7 +86,11 @@ Authors Contributors ------------ -- Raimundo Junior raimundopsjr@gmail.com +- Raimundo Junior raimundopsjr@gmail.com + +- ``Trey Kilobytes de Soluciones SL ``\ \_\_: + + - Vicent Cubells vicent@trey.es Maintainers ----------- @@ -101,6 +105,14 @@ 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/fleet `_ project on GitHub. +.. |maintainer-cubells| image:: https://github.com/cubells.png?size=40px + :target: https://github.com/cubells + :alt: cubells + +Current `maintainer `__: + +|maintainer-cubells| + +This module is part of the `OCA/fleet `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/fleet_vehicle_ownership/__manifest__.py b/fleet_vehicle_ownership/__manifest__.py index 65f7afb4b..f57f174e1 100644 --- a/fleet_vehicle_ownership/__manifest__.py +++ b/fleet_vehicle_ownership/__manifest__.py @@ -1,17 +1,17 @@ # Copyright 2023 RPSJR # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). - { "name": "Fleet Vehicle Ownership", "summary": "Add vehicle ownership, linking partners to vehicles", - "version": "14.0.1.0.0", + "version": "16.0.1.0.0", "license": "AGPL-3", "author": "RPSJR,Odoo Community Association (OCA)", "website": "https://github.com/OCA/fleet", + "maintainers": ["cubells"], "depends": ["fleet"], "data": [ - "views/res_partner.xml", - "views/fleet_vehicle.xml", + "views/res_partner_views.xml", + "views/fleet_vehicle_views.xml", ], "demo": [ "demo/fleet_vehicle.xml", diff --git a/fleet_vehicle_ownership/i18n/es.po b/fleet_vehicle_ownership/i18n/es.po index ffe08afaf..087baefe1 100644 --- a/fleet_vehicle_ownership/i18n/es.po +++ b/fleet_vehicle_ownership/i18n/es.po @@ -6,15 +6,16 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 14.0\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-03-19 08:36+0000\n" +"POT-Creation-Date: 2025-06-21 08:01+0000\n" +"PO-Revision-Date: 2025-06-21 10:02+0200\n" "Last-Translator: Ivorra78 \n" "Language-Team: none\n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" +"Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 4.17\n" +"X-Generator: Poedit 3.6\n" #. module: fleet_vehicle_ownership #: model_terms:ir.ui.view,arch_db:fleet_vehicle_ownership.view_partner_vehicle_owner_form @@ -26,24 +27,6 @@ msgstr " Vehículos" msgid "Contact" msgstr "Contacto" -#. module: fleet_vehicle_ownership -#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__display_name -#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__display_name -msgid "Display Name" -msgstr "Mostrar Nombre" - -#. module: fleet_vehicle_ownership -#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__id -#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__id -msgid "ID" -msgstr "ID" - -#. module: fleet_vehicle_ownership -#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle____last_update -#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner____last_update -msgid "Last Modified on" -msgstr "Última Modificación el" - #. module: fleet_vehicle_ownership #: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__vehicle_count #: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_users__vehicle_count @@ -53,7 +36,7 @@ msgstr "Número de Vehículos" #. module: fleet_vehicle_ownership #: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__owner_id msgid "Owner" -msgstr "Porpietario" +msgstr "Propietario" #. module: fleet_vehicle_ownership #: model:ir.model.fields,help:fleet_vehicle_ownership.field_fleet_vehicle__owner_id @@ -72,3 +55,12 @@ msgstr "Vehículo" #: model:ir.model.fields,help:fleet_vehicle_ownership.field_res_users__vehicle_ids msgid "Vehicles owned by this partner" msgstr "Vehículos propiedad de este socio" + +#~ msgid "Display Name" +#~ msgstr "Mostrar Nombre" + +#~ msgid "ID" +#~ msgstr "ID" + +#~ msgid "Last Modified on" +#~ msgstr "Última Modificación el" diff --git a/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot b/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot index d7479182b..8898bba16 100644 --- a/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot +++ b/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot @@ -4,8 +4,10 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 14.0\n" +"Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-06-21 08:01+0000\n" +"PO-Revision-Date: 2025-06-21 08:01+0000\n" "Last-Translator: \n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -23,24 +25,6 @@ msgstr "" msgid "Contact" msgstr "" -#. module: fleet_vehicle_ownership -#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__display_name -#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__display_name -msgid "Display Name" -msgstr "" - -#. module: fleet_vehicle_ownership -#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle__id -#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__id -msgid "ID" -msgstr "" - -#. module: fleet_vehicle_ownership -#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_fleet_vehicle____last_update -#: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner____last_update -msgid "Last Modified on" -msgstr "" - #. module: fleet_vehicle_ownership #: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_partner__vehicle_count #: model:ir.model.fields,field_description:fleet_vehicle_ownership.field_res_users__vehicle_count diff --git a/fleet_vehicle_ownership/readme/CONTEXT.md b/fleet_vehicle_ownership/readme/CONTEXT.md index f0fb63ecc..37f3b8280 100644 --- a/fleet_vehicle_ownership/readme/CONTEXT.md +++ b/fleet_vehicle_ownership/readme/CONTEXT.md @@ -1,9 +1,13 @@ This is an extension of the 'fleet.vehicle' model in the Odoo framework. -It introduces a new field, 'owner_id', to track and associate the owner of a vehicle. +It introduces a new field, 'owner_id', to track and associate the owner of a +vehicle. Fields: -- owner_id: Many2one field linking to the 'res.partner' model. It represents the owner of the vehicle. +- owner_id: Many2one field linking to the 'res.partner' model. It represents + the owner of the vehicle. Usage: -- This extension is particularly useful in scenarios where it's essential to associate each fleet vehicle with a specific owner. -- The 'owner_id' field can be utilized to establish relationships with partners in the 'res.partner' model, facilitating clear ownership tracking. +- This extension is particularly useful in scenarios where it's essential to +associate each fleet vehicle with a specific owner. +- The 'owner_id' field can be utilized to establish relationships with +partners in the 'res.partner' model, facilitating clear ownership tracking. diff --git a/fleet_vehicle_ownership/readme/CONTRIBUTORS.md b/fleet_vehicle_ownership/readme/CONTRIBUTORS.md index e3fe9dd49..86c0e22cf 100644 --- a/fleet_vehicle_ownership/readme/CONTRIBUTORS.md +++ b/fleet_vehicle_ownership/readme/CONTRIBUTORS.md @@ -1 +1,4 @@ - Raimundo Junior + +- `Trey Kilobytes de Soluciones SL `__: + - Vicent Cubells diff --git a/fleet_vehicle_ownership/readme/DESCRIPTION.md b/fleet_vehicle_ownership/readme/DESCRIPTION.md index 8bfb0f1cb..5f5d2424e 100644 --- a/fleet_vehicle_ownership/readme/DESCRIPTION.md +++ b/fleet_vehicle_ownership/readme/DESCRIPTION.md @@ -1 +1,2 @@ -This module extends the functionality of fleet to support vehicle owner data and to allow you to add vehicle ownership, linking partners to vehicles +This module extends the functionality of fleet to support vehicle owner data +and to allow you to add vehicle ownership, linking partners to vehicles. diff --git a/fleet_vehicle_ownership/readme/USAGE.md b/fleet_vehicle_ownership/readme/USAGE.md index d0e67afdf..60ae6b5d4 100644 --- a/fleet_vehicle_ownership/readme/USAGE.md +++ b/fleet_vehicle_ownership/readme/USAGE.md @@ -1,3 +1,4 @@ To use this module, you need to: -1. Go to the veichle form and associate an owner or go to the partner form and associate a vehicle. +1. Go to the vehicle form and associate an owner or go to the partner form and +associate a vehicle. diff --git a/fleet_vehicle_ownership/static/description/index.html b/fleet_vehicle_ownership/static/description/index.html index f14035c74..959872f97 100644 --- a/fleet_vehicle_ownership/static/description/index.html +++ b/fleet_vehicle_ownership/static/description/index.html @@ -1,4 +1,3 @@ - @@ -367,12 +366,12 @@

Fleet Vehicle Ownership

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:39c83b569e2c9772a90ddcbe8445fd5e2975d5381b987b8546fa07ebbe044843 +!! source digest: sha256:6855b1c633821d645421301cc42921dbf194db7f1f00a6e7cd6accc815728790 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/fleet Translate me on Weblate Try me on Runboat

+

Beta License: AGPL-3 OCA/fleet Translate me on Weblate Try me on Runboat

This module extends the functionality of fleet to support vehicle owner data and to allow you to add vehicle ownership, linking partners to -vehicles

+vehicles.

Table of contents

    @@ -410,7 +409,7 @@

    Use Cases / Context

    Usage

    To use this module, you need to:

      -
    1. Go to the veichle form and associate an owner or go to the partner +
    2. Go to the vehicle form and associate an owner or go to the partner form and associate a vehicle.
@@ -419,7 +418,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 to smash it by providing a detailed and welcomed -feedback.

+feedback.

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

@@ -434,6 +433,10 @@

Authors

Contributors

@@ -443,7 +446,9 @@

Maintainers

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/fleet project on GitHub.

+

Current maintainer:

+

cubells

+

This module is part of the OCA/fleet project on GitHub.

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

diff --git a/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py b/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py index 87e73749b..55b016043 100644 --- a/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py +++ b/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py @@ -1,9 +1,9 @@ -from odoo.tests import SavepointCase +from odoo.tests import TransactionCase -class TestFleetVehicleOwner(SavepointCase): +class TestFleetVehicleOwner(TransactionCase): def setUp(self): - super(TestFleetVehicleOwner, self).setUp() + super().setUp() # Create necessary test data here, such as a partner and vehicles self.partner = self.env["res.partner"].create( diff --git a/fleet_vehicle_ownership/views/fleet_vehicle.xml b/fleet_vehicle_ownership/views/fleet_vehicle.xml deleted file mode 100644 index 901ae1f74..000000000 --- a/fleet_vehicle_ownership/views/fleet_vehicle.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - fleet.vehicle.form.inherited - fleet.vehicle - - - - - - - - - fleet.vehicle.tree.inherited - fleet.vehicle - - - - - - - - diff --git a/fleet_vehicle_ownership/views/fleet_vehicle_views.xml b/fleet_vehicle_ownership/views/fleet_vehicle_views.xml new file mode 100644 index 000000000..64ab12b9f --- /dev/null +++ b/fleet_vehicle_ownership/views/fleet_vehicle_views.xml @@ -0,0 +1,23 @@ + + + + fleet.vehicle.form.inherited + fleet.vehicle + + + + + + + + + fleet.vehicle.tree.inherited + fleet.vehicle + + + + + + + + diff --git a/fleet_vehicle_ownership/views/res_partner.xml b/fleet_vehicle_ownership/views/res_partner_views.xml similarity index 100% rename from fleet_vehicle_ownership/views/res_partner.xml rename to fleet_vehicle_ownership/views/res_partner_views.xml From fd9fe35731cf07c481b8f86e69194653a75a0181 Mon Sep 17 00:00:00 2001 From: oca-ci Date: Mon, 30 Jun 2025 11:40:02 +0000 Subject: [PATCH 08/12] [UPD] Update fleet_vehicle_ownership.pot --- fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot | 2 -- 1 file changed, 2 deletions(-) diff --git a/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot b/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot index 8898bba16..402a9572d 100644 --- a/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot +++ b/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot @@ -6,8 +6,6 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 16.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-06-21 08:01+0000\n" -"PO-Revision-Date: 2025-06-21 08:01+0000\n" "Last-Translator: \n" "Language-Team: \n" "MIME-Version: 1.0\n" From fb7cfbf554d3bb8820adcd27b6bdf557fb9bb00d Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Mon, 30 Jun 2025 11:42:24 +0000 Subject: [PATCH 09/12] [BOT] post-merge updates --- fleet_vehicle_ownership/README.rst | 8 +++- .../static/description/index.html | 41 +++++++++++-------- 2 files changed, 31 insertions(+), 18 deletions(-) diff --git a/fleet_vehicle_ownership/README.rst b/fleet_vehicle_ownership/README.rst index 660511335..7ad67ee9b 100644 --- a/fleet_vehicle_ownership/README.rst +++ b/fleet_vehicle_ownership/README.rst @@ -1,3 +1,7 @@ +.. image:: https://odoo-community.org/readme-banner-image + :target: https://odoo-community.org/get-involved?utm_source=readme + :alt: Odoo Community Association + ======================= Fleet Vehicle Ownership ======================= @@ -7,13 +11,13 @@ Fleet Vehicle Ownership !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:6855b1c633821d645421301cc42921dbf194db7f1f00a6e7cd6accc815728790 + !! source digest: sha256:c5a25cda8d7bde02700d454f88a50bc2156ef40518857d5ae417d7cbe212052f !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |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 +.. |badge2| image:: https://img.shields.io/badge/license-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%2Ffleet-lightgray.png?logo=github diff --git a/fleet_vehicle_ownership/static/description/index.html b/fleet_vehicle_ownership/static/description/index.html index 959872f97..78d26cf18 100644 --- a/fleet_vehicle_ownership/static/description/index.html +++ b/fleet_vehicle_ownership/static/description/index.html @@ -3,15 +3,16 @@ -Fleet Vehicle Ownership +README.rst -
-

Fleet Vehicle Ownership

+
+ + +Odoo Community Association + +
+

Fleet Vehicle Ownership

-

Beta License: AGPL-3 OCA/fleet Translate me on Weblate Try me on Runboat

+

Beta License: AGPL-3 OCA/fleet Translate me on Weblate Try me on Runboat

This module extends the functionality of fleet to support vehicle owner data and to allow you to add vehicle ownership, linking partners to vehicles.

@@ -387,7 +393,7 @@

Fleet Vehicle Ownership

-

Use Cases / Context

+

Use Cases / Context

This is an extension of the ‘fleet.vehicle’ model in the Odoo framework. It introduces a new field, ‘owner_id’, to track and associate the owner of a vehicle.

@@ -406,7 +412,7 @@

Use Cases / Context

-

Usage

+

Usage

To use this module, you need to:

  1. Go to the vehicle form and associate an owner or go to the partner @@ -414,7 +420,7 @@

    Usage

-

Bug Tracker

+

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 to smash it by providing a detailed and welcomed @@ -422,15 +428,15 @@

Bug Tracker

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

-

Credits

+

Credits

-

Authors

+

Authors

  • RPSJR
-

Contributors

+

Contributors

-

Maintainers

+

Maintainers

This module is maintained by the OCA.

-Odoo Community Association + +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.

@@ -453,5 +461,6 @@

Maintainers

+
From 4e2a1eddaf55a84ab1793e575b61056ac0a5f24e Mon Sep 17 00:00:00 2001 From: kaynnan Date: Mon, 17 Nov 2025 09:22:34 -0300 Subject: [PATCH 10/12] [IMP] fleet_vehicle_ownership: pre-commit auto fixes --- fleet_vehicle_ownership/demo/fleet_vehicle.xml | 2 -- fleet_vehicle_ownership/models/fleet_vehicle.py | 1 - fleet_vehicle_ownership/pyproject.toml | 3 +++ fleet_vehicle_ownership/views/res_partner_views.xml | 1 - 4 files changed, 3 insertions(+), 4 deletions(-) create mode 100644 fleet_vehicle_ownership/pyproject.toml diff --git a/fleet_vehicle_ownership/demo/fleet_vehicle.xml b/fleet_vehicle_ownership/demo/fleet_vehicle.xml index 1e73af42f..d514afa16 100644 --- a/fleet_vehicle_ownership/demo/fleet_vehicle.xml +++ b/fleet_vehicle_ownership/demo/fleet_vehicle.xml @@ -2,7 +2,6 @@ - 4-LH-44 44444 @@ -17,5 +16,4 @@ kilometers 44000 - diff --git a/fleet_vehicle_ownership/models/fleet_vehicle.py b/fleet_vehicle_ownership/models/fleet_vehicle.py index 9a3ce6b92..a10152597 100644 --- a/fleet_vehicle_ownership/models/fleet_vehicle.py +++ b/fleet_vehicle_ownership/models/fleet_vehicle.py @@ -5,7 +5,6 @@ class FleetVehicle(models.Model): - _inherit = "fleet.vehicle" owner_id = fields.Many2one( diff --git a/fleet_vehicle_ownership/pyproject.toml b/fleet_vehicle_ownership/pyproject.toml new file mode 100644 index 000000000..4231d0ccc --- /dev/null +++ b/fleet_vehicle_ownership/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/fleet_vehicle_ownership/views/res_partner_views.xml b/fleet_vehicle_ownership/views/res_partner_views.xml index 086703f99..37e7bd299 100644 --- a/fleet_vehicle_ownership/views/res_partner_views.xml +++ b/fleet_vehicle_ownership/views/res_partner_views.xml @@ -1,5 +1,4 @@ - res.partner From 28fdf702d1c2576f5d1b5a00190e3da188f6c284 Mon Sep 17 00:00:00 2001 From: kaynnan Date: Mon, 17 Nov 2025 09:22:34 -0300 Subject: [PATCH 11/12] [MIG] fleet_vehicle_ownership: Migration to 18.0 --- fleet_vehicle_ownership/README.rst | 12 ++++++------ fleet_vehicle_ownership/__manifest__.py | 2 +- .../i18n/fleet_vehicle_ownership.pot | 2 +- .../static/description/index.html | 8 ++++---- .../tests/test_fleet_vehicle_owner.py | 4 ++-- .../views/fleet_vehicle_views.xml | 2 +- 6 files changed, 15 insertions(+), 15 deletions(-) diff --git a/fleet_vehicle_ownership/README.rst b/fleet_vehicle_ownership/README.rst index 7ad67ee9b..ac7971093 100644 --- a/fleet_vehicle_ownership/README.rst +++ b/fleet_vehicle_ownership/README.rst @@ -11,7 +11,7 @@ Fleet Vehicle Ownership !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! source digest: sha256:c5a25cda8d7bde02700d454f88a50bc2156ef40518857d5ae417d7cbe212052f + !! source digest: sha256:a012fd484f6fb503dba578152a4ece94bbdc08dfb332dace96df95abcce6e337 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png @@ -21,13 +21,13 @@ Fleet Vehicle Ownership :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Ffleet-lightgray.png?logo=github - :target: https://github.com/OCA/fleet/tree/16.0/fleet_vehicle_ownership + :target: https://github.com/OCA/fleet/tree/18.0/fleet_vehicle_ownership :alt: OCA/fleet .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/fleet-16-0/fleet-16-0-fleet_vehicle_ownership + :target: https://translation.odoo-community.org/projects/fleet-18-0/fleet-18-0-fleet_vehicle_ownership :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png - :target: https://runboat.odoo-community.org/builds?repo=OCA/fleet&target_branch=16.0 + :target: https://runboat.odoo-community.org/builds?repo=OCA/fleet&target_branch=18.0 :alt: Try me on Runboat |badge1| |badge2| |badge3| |badge4| |badge5| @@ -75,7 +75,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 to smash it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -117,6 +117,6 @@ Current `maintainer `__: |maintainer-cubells| -This module is part of the `OCA/fleet `_ project on GitHub. +This module is part of the `OCA/fleet `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/fleet_vehicle_ownership/__manifest__.py b/fleet_vehicle_ownership/__manifest__.py index f57f174e1..5b8abbcd0 100644 --- a/fleet_vehicle_ownership/__manifest__.py +++ b/fleet_vehicle_ownership/__manifest__.py @@ -3,7 +3,7 @@ { "name": "Fleet Vehicle Ownership", "summary": "Add vehicle ownership, linking partners to vehicles", - "version": "16.0.1.0.0", + "version": "18.0.1.0.0", "license": "AGPL-3", "author": "RPSJR,Odoo Community Association (OCA)", "website": "https://github.com/OCA/fleet", diff --git a/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot b/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot index 402a9572d..dd116a7e2 100644 --- a/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot +++ b/fleet_vehicle_ownership/i18n/fleet_vehicle_ownership.pot @@ -4,7 +4,7 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 16.0\n" +"Project-Id-Version: Odoo Server 18.0\n" "Report-Msgid-Bugs-To: \n" "Last-Translator: \n" "Language-Team: \n" diff --git a/fleet_vehicle_ownership/static/description/index.html b/fleet_vehicle_ownership/static/description/index.html index 78d26cf18..776f0885b 100644 --- a/fleet_vehicle_ownership/static/description/index.html +++ b/fleet_vehicle_ownership/static/description/index.html @@ -372,9 +372,9 @@

Fleet Vehicle Ownership

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -!! source digest: sha256:c5a25cda8d7bde02700d454f88a50bc2156ef40518857d5ae417d7cbe212052f +!! source digest: sha256:a012fd484f6fb503dba578152a4ece94bbdc08dfb332dace96df95abcce6e337 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/fleet Translate me on Weblate Try me on Runboat

+

Beta License: AGPL-3 OCA/fleet Translate me on Weblate Try me on Runboat

This module extends the functionality of fleet to support vehicle owner data and to allow you to add vehicle ownership, linking partners to vehicles.

@@ -424,7 +424,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 to smash it by providing a detailed and welcomed -feedback.

+feedback.

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

@@ -456,7 +456,7 @@

Maintainers

promote its widespread use.

Current maintainer:

cubells

-

This module is part of the OCA/fleet project on GitHub.

+

This module is part of the OCA/fleet project on GitHub.

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

diff --git a/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py b/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py index 55b016043..575b2c874 100644 --- a/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py +++ b/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py @@ -22,7 +22,7 @@ def setUp(self): "owner_id": self.partner.id, "odometer_unit": "kilometers", "car_value": 20000, - "model_id": self.env.ref("fleet.model_astra").id, + "model_id": self.env.ref("fleet.model_corolla_ts").id, } ) self.vehicle2 = self.env["fleet.vehicle"].create( @@ -36,7 +36,7 @@ def setUp(self): "owner_id": self.partner.id, "odometer_unit": "kilometers", "car_value": 30000, - "model_id": self.env.ref("fleet.model_astra").id, + "model_id": self.env.ref("fleet.model_corolla_ts").id, } ) diff --git a/fleet_vehicle_ownership/views/fleet_vehicle_views.xml b/fleet_vehicle_ownership/views/fleet_vehicle_views.xml index 64ab12b9f..20beb6340 100644 --- a/fleet_vehicle_ownership/views/fleet_vehicle_views.xml +++ b/fleet_vehicle_ownership/views/fleet_vehicle_views.xml @@ -11,7 +11,7 @@
- fleet.vehicle.tree.inherited + fleet.vehicle.list.inherited fleet.vehicle From 54af1d4ba1bcf99b37a1f373a48df4b10f7e22f5 Mon Sep 17 00:00:00 2001 From: Dener William Date: Mon, 2 Feb 2026 10:47:18 -0300 Subject: [PATCH 12/12] [MIG] fleet_vehicle_ownership: migration to 19.0 --- fleet_vehicle_ownership/README.rst | 10 +++++----- fleet_vehicle_ownership/__manifest__.py | 4 ++-- fleet_vehicle_ownership/models/res_partner.py | 3 +-- fleet_vehicle_ownership/static/description/index.html | 6 +++--- .../tests/test_fleet_vehicle_owner.py | 11 ++++++++--- fleet_vehicle_ownership/views/fleet_vehicle_views.xml | 4 ++-- fleet_vehicle_ownership/views/res_partner_views.xml | 2 +- 7 files changed, 22 insertions(+), 18 deletions(-) diff --git a/fleet_vehicle_ownership/README.rst b/fleet_vehicle_ownership/README.rst index ac7971093..c688f9f8b 100644 --- a/fleet_vehicle_ownership/README.rst +++ b/fleet_vehicle_ownership/README.rst @@ -21,13 +21,13 @@ Fleet Vehicle Ownership :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Ffleet-lightgray.png?logo=github - :target: https://github.com/OCA/fleet/tree/18.0/fleet_vehicle_ownership + :target: https://github.com/OCA/fleet/tree/19.0/fleet_vehicle_ownership :alt: OCA/fleet .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/fleet-18-0/fleet-18-0-fleet_vehicle_ownership + :target: https://translation.odoo-community.org/projects/fleet-19-0/fleet-19-0-fleet_vehicle_ownership :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png - :target: https://runboat.odoo-community.org/builds?repo=OCA/fleet&target_branch=18.0 + :target: https://runboat.odoo-community.org/builds?repo=OCA/fleet&target_branch=19.0 :alt: Try me on Runboat |badge1| |badge2| |badge3| |badge4| |badge5| @@ -75,7 +75,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 to smash it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -117,6 +117,6 @@ Current `maintainer `__: |maintainer-cubells| -This module is part of the `OCA/fleet `_ project on GitHub. +This module is part of the `OCA/fleet `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/fleet_vehicle_ownership/__manifest__.py b/fleet_vehicle_ownership/__manifest__.py index 5b8abbcd0..130b7fc3e 100644 --- a/fleet_vehicle_ownership/__manifest__.py +++ b/fleet_vehicle_ownership/__manifest__.py @@ -3,12 +3,12 @@ { "name": "Fleet Vehicle Ownership", "summary": "Add vehicle ownership, linking partners to vehicles", - "version": "18.0.1.0.0", + "version": "19.0.1.0.0", "license": "AGPL-3", "author": "RPSJR,Odoo Community Association (OCA)", "website": "https://github.com/OCA/fleet", "maintainers": ["cubells"], - "depends": ["fleet"], + "depends": ["fleet", "contacts"], "data": [ "views/res_partner_views.xml", "views/fleet_vehicle_views.xml", diff --git a/fleet_vehicle_ownership/models/res_partner.py b/fleet_vehicle_ownership/models/res_partner.py index af82e9c9d..ea9d1d82b 100644 --- a/fleet_vehicle_ownership/models/res_partner.py +++ b/fleet_vehicle_ownership/models/res_partner.py @@ -15,11 +15,10 @@ def _compute_vehicle_count(self): vehicle_ids = fields.One2many( "fleet.vehicle", "owner_id", - required=True, help="Vehicles owned by this partner", ) vehicle_count = fields.Integer( - compute=_compute_vehicle_count, string="Number of Vehicles", store=True + compute="_compute_vehicle_count", string="Number of Vehicles", store=True ) def action_view_vehicles(self): diff --git a/fleet_vehicle_ownership/static/description/index.html b/fleet_vehicle_ownership/static/description/index.html index 776f0885b..066365ea4 100644 --- a/fleet_vehicle_ownership/static/description/index.html +++ b/fleet_vehicle_ownership/static/description/index.html @@ -374,7 +374,7 @@

Fleet Vehicle Ownership

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !! source digest: sha256:a012fd484f6fb503dba578152a4ece94bbdc08dfb332dace96df95abcce6e337 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/fleet Translate me on Weblate Try me on Runboat

+

Beta License: AGPL-3 OCA/fleet Translate me on Weblate Try me on Runboat

This module extends the functionality of fleet to support vehicle owner data and to allow you to add vehicle ownership, linking partners to vehicles.

@@ -424,7 +424,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 to smash it by providing a detailed and welcomed -feedback.

+feedback.

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

@@ -456,7 +456,7 @@

Maintainers

promote its widespread use.

Current maintainer:

cubells

-

This module is part of the OCA/fleet project on GitHub.

+

This module is part of the OCA/fleet project on GitHub.

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

diff --git a/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py b/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py index 575b2c874..84f35d547 100644 --- a/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py +++ b/fleet_vehicle_ownership/tests/test_fleet_vehicle_owner.py @@ -5,7 +5,12 @@ class TestFleetVehicleOwner(TransactionCase): def setUp(self): super().setUp() - # Create necessary test data here, such as a partner and vehicles + # Create vehicle model (do not rely on fleet demo data xml_id) + brand = self.env["fleet.vehicle.model.brand"].create({"name": "Toyota"}) + self.vehicle_model = self.env["fleet.vehicle.model"].create( + {"name": "Corolla", "brand_id": brand.id} + ) + self.partner = self.env["res.partner"].create( { "name": "Lewis Hamilton", @@ -22,7 +27,7 @@ def setUp(self): "owner_id": self.partner.id, "odometer_unit": "kilometers", "car_value": 20000, - "model_id": self.env.ref("fleet.model_corolla_ts").id, + "model_id": self.vehicle_model.id, } ) self.vehicle2 = self.env["fleet.vehicle"].create( @@ -36,7 +41,7 @@ def setUp(self): "owner_id": self.partner.id, "odometer_unit": "kilometers", "car_value": 30000, - "model_id": self.env.ref("fleet.model_corolla_ts").id, + "model_id": self.vehicle_model.id, } ) diff --git a/fleet_vehicle_ownership/views/fleet_vehicle_views.xml b/fleet_vehicle_ownership/views/fleet_vehicle_views.xml index 20beb6340..3e752d6b1 100644 --- a/fleet_vehicle_ownership/views/fleet_vehicle_views.xml +++ b/fleet_vehicle_ownership/views/fleet_vehicle_views.xml @@ -5,7 +5,7 @@ fleet.vehicle - + @@ -15,7 +15,7 @@ fleet.vehicle - + diff --git a/fleet_vehicle_ownership/views/res_partner_views.xml b/fleet_vehicle_ownership/views/res_partner_views.xml index 37e7bd299..88b4dd04a 100644 --- a/fleet_vehicle_ownership/views/res_partner_views.xml +++ b/fleet_vehicle_ownership/views/res_partner_views.xml @@ -10,7 +10,7 @@ type="object" name="action_view_vehicles" icon="fa-car" - context="{'default_partner_id': id}" + context="{'default_owner_id': id}" >