From 290c7dfb5b3e614381970cbb8542f87a929f2a46 Mon Sep 17 00:00:00 2001 From: Manuel Rego Casasnovas Date: Thu, 7 Jun 2012 08:00:53 +0200 Subject: [PATCH] Add restriction to prevent remove all the lines in a personal expense sheet A personal expense sheet is bound to a resource, and the resource is specified in the lines. So, if user removes all the lines we'll be losing that relationship. FEA: ItEr76S28UserDashboard --- .../business/expensesheet/entities/ExpenseSheet.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/libreplan-business/src/main/java/org/libreplan/business/expensesheet/entities/ExpenseSheet.java b/libreplan-business/src/main/java/org/libreplan/business/expensesheet/entities/ExpenseSheet.java index 88c6d6b53..6728e7b74 100644 --- a/libreplan-business/src/main/java/org/libreplan/business/expensesheet/entities/ExpenseSheet.java +++ b/libreplan-business/src/main/java/org/libreplan/business/expensesheet/entities/ExpenseSheet.java @@ -232,4 +232,13 @@ public class ExpenseSheet extends IntegrationEntity implements IHumanIdentifiabl return !personal; } + @AssertTrue(message = "a personal expenses must have at least one line") + public boolean checkConstraintPersonalExpenseMustHaveAtLeastOneLine() { + if (!personal) { + return true; + } + + return !expenseSheetLines.isEmpty(); + } + } \ No newline at end of file