1.5.2 • Published 2 years ago

dct.wms.api v1.5.2

Weekly downloads
-
License
-
Repository
-
Last release
2 years ago

Proyecto WMS

El proyecto WMS contiene todos los servicios que se utilizan en el proyecto front para el correcto funcionamiento del sistema. En este proyecto se debera ver todo lo relacionado con la logica del negocio y con la funcionalidad del mismo.

Librerías Externas

Para el proyecto fue necesario el uso de las siguientes librerías:

security_library-1.0.0.jar: Se usa para crear seguridad a los servicios por medio de un token que se obtiene mediante un login de acceso.

lib-storage-1.0.0.jar: Se usa para el manejo de archivos mediante File Share

Configuración de la librería security_library-1.0.0.jar

Se debe agregar al archivo pom.xml la dependencia de la librería, se puede agregar usando un systema path y se buscaraía la librería en la carpeta lib del proyecto, o se puede agregar sin el system path pero debemos considerar que la librería previamente fue instalada en las librerías de maven.

<dependency>
    <groupId>com.danone.dct.security</groupId>
    <artifactId>security_library</artifactId>
    <version>1.0.0</version>
    <scope>system</scope>
    <systemPath>${basedir}/lib/security_library-1.0.0.jar</systemPath>
</dependency>

Además es necesario poder incluir en el proyecto las siguientes clases:

CredentialProviderImpl: Obtiene el token que manda el front y lo manda a las diferentes funciones.

EncryptDecrypt: Permite desencriptar el token que se recibe del lado front.

UserDetailsServiceImpl : Contiene la implementación y el uso del metodo loadUserByUsername para la validación de usuario.

UserException: Clase que captura los errores generados.

application.yml: Contiene las variables de configuración para la librería de seguridad, en este archivo se indica las clases base, el tipo de seguridad y la configuración del token, este archivo debe de ubicarse en la carpeta resources del proyecto.

Configuración de la librería lib-storage-1.0.0.jar

Se debe agregar al archivo pom.xml la dependencia de la librería, se puede agregar usando un systema path y se buscaraía la librería en la carpeta lib del proyecto, o se puede agregar sin el system path pero debemos considerar que la librería previamente fue instalada en las librerías de maven.

<dependency>
    <groupId>com.eon.azure</groupId>
    <artifactId>lib-storage</artifactId>
    <version>1.0.0</version>
    <scope>system</scope>
    <systemPath>${basedir}/lib/lib-storage-1.0.0.jar</systemPath>
</dependency>

Variables configurables en el proyecto

En el archivo application.yml se encuentran las variables de entorno utilizadas en el proyecto.

security.httpBasic: false

Variable que contiene el tipo de autenticación a manejar

security.credentials.classEntity: com.danone.api.security.entity.RequestCredentials

Variable que contiene la entidad para el manejo de credenciales

security.token.id: DanoneJWT

Variable que contiene el id para el token generado

security.token.payload.claim: DanoneTokenPayload

Variable que contiene el claim token payload

security.token.payload.class: com.danone.api.security.entity.DanoneTokenPayloadResponseDto

Variable que contiene la clase de respuesta para el manejo del claims del token

security.token.header: Authorization

Variable que contiene el encabezado de autorización

security.token.prefix: Basic

Variable que contiene el tipo de autenticación

security.token.expiration.access: 1800000

Variable que indica el tiempo en el que expira el accessToken

security.token.expiration.refresh: 2400000

Variable que indica el tiempo en el que expira el refreshToken

security.obfuscation.phrase: dAN0n3IR0nM4n4p1

Variable que contiene la frase para poder desencriptar el token recibido

spring.datasource.driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver

Permite la configuracion del driver que se utilizará de acuerdo al gestor de base de datos utilizado

spring.datasource.url: jdbc:sqlserver://sql-dev-fqr-001.database.windows.net:1433;databaseName=sqldb-backend-dev-wms-001

Permite la configuracion de la conexion hacia la base de datos, indicando el host, puerto, nombre de la base,

spring.datasource.username: usuarioBD

Se utiliza para asignar el usuario con el que se genera la conexion hacia la base de datos

spring.datasource.password: passBD

Se utiliza para asignar la contraseña del usuario con el que se genera la conexion hacia la base de datos

spring.datasource.database-platform: org.hibernate.dialect.SQLServer2012Dialect

Se utiliza para designar el dialecto de la base de datos en la conexion interna del hibernate del jdbc

spring.datasource.liquibase.changeLog: classpath:db/changelog/db.changelog-master.yaml

Se utiliza para indicar los archivos de ejecución para la creación de la BD por medio de liquibase

application.file-share.connection-string: DefaultEndpointsProtocol=https;AccountName=stdevwms001;AccountKey=52rnrvLYuFuiL0UfKeKf2oOsa+7FQeCe6/5m5Ikku6dYmws+c3LvAwLZR66DrV4uwO2SV5txKHJKy7cBnkEfNg==;EndpointSuffix=core.windows.net

Se utiliza para indicar cual sera la conexion hacia Azure

application.mail.host: smtp.gmail.com

Esta variable es utilizada para indicar el host para el servidor de correo

application.mail.port: 587

Esta variable es utilizada para indicar mediante que puerto sera la salida de correos

application.mail.user-email: email@email.com

Esta variable es utilizada para indicar la cuenta de correo que sera la remitente de las notificaciones

application.mail.pass-email: pass

Esta variable es la contraseña de la cuenta de correo que sera la remitente de las notificaciones

application.mail.protocol: smtp

Esta variable es utiliza para asignar el protocol de correo utilizado

application.mail.auth: true

Esta variable es utilizada para la autenticacion de correo por default va en true

application.mail.start-tls: true

Esta variable es utilizada para asignar que la conexion de correo se hace a tráves de tls por default va en true

application.mail.debug: true

Esta variable es utilizada para imprimir en consola si se necesita ver el debug del envio de correo en el log

Ejecutando el proyecto

Para ejecutar el proyecto debemos correr los comandos de maven:

Limpiar el proyecto.

mvn clean

Generar la instalación del proyecto.

mvn install
1.5.2

2 years ago

1.5.1

2 years ago

1.5.0

2 years ago

1.4.2

2 years ago

1.4.1

2 years ago

1.4.0

2 years ago