Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Dentro del microservicio ffss-account-gateway-service, algunos montos que fiserv devuelve en los response los multiplicamos por 100 para convertir las cantidades a centavos. Se hizo de esta manera debido a que Spin lo hace de la misma forma en sus DTOs.

Las clases que hacen esta conversión dentro del gateway son las siguientes:

AccountDataDTOClient.java - Que corresponde al endpoint /account/details de fiserv

...

PeerToPeerTransferFalconResponseActionDataDTOClient.java - Que corresponde al endpoint /account/FL-transferP2P de fiserv

...

AccountBalanceResponseDTOClient.java - Que corresponde al endpoint /account/balance/details de fiserv

...

Para contrarrestar esta multiplicación realizamos una división entre 100 al invocar los converters que pasan los valores de los DTOs de FFSS (que provienen de ffss-account-gateway-service) a los DTOs de Spin ya que estos últimos también realizan la multiplicación por 100 dentro de los getters. Con esto evitamos la doble multiplicación por 100.

A continuación se indican los converters donde se realiza la división entre 100:

Microservicio:spin-account-service - Interface: FfssAccountConverter.java

...

Microservicio: spin-user-inquiry-service - Interface: ffssAccountConverter.java

...

NOTA: Dentro de los proyectos de Spin cuando desaparezcan las feature flags isAccountAggregationServiceSwitchEnabled y isCustomerAggregationServiceSwitchEnabled y se deje de hacer el llamado a fiserv directamente para sustituirlo por los servicios de agregación, se tendrá que quitar la multiplicación y la división por 100 dentro de los DTOs y los converters respectivamente para que el ffss-account-gateway-service sea el único encargado de multiplicar por 100 los montos y mantener las cifras en centavos.