From 66876c085907ee6f890b27cd631e70796bf8690a Mon Sep 17 00:00:00 2001 From: sughosh88 Date: Fri, 29 May 2015 11:11:31 +0530 Subject: [PATCH] Modifies reports MIFOSX-1939 --- .../service/ReadReportingServiceImpl.java | 6 +++++- .../Client Loan Account Schedule.prpt | Bin 13833 -> 13698 bytes .../Client Saving Transactions.properties | 2 ++ .../Client Saving Transactions.prpt | Bin 8370 -> 8451 bytes .../Client Saving Transactions_fr.properties | 2 ++ 5 files changed, 9 insertions(+), 1 deletion(-) diff --git a/mifosng-provider/src/main/java/org/mifosplatform/infrastructure/dataqueries/service/ReadReportingServiceImpl.java b/mifosng-provider/src/main/java/org/mifosplatform/infrastructure/dataqueries/service/ReadReportingServiceImpl.java index c58e53f08..80c544159 100644 --- a/mifosng-provider/src/main/java/org/mifosplatform/infrastructure/dataqueries/service/ReadReportingServiceImpl.java +++ b/mifosng-provider/src/main/java/org/mifosplatform/infrastructure/dataqueries/service/ReadReportingServiceImpl.java @@ -326,7 +326,7 @@ public class ReadReportingServiceImpl implements ReadReportingService { for (final ParameterDefinitionEntry paramDefEntry : paramsDefinition.getParameterDefinitions()) { final String paramName = paramDefEntry.getName(); if (!((paramName.equals("tenantUrl")) || (paramName.equals("userhierarchy") || (paramName.equals("username")) || (paramName - .equals("password"))))) { + .equals("password") || (paramName.equals("userid")))))) { logger.info("paramName:" + paramName); final String pValue = queryParams.get(paramName); if (StringUtils.isBlank(pValue)) { throw new PlatformDataIntegrityException("error.msg.reporting.error", @@ -361,6 +361,10 @@ public class ReadReportingServiceImpl implements ReadReportingService { final String userhierarchy = currentUser.getOffice().getHierarchy(); logger.info("db URL:" + tenantUrl + " userhierarchy:" + userhierarchy); rptParamValues.put("userhierarchy", userhierarchy); + + final String userid = currentUser.getId().toString(); + logger.info("db URL:" + tenantUrl + " userid:" + userid); + rptParamValues.put("userid", userid); final MifosPlatformTenant tenant = ThreadLocalContextUtil.getTenant(); diff --git a/mifosng-provider/src/main/pentahoReports/Client Loan Account Schedule.prpt b/mifosng-provider/src/main/pentahoReports/Client Loan Account Schedule.prpt index 8e13822570b826561e0b1363995a974a9f240278..c57cb3d17726c8a98a9477f780c7001d8b3d06a0 100644 GIT binary patch delta 6671 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 T0X5Btzq6W2?;qQ=7~SNQ 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