From f28e8a0533baa852c90076a3010ba89b6314b189 Mon Sep 17 00:00:00 2001 From: Nayan Ambali Date: Fri, 15 Mar 2013 18:22:52 +0530 Subject: [PATCH] after unassign parent group update heirarchy --- .../GroupWritePlatformServiceJpaRepositoryImpl.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/group/service/GroupWritePlatformServiceJpaRepositoryImpl.java b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/group/service/GroupWritePlatformServiceJpaRepositoryImpl.java index ed83e635d..fff6b98c1 100644 --- a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/group/service/GroupWritePlatformServiceJpaRepositoryImpl.java +++ b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/group/service/GroupWritePlatformServiceJpaRepositoryImpl.java @@ -218,8 +218,15 @@ public class GroupWritePlatformServiceJpaRepositoryImpl implements GroupWritePla * param */ if (!groupLevel.isSuperParent()) { + final String parentIdParamName = "parentId"; - final Long parentId = groupForUpdate.getParent().getId(); + Long parentId = null; + final Group presentParentGroup = groupForUpdate.getParent(); + + if (presentParentGroup != null) { + parentId = presentParentGroup.getId(); + } + if (command.isChangeInLongParameterNamed(parentIdParamName, parentId)) { final Long newValue = command.longValueOfParameterNamed(parentIdParamName); @@ -247,6 +254,10 @@ public class GroupWritePlatformServiceJpaRepositoryImpl implements GroupWritePla } groupForUpdate.setParent(newParentGroup); + + // Parent has changed, re-generate as parent is changed + groupForUpdate.generateHierarchy(); + } }