TIP: You can type at any time to perform a new search.
Shipment Advice Planner Toursolver
shipment_advice_planner_toursolver · OCA/stock-logistics-transport
- Repository
- OCA/stock-logistics-transport · module folder · Try on Runboat
- Module version
- 3.2.0
- Category
- Uncategorized
- Folder size
- 0.39 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/stock-logistics-transport
- Last tracking update
- 2026-08-07 08:09:24
- Authors
- ACSONE SA/NV, Odoo Community Association (OCA)
- Maintainers
- ACSONE SA/NV, Odoo Community Association (OCA)
- Committers
- Laurent Mignon (ACSONE), sbejaoui, Weblate, OCA-git-bot, oca-ci
- Odoo dependencies
- Python dependencies
- requests
- System dependencies
- None
- Required by
- shipment_advice_planner_toursolver_queue_job, stock_release_channel_shipment_advice_toursolver
- Description
Code Analysis ⓘ
Views touched (15)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
res_config_settings_form_view |
res.config.settings | form | Inherits stock.res_config_settings_view_form | |
res_partner_form_view |
res.partner | form | Inherits base.view_partner_form | |
shipment_advice_planner_form_view |
shipment.advice.planner | form | Inherits shipment_advice_planner.shipment_advice_planner_form_view | |
shipment_advice_view_form |
shipment.advice.form | shipment.advice | form | Inherits shipment_advice.shipment_advice_view_form |
shipment_advice_view_tree |
shipment.advice.tree | shipment.advice | tree | Inherits shipment_advice.shipment_advice_view_tree |
stock_picking_form_view |
stock.picking | form | Inherits shipment_advice.view_picking_form | |
toursolver_backend_form_view |
toursolver.backend | form | New | |
toursolver_backend_tree_view |
toursolver.backend | tree | New | |
toursolver_delivery_window_search_view |
toursolver.delivery.window | search | New | |
toursolver_delivery_window_tree_view |
toursolver.delivery.window | tree | New | |
toursolver_resource_form_view |
toursolver.resource | form | New | |
toursolver_resource_search_view |
toursolver.resource | search | New | |
toursolver_resource_tree_view |
toursolver.resource | tree | New | |
toursolver_task_form_view |
toursolver.task | form | New | |
toursolver_task_tree_view |
toursolver.task | tree | New |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (11)
New fields (1)
-
toursolver_backend_idMany2one → toursolver.backendcomodel_name='toursolver.backend'string='TourSolver Backend'
No public methods.
New fields (1)
-
toursolver_backend_idMany2onereadonly=Falserelated='company_id.toursolver_backend_id'
No public methods.
New fields (2)
-
toursolver_delivery_durationInteger -
toursolver_delivery_window_idsOne2many → toursolver.delivery.windowcomodel_name='toursolver.delivery.window'help='If specified, delivery is only possible into the specified time windows. (Leaves empty if no restriction)'inverse_name='partner_id'string='Delivery windows'
No public methods.
New fields (15)
-
is_create_toursolver_task_allowedBooleancompute='_compute_is_create_toursolver_task_allowed' -
toursolver_additional_costFloatcompute='_compute_toursolver_stats'store=True -
toursolver_delivery_costFloatcompute='_compute_toursolver_stats'store=True -
toursolver_nbr_toursIntegercompute='_compute_toursolver_stats'store=Truestring='Number of Tours' -
toursolver_nbr_visitsIntegercompute='_compute_toursolver_stats'help='Number of delivery stops in the tours'store=Truestring='Number of visits' -
toursolver_resource_idMany2one → toursolver.resourcecomodel_name='toursolver.resource'readonly=Truestates={'draft': [('readonly', False)]}string='Toursolver Resource' -
toursolver_task_idMany2one → toursolver.taskcomodel_name='toursolver.task'readonly=Truestring='Toursolver Task' -
toursolver_total_costFloatcompute='_compute_toursolver_stats'store=True -
toursolver_travel_distanceFloatcompute='_compute_toursolver_stats'help='Distance to travel for the delivery in Km'store=True -
toursolver_travel_distance_uomMany2one → uom.uomdefault=<expr>readonly=Truestring='Distance UoM' args: 'uom.uom' -
toursolver_travel_distance_uom_nameCharreadonly=Truerelated='toursolver_travel_distance_uom.name'string='Distance unit of measure label' -
toursolver_travel_durationFloatcompute='_compute_toursolver_stats'help='Driving time for the travel, excluding the time spent at each stop'store=True -
toursolver_travel_end_dtDatetimecompute='_compute_toursolver_stats'store=Truestring='Travel End Time' -
toursolver_travel_start_dtDatetimecompute='_compute_toursolver_stats'store=Truestring='Travel Start Time' -
toursolver_travel_total_timeFloatcompute='_compute_toursolver_stats'help='Total time for the travel, including the time spent at each stop and reloading time'store=True
-
create_toursolver_task(self)
New fields (4)
-
delivery_resource_idsMany2many → toursolver.resourcecomodel_name='toursolver.resource'help='delivery resources to be considered in geo-optimazation'string='Delivery resources' -
shipment_planning_methodSelectionondelete={'toursolver': 'cascade'}selection_add=[('toursolver', 'TourSolver')] -
toursolver_resource_idMany2one → toursolver.resourcecomodel_name='toursolver.resource'help='TourSolver resource to be propgated to the shipment advice in simpleplanning method'readonly=Truestring='Toursolver Resource' -
toursolver_task_idMany2one → toursolver.taskcomodel_name='toursolver.task'readonly=Truestring='Toursolver Task'
No public methods.
New fields (2)
-
toursolver_shipment_advice_rankIntegerhelp='The rank given by TourSolver to this picking in the set of planned stops of the related shipment advice'readonly=Truestring='Toursolver Rank' -
toursolver_task_idMany2one → toursolver.taskcomodel_name='toursolver.task'copy=Falsereadonly=True
No public methods.
New fields (19)
-
activeBooleandefault=True -
api_keyChar -
connection_timeoutIntegerdefault=10help='Timeout in seconds for the connection to the Toursolver API'required=True -
definition_idMany2one → toursolver.request.props.definitioncomodel_name='toursolver.request.props.definition'readonly=True -
delivery_durationIntegerdefault=180help='Duration in seconds needed to deliver a customer'string='Fixed time spent delivering a customer' -
delivery_window_disabledBoolean -
durationIntegerhelp='Duration in seconds allowed to the computation of the optimization'string='Optimization process max duration' -
loading_durationIntegerhelp='Loading time in minutes'string='Fixed initial loading time' -
nameCharrequired=True -
organizationCharhelp="Organization identifier as specified in the Toursolver interface. If set, it's used to define how see the results in the Toursolver interface and to determine the time zone of the optimization. If not provided, the server will guess the time zone from the first visit coordinates which will add extra time to the optimization process." -
partner_default_delivery_window_endFloatdefault=17.0help='If no delivery winodow specified on the partner this will be used' -
partner_default_delivery_window_startFloatdefault=8.0help='If no delivery winodow specified on the partner this will be used' -
read_timeoutIntegerdefault=10help='Timeout in seconds for the read operation to the Toursolver API'required=True -
resource_default_travel_penaltyFloathelp='Default value for the The cost for a resource of driving for one distance unit. Can be specified on resource level using `workPenalty`option'string='Resource fixed cost travelling/hour' -
resource_default_work_penaltyFloathelp='Default value for the cost of a resource working for an hour. Can be specified on resource level using `travelPenalty`option'string='Resource fixed cost working/hour' -
resource_properties_definitionPropertiesDefinitionstring='Resource Properties' -
rqst_options_propertiesPropertiescopy=Truedefinition='definition_id.options_definition'string='Options' -
rqst_orders_propertiesPropertiescopy=Truedefinition='definition_id.orders_definition'help='Properties to be used in the definition of each order into the optimization request'string='Orders Properties' -
urlChar
-
create(self, vals_list)@api.model_create_multi
New fields (1)
-
partner_idMany2one → res.partnercomodel_name='res.partner'index=Trueondelete='cascade'required=True
No public methods.
New fields (2)
-
options_definitionPropertiesDefinition -
orders_definitionPropertiesDefinition
No public methods.
New fields (7)
-
activeBooleandefault=True -
nameCharrequired=True -
partner_idMany2one → res.partnercomodel_name='res.partner'string='Contact' -
resource_idCharrequired=Truestring='ResourceId' -
resource_propertiesPropertiescopy=Truedefinition='toursolver_backend_id.resource_properties_definition' args: 'Properties' -
toursolver_backend_idMany2one → toursolver.backendcomodel_name='toursolver.backend'required=Truestring='TourSolver Backend' -
use_delivery_person_coordinates_as_endBooleanhelp="If true the computed delivery will end at the delivery person's address. Otherwise it will end at the warehouse address"
No public methods.
New fields (17)
-
dateDatedefault=fields.Date.context_todayreadonly=True -
delivery_resource_idsMany2many → toursolver.resourcecomodel_name='toursolver.resource'readonly=Truestring='Delivery resources' -
dock_idMany2one → stock.dockcomodel_name='stock.dock'readonly=True -
nameCharreadonly=True -
picking_idsOne2many → stock.pickingcomodel_name='stock.picking'inverse_name='toursolver_task_id'readonly=Truestring='Pickings' -
request_dataBinaryreadonly=True -
request_data_filenameCharreadonly=True -
result_dataBinaryattachment=Truereadonly=True -
result_data_filenameCharreadonly=True -
result_jsonJsoncompute='_compute_result_json' -
shipment_advice_idsOne2many → shipment.advicecomodel_name='shipment.advice'inverse_name='toursolver_task_id'readonly=Truestring='Shipment Advices' -
stateSelectioncompute='_compute_state'readonly=Trueselection=[('draft', 'Draft'), ('in_progress', 'In progress'), ('aborted', 'Aborted'), ('error', 'Error'), ('success', 'Success'), ('done', 'Done'), ('cancelled', 'Cancelled')]store=True -
task_idCharhelp='Identifier of the task submitted to the TourSolver service to optimize the planning/path.'readonly=True args: 'Toursolver task id' -
toursolver_backend_idMany2one → toursolver.backendcomodel_name='toursolver.backend'default='_get_toursolver_backend'readonly=Truestring='TourSolver Backend' -
toursolver_error_messageTextreadonly=True -
toursolver_statusCharhelp='Status of the optimization task provided by the TourSolver service.'readonly=True args: 'TourSolver status' -
warehouse_idMany2one → stock.warehousecomodel_name='stock.warehouse'readonly=True
-
button_cancel(self) -
button_check_status(self) -
button_get_result(self) -
button_send_request(self) -
button_show_shipment_advice(self) -
create(self, vals_list)@api.model_create_multi