mail@pastecode.io avatar
a month ago
3.1 kB
Endpoint Overview:

The /redeem endpoint in the FixedDepositController handles requests to redeem fixed deposit (FD) accounts.
Validation Mechanisms:

The request body is validated using @Valid annotation, ensuring that it conforms to the specified DTO (FDRedeemRequestDto) structure.
Validations include checking for non-blank FD type (CD or others), and further processing is determined based on this type.
Redemption Process:

The redemption process varies based on whether the FD type is conventional (CD) or Islamic. Different service methods are invoked accordingly (redeemCDAccount for CD and redeemFDAccount for others).
For Islamic FD redemption, an internal API (redeemIslamicTD) is called to handle the redemption process.
For conventional FD redemption, another internal API (redeemConventionalTD) is invoked, which processes the redemption request.
Request Handling:

The request metadata (RequestMetaData) is extracted from the request attributes to carry out authorization and other contextual operations.
Various parameters from the request DTO are used to populate the redemption request objects (IslamicFDRedeemRequest or ConvFDRedeemRequest) before passing them to the corresponding redemption API.
Response Handling:

The responses from the redemption APIs are processed to extract relevant information such as reference numbers, error codes, and descriptions.
The response DTO (FDRedeemResponseDto) is populated with this information and returned to the client.

Notification services are triggered upon successful redemption, sending emails and SMS messages to the customer's registered contact details.
Notifications are also sent internally for logging and auditing purposes.
Error Handling:

Exception handling mechanisms are in place to capture and handle errors that may occur during the redemption process.
Error codes and descriptions are included in the response to provide meaningful feedback to the client.
Sequence Diagram:

A sequence diagram should be created to visualize the flow of interactions between components, including external APIs, internal services, and data stores.
It should depict the sequence of steps involved in redeeming a fixed deposit, including validations, API calls, and notifications.

The endpoint depends on various internal APIs for processing redemption requests, such as redeemIslamicTD and redeemConventionalTD.
Database dependencies exist for retrieving customer details, account information, and other relevant data required for validation and processing.
Microservices Involved:

The redemption process may involve multiple microservices responsible for different aspects of the operation, including account management, transaction processing, and notifications.
Dependencies on other microservices should be identified and documented to understand the system's architecture and interactions.
Flex/Middleware Changes:

Any required changes to middleware or flex components should be noted, including updates to APIs, message formats, or integration points.
Leave a Comment