diff --git a/fieldservice_vehicle/README.rst b/fieldservice_vehicle/README.rst new file mode 100644 index 0000000000..2dbfb5935b --- /dev/null +++ b/fieldservice_vehicle/README.rst @@ -0,0 +1,137 @@ +====================== +Field Service Vehicles +====================== + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:cc8622bab0dca4e9ffa960ab600ed67f6ee01eaf51d83da5648a3dbb9a97ef5f + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |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%2Ffield--service-lightgray.png?logo=github + :target: https://github.com/OCA/field-service/tree/17.0/fieldservice_vehicle + :alt: OCA/field-service +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/field-service-17-0/field-service-17-0-fieldservice_vehicle + :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/field-service&target_branch=17.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module allows you to manage your vehicles and assign them to a +worker. + +**Table of contents** + +.. contents:: + :local: + +Installation +============ + +To install Field Service and have the mapping features, you need to +install GeoEngine. + +Please refer to the installation instructions available at: +https://github.com/OCA/geospatial/tree/13.0/base_geoengine + +Configuration +============= + +To configure this module, you need to: + +- Go to Field Service > Master Data > Vehicles +- Create your vehicles and assign them to a worker + +Usage +===== + +To use this module, you need to: + +- Go to Field Service +- Create or select an order and assign it +- Follow the process + +Known issues / Roadmap +====================== + +The roadmap of the Field Service application is documented on +`Github `__. + +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 +------- + +* Open Source Integrators + +Contributors +------------ + +- Wolfgang Hall +- Maxime Chambreuil +- Steve Campbell +- Bhavesh Odedra +- Michael Allen +- Serpent Consulting Services Pvt. Ltd. +- Brian McMaster +- Vandan Pandeji +- `APSL `__: + + - Antoni Marroig + +Other credits +------------- + +The development of this module has been financially supported by: + +- Open Source Integrators + +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. + +.. |maintainer-wolfhall| image:: https://github.com/wolfhall.png?size=40px + :target: https://github.com/wolfhall + :alt: wolfhall +.. |maintainer-max3903| image:: https://github.com/max3903.png?size=40px + :target: https://github.com/max3903 + :alt: max3903 + +Current `maintainers `__: + +|maintainer-wolfhall| |maintainer-max3903| + +This module is part of the `OCA/field-service `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/fieldservice_vehicle/__init__.py b/fieldservice_vehicle/__init__.py new file mode 100644 index 0000000000..8fc3b4add4 --- /dev/null +++ b/fieldservice_vehicle/__init__.py @@ -0,0 +1,4 @@ +# Copyright (C) 2018, Open Source Integrators +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import models diff --git a/fieldservice_vehicle/__manifest__.py b/fieldservice_vehicle/__manifest__.py new file mode 100644 index 0000000000..84646d2c1f --- /dev/null +++ b/fieldservice_vehicle/__manifest__.py @@ -0,0 +1,22 @@ +# Copyright (C) 2018 Open Source Integrators +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +{ + "name": "Field Service Vehicles", + "summary": "Manage Field Service vehicles and assign drivers", + "version": "17.0.1.0.0", + "category": "Field Service", + "author": "Open Source Integrators, Odoo Community Association (OCA)", + "website": "https://github.com/OCA/field-service", + "depends": ["fieldservice"], + "data": [ + "security/res_groups.xml", + "security/ir.model.access.csv", + "views/fsm_vehicle.xml", + "views/fsm_person.xml", + "views/fsm_order.xml", + "views/menu.xml", + ], + "license": "AGPL-3", + "development_status": "Beta", + "maintainers": ["wolfhall", "max3903"], +} diff --git a/fieldservice_vehicle/i18n/de.po b/fieldservice_vehicle/i18n/de.po new file mode 100644 index 0000000000..6e9d33860a --- /dev/null +++ b/fieldservice_vehicle/i18n/de.po @@ -0,0 +1,129 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fieldservice_vehicle +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 12.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2022-12-04 15:44+0000\n" +"Last-Translator: Nils Coenen | NICO SOLUTIONS - ENGINEERING & IT \n" +"Language-Team: none\n" +"Language: de\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.14.1\n" + +#. module: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_vehicle +msgid "Add a Field Service Vehicle here." +msgstr "Field-Service-Fahrzeuge hinzufügen." + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__person_id +msgid "Assigned Driver" +msgstr "Zugewiesener Fahrer" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_uid +msgid "Created by" +msgstr "Erstellt von" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_date +msgid "Created on" +msgstr "Erstellt am" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_person__vehicle_id +msgid "Default Vehicle" +msgstr "Standard-Fahrzeug" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__display_name +msgid "Display Name" +msgstr "Anzeigename" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_order +msgid "Field Service Order" +msgstr "Field Service Auftrag" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_vehicle +msgid "Field Service Vehicle" +msgstr "Service-Fahrzeug" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_vehicle +msgid "Field Service Vehicles" +msgstr "Service-Fahrzeuge" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_person +msgid "Field Service Worker" +msgstr "Field Service Mitarbeiter" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__id +msgid "ID" +msgstr "ID" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle____last_update +msgid "Last Modified on" +msgstr "Zuletzt geändert am" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_uid +msgid "Last Updated by" +msgstr "Zuletzt aktualisiert von" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_date +msgid "Last Updated on" +msgstr "Zuletzt aktualisiert am" + +#. module: fieldservice_vehicle +#: model:res.groups,name:fieldservice_vehicle.group_fsm_vehicle +msgid "Manage Vehicles" +msgstr "Fahrzeuge verwalten" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__name +msgid "Name" +msgstr "Bezeichnung" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_order__vehicle_id +msgid "Vehicle" +msgstr "Fahrzeug" + +#. module: fieldservice_vehicle +#: model:ir.model.constraint,message:fieldservice_vehicle.constraint_fsm_vehicle_name_uniq +msgid "Vehicle name already exists!" +msgstr "Es existiert bereits ein Fahrzeug mit diesem Namen!" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_vehicle +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_graph_view +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_pivot_view +msgid "Vehicles" +msgstr "Fahrzeuge" + +#. module: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_report_vehicle +msgid "Vehicles Report" +msgstr "Fahrzeug-Bericht" + +#~ msgid "Assigned Vehicle" +#~ msgstr "Zugewiesenes Fahrzeug" + +#~ msgid "The vehicle is already assigned to another route on that day!" +#~ msgstr "" +#~ "Das Fahrzeug ist an diesem Tag bereits einer anderen Route zugewiesen!" diff --git a/fieldservice_vehicle/i18n/es.po b/fieldservice_vehicle/i18n/es.po new file mode 100644 index 0000000000..a219600db0 --- /dev/null +++ b/fieldservice_vehicle/i18n/es.po @@ -0,0 +1,127 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fieldservice_vehicle +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 12.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2023-07-20 11:09+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: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_vehicle +msgid "Add a Field Service Vehicle here." +msgstr "Agregue un veh??culo de servicio de campo aqu??." + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__person_id +msgid "Assigned Driver" +msgstr "Conductor Asignado" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_uid +msgid "Created by" +msgstr "Creado por" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_date +msgid "Created on" +msgstr "Creado en" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_person__vehicle_id +msgid "Default Vehicle" +msgstr "Veh??culo Predeterminado" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__display_name +msgid "Display Name" +msgstr "Nombre Mostrado" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_order +msgid "Field Service Order" +msgstr "Orden de Servicio de Campo" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_vehicle +msgid "Field Service Vehicle" +msgstr "Veh??culo de Servicio de Campo" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_vehicle +msgid "Field Service Vehicles" +msgstr "Veh??culos de Servicio de Campo" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_person +msgid "Field Service Worker" +msgstr "Trabajador de Servicio de Campo" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__id +msgid "ID" +msgstr "ID" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle____last_update +msgid "Last Modified on" +msgstr "??ltima Modificaci??n en" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_uid +msgid "Last Updated by" +msgstr "actualizado por última vez por" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_date +msgid "Last Updated on" +msgstr "actualizado por última vez el" + +#. module: fieldservice_vehicle +#: model:res.groups,name:fieldservice_vehicle.group_fsm_vehicle +msgid "Manage Vehicles" +msgstr "Gestionar Vehículos" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__name +msgid "Name" +msgstr "Nombre" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_order__vehicle_id +msgid "Vehicle" +msgstr "Veh??culo" + +#. module: fieldservice_vehicle +#: model:ir.model.constraint,message:fieldservice_vehicle.constraint_fsm_vehicle_name_uniq +msgid "Vehicle name already exists!" +msgstr "??El nombre del veh??culo ya existe!" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_vehicle +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_graph_view +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_pivot_view +msgid "Vehicles" +msgstr "Veh??culos" + +#. module: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_report_vehicle +msgid "Vehicles Report" +msgstr "Reporte de Veh??culos" + +#~ msgid "Assigned Vehicle" +#~ msgstr "Veh??culo Asignado" + +#~ msgid "The vehicle is already assigned to another route on that day!" +#~ msgstr "??El veh??culo ya est?? asignado a otra ruta ese d??a!" diff --git a/fieldservice_vehicle/i18n/es_AR.po b/fieldservice_vehicle/i18n/es_AR.po new file mode 100644 index 0000000000..b3d4c64726 --- /dev/null +++ b/fieldservice_vehicle/i18n/es_AR.po @@ -0,0 +1,124 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fieldservice_vehicle +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2021-10-04 01:34+0000\n" +"Last-Translator: Ignacio Buioli \n" +"Language-Team: none\n" +"Language: es_AR\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.3.2\n" + +#. module: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_vehicle +msgid "Add a Field Service Vehicle here." +msgstr "Añada un Vehículo de Servicio de Campo acá." + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__person_id +msgid "Assigned Driver" +msgstr "Conductor Asignado" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_uid +msgid "Created by" +msgstr "Creado por" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_date +msgid "Created on" +msgstr "Creado el" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_person__vehicle_id +msgid "Default Vehicle" +msgstr "Vehículo Predeterminado" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__display_name +msgid "Display Name" +msgstr "Mostrar Nombre" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_order +msgid "Field Service Order" +msgstr "Pedido de Servicio de Campo" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_vehicle +msgid "Field Service Vehicle" +msgstr "Vehículo del Servicio de Campo" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_vehicle +msgid "Field Service Vehicles" +msgstr "Vehículos del Servicio de Campo" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_person +msgid "Field Service Worker" +msgstr "Trabajador de Servicio de Campo" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__id +msgid "ID" +msgstr "ID" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle____last_update +msgid "Last Modified on" +msgstr "Última Modificación el" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_uid +msgid "Last Updated by" +msgstr "Última Actualización por" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_date +msgid "Last Updated on" +msgstr "Última Actualización en" + +#. module: fieldservice_vehicle +#: model:res.groups,name:fieldservice_vehicle.group_fsm_vehicle +msgid "Manage Vehicles" +msgstr "Gestionar Vehículos" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__name +msgid "Name" +msgstr "Nombre" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_order__vehicle_id +msgid "Vehicle" +msgstr "Vehículo" + +#. module: fieldservice_vehicle +#: model:ir.model.constraint,message:fieldservice_vehicle.constraint_fsm_vehicle_name_uniq +msgid "Vehicle name already exists!" +msgstr "¡El nombre del Vehículo ya existe!" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_vehicle +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_graph_view +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_pivot_view +msgid "Vehicles" +msgstr "Vehículos" + +#. module: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_report_vehicle +msgid "Vehicles Report" +msgstr "Reporte de Vehículos" + +#~ msgid "Order" +#~ msgstr "Pedido" diff --git a/fieldservice_vehicle/i18n/es_CL.po b/fieldservice_vehicle/i18n/es_CL.po new file mode 100644 index 0000000000..2c5b7bd945 --- /dev/null +++ b/fieldservice_vehicle/i18n/es_CL.po @@ -0,0 +1,127 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fieldservice_vehicle +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 12.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2020-06-07 05:19+0000\n" +"Last-Translator: Nelson Ram??rez S??nchez \n" +"Language-Team: none\n" +"Language: es_CL\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 3.10\n" + +#. module: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_vehicle +msgid "Add a Field Service Vehicle here." +msgstr "Agregue un veh??culo de servicio de campo aqu??." + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__person_id +msgid "Assigned Driver" +msgstr "Conductor Asignado" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_uid +msgid "Created by" +msgstr "Creado por" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_date +msgid "Created on" +msgstr "Creado en" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_person__vehicle_id +msgid "Default Vehicle" +msgstr "Veh??culo Predeterminado" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__display_name +msgid "Display Name" +msgstr "Nombre Mostrado" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_order +msgid "Field Service Order" +msgstr "Pedido de Servicio de Campo" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_vehicle +msgid "Field Service Vehicle" +msgstr "Veh??culo de Servicio de Campo" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_vehicle +msgid "Field Service Vehicles" +msgstr "Veh??culos de Servicio de Campo" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_person +msgid "Field Service Worker" +msgstr "Trabajador de Servicio de Campo" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__id +msgid "ID" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle____last_update +msgid "Last Modified on" +msgstr "??ltima Modificaci??n en" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_uid +msgid "Last Updated by" +msgstr "??ltima Actualizaci??n por" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_date +msgid "Last Updated on" +msgstr "??ltima Actualizaci??n el" + +#. module: fieldservice_vehicle +#: model:res.groups,name:fieldservice_vehicle.group_fsm_vehicle +msgid "Manage Vehicles" +msgstr "Gestionar Veh??culos" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__name +msgid "Name" +msgstr "Nombre" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_order__vehicle_id +msgid "Vehicle" +msgstr "Veh??culo" + +#. module: fieldservice_vehicle +#: model:ir.model.constraint,message:fieldservice_vehicle.constraint_fsm_vehicle_name_uniq +msgid "Vehicle name already exists!" +msgstr "??El nombre del veh??culo ya existe!" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_vehicle +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_graph_view +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_pivot_view +msgid "Vehicles" +msgstr "Veh??culos" + +#. module: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_report_vehicle +msgid "Vehicles Report" +msgstr "Reporte de Veh??culos" + +#~ msgid "Assigned Vehicle" +#~ msgstr "Veh??culo Asignado" + +#~ msgid "The vehicle is already assigned to another route on that day!" +#~ msgstr "??El veh??culo ya est?? asignado a otra ruta ese d??a!" diff --git a/fieldservice_vehicle/i18n/fieldservice_vehicle.pot b/fieldservice_vehicle/i18n/fieldservice_vehicle.pot new file mode 100644 index 0000000000..9cc894173f --- /dev/null +++ b/fieldservice_vehicle/i18n/fieldservice_vehicle.pot @@ -0,0 +1,118 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fieldservice_vehicle +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 16.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: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_vehicle +msgid "Add a Field Service Vehicle here." +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__person_id +msgid "Assigned Driver" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_uid +msgid "Created by" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_date +msgid "Created on" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_person__vehicle_id +msgid "Default Vehicle" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__display_name +msgid "Display Name" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_order +msgid "Field Service Order" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_vehicle +msgid "Field Service Vehicle" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_vehicle +msgid "Field Service Vehicles" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_person +msgid "Field Service Worker" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__id +msgid "ID" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle____last_update +msgid "Last Modified on" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_uid +msgid "Last Updated by" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_date +msgid "Last Updated on" +msgstr "" + +#. module: fieldservice_vehicle +#: model:res.groups,name:fieldservice_vehicle.group_fsm_vehicle +msgid "Manage Vehicles" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__name +msgid "Name" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_order__vehicle_id +msgid "Vehicle" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.model.constraint,message:fieldservice_vehicle.constraint_fsm_vehicle_name_uniq +msgid "Vehicle name already exists!" +msgstr "" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_vehicle +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_graph_view +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_pivot_view +msgid "Vehicles" +msgstr "" + +#. module: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_report_vehicle +msgid "Vehicles Report" +msgstr "" diff --git a/fieldservice_vehicle/i18n/it.po b/fieldservice_vehicle/i18n/it.po new file mode 100644 index 0000000000..c3489da2b8 --- /dev/null +++ b/fieldservice_vehicle/i18n/it.po @@ -0,0 +1,124 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fieldservice_vehicle +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2021-09-29 10:34+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.3.2\n" + +#. module: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_vehicle +msgid "Add a Field Service Vehicle here." +msgstr "Aggiungi un veicolo assistenza sul campo." + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__person_id +msgid "Assigned Driver" +msgstr "Conduttore assegnato" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_uid +msgid "Created by" +msgstr "Creato da" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_date +msgid "Created on" +msgstr "Creato il" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_person__vehicle_id +msgid "Default Vehicle" +msgstr "Veicolo predefinito" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__display_name +msgid "Display Name" +msgstr "Nome visualizzato" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_order +msgid "Field Service Order" +msgstr "Ordine assistenza sul campo" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_vehicle +msgid "Field Service Vehicle" +msgstr "Veicolo assistenza sul campo" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_vehicle +msgid "Field Service Vehicles" +msgstr "Veicoli assistenza sul campo" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_person +msgid "Field Service Worker" +msgstr "Lavoratore assistenza sul campo" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__id +msgid "ID" +msgstr "ID" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle____last_update +msgid "Last Modified on" +msgstr "Ultima modifica il" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_uid +msgid "Last Updated by" +msgstr "Ultimo aggiornamento di" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_date +msgid "Last Updated on" +msgstr "Ultimo aggiornamento il" + +#. module: fieldservice_vehicle +#: model:res.groups,name:fieldservice_vehicle.group_fsm_vehicle +msgid "Manage Vehicles" +msgstr "Gestione veicoli" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__name +msgid "Name" +msgstr "Nome" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_order__vehicle_id +msgid "Vehicle" +msgstr "Veicolo" + +#. module: fieldservice_vehicle +#: model:ir.model.constraint,message:fieldservice_vehicle.constraint_fsm_vehicle_name_uniq +msgid "Vehicle name already exists!" +msgstr "Il nome del veicolo esiste già!" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_vehicle +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_graph_view +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_pivot_view +msgid "Vehicles" +msgstr "Veicoli" + +#. module: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_report_vehicle +msgid "Vehicles Report" +msgstr "Report veicoli" + +#~ msgid "Order" +#~ msgstr "Ordine" diff --git a/fieldservice_vehicle/i18n/pt_BR.po b/fieldservice_vehicle/i18n/pt_BR.po new file mode 100644 index 0000000000..695db49266 --- /dev/null +++ b/fieldservice_vehicle/i18n/pt_BR.po @@ -0,0 +1,121 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * fieldservice_vehicle +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 12.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2021-12-08 22:39+0000\n" +"Last-Translator: marcos-mendez \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 4.3.2\n" + +#. module: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_vehicle +msgid "Add a Field Service Vehicle here." +msgstr "Adicione um Veículo de Serviço de Campo aqui." + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__person_id +msgid "Assigned Driver" +msgstr "Motorista Designado" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_uid +msgid "Created by" +msgstr "Criado por" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__create_date +msgid "Created on" +msgstr "Criado em" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_person__vehicle_id +msgid "Default Vehicle" +msgstr "Veículo Padrão" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__display_name +msgid "Display Name" +msgstr "Exibir Nome" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_order +msgid "Field Service Order" +msgstr "Ordem de Serviço de Campo" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_vehicle +msgid "Field Service Vehicle" +msgstr "Veículo de Serviço de Campo" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_vehicle +msgid "Field Service Vehicles" +msgstr "Veículos de Serviço de Campo" + +#. module: fieldservice_vehicle +#: model:ir.model,name:fieldservice_vehicle.model_fsm_person +msgid "Field Service Worker" +msgstr "Trabalhador do Serviço de Campo" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__id +msgid "ID" +msgstr "ID" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle____last_update +msgid "Last Modified on" +msgstr "Última Modificação Feita em" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_uid +msgid "Last Updated by" +msgstr "Última Atualização Feita por" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__write_date +msgid "Last Updated on" +msgstr "Última Atualização Feita em" + +#. module: fieldservice_vehicle +#: model:res.groups,name:fieldservice_vehicle.group_fsm_vehicle +msgid "Manage Vehicles" +msgstr "Gerenciar Veículos" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_vehicle__name +msgid "Name" +msgstr "Nome" + +#. module: fieldservice_vehicle +#: model:ir.model.fields,field_description:fieldservice_vehicle.field_fsm_order__vehicle_id +msgid "Vehicle" +msgstr "Veículo" + +#. module: fieldservice_vehicle +#: model:ir.model.constraint,message:fieldservice_vehicle.constraint_fsm_vehicle_name_uniq +msgid "Vehicle name already exists!" +msgstr "O nome do veículo já existe!" + +#. module: fieldservice_vehicle +#: model:ir.actions.act_window,name:fieldservice_vehicle.action_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_report_vehicle +#: model:ir.ui.menu,name:fieldservice_vehicle.menu_fsm_vehicle +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_graph_view +#: model_terms:ir.ui.view,arch_db:fieldservice_vehicle.fsm_vehicle_pivot_view +msgid "Vehicles" +msgstr "Veículos" + +#. module: fieldservice_vehicle +#: model_terms:ir.actions.act_window,help:fieldservice_vehicle.action_fsm_report_vehicle +msgid "Vehicles Report" +msgstr "Relatório de Veículos" diff --git a/fieldservice_vehicle/models/__init__.py b/fieldservice_vehicle/models/__init__.py new file mode 100644 index 0000000000..910d4725c2 --- /dev/null +++ b/fieldservice_vehicle/models/__init__.py @@ -0,0 +1,7 @@ +# Copyright (C) 2018 Open Source Integrators +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +from . import ( + fsm_vehicle, + fsm_person, + fsm_order, +) diff --git a/fieldservice_vehicle/models/fsm_order.py b/fieldservice_vehicle/models/fsm_order.py new file mode 100644 index 0000000000..1f70d25efd --- /dev/null +++ b/fieldservice_vehicle/models/fsm_order.py @@ -0,0 +1,31 @@ +# Copyright (C) 2019 Open Source Integrators +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +from odoo import api, fields, models + + +class FSMOrder(models.Model): + _inherit = "fsm.order" + + @api.model + def _get_default_vehicle(self): + return self.person_id.vehicle_id.id or False + + vehicle_id = fields.Many2one( + "fsm.vehicle", string="Vehicle", default=_get_default_vehicle + ) + + @api.model + def create(self, vals): + res = super().create(vals) + if not vals.get("vehicle_id") and vals.get("person_id"): + self._onchange_person_id() + return res + + @api.onchange("person_id") + def _onchange_person_id(self): + self.vehicle_id = ( + self.person_id + and self.person_id.vehicle_id + and self.person_id.vehicle_id.id + or False + ) diff --git a/fieldservice_vehicle/models/fsm_person.py b/fieldservice_vehicle/models/fsm_person.py new file mode 100644 index 0000000000..9ea293e3ef --- /dev/null +++ b/fieldservice_vehicle/models/fsm_person.py @@ -0,0 +1,9 @@ +# Copyright (C) 2019 Open Source Integrators +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +from odoo import fields, models + + +class FSMPerson(models.Model): + _inherit = "fsm.person" + + vehicle_id = fields.Many2one("fsm.vehicle", string="Default Vehicle") diff --git a/fieldservice_vehicle/models/fsm_vehicle.py b/fieldservice_vehicle/models/fsm_vehicle.py new file mode 100644 index 0000000000..f17274298b --- /dev/null +++ b/fieldservice_vehicle/models/fsm_vehicle.py @@ -0,0 +1,15 @@ +# Copyright (C) 2018 Brian McMaster +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +from odoo import fields, models + + +class FSMVehicle(models.Model): + _name = "fsm.vehicle" + _description = "Field Service Vehicle" + + name = fields.Char(required="True") + person_id = fields.Many2one("fsm.person", string="Assigned Driver") + + _sql_constraints = [ + ("name_uniq", "unique (name)", "Vehicle name already exists!"), + ] diff --git a/fieldservice_vehicle/pyproject.toml b/fieldservice_vehicle/pyproject.toml new file mode 100644 index 0000000000..4231d0cccb --- /dev/null +++ b/fieldservice_vehicle/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/fieldservice_vehicle/readme/CONFIGURE.md b/fieldservice_vehicle/readme/CONFIGURE.md new file mode 100644 index 0000000000..f688ad88f4 --- /dev/null +++ b/fieldservice_vehicle/readme/CONFIGURE.md @@ -0,0 +1,4 @@ +To configure this module, you need to: + +- Go to Field Service \> Master Data \> Vehicles +- Create your vehicles and assign them to a worker diff --git a/fieldservice_vehicle/readme/CONTRIBUTORS.md b/fieldservice_vehicle/readme/CONTRIBUTORS.md new file mode 100644 index 0000000000..363b765f3e --- /dev/null +++ b/fieldservice_vehicle/readme/CONTRIBUTORS.md @@ -0,0 +1,10 @@ +- Wolfgang Hall \<\> +- Maxime Chambreuil \<\> +- Steve Campbell \<\> +- Bhavesh Odedra \<\> +- Michael Allen \<\> +- Serpent Consulting Services Pvt. Ltd. \<\> +- Brian McMaster \<\> +- Vandan Pandeji \<\> +- [APSL](https://apsl.tech): + - Antoni Marroig \<\> diff --git a/fieldservice_vehicle/readme/CREDITS.md b/fieldservice_vehicle/readme/CREDITS.md new file mode 100644 index 0000000000..7e4827b0a8 --- /dev/null +++ b/fieldservice_vehicle/readme/CREDITS.md @@ -0,0 +1,3 @@ +The development of this module has been financially supported by: + +- Open Source Integrators \<\> diff --git a/fieldservice_vehicle/readme/DESCRIPTION.md b/fieldservice_vehicle/readme/DESCRIPTION.md new file mode 100644 index 0000000000..f20e72a486 --- /dev/null +++ b/fieldservice_vehicle/readme/DESCRIPTION.md @@ -0,0 +1,2 @@ +This module allows you to manage your vehicles and assign them to a +worker. diff --git a/fieldservice_vehicle/readme/INSTALL.md b/fieldservice_vehicle/readme/INSTALL.md new file mode 100644 index 0000000000..263ff64d3a --- /dev/null +++ b/fieldservice_vehicle/readme/INSTALL.md @@ -0,0 +1,5 @@ +To install Field Service and have the mapping features, you need to +install GeoEngine. + +Please refer to the installation instructions available at: + diff --git a/fieldservice_vehicle/readme/ROADMAP.md b/fieldservice_vehicle/readme/ROADMAP.md new file mode 100644 index 0000000000..e14dbdee6f --- /dev/null +++ b/fieldservice_vehicle/readme/ROADMAP.md @@ -0,0 +1,2 @@ +The roadmap of the Field Service application is documented on +[Github](https://github.com/OCA/field-service/issues/1). diff --git a/fieldservice_vehicle/readme/USAGE.md b/fieldservice_vehicle/readme/USAGE.md new file mode 100644 index 0000000000..92eeed27fa --- /dev/null +++ b/fieldservice_vehicle/readme/USAGE.md @@ -0,0 +1,5 @@ +To use this module, you need to: + +- Go to Field Service +- Create or select an order and assign it +- Follow the process diff --git a/fieldservice_vehicle/security/ir.model.access.csv b/fieldservice_vehicle/security/ir.model.access.csv new file mode 100644 index 0000000000..c42f4b8c16 --- /dev/null +++ b/fieldservice_vehicle/security/ir.model.access.csv @@ -0,0 +1,3 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_fsm_vehicle_fsm_user,fsm.vehicle.user,model_fsm_vehicle,fieldservice.group_fsm_user,1,0,0,0 +access_fsm_vehicle_fsm_manager,fsm.vehicle.manager,model_fsm_vehicle,fieldservice.group_fsm_manager,1,1,1,1 diff --git a/fieldservice_vehicle/security/res_groups.xml b/fieldservice_vehicle/security/res_groups.xml new file mode 100644 index 0000000000..adad57bfc2 --- /dev/null +++ b/fieldservice_vehicle/security/res_groups.xml @@ -0,0 +1,13 @@ + + + + Manage Vehicles + + + + + + diff --git a/fieldservice_vehicle/static/description/icon.png b/fieldservice_vehicle/static/description/icon.png new file mode 100644 index 0000000000..955674d8f0 Binary files /dev/null and b/fieldservice_vehicle/static/description/icon.png differ diff --git a/fieldservice_vehicle/static/description/index.html b/fieldservice_vehicle/static/description/index.html new file mode 100644 index 0000000000..5a579a8b51 --- /dev/null +++ b/fieldservice_vehicle/static/description/index.html @@ -0,0 +1,476 @@ + + + + + + +Field Service Vehicles + + + +
+

Field Service Vehicles

+ + +

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

+

This module allows you to manage your vehicles and assign them to a +worker.

+

Table of contents

+ +
+

Installation

+

To install Field Service and have the mapping features, you need to +install GeoEngine.

+

Please refer to the installation instructions available at: +https://github.com/OCA/geospatial/tree/13.0/base_geoengine

+
+
+

Configuration

+

To configure this module, you need to:

+
    +
  • Go to Field Service > Master Data > Vehicles
  • +
  • Create your vehicles and assign them to a worker
  • +
+
+
+

Usage

+

To use this module, you need to:

+
    +
  • Go to Field Service
  • +
  • Create or select an order and assign it
  • +
  • Follow the process
  • +
+
+
+

Known issues / Roadmap

+

The roadmap of the Field Service application is documented on +Github.

+
+
+

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

+
    +
  • Open Source Integrators
  • +
+
+
+

Contributors

+ +
+
+

Other credits

+

The development of this module has been financially supported by:

+ +
+
+

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.

+

Current maintainers:

+

wolfhall max3903

+

This module is part of the OCA/field-service project on GitHub.

+

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

+
+
+
+ + diff --git a/fieldservice_vehicle/tests/__init__.py b/fieldservice_vehicle/tests/__init__.py new file mode 100644 index 0000000000..4616b93d16 --- /dev/null +++ b/fieldservice_vehicle/tests/__init__.py @@ -0,0 +1,4 @@ +# Copyright (C) 2022 - TODAY, Open Source Integrators +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import test_fsm_vehicle diff --git a/fieldservice_vehicle/tests/test_fsm_vehicle.py b/fieldservice_vehicle/tests/test_fsm_vehicle.py new file mode 100644 index 0000000000..0a9f1685d4 --- /dev/null +++ b/fieldservice_vehicle/tests/test_fsm_vehicle.py @@ -0,0 +1,44 @@ +# Copyright (C) 2022 - TODAY, Open Source Integrators +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from datetime import datetime, timedelta + +from odoo.tests.common import TransactionCase + + +class FSMVehicleCase(TransactionCase): + def setUp(self): + super().setUp() + self.test_partner = self.env["res.partner"].create( + {"name": "Test Partner", "phone": "123", "email": "tp@email.com"} + ) + self.test_vehicle = self.env["fsm.vehicle"].create({"name": "Test Vehicle"}) + + self.test_worker = self.env["fsm.person"].create( + { + "name": "Test Wokrer", + "email": "tw@email.com", + "vehicle_id": self.test_vehicle.id, + } + ) + self.test_location = self.env["fsm.location"].create( + { + "name": "Test Location", + "phone": "123", + "email": "tp@email.com", + "partner_id": self.test_partner.id, + "owner_id": self.test_partner.id, + } + ) + + def test_vehicle(self): + self.test_order = self.env["fsm.order"].create( + { + "location_id": self.test_location.id, + "date_start": datetime.today(), + "date_end": datetime.today() + timedelta(hours=2), + "request_early": datetime.today(), + "person_id": self.test_worker.id, + } + ) + self.test_order._onchange_person_id() diff --git a/fieldservice_vehicle/views/fsm_order.xml b/fieldservice_vehicle/views/fsm_order.xml new file mode 100644 index 0000000000..a89638169a --- /dev/null +++ b/fieldservice_vehicle/views/fsm_order.xml @@ -0,0 +1,12 @@ + + + fsm.order.vehicle.form + fsm.order + + + + + + + + diff --git a/fieldservice_vehicle/views/fsm_person.xml b/fieldservice_vehicle/views/fsm_person.xml new file mode 100644 index 0000000000..1cc654f5e1 --- /dev/null +++ b/fieldservice_vehicle/views/fsm_person.xml @@ -0,0 +1,22 @@ + + + fsm.person.vehicle.tree + fsm.person + + + + + + + + + fsm.person.vehicle.form + fsm.person + + + + + + + + diff --git a/fieldservice_vehicle/views/fsm_vehicle.xml b/fieldservice_vehicle/views/fsm_vehicle.xml new file mode 100644 index 0000000000..e60743960e --- /dev/null +++ b/fieldservice_vehicle/views/fsm_vehicle.xml @@ -0,0 +1,73 @@ + + + + fsm.vehicle.tree + fsm.vehicle + + + + + + + + + fsm.vehicle.form + fsm.vehicle + +
+ + +
+
+
+ + + Field Service Vehicles + fsm.vehicle + tree,form + +

+ Add a Field Service Vehicle here. +

+
+
+ + + fsm.vehicle.graph + fsm.vehicle + + + + + + + + fsm.vehicle.pivot + fsm.vehicle + + + + + + + + Vehicles + fsm.vehicle + graph,pivot + +

+ Vehicles Report +

+
+
+
diff --git a/fieldservice_vehicle/views/menu.xml b/fieldservice_vehicle/views/menu.xml new file mode 100644 index 0000000000..079a7c6bca --- /dev/null +++ b/fieldservice_vehicle/views/menu.xml @@ -0,0 +1,18 @@ + + + +