some formatting changes. sorry.
This commit is contained in:
@@ -37,8 +37,8 @@ public class PermissionsApiResource {
|
|||||||
private final String resourceNameForPermissions = "PERMISSION";
|
private final String resourceNameForPermissions = "PERMISSION";
|
||||||
|
|
||||||
@GET
|
@GET
|
||||||
@Consumes({MediaType.APPLICATION_JSON})
|
@Consumes({ MediaType.APPLICATION_JSON })
|
||||||
@Produces({MediaType.APPLICATION_JSON})
|
@Produces({ MediaType.APPLICATION_JSON })
|
||||||
public String retrieveAllPermissions(@Context final UriInfo uriInfo) {
|
public String retrieveAllPermissions(@Context final UriInfo uriInfo) {
|
||||||
|
|
||||||
context.authenticatedUser().validateHasReadPermission(resourceNameForPermissions);
|
context.authenticatedUser().validateHasReadPermission(resourceNameForPermissions);
|
||||||
|
|||||||
@@ -62,8 +62,8 @@ public class RolesApiResource {
|
|||||||
private final String resourceNameForPermissions = "ROLE";
|
private final String resourceNameForPermissions = "ROLE";
|
||||||
|
|
||||||
@GET
|
@GET
|
||||||
@Consumes({MediaType.APPLICATION_JSON})
|
@Consumes({ MediaType.APPLICATION_JSON })
|
||||||
@Produces({MediaType.APPLICATION_JSON})
|
@Produces({ MediaType.APPLICATION_JSON })
|
||||||
public String retrieveAllRoles(@Context final UriInfo uriInfo) {
|
public String retrieveAllRoles(@Context final UriInfo uriInfo) {
|
||||||
|
|
||||||
context.authenticatedUser().validateHasReadPermission(resourceNameForPermissions);
|
context.authenticatedUser().validateHasReadPermission(resourceNameForPermissions);
|
||||||
@@ -77,11 +77,12 @@ public class RolesApiResource {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@POST
|
@POST
|
||||||
@Consumes({MediaType.APPLICATION_JSON})
|
@Consumes({ MediaType.APPLICATION_JSON })
|
||||||
@Produces({MediaType.APPLICATION_JSON})
|
@Produces({ MediaType.APPLICATION_JSON })
|
||||||
public String createRole(final String apiRequestBodyAsJson) {
|
public String createRole(final String apiRequestBodyAsJson) {
|
||||||
|
|
||||||
final EntityIdentifier result = this.commandsSourceWritePlatformService.logCommandSource("CREATE", "roles", null, apiRequestBodyAsJson);
|
final EntityIdentifier result = this.commandsSourceWritePlatformService.logCommandSource("CREATE", "roles", null,
|
||||||
|
apiRequestBodyAsJson);
|
||||||
|
|
||||||
return this.apiJsonSerializerService.serializeEntityIdentifier(result);
|
return this.apiJsonSerializerService.serializeEntityIdentifier(result);
|
||||||
}
|
}
|
||||||
@@ -96,8 +97,8 @@ public class RolesApiResource {
|
|||||||
// into account the Object its looking at.
|
// into account the Object its looking at.
|
||||||
@GET
|
@GET
|
||||||
@Path("{roleId}")
|
@Path("{roleId}")
|
||||||
@Consumes({MediaType.APPLICATION_JSON})
|
@Consumes({ MediaType.APPLICATION_JSON })
|
||||||
@Produces({MediaType.APPLICATION_JSON})
|
@Produces({ MediaType.APPLICATION_JSON })
|
||||||
public String retrieveRole(@PathParam("roleId") final Long roleId, @Context final UriInfo uriInfo) {
|
public String retrieveRole(@PathParam("roleId") final Long roleId, @Context final UriInfo uriInfo) {
|
||||||
|
|
||||||
context.authenticatedUser().validateHasReadPermission(resourceNameForPermissions);
|
context.authenticatedUser().validateHasReadPermission(resourceNameForPermissions);
|
||||||
@@ -109,7 +110,9 @@ public class RolesApiResource {
|
|||||||
|
|
||||||
RoleData role = this.roleReadPlatformService.retrieveRole(roleId);
|
RoleData role = this.roleReadPlatformService.retrieveRole(roleId);
|
||||||
if (commandId != null) {
|
if (commandId != null) {
|
||||||
// currentChanges = handleRequestToIntegrateProposedChangesFromCommand(roleId, commandId);
|
// currentChanges =
|
||||||
|
// handleRequestToIntegrateProposedChangesFromCommand(roleId,
|
||||||
|
// commandId);
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.apiJsonSerializerService.serializeRoleDataToJson(prettyPrint, responseParameters, role);
|
return this.apiJsonSerializerService.serializeRoleDataToJson(prettyPrint, responseParameters, role);
|
||||||
@@ -117,19 +120,20 @@ public class RolesApiResource {
|
|||||||
|
|
||||||
@PUT
|
@PUT
|
||||||
@Path("{roleId}")
|
@Path("{roleId}")
|
||||||
@Consumes({MediaType.APPLICATION_JSON})
|
@Consumes({ MediaType.APPLICATION_JSON })
|
||||||
@Produces({MediaType.APPLICATION_JSON})
|
@Produces({ MediaType.APPLICATION_JSON })
|
||||||
public String updateRole(@PathParam("roleId") final Long roleId, final String apiRequestBodyAsJson) {
|
public String updateRole(@PathParam("roleId") final Long roleId, final String apiRequestBodyAsJson) {
|
||||||
|
|
||||||
final EntityIdentifier result = this.commandsSourceWritePlatformService.logCommandSource("UPDATE", "roles", roleId, apiRequestBodyAsJson);
|
final EntityIdentifier result = this.commandsSourceWritePlatformService.logCommandSource("UPDATE", "roles", roleId,
|
||||||
|
apiRequestBodyAsJson);
|
||||||
|
|
||||||
return this.apiJsonSerializerService.serializeEntityIdentifier(result);
|
return this.apiJsonSerializerService.serializeEntityIdentifier(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
@GET
|
@GET
|
||||||
@Path("{roleId}/permissions")
|
@Path("{roleId}/permissions")
|
||||||
@Consumes({MediaType.APPLICATION_JSON})
|
@Consumes({ MediaType.APPLICATION_JSON })
|
||||||
@Produces({MediaType.APPLICATION_JSON})
|
@Produces({ MediaType.APPLICATION_JSON })
|
||||||
public String retrieveRolePermissions(@PathParam("roleId") final Long roleId, @Context final UriInfo uriInfo) {
|
public String retrieveRolePermissions(@PathParam("roleId") final Long roleId, @Context final UriInfo uriInfo) {
|
||||||
|
|
||||||
context.authenticatedUser().validateHasReadPermission(resourceNameForPermissions);
|
context.authenticatedUser().validateHasReadPermission(resourceNameForPermissions);
|
||||||
@@ -158,7 +162,8 @@ public class RolesApiResource {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private Collection<PermissionUsageData> assemblePermissionChanges(final Long roleId, final CommandSourceData entry) {
|
private Collection<PermissionUsageData> assemblePermissionChanges(final Long roleId, final CommandSourceData entry) {
|
||||||
final RolePermissionCommand changesOnly = this.commandDeserializerService.deserializeRolePermissionCommand(roleId, entry.json(), false);
|
final RolePermissionCommand changesOnly = this.commandDeserializerService.deserializeRolePermissionCommand(roleId, entry.json(),
|
||||||
|
false);
|
||||||
|
|
||||||
// assemble map of string/booleans into PermissionUsageData
|
// assemble map of string/booleans into PermissionUsageData
|
||||||
Collection<PermissionUsageData> proposedChanges = new ArrayList<PermissionUsageData>();
|
Collection<PermissionUsageData> proposedChanges = new ArrayList<PermissionUsageData>();
|
||||||
@@ -175,7 +180,8 @@ public class RolesApiResource {
|
|||||||
private Collection<Collection<PermissionUsageData>> retrieveAllUnprocessedDataChanges(final Long roleId) {
|
private Collection<Collection<PermissionUsageData>> retrieveAllUnprocessedDataChanges(final Long roleId) {
|
||||||
Collection<Collection<PermissionUsageData>> allChanges = new ArrayList<Collection<PermissionUsageData>>();
|
Collection<Collection<PermissionUsageData>> allChanges = new ArrayList<Collection<PermissionUsageData>>();
|
||||||
|
|
||||||
final Collection<CommandSourceData> unprocessedChanges = this.commandSourceReadPlatformService.retrieveUnprocessChangesByResourceId("roles", roleId);
|
final Collection<CommandSourceData> unprocessedChanges = this.commandSourceReadPlatformService
|
||||||
|
.retrieveUnprocessChangesByResourceId("roles", roleId);
|
||||||
for (CommandSourceData commandSourceData : unprocessedChanges) {
|
for (CommandSourceData commandSourceData : unprocessedChanges) {
|
||||||
|
|
||||||
if (commandSourceData.isRoleResource() && commandSourceData.isUpdateRolePermissions()) {
|
if (commandSourceData.isRoleResource() && commandSourceData.isUpdateRolePermissions()) {
|
||||||
@@ -194,11 +200,12 @@ public class RolesApiResource {
|
|||||||
|
|
||||||
@PUT
|
@PUT
|
||||||
@Path("{roleId}/permissions")
|
@Path("{roleId}/permissions")
|
||||||
@Consumes({MediaType.APPLICATION_JSON})
|
@Consumes({ MediaType.APPLICATION_JSON })
|
||||||
@Produces({MediaType.APPLICATION_JSON})
|
@Produces({ MediaType.APPLICATION_JSON })
|
||||||
public String updateRolePermissions(@PathParam("roleId") final Long roleId, final String apiRequestBodyAsJson) {
|
public String updateRolePermissions(@PathParam("roleId") final Long roleId, final String apiRequestBodyAsJson) {
|
||||||
|
|
||||||
final EntityIdentifier result = this.commandsSourceWritePlatformService.logCommandSource("UPDATEPERMISSIONS", "roles", roleId, apiRequestBodyAsJson);
|
final EntityIdentifier result = this.commandsSourceWritePlatformService.logCommandSource("UPDATEPERMISSIONS", "roles", roleId,
|
||||||
|
apiRequestBodyAsJson);
|
||||||
|
|
||||||
return this.apiJsonSerializerService.serializeEntityIdentifier(result);
|
return this.apiJsonSerializerService.serializeEntityIdentifier(result);
|
||||||
}
|
}
|
||||||
|
|||||||
+21
-22
@@ -5,31 +5,30 @@ package org.mifosng.platform.api.data;
|
|||||||
*/
|
*/
|
||||||
public class PermissionUsageData {
|
public class PermissionUsageData {
|
||||||
|
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
private final String grouping;
|
private final String grouping;
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
private final String code;
|
private final String code;
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
private final String entityName;
|
private final String entityName;
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
private final String actionName;
|
private final String actionName;
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
private final Boolean selected;
|
private final Boolean selected;
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
private final Boolean isMakerChecker;
|
private final Boolean isMakerChecker;
|
||||||
|
|
||||||
public static PermissionUsageData from(final String permissionCode, final boolean isSelected) {
|
public static PermissionUsageData from(final String permissionCode, final boolean isSelected) {
|
||||||
return new PermissionUsageData(null, permissionCode, null, null, isSelected, null);
|
return new PermissionUsageData(null, permissionCode, null, null, isSelected, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
public PermissionUsageData(final String grouping, final String code,
|
public PermissionUsageData(final String grouping, final String code, final String entityName, final String actionName,
|
||||||
final String entityName, final String actionName,
|
final Boolean selected, final Boolean isMakerChecker) {
|
||||||
final Boolean selected, final Boolean isMakerChecker) {
|
this.grouping = grouping;
|
||||||
this.grouping = grouping;
|
this.code = code;
|
||||||
this.code = code;
|
this.entityName = entityName;
|
||||||
this.entityName = entityName;
|
this.actionName = actionName;
|
||||||
this.actionName = actionName;
|
this.selected = selected;
|
||||||
this.selected = selected;
|
this.isMakerChecker = isMakerChecker;
|
||||||
this.isMakerChecker = isMakerChecker;
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
@@ -11,8 +11,8 @@ public class RoleData {
|
|||||||
private final String name;
|
private final String name;
|
||||||
private final String description;
|
private final String description;
|
||||||
|
|
||||||
// @SuppressWarnings("unused")
|
// @SuppressWarnings("unused")
|
||||||
// private final Collection<RoleData> currentChanges;
|
// private final Collection<RoleData> currentChanges;
|
||||||
|
|
||||||
public RoleData(final Long id, final String name, final String description) {
|
public RoleData(final Long id, final String name, final String description) {
|
||||||
this.id = id;
|
this.id = id;
|
||||||
@@ -44,8 +44,7 @@ public class RoleData {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public RolePermissionsData toRolePermissionData(final Collection<PermissionUsageData> permissionUsageData,
|
public RolePermissionsData toRolePermissionData(final Collection<PermissionUsageData> permissionUsageData,
|
||||||
final Collection<PermissionUsageData> currentChanges,
|
final Collection<PermissionUsageData> currentChanges, final Collection<Collection<PermissionUsageData>> allChanges) {
|
||||||
final Collection<Collection<PermissionUsageData>> allChanges) {
|
|
||||||
return new RolePermissionsData(id, name, description, permissionUsageData, currentChanges, allChanges);
|
return new RolePermissionsData(id, name, description, permissionUsageData, currentChanges, allChanges);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+1
-2
@@ -22,8 +22,7 @@ public class RolePermissionsData {
|
|||||||
private final Collection<Collection<PermissionUsageData>> allChanges;
|
private final Collection<Collection<PermissionUsageData>> allChanges;
|
||||||
|
|
||||||
public RolePermissionsData(final Long id, final String name, final String description,
|
public RolePermissionsData(final Long id, final String name, final String description,
|
||||||
final Collection<PermissionUsageData> permissionUsageData,
|
final Collection<PermissionUsageData> permissionUsageData, final Collection<PermissionUsageData> currentChanges,
|
||||||
final Collection<PermissionUsageData> currentChanges,
|
|
||||||
final Collection<Collection<PermissionUsageData>> allChanges) {
|
final Collection<Collection<PermissionUsageData>> allChanges) {
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.name = name;
|
this.name = name;
|
||||||
|
|||||||
+11
-14
@@ -54,7 +54,8 @@ import com.google.gson.Gson;
|
|||||||
@Service
|
@Service
|
||||||
public class GoogleGsonPortfolioApiJsonSerializerService implements PortfolioApiJsonSerializerService {
|
public class GoogleGsonPortfolioApiJsonSerializerService implements PortfolioApiJsonSerializerService {
|
||||||
|
|
||||||
private static final Set<String> PERMISSION_DATA_PARAMETERS = new HashSet<String>(Arrays.asList("grouping", "code", "entityName", "actionName", "selected", "isMakerChecker"));
|
private static final Set<String> PERMISSION_DATA_PARAMETERS = new HashSet<String>(Arrays.asList("grouping", "code", "entityName",
|
||||||
|
"actionName", "selected", "isMakerChecker"));
|
||||||
private static final Set<String> ROLE_DATA_PARAMETERS = new HashSet<String>(Arrays.asList("id", "name", "description",
|
private static final Set<String> ROLE_DATA_PARAMETERS = new HashSet<String>(Arrays.asList("id", "name", "description",
|
||||||
"availablePermissions", "selectedPermissions"));
|
"availablePermissions", "selectedPermissions"));
|
||||||
private static final Set<String> ROLE_PERMISSION_DATA_PARAMETERS = new HashSet<String>(Arrays.asList("id", "name", "description",
|
private static final Set<String> ROLE_PERMISSION_DATA_PARAMETERS = new HashSet<String>(Arrays.asList("id", "name", "description",
|
||||||
@@ -166,12 +167,10 @@ public class GoogleGsonPortfolioApiJsonSerializerService implements PortfolioApi
|
|||||||
"preClosureAllowed", "preClosureInterestRate", "withdrawnonDate", "rejectedonDate", "closedonDate", "isLockinPeriodAllowed",
|
"preClosureAllowed", "preClosureInterestRate", "withdrawnonDate", "rejectedonDate", "closedonDate", "isLockinPeriodAllowed",
|
||||||
"lockinPeriod", "lockinPeriodType"));
|
"lockinPeriod", "lockinPeriodType"));
|
||||||
|
|
||||||
//guarantors
|
// guarantors
|
||||||
private static final Set<String> GUARANTOR_DATA_PARAMETERS = new HashSet<String>(
|
private static final Set<String> GUARANTOR_DATA_PARAMETERS = new HashSet<String>(Arrays.asList("externalGuarantor", "existingClientId",
|
||||||
Arrays.asList("externalGuarantor", "existingClientId",
|
"firstname", "lastname", "addressLine1", "addressLine2", "city", "state", "zip", "country", "mobileNumber", "housePhoneNumber",
|
||||||
"firstname", "lastname", "addressLine1",
|
"comment", "dob"));
|
||||||
"addressLine2", "city", "state", "zip", "country",
|
|
||||||
"mobileNumber", "housePhoneNumber", "comment", "dob"));
|
|
||||||
|
|
||||||
// accounting
|
// accounting
|
||||||
private static final Set<String> CHART_OF_ACCOUNTS_DATA_PARAMETERS = new HashSet<String>(Arrays.asList("id", "name"));
|
private static final Set<String> CHART_OF_ACCOUNTS_DATA_PARAMETERS = new HashSet<String>(Arrays.asList("id", "name"));
|
||||||
@@ -587,11 +586,9 @@ public class GoogleGsonPortfolioApiJsonSerializerService implements PortfolioApi
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String serializeGuarantorDataToJson(boolean prettyPrint,
|
public String serializeGuarantorDataToJson(boolean prettyPrint, Set<String> responseParameters, GuarantorData guarantorData) {
|
||||||
Set<String> responseParameters, GuarantorData guarantorData) {
|
final Gson gsonDeserializer = helper.createGsonBuilderWithParameterExclusionSerializationStrategy(GUARANTOR_DATA_PARAMETERS,
|
||||||
final Gson gsonDeserializer = helper
|
prettyPrint, responseParameters);
|
||||||
.createGsonBuilderWithParameterExclusionSerializationStrategy(
|
return helper.serializedJsonFrom(gsonDeserializer, guarantorData);
|
||||||
GUARANTOR_DATA_PARAMETERS, prettyPrint, responseParameters);
|
}
|
||||||
return helper.serializedJsonFrom(gsonDeserializer, guarantorData);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
+2
-2
@@ -6,7 +6,7 @@ import org.mifosng.platform.api.data.PermissionUsageData;
|
|||||||
|
|
||||||
public interface PermissionReadPlatformService {
|
public interface PermissionReadPlatformService {
|
||||||
|
|
||||||
Collection<PermissionUsageData> retrieveAllPermissions();
|
Collection<PermissionUsageData> retrieveAllPermissions();
|
||||||
|
|
||||||
Collection<PermissionUsageData> retrieveAllRolePermissions(Long roleId);
|
Collection<PermissionUsageData> retrieveAllRolePermissions(Long roleId);
|
||||||
}
|
}
|
||||||
+2
-4
@@ -35,7 +35,6 @@ public class PermissionReadPlatformServiceImpl implements PermissionReadPlatform
|
|||||||
return this.jdbcTemplate.query(sql, mapper, new Object[] {});
|
return this.jdbcTemplate.query(sql, mapper, new Object[] {});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Collection<PermissionUsageData> retrieveAllRolePermissions(final Long roleId) {
|
public Collection<PermissionUsageData> retrieveAllRolePermissions(final Long roleId) {
|
||||||
|
|
||||||
@@ -62,13 +61,12 @@ public class PermissionReadPlatformServiceImpl implements PermissionReadPlatform
|
|||||||
|
|
||||||
public String permissionSchema() {
|
public String permissionSchema() {
|
||||||
return "select p.grouping, p.code, p.entity_name as entityName, p.action_name as actionName, true as selected, p.is_maker_checker as isMakerChecker"
|
return "select p.grouping, p.code, p.entity_name as entityName, p.action_name as actionName, true as selected, p.is_maker_checker as isMakerChecker"
|
||||||
+ " from m_permission p "
|
+ " from m_permission p " + " order by p.grouping, ifnull(entity_name, ''), p.code";
|
||||||
+ " order by p.grouping, ifnull(entity_name, ''), p.code";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public String rolePermissionSchema() {
|
public String rolePermissionSchema() {
|
||||||
return "select p.grouping, p.code, p.entity_name as entityName, p.action_name as actionName, if(isnull(rp.role_id), false, true) as selected, "
|
return "select p.grouping, p.code, p.entity_name as entityName, p.action_name as actionName, if(isnull(rp.role_id), false, true) as selected, "
|
||||||
+ " if(isnull(rp.role_id), false, p.is_maker_checker) as isMakerChecker "
|
+ " if(isnull(rp.role_id), false, p.is_maker_checker) as isMakerChecker "
|
||||||
+ " from m_permission p "
|
+ " from m_permission p "
|
||||||
+ " left join m_role_permission rp on rp.permission_id = p.id and rp.role_id = ? "
|
+ " left join m_role_permission rp on rp.permission_id = p.id and rp.role_id = ? "
|
||||||
+ " order by p.grouping, ifnull(entity_name, ''), p.code";
|
+ " order by p.grouping, ifnull(entity_name, ''), p.code";
|
||||||
|
|||||||
Reference in New Issue
Block a user