in component-test/src/main/java/org/apache/fineract/cn/portfolio/LossProvisionApiDocumentation.java [108:144]
public void documentGetLossProvisionConfiguration() throws Exception {
final Product product = createAdjustedProduct(x -> {
});
final List<LossProvisionStep> lossProvisionSteps1 = new ArrayList<>();
lossProvisionSteps1.add(new LossProvisionStep(0, BigDecimal.valueOf(1_00, 2)));
lossProvisionSteps1.add(new LossProvisionStep(1, BigDecimal.valueOf(9_00, 2)));
lossProvisionSteps1.add(new LossProvisionStep(30, BigDecimal.valueOf(35_00, 2)));
lossProvisionSteps1.add(new LossProvisionStep(60, BigDecimal.valueOf(55_00, 2)));
final LossProvisionConfiguration lossProvisionConfiguration = new LossProvisionConfiguration(lossProvisionSteps1);
individualLending.changeLossProvisionConfiguration(product.getIdentifier(), lossProvisionConfiguration);
try {
this.mockMvc.perform(get("/individuallending/products/" + product.getIdentifier() + "/lossprovisionconfiguration")
.accept(MediaType.APPLICATION_JSON_VALUE)
.contentType(MediaType.APPLICATION_JSON_VALUE)
.header(TENANT_HEADER, tenantDataStoreContext.getTenantName()))
.andExpect(status().isOk())
.andDo(document(
"document-get-loss-provision-configuration", preprocessRequest(prettyPrint()),
responseFields(
fieldWithPath("lossProvisionSteps").type("List<LossProvisionSteps>").description("The loss provision configurations +\n" +
" +\n" +
"_LossProvisionSteps_ { +\n" +
" *enum* _Type_ { +\n" +
" daysLate, +\n" +
" percentProvision, +\n" +
" } +")
)
));
} catch (Exception e) {
e.printStackTrace();
}
}