From 9ac62d7f4e0b3687d95a3bea6d5efe4939aa1b13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Thu, 6 Jun 2013 20:44:15 +0200 Subject: [PATCH] Prevent delete of purchased request review907003 --- purchase_request.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/purchase_request.py b/purchase_request.py index f8f85b4ae9..29f310c338 100644 --- a/purchase_request.py +++ b/purchase_request.py @@ -73,6 +73,8 @@ class PurchaseRequest(ModelSQL, ModelView): cls._error_messages.update({ 'create_request': ('Purchase requests are only created ' 'by the system.'), + 'delete_purchase_line': ('You can not delete purchased ' + 'request.'), }) cls._sql_constraints += [ ('check_purchase_request_quantity', 'CHECK(quantity > 0)', @@ -450,6 +452,12 @@ class PurchaseRequest(ModelSQL, ModelView): cls.raise_user_error('create_request') return super(PurchaseRequest, cls).create(vlist) + @classmethod + def delete(cls, requests): + if any(r.purchase_line for r in requests): + cls.raise_user_error('delete_purchase_line') + super(PurchaseRequest, cls).delete(requests) + class CreatePurchaseRequestStart(ModelView): 'Create Purchase Request'