diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/expensesheet/ExpenseSheetCRUDController.java b/libreplan-webapp/src/main/java/org/libreplan/web/expensesheet/ExpenseSheetCRUDController.java index 0065046cf..8ca9445a6 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/expensesheet/ExpenseSheetCRUDController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/expensesheet/ExpenseSheetCRUDController.java @@ -623,4 +623,47 @@ public class ExpenseSheetCRUDController extends cancel = true; } + public String getType() { + return getType(expenseSheetModel.getExpenseSheet()); + } + + private String getType(ExpenseSheet expenseSheet) { + if (expenseSheet != null && expenseSheet.isPersonal()) { + return _("Personal"); + } + return _("Regular"); + } + + public RowRenderer getExpenseSheetsRenderer() { + return new RowRenderer() { + + @Override + public void render(Row row, Object data) throws Exception { + final ExpenseSheet expenseSheet = (ExpenseSheet) data; + row.setValue(expenseSheet); + + Util.appendLabel(row, expenseSheet.getFirstExpense().toString()); + Util.appendLabel(row, expenseSheet.getLastExpense().toString()); + Util.appendLabel(row, + Util.addCurrencySymbol(expenseSheet.getTotal())); + Util.appendLabel(row, expenseSheet.getCode()); + Util.appendLabel(row, expenseSheet.getDescription()); + Util.appendLabel(row, getType(expenseSheet)); + + Util.appendOperationsAndOnClickEvent(row, new EventListener() { + @Override + public void onEvent(Event event) throws Exception { + goToEditForm(expenseSheet); + } + }, new EventListener() { + @Override + public void onEvent(Event event) throws Exception { + confirmDelete(expenseSheet); + } + }); + + } + }; + } + } diff --git a/libreplan-webapp/src/main/webapp/expensesheet/expenseSheet.zul b/libreplan-webapp/src/main/webapp/expensesheet/expenseSheet.zul index f0a3c7389..6e09d096c 100644 --- a/libreplan-webapp/src/main/webapp/expensesheet/expenseSheet.zul +++ b/libreplan-webapp/src/main/webapp/expensesheet/expenseSheet.zul @@ -40,7 +40,8 @@ + model="@{controller.expenseSheets}" sclass="clickable-rows" + rowRenderer="@{controller.expenseSheetsRenderer}"> @@ -52,33 +53,10 @@ sort="auto(code)" /> + - - - - @@ -109,6 +87,10 @@