FINERACT-2169: Apply dto in DelinquencyApiResource
This commit is contained in:
committed by
Adam Saghy
parent
a313608cd3
commit
53c36ba4f8
+37
-67
@@ -20,7 +20,6 @@ package org.apache.fineract.portfolio.delinquency.api;
|
||||
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.media.ArraySchema;
|
||||
import io.swagger.v3.oas.annotations.media.Content;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import io.swagger.v3.oas.annotations.parameters.RequestBody;
|
||||
@@ -35,17 +34,13 @@ import jakarta.ws.rs.PUT;
|
||||
import jakarta.ws.rs.Path;
|
||||
import jakarta.ws.rs.PathParam;
|
||||
import jakarta.ws.rs.Produces;
|
||||
import jakarta.ws.rs.core.Context;
|
||||
import jakarta.ws.rs.core.MediaType;
|
||||
import jakarta.ws.rs.core.UriInfo;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.apache.fineract.commands.domain.CommandWrapper;
|
||||
import org.apache.fineract.commands.service.CommandWrapperBuilder;
|
||||
import org.apache.fineract.commands.service.PortfolioCommandSourceWritePlatformService;
|
||||
import org.apache.fineract.infrastructure.core.api.ApiRequestParameterHelper;
|
||||
import org.apache.fineract.infrastructure.core.data.CommandProcessingResult;
|
||||
import org.apache.fineract.infrastructure.core.serialization.ApiRequestJsonSerializationSettings;
|
||||
import org.apache.fineract.infrastructure.core.serialization.DefaultToApiJsonSerializer;
|
||||
import org.apache.fineract.infrastructure.security.service.PlatformSecurityContext;
|
||||
import org.apache.fineract.portfolio.delinquency.data.DelinquencyBucketData;
|
||||
@@ -59,7 +54,6 @@ import org.springframework.stereotype.Component;
|
||||
@Tag(name = "Delinquency Range and Buckets Management", description = "Delinquency Range and Buckets management enables you to set up, fetch and adjust Delinquency overdue ranges")
|
||||
public class DelinquencyApiResource {
|
||||
|
||||
private final ApiRequestParameterHelper parameterHelper;
|
||||
private final PlatformSecurityContext securityContext;
|
||||
private final DefaultToApiJsonSerializer<DelinquencyBucketData> jsonSerializerBucket;
|
||||
private final DefaultToApiJsonSerializer<DelinquencyRangeData> jsonSerializerRange;
|
||||
@@ -71,13 +65,9 @@ public class DelinquencyApiResource {
|
||||
@Consumes({ MediaType.TEXT_HTML, MediaType.APPLICATION_JSON })
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
@Operation(summary = "List all Delinquency Ranges", description = "")
|
||||
@ApiResponses({
|
||||
@ApiResponse(responseCode = "200", description = "OK", content = @Content(array = @ArraySchema(schema = @Schema(implementation = DelinquencyApiResourceSwagger.GetDelinquencyRangesResponse.class)))) })
|
||||
public String getDelinquencyRanges(@Context final UriInfo uriInfo) {
|
||||
public List<DelinquencyRangeData> getDelinquencyRanges() {
|
||||
securityContext.authenticatedUser().validateHasReadPermission("DELINQUENCY_BUCKET");
|
||||
final Collection<DelinquencyRangeData> delinquencyRangeData = this.readPlatformService.retrieveAllDelinquencyRanges();
|
||||
ApiRequestJsonSerializationSettings settings = parameterHelper.process(uriInfo.getQueryParameters());
|
||||
return this.jsonSerializerRange.serialize(settings, delinquencyRangeData);
|
||||
return this.readPlatformService.retrieveAllDelinquencyRanges();
|
||||
}
|
||||
|
||||
@GET
|
||||
@@ -85,15 +75,10 @@ public class DelinquencyApiResource {
|
||||
@Consumes({ MediaType.TEXT_HTML, MediaType.APPLICATION_JSON })
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
@Operation(summary = "Retrieve a specific Delinquency Range based on the Id", description = "")
|
||||
@ApiResponses({
|
||||
@ApiResponse(responseCode = "200", description = "OK", content = @Content(schema = @Schema(implementation = DelinquencyApiResourceSwagger.GetDelinquencyRangesResponse.class))) })
|
||||
public String getDelinquencyRange(
|
||||
@PathParam("delinquencyRangeId") @Parameter(description = "delinquencyRangeId") final Long delinquencyRangeId,
|
||||
@Context final UriInfo uriInfo) {
|
||||
public DelinquencyRangeData getDelinquencyRange(
|
||||
@PathParam("delinquencyRangeId") @Parameter(description = "delinquencyRangeId") final Long delinquencyRangeId) {
|
||||
securityContext.authenticatedUser().validateHasReadPermission("DELINQUENCY_BUCKET");
|
||||
final DelinquencyRangeData delinquencyRangeData = this.readPlatformService.retrieveDelinquencyRange(delinquencyRangeId);
|
||||
ApiRequestJsonSerializationSettings settings = parameterHelper.process(uriInfo.getQueryParameters());
|
||||
return this.jsonSerializerRange.serialize(settings, delinquencyRangeData);
|
||||
return this.readPlatformService.retrieveDelinquencyRange(delinquencyRangeId);
|
||||
}
|
||||
|
||||
@POST
|
||||
@@ -101,15 +86,15 @@ public class DelinquencyApiResource {
|
||||
@Consumes({ MediaType.APPLICATION_JSON })
|
||||
@Produces({ MediaType.APPLICATION_JSON })
|
||||
@Operation(summary = "Create Delinquency Range", description = "")
|
||||
@RequestBody(required = true, content = @Content(schema = @Schema(implementation = DelinquencyApiResourceSwagger.PostDelinquencyRangeRequest.class)))
|
||||
@RequestBody(required = true, content = @Content(schema = @Schema(implementation = DelinquencyRangeRequest.class)))
|
||||
@ApiResponses({
|
||||
@ApiResponse(responseCode = "200", description = "OK", content = @Content(schema = @Schema(implementation = DelinquencyApiResourceSwagger.PostDelinquencyRangeResponse.class))) })
|
||||
public String createDelinquencyRange(final String jsonRequestBody, @Context UriInfo uriInfo) {
|
||||
public CommandProcessingResult createDelinquencyRange(final DelinquencyRangeRequest delinquencyRangeRequest) {
|
||||
securityContext.authenticatedUser().validateHasCreatePermission("DELINQUENCY_BUCKET");
|
||||
final CommandWrapper commandRequest = new CommandWrapperBuilder().createDelinquencyRange().withJson(jsonRequestBody).build();
|
||||
final CommandWrapper commandRequest = new CommandWrapperBuilder().createDelinquencyRange()
|
||||
.withJson(jsonSerializerRange.serialize(delinquencyRangeRequest)).build();
|
||||
|
||||
CommandProcessingResult result = commandWritePlatformService.logCommandSource(commandRequest);
|
||||
return jsonSerializerRange.serialize(result);
|
||||
return commandWritePlatformService.logCommandSource(commandRequest);
|
||||
}
|
||||
|
||||
@PUT
|
||||
@@ -117,18 +102,17 @@ public class DelinquencyApiResource {
|
||||
@Consumes({ MediaType.APPLICATION_JSON })
|
||||
@Produces({ MediaType.APPLICATION_JSON })
|
||||
@Operation(summary = "Update Delinquency Range based on the Id", description = "")
|
||||
@RequestBody(required = true, content = @Content(schema = @Schema(implementation = DelinquencyApiResourceSwagger.PostDelinquencyRangeRequest.class)))
|
||||
@RequestBody(required = true, content = @Content(schema = @Schema(implementation = DelinquencyRangeRequest.class)))
|
||||
@ApiResponses({
|
||||
@ApiResponse(responseCode = "200", description = "OK", content = @Content(schema = @Schema(implementation = DelinquencyApiResourceSwagger.PutDelinquencyRangeResponse.class))) })
|
||||
public String updateDelinquencyRange(
|
||||
public CommandProcessingResult updateDelinquencyRange(
|
||||
@PathParam("delinquencyRangeId") @Parameter(description = "delinquencyRangeId") final Long delinquencyRangeId,
|
||||
final String jsonRequestBody, @Context UriInfo uriInfo) {
|
||||
final DelinquencyRangeRequest delinquencyRangeRequest) {
|
||||
securityContext.authenticatedUser().validateHasUpdatePermission("DELINQUENCY_BUCKET");
|
||||
final CommandWrapper commandRequest = new CommandWrapperBuilder().updateDelinquencyRange(delinquencyRangeId)
|
||||
.withJson(jsonRequestBody).build();
|
||||
.withJson(jsonSerializerRange.serialize(delinquencyRangeRequest)).build();
|
||||
|
||||
CommandProcessingResult result = commandWritePlatformService.logCommandSource(commandRequest);
|
||||
return jsonSerializerRange.serialize(result);
|
||||
return commandWritePlatformService.logCommandSource(commandRequest);
|
||||
}
|
||||
|
||||
@DELETE
|
||||
@@ -138,14 +122,12 @@ public class DelinquencyApiResource {
|
||||
@Operation(summary = "Update Delinquency Range based on the Id", description = "")
|
||||
@ApiResponses({
|
||||
@ApiResponse(responseCode = "200", description = "OK", content = @Content(schema = @Schema(implementation = DelinquencyApiResourceSwagger.DeleteDelinquencyRangeResponse.class))) })
|
||||
public String deleteDelinquencyRange(
|
||||
@PathParam("delinquencyRangeId") @Parameter(description = "delinquencyRangeId") final Long delinquencyRangeId,
|
||||
@Context UriInfo uriInfo) {
|
||||
public CommandProcessingResult deleteDelinquencyRange(
|
||||
@PathParam("delinquencyRangeId") @Parameter(description = "delinquencyRangeId") final Long delinquencyRangeId) {
|
||||
securityContext.authenticatedUser().validateHasDeletePermission("DELINQUENCY_BUCKET");
|
||||
final CommandWrapper commandRequest = new CommandWrapperBuilder().deleteDelinquencyRange(delinquencyRangeId).build();
|
||||
|
||||
CommandProcessingResult result = commandWritePlatformService.logCommandSource(commandRequest);
|
||||
return jsonSerializerRange.serialize(result);
|
||||
return commandWritePlatformService.logCommandSource(commandRequest);
|
||||
}
|
||||
|
||||
@GET
|
||||
@@ -153,13 +135,9 @@ public class DelinquencyApiResource {
|
||||
@Consumes({ MediaType.TEXT_HTML, MediaType.APPLICATION_JSON })
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
@Operation(summary = "List all Delinquency Buckets", description = "")
|
||||
@ApiResponses({
|
||||
@ApiResponse(responseCode = "200", description = "OK", content = @Content(array = @ArraySchema(schema = @Schema(implementation = DelinquencyApiResourceSwagger.GetDelinquencyBucketsResponse.class)))) })
|
||||
public String getDelinquencyBuckets(@Context final UriInfo uriInfo) {
|
||||
public List<DelinquencyBucketData> getDelinquencyBuckets() {
|
||||
securityContext.authenticatedUser().validateHasReadPermission("DELINQUENCY_BUCKET");
|
||||
final Collection<DelinquencyBucketData> delinquencyBucketData = this.readPlatformService.retrieveAllDelinquencyBuckets();
|
||||
ApiRequestJsonSerializationSettings settings = parameterHelper.process(uriInfo.getQueryParameters());
|
||||
return this.jsonSerializerBucket.serialize(settings, delinquencyBucketData);
|
||||
return this.readPlatformService.retrieveAllDelinquencyBuckets();
|
||||
}
|
||||
|
||||
@GET
|
||||
@@ -167,15 +145,10 @@ public class DelinquencyApiResource {
|
||||
@Consumes({ MediaType.TEXT_HTML, MediaType.APPLICATION_JSON })
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
@Operation(summary = "Retrieve a specific Delinquency Bucket based on the Id", description = "")
|
||||
@ApiResponses({
|
||||
@ApiResponse(responseCode = "200", description = "OK", content = @Content(schema = @Schema(implementation = DelinquencyApiResourceSwagger.GetDelinquencyBucketsResponse.class))) })
|
||||
public String getDelinquencyBucket(
|
||||
@PathParam("delinquencyBucketId") @Parameter(description = "delinquencyBucketId") final Long delinquencyBucketId,
|
||||
@Context final UriInfo uriInfo) {
|
||||
public DelinquencyBucketData getDelinquencyBucket(
|
||||
@PathParam("delinquencyBucketId") @Parameter(description = "delinquencyBucketId") final Long delinquencyBucketId) {
|
||||
securityContext.authenticatedUser().validateHasReadPermission("DELINQUENCY_BUCKET");
|
||||
final DelinquencyBucketData delinquencyBucketData = this.readPlatformService.retrieveDelinquencyBucket(delinquencyBucketId);
|
||||
ApiRequestJsonSerializationSettings settings = parameterHelper.process(uriInfo.getQueryParameters());
|
||||
return this.jsonSerializerBucket.serialize(settings, delinquencyBucketData);
|
||||
return this.readPlatformService.retrieveDelinquencyBucket(delinquencyBucketId);
|
||||
}
|
||||
|
||||
@POST
|
||||
@@ -183,15 +156,15 @@ public class DelinquencyApiResource {
|
||||
@Consumes({ MediaType.APPLICATION_JSON })
|
||||
@Produces({ MediaType.APPLICATION_JSON })
|
||||
@Operation(summary = "Create Delinquency Bucket", description = "")
|
||||
@RequestBody(required = true, content = @Content(schema = @Schema(implementation = DelinquencyApiResourceSwagger.PostDelinquencyBucketRequest.class)))
|
||||
@RequestBody(required = true, content = @Content(schema = @Schema(implementation = DelinquencyBucketRequest.class)))
|
||||
@ApiResponses({
|
||||
@ApiResponse(responseCode = "200", description = "OK", content = @Content(schema = @Schema(implementation = DelinquencyApiResourceSwagger.PostDelinquencyBucketResponse.class))) })
|
||||
public String createDelinquencyBucket(final String jsonRequestBody, @Context UriInfo uriInfo) {
|
||||
public CommandProcessingResult createDelinquencyBucket(final DelinquencyBucketRequest delinquencyBucketRequest) {
|
||||
securityContext.authenticatedUser().validateHasCreatePermission("DELINQUENCY_BUCKET");
|
||||
final CommandWrapper commandRequest = new CommandWrapperBuilder().createDelinquencyBucket().withJson(jsonRequestBody).build();
|
||||
final CommandWrapper commandRequest = new CommandWrapperBuilder().createDelinquencyBucket()
|
||||
.withJson(jsonSerializerBucket.serialize(delinquencyBucketRequest)).build();
|
||||
|
||||
CommandProcessingResult result = commandWritePlatformService.logCommandSource(commandRequest);
|
||||
return jsonSerializerRange.serialize(result);
|
||||
return commandWritePlatformService.logCommandSource(commandRequest);
|
||||
}
|
||||
|
||||
@PUT
|
||||
@@ -199,18 +172,17 @@ public class DelinquencyApiResource {
|
||||
@Consumes({ MediaType.APPLICATION_JSON })
|
||||
@Produces({ MediaType.APPLICATION_JSON })
|
||||
@Operation(summary = "Update Delinquency Bucket based on the Id", description = "")
|
||||
@RequestBody(required = true, content = @Content(schema = @Schema(implementation = DelinquencyApiResourceSwagger.PostDelinquencyBucketRequest.class)))
|
||||
@RequestBody(required = true, content = @Content(schema = @Schema(implementation = DelinquencyBucketRequest.class)))
|
||||
@ApiResponses({
|
||||
@ApiResponse(responseCode = "200", description = "OK", content = @Content(schema = @Schema(implementation = DelinquencyApiResourceSwagger.PutDelinquencyBucketResponse.class))) })
|
||||
public String updateDelinquencyBucket(
|
||||
public CommandProcessingResult updateDelinquencyBucket(
|
||||
@PathParam("delinquencyBucketId") @Parameter(description = "delinquencyBucketId") final Long delinquencyBucketId,
|
||||
final String jsonRequestBody, @Context UriInfo uriInfo) {
|
||||
final DelinquencyBucketRequest delinquencyBucketRequest) {
|
||||
securityContext.authenticatedUser().validateHasUpdatePermission("DELINQUENCY_BUCKET");
|
||||
final CommandWrapper commandRequest = new CommandWrapperBuilder().updateDelinquencyBucket(delinquencyBucketId)
|
||||
.withJson(jsonRequestBody).build();
|
||||
.withJson(jsonSerializerBucket.serialize(delinquencyBucketRequest)).build();
|
||||
|
||||
CommandProcessingResult result = commandWritePlatformService.logCommandSource(commandRequest);
|
||||
return jsonSerializerRange.serialize(result);
|
||||
return commandWritePlatformService.logCommandSource(commandRequest);
|
||||
}
|
||||
|
||||
@DELETE
|
||||
@@ -220,14 +192,12 @@ public class DelinquencyApiResource {
|
||||
@Operation(summary = "Delete Delinquency Bucket based on the Id", description = "")
|
||||
@ApiResponses({
|
||||
@ApiResponse(responseCode = "200", description = "OK", content = @Content(schema = @Schema(implementation = DelinquencyApiResourceSwagger.DeleteDelinquencyBucketResponse.class))) })
|
||||
public String deleteDelinquencyBucket(
|
||||
@PathParam("delinquencyBucketId") @Parameter(description = "delinquencyBucketId") final Long delinquencyBucketId,
|
||||
@Context UriInfo uriInfo) {
|
||||
public CommandProcessingResult deleteDelinquencyBucket(
|
||||
@PathParam("delinquencyBucketId") @Parameter(description = "delinquencyBucketId") final Long delinquencyBucketId) {
|
||||
securityContext.authenticatedUser().validateHasDeletePermission("DELINQUENCY_BUCKET");
|
||||
final CommandWrapper commandRequest = new CommandWrapperBuilder().deleteDelinquencyBucket(delinquencyBucketId).build();
|
||||
|
||||
CommandProcessingResult result = commandWritePlatformService.logCommandSource(commandRequest);
|
||||
return jsonSerializerRange.serialize(result);
|
||||
return commandWritePlatformService.logCommandSource(commandRequest);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+3
-56
@@ -21,54 +21,12 @@ package org.apache.fineract.portfolio.delinquency.api;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import java.time.LocalDate;
|
||||
import java.time.OffsetDateTime;
|
||||
import org.apache.fineract.portfolio.delinquency.data.DelinquencyRangeData;
|
||||
|
||||
public final class DelinquencyApiResourceSwagger {
|
||||
|
||||
private DelinquencyApiResourceSwagger() {}
|
||||
|
||||
@Schema(description = "GetDelinquencyRangesResponse")
|
||||
public static final class GetDelinquencyRangesResponse {
|
||||
|
||||
private GetDelinquencyRangesResponse() {}
|
||||
|
||||
@Schema(example = "1")
|
||||
public Long id;
|
||||
@Schema(example = "Delinquent 1")
|
||||
public String classification;
|
||||
@Schema(example = "1")
|
||||
public Integer minimumAgeDays;
|
||||
@Schema(example = "3")
|
||||
public Integer maximumAgeDays;
|
||||
}
|
||||
|
||||
@Schema(description = "GetDelinquencyBucketsResponse")
|
||||
public static final class GetDelinquencyBucketsResponse {
|
||||
|
||||
private GetDelinquencyBucketsResponse() {}
|
||||
|
||||
@Schema(example = "1")
|
||||
public Long id;
|
||||
@Schema(example = "Delinquent Bucket Set 1")
|
||||
public String name;
|
||||
|
||||
public GetDelinquencyRangesResponse[] ranges;
|
||||
}
|
||||
|
||||
@Schema(description = "PostDelinquencyRangeRequest")
|
||||
public static final class PostDelinquencyRangeRequest {
|
||||
|
||||
private PostDelinquencyRangeRequest() {}
|
||||
|
||||
@Schema(example = "Delinquent 1")
|
||||
public String classification;
|
||||
@Schema(example = "1")
|
||||
public Integer minimumAgeDays;
|
||||
@Schema(example = "3")
|
||||
public Integer maximumAgeDays;
|
||||
@Schema(example = "en")
|
||||
public String locale;
|
||||
}
|
||||
|
||||
@Schema(description = "PostDelinquencyRangeResponse")
|
||||
public static final class PostDelinquencyRangeResponse {
|
||||
|
||||
@@ -85,7 +43,7 @@ public final class DelinquencyApiResourceSwagger {
|
||||
|
||||
@Schema(example = "1")
|
||||
public Integer resourceId;
|
||||
public PostDelinquencyRangeRequest changes;
|
||||
public DelinquencyRangeRequest changes;
|
||||
}
|
||||
|
||||
@Schema(description = "DeleteDelinquencyRangeResponse")
|
||||
@@ -97,17 +55,6 @@ public final class DelinquencyApiResourceSwagger {
|
||||
public Integer resourceId;
|
||||
}
|
||||
|
||||
@Schema(description = "PostDelinquencyBucketRequest")
|
||||
public static final class PostDelinquencyBucketRequest {
|
||||
|
||||
private PostDelinquencyBucketRequest() {}
|
||||
|
||||
@Schema(example = "Delinquent 1")
|
||||
public String name;
|
||||
@Schema(example = "[1,2,3]")
|
||||
public Long[] ranges;
|
||||
}
|
||||
|
||||
@Schema(description = "PostDelinquencyBucketResponse")
|
||||
public static final class PostDelinquencyBucketResponse {
|
||||
|
||||
@@ -144,7 +91,7 @@ public final class DelinquencyApiResourceSwagger {
|
||||
public Long id;
|
||||
@Schema(example = "10")
|
||||
public Long loanId;
|
||||
public GetDelinquencyRangesResponse delinquencyRange;
|
||||
public DelinquencyRangeData delinquencyRange;
|
||||
@Schema(example = "2013,1,2")
|
||||
public LocalDate addedOnDate;
|
||||
@Schema(example = "2013,2,20")
|
||||
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
package org.apache.fineract.portfolio.delinquency.api;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
@Setter
|
||||
@Getter
|
||||
@NoArgsConstructor
|
||||
public class DelinquencyBucketRequest implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private String name;
|
||||
private List<Long> ranges;
|
||||
}
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
package org.apache.fineract.portfolio.delinquency.api;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
@Setter
|
||||
@Getter
|
||||
@NoArgsConstructor
|
||||
public class DelinquencyRangeRequest implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private String classification;
|
||||
private Integer minimumAgeDays;
|
||||
private Integer maximumAgeDays;
|
||||
private String locale;
|
||||
}
|
||||
+2
-2
@@ -29,11 +29,11 @@ import org.apache.fineract.portfolio.loanaccount.data.CollectionData;
|
||||
|
||||
public interface DelinquencyReadPlatformService {
|
||||
|
||||
Collection<DelinquencyRangeData> retrieveAllDelinquencyRanges();
|
||||
List<DelinquencyRangeData> retrieveAllDelinquencyRanges();
|
||||
|
||||
DelinquencyRangeData retrieveDelinquencyRange(Long delinquencyRangeId);
|
||||
|
||||
Collection<DelinquencyBucketData> retrieveAllDelinquencyBuckets();
|
||||
List<DelinquencyBucketData> retrieveAllDelinquencyBuckets();
|
||||
|
||||
DelinquencyBucketData retrieveDelinquencyBucket(Long delinquencyBucketId);
|
||||
|
||||
|
||||
+2
-2
@@ -74,7 +74,7 @@ public class DelinquencyReadPlatformServiceImpl implements DelinquencyReadPlatfo
|
||||
private final ConfigurationDomainService configurationDomainService;
|
||||
|
||||
@Override
|
||||
public Collection<DelinquencyRangeData> retrieveAllDelinquencyRanges() {
|
||||
public List<DelinquencyRangeData> retrieveAllDelinquencyRanges() {
|
||||
final List<DelinquencyRange> delinquencyRangeList = repositoryRange.findAll();
|
||||
return mapperRange.map(delinquencyRangeList);
|
||||
}
|
||||
@@ -86,7 +86,7 @@ public class DelinquencyReadPlatformServiceImpl implements DelinquencyReadPlatfo
|
||||
}
|
||||
|
||||
@Override
|
||||
public Collection<DelinquencyBucketData> retrieveAllDelinquencyBuckets() {
|
||||
public List<DelinquencyBucketData> retrieveAllDelinquencyBuckets() {
|
||||
final List<DelinquencyBucket> delinquencyRangeList = repositoryBucket.findAll();
|
||||
return mapperBucket.map(delinquencyRangeList);
|
||||
}
|
||||
|
||||
+3
-3
@@ -26,7 +26,7 @@ import java.util.Set;
|
||||
import org.apache.fineract.accounting.glaccount.data.GLAccountData;
|
||||
import org.apache.fineract.infrastructure.core.data.EnumOptionData;
|
||||
import org.apache.fineract.infrastructure.core.data.StringEnumOptionData;
|
||||
import org.apache.fineract.portfolio.delinquency.api.DelinquencyApiResourceSwagger.GetDelinquencyBucketsResponse;
|
||||
import org.apache.fineract.portfolio.delinquency.data.DelinquencyBucketData;
|
||||
|
||||
/**
|
||||
* Created by Chirag Gupta on 12/27/17.
|
||||
@@ -1404,8 +1404,8 @@ final class LoanProductsApiResourceSwagger {
|
||||
public Integer overdueDaysForNPA;
|
||||
@Schema(example = "50")
|
||||
public Integer principalThresholdForLastInstalment;
|
||||
public GetDelinquencyBucketsResponse delinquencyBucket;
|
||||
public List<GetDelinquencyBucketsResponse> delinquencyBucketOptions;
|
||||
public DelinquencyBucketData delinquencyBucket;
|
||||
public List<DelinquencyBucketData> delinquencyBucketOptions;
|
||||
@Schema(example = "false")
|
||||
public Boolean enableInstallmentLevelDelinquency;
|
||||
@Schema(example = "3")
|
||||
|
||||
Reference in New Issue
Block a user