From 25d63b97a0a40932fb69a80807e6ef8d4b492504 Mon Sep 17 00:00:00 2001 From: Akim Juillerat Date: Thu, 10 Aug 2017 14:59:55 +0200 Subject: [PATCH] [IMP] maintenance: restrict deletion of equipment if requests exists Loosing data about existing requests is not good idea when managing maintenance. It is better to ensure there are no ongoing requests and prevent deletion if it is the case. Closes #18794 . --- addons/maintenance/models/maintenance.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/addons/maintenance/models/maintenance.py b/addons/maintenance/models/maintenance.py index 3e17f2c5b32..e8314b2b855 100644 --- a/addons/maintenance/models/maintenance.py +++ b/addons/maintenance/models/maintenance.py @@ -287,7 +287,8 @@ class MaintenanceRequest(models.Model): help="Date requested for the maintenance to happen") owner_user_id = fields.Many2one('res.users', string='Created by User', default=lambda s: s.env.uid) category_id = fields.Many2one('maintenance.equipment.category', related='equipment_id.category_id', string='Category', store=True, readonly=True) - equipment_id = fields.Many2one('maintenance.equipment', string='Equipment', index=True) + equipment_id = fields.Many2one('maintenance.equipment', string='Equipment', + ondelete='restrict', index=True) technician_user_id = fields.Many2one('res.users', string='Owner', track_visibility='onchange', oldname='user_id') stage_id = fields.Many2one('maintenance.stage', string='Stage', ondelete='restrict', track_visibility='onchange', group_expand='_read_group_stage_ids', default=_default_stage)