in component-test/src/main/java/org/apache/fineract/cn/portfolio/ChargeDefinitionApiDocumentation.java [189:230]
public void documentGetChargeDefinition() throws Exception {
final Product product = createProduct();
final ChargeDefinition chargeDefinition = new ChargeDefinition();
chargeDefinition.setIdentifier("charge10");
chargeDefinition.setName("core123");
chargeDefinition.setFromAccountDesignator("pembe");
chargeDefinition.setToAccountDesignator("miriam");
chargeDefinition.setAmount(BigDecimal.ONE.setScale(3, BigDecimal.ROUND_UNNECESSARY));
chargeDefinition.setChargeMethod(ChargeDefinition.ChargeMethod.FIXED);
chargeDefinition.setChargeAction(Action.OPEN.name());
chargeDefinition.setDescription("describe charge");
portfolioManager.createChargeDefinition(product.getIdentifier(), chargeDefinition);
this.mockMvc.perform(get("/products/" + product.getIdentifier() + "/charges/" + chargeDefinition.getIdentifier())
.contentType(MediaType.APPLICATION_JSON_VALUE)
.accept(MediaType.ALL_VALUE))
.andExpect(status().isOk())
.andDo(document("document-get-case-document", preprocessRequest(prettyPrint()), preprocessResponse(prettyPrint()),
responseFields(
fieldWithPath("identifier").description("Charge definition's identifier"),
fieldWithPath("name").description("Charge definitions given name"),
fieldWithPath("description").description("Charge definitions description"),
fieldWithPath("accrueAction").description("Charge definitions accrue action"),
fieldWithPath("proportionalTo").description("Charge definitions proportional to"),
fieldWithPath("accrualAccountDesignator").description("Charge definitions accrual acion generatort"),
fieldWithPath("forCycleSizeUnit").description("Charge definitions cycle size unit"),
fieldWithPath("forSegmentSet").description("Charge definitions segment set"),
fieldWithPath("fromSegment").description("Charge definitions from segment"),
fieldWithPath("toSegment").description("Charge definitions to segment"),
fieldWithPath("chargeOnTop").description("Charge definitions charge on top"),
fieldWithPath("fromAccountDesignator").description("From account designator"),
fieldWithPath("toAccountDesignator").description("To account designator"),
fieldWithPath("amount").description("Charge definition's amount"),
fieldWithPath("chargeMethod").description("Charge definitions charge method"),
fieldWithPath("chargeAction").description("Charge definition's charge action"),
fieldWithPath("description").description("Employee's middle name"),
fieldWithPath("readOnly").description("Readability"))));
}