Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
ada:howto:sicoferp:factory:new-migracion-sicoferp:apilegacy [2024/06/06 21:41] administraidor |
ada:howto:sicoferp:factory:new-migracion-sicoferp:apilegacy [2024/06/13 16:13] (actual) 192.168.177.2 |
||
---|---|---|---|
Línea 11: | Línea 11: | ||
===== Arquitectura ===== | ===== Arquitectura ===== | ||
La API Legacy se basará en una arquitectura RESTful, siguiendo los principios de diseño de APIs REST. Esto permitirá una fácil integración con las aplicaciones legacy y los nuevos sistemas, utilizando protocolos HTTP estándar y formatos de datos como JSON. | La API Legacy se basará en una arquitectura RESTful, siguiendo los principios de diseño de APIs REST. Esto permitirá una fácil integración con las aplicaciones legacy y los nuevos sistemas, utilizando protocolos HTTP estándar y formatos de datos como JSON. | ||
+ | |||
+ | {{ :ada:howto:sicoferp:factory:new-migracion-sicoferp:arqapilegacy.png?600 |}} | ||
+ | |||
+ | A contiuación se describe el modelo utilizado de forma general: | ||
+ | |||
+ | * **LegacyApplicationPB**: Son las aplicaciones desarrolladas en Powerbuilder las cuales integran un api propia en el core que genera la información de integración posteriormente consume la url del microfrontend por medio de un método GET. | ||
+ | * **LegacyApplicationJava**: Son las aplicaciones desarrolladas en Java pero a diferencia de las anteriores si hace un registro previo de la información de integración por medio del api-legacy y por último consume la url del microfrontend por medio de un método GET. | ||
+ | * **Api Legacy Microfrontend**: Es la encargada de registrar la información de integración, encriptar y desencriptar tokens y autorizar los consumos de las aplicaciones legacy. | ||
+ | * **Microfrontend**: Es la funcionalidad front migrada a las nuevas técnologias utiliza el api-legacy para autenticar y autorizar las peticiones realizadas por las aplicaciones legacy. | ||
+ | * **EcosystemConfigWS**: Entre sus configuraciones provee un metodo que devuelve las rutas que utilizará el microfrontend. | ||
+ | * **Client**: Origen de datos del cliente (DB). | ||
===== Componentes ===== | ===== Componentes ===== | ||
Línea 27: | Línea 38: | ||
public class FrontendConsumingUrlDto implements Serializable{ | public class FrontendConsumingUrlDto implements Serializable{ | ||
- | /** The Constant serialVersionUID. */ | + | /** The Constant serialVersionUID. */ |
- | private static final long serialVersionUID = 1L; | + | private static final long serialVersionUID = 1L; |
- | /** The id. */ | + | /** The id. */ |
- | @Schema(description = "Identificador del registro.") | + | @Schema(description = "Identificador del registro.") |
private Long id; | private Long id; | ||
- | /** The microfrontend url. */ | + | /** The microfrontend url. */ |
- | @Schema(description = "url del microfronend desplegado.") | + | @Schema(description = "url del microfronend desplegado.") |
private String microfrontendUrl; | private String microfrontendUrl; | ||
- | /** The path param. */ | + | /** The path param. */ |
- | @Schema(description = "Parámetro que contiene la cadena de la sesión encriptada que será utilizada en la inicialización del microfrotnend.") | + | @Schema(description = "Parámetro que contiene la cadena de la sesión encriptada que será utilizada en la inicialización del microfrotnend.") |
private String pathParam; | private String pathParam; | ||
- | /** The consume status. */ | + | /** The consume status. */ |
- | @Schema(description = "Estado del registro. Es utilizado para validar si el token heredado está vigente.") | + | @Schema(description = "Estado del registro. Es utilizado para validar si el token heredado está vigente.") |
private String consumeStatus; | private String consumeStatus; | ||
- | /** The uuid. */ | + | /** The uuid. */ |
- | @Schema(description = "Identificador del token heredado.") | + | @Schema(description = "Identificador del token heredado.") |
private String uuid; | private String uuid; | ||
} | } | ||
</code> | </code> | ||
- | + | ==== Capa de lógica de negocio ==== | |
- | Capa de lógica de negocio | + | |
Esta capa implementará la lógica de negocio específica de las aplicaciones legacy, exponiendo las funcionalidades de estas aplicaciones a través de la API. | Esta capa implementará la lógica de negocio específica de las aplicaciones legacy, exponiendo las funcionalidades de estas aplicaciones a través de la API. | ||
- | Capa de presentación: Esta capa se encargará de la transformación de los datos y la generación de respuestas en formatos adecuados para las aplicaciones consumidoras. | + | |
+ | {{ :ada:howto:sicoferp:factory:new-migracion-sicoferp:api-legacy.png?600 |}} | ||
+ | |||
+ | La documentación del api se expone en los siguientes endpoint. | ||
+ | |||
+ | * [[https://ecosystem-gateway-dev.adacsc.co/api-legacy-microfrontend/api-docs|Documentación OpenAPI]]: JSON de documentación del servicio. | ||
+ | * [[https://ecosystem-gateway-dev.adacsc.co/api-legacy-microfrontend/swagger-ui/index.html|Documentación Swagger]]: Visor Swagger de documentación del servicio. | ||
===== Seguridad ===== | ===== Seguridad ===== | ||
La seguridad de la API Legacy será una prioridad absoluta. Se implementarán medidas de seguridad como autenticación, autorización, cifrado y validación de datos para proteger la información confidencial y garantizar la integridad de las transacciones. | La seguridad de la API Legacy será una prioridad absoluta. Se implementarán medidas de seguridad como autenticación, autorización, cifrado y validación de datos para proteger la información confidencial y garantizar la integridad de las transacciones. | ||
- | Conclusión | + | ===== Integración del API Legacy: Escenarios y Tipos ===== |
+ | El API Legacy se integrará con las aplicaciones legacy y los nuevos sistemas de diversas maneras, abriendo un abanico de posibilidades para la migración y el desarrollo futuro. A continuación, se describen algunos de los escenarios de integración más comunes: | ||
+ | |||
+ | * [[ada:howto:sicoferp:factory:new-migracion-sicoferp:apilegacy:microfrontend|Integración Microfrontend]] | ||
+ | * [[ada:howto:sicoferp:factory:new-migracion-sicoferp:apilegacy:apipb|Integración Application Legacy PB]] | ||
+ | * [[ada:howto:sicoferp:factory:new-migracion-sicoferp:apilegacy:apijava|Integración Application Legacy Java]] | ||
- | El desarrollo de la API Legacy es un paso crucial en la migración del proyecto SICOFP. Esta API permitirá la integración de las aplicaciones legacy con los nuevos sistemas, facilitando la migración de datos, la reutilización de funcionalidades y la promoción de una arquitectura de TI más moderna y flexible. | ||
[[ada:howto:sicoferp:factory:new-migracion-sicoferp|←Regresar]] | [[ada:howto:sicoferp:factory:new-migracion-sicoferp|←Regresar]] | ||