fiscalia_bo-nest-helpers 0.0.21 → 0.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/extensions.json +9 -0
- package/.vscode/settings.json +7 -0
- package/README.md +48 -1
- package/dist/http-service/http-service.pipes.js +0 -1
- package/dist/http-service/http-service.pipes.js.map +1 -1
- package/dist/ms-seguridad/Seguridad.pb.d.ts +95 -0
- package/dist/ms-seguridad/Seguridad.pb.js +9 -1
- package/dist/ms-seguridad/Seguridad.pb.js.map +1 -1
- package/dist/ms-seguridad/Seguridad.proto +108 -3
- package/dist/ms-seguridad/dto/ms-seguridad.input.d.ts +6 -0
- package/dist/ms-seguridad/dto/ms-seguridad.input.js +53 -0
- package/dist/ms-seguridad/dto/ms-seguridad.input.js.map +1 -0
- package/dist/ms-seguridad/ms-seguridad.controller.d.ts +9 -0
- package/dist/ms-seguridad/ms-seguridad.controller.js +84 -0
- package/dist/ms-seguridad/ms-seguridad.controller.js.map +1 -0
- package/dist/ms-seguridad/ms-seguridad.module.js +3 -0
- package/dist/ms-seguridad/ms-seguridad.module.js.map +1 -1
- package/dist/ms-seguridad/ms-seguridad.service.d.ts +4 -1
- package/dist/ms-seguridad/ms-seguridad.service.js +9 -0
- package/dist/ms-seguridad/ms-seguridad.service.js.map +1 -1
- package/package.json +6 -3
package/README.md
CHANGED
@@ -100,7 +100,6 @@ En este ejemplo, estamos utilizando el método register para cargar la configura
|
|
100
100
|
- verifica que el token se válido
|
101
101
|
- Si este decorador recibe permisos por parametro entonces verifica que cumpla con todos los permisos indicados por parametro
|
102
102
|
|
103
|
-
- `@VersionDescription(version, descripcion)`, decorador que aplica version y descripcion a un controller.
|
104
103
|
- `@AuthUser()`, decorador para obtener los datos del token como ser:
|
105
104
|
- ci: string;
|
106
105
|
- idAplicacion: number;
|
@@ -175,6 +174,54 @@ ejemplo de asignacion de key para redis
|
|
175
174
|
const keyCache = `ms-seguridad:usuarioId_${usuarioId}-aplicacionId_${aplicacionId}-permisos`;
|
176
175
|
```
|
177
176
|
|
177
|
+
# USO DEL MODULO `MS-PERSONAS`
|
178
|
+
|
179
|
+
El módulo MsPersonasModule proporciona una manera fácil de comunicarse con un servicio de ms-personas a través de http.
|
180
|
+
|
181
|
+
## Modulos disponibles
|
182
|
+
|
183
|
+
- MsPersonasModule
|
184
|
+
|
185
|
+
## Servicios disponibles
|
186
|
+
|
187
|
+
- MsPersonasService
|
188
|
+
|
189
|
+
para utilizar el servicio de personas es necesario importar el modulo `MsPersonasModule`
|
190
|
+
|
191
|
+
## Configuración
|
192
|
+
|
193
|
+
Antes de utilizar el módulo, asegúrese de tener las siguientes variables de entorno configuradas o enviar la variable de entorno definida:
|
194
|
+
|
195
|
+
- `ENV_SERVICE_MS_PERSONAS`: la URL del servidor de seguridad a través de gRPC.
|
196
|
+
|
197
|
+
## Uso
|
198
|
+
|
199
|
+
Para utilizar el módulo, primero importe `MsPersonasModule` en su módulo principal:
|
200
|
+
|
201
|
+
```typescript
|
202
|
+
import { Module } from '@nestjs/common';
|
203
|
+
import { MsPersonasModule } from 'fiscalia_bo-nest-helpers/dist/ms-personas';
|
204
|
+
|
205
|
+
@Module({
|
206
|
+
imports: [
|
207
|
+
ConfigModule.forRoot({ isGlobal: true }),
|
208
|
+
|
209
|
+
// Register ms-personas module global
|
210
|
+
MsPersonasModule.register({
|
211
|
+
global: true,
|
212
|
+
urlMsPersonas: process.env.ENV_SERVICE_MS_PERSONAS,
|
213
|
+
}),
|
214
|
+
],
|
215
|
+
controllers: [],
|
216
|
+
providers: [],
|
217
|
+
})
|
218
|
+
export class AppModule {}
|
219
|
+
```
|
220
|
+
|
221
|
+
> **NOTA IMPORTANTE:** previo al uso del modulO debe importarse el [`ConfigModule`](https://docs.nestjs.com/techniques/configuration#getting-started 'Nestjs Docs') de nestjs y configurarlo para uso global
|
222
|
+
|
223
|
+
En este ejemplo, estamos utilizando el método register para cargar la configuración de forma `síncrona`
|
224
|
+
|
178
225
|
# Información
|
179
226
|
|
180
227
|
- Author - [UTIC](mailto:informatica@fiscalia.gob.bo)
|
@@ -104,7 +104,6 @@ exports.FilterHttpServiceResponse = (0, rxjs_1.catchError)((error) => {
|
|
104
104
|
resp = respData;
|
105
105
|
}
|
106
106
|
else {
|
107
|
-
console.log('response fields: ', Object.keys(error.response));
|
108
107
|
resp = {
|
109
108
|
error: true,
|
110
109
|
message: axiosResponseStatusMessages[error.response.status],
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"http-service.pipes.js","sourceRoot":"","sources":["../../src/http-service/http-service.pipes.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"http-service.pipes.js","sourceRoot":"","sources":["../../src/http-service/http-service.pipes.ts"],"names":[],"mappings":";;;AACA,+BAA4D;AAG5D,MAAM,2BAA2B,GAAG;IAClC,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,sBAAsB;IAC3B,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,6BAA6B;IAClC,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,sBAAsB;IAC3B,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,sBAAsB;IAC3B,GAAG,EAAE,wBAAwB;IAC7B,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,YAAY;IACjB,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,sBAAsB;IAC3B,GAAG,EAAE,wBAAwB;IAC7B,GAAG,EAAE,sBAAsB;IAC3B,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,gBAAgB;IACrB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,kCAAkC;IACvC,GAAG,EAAE,6BAA6B;IAClC,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,sBAAsB;IAC3B,GAAG,EAAE,6BAA6B;IAClC,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,4BAA4B;IACjC,GAAG,EAAE,wBAAwB;IAC7B,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,gBAAgB;IACrB,GAAG,EAAE,wBAAwB;IAC7B,GAAG,EAAE,uBAAuB;IAC5B,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,qBAAqB;IAC1B,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,yBAAyB;IAC9B,GAAG,EAAE,wBAAwB;IAC7B,GAAG,EAAE,wBAAwB;IAC7B,GAAG,EAAE,qDAAqD;IAC1D,GAAG,EAAE,mCAAmC;IACxC,GAAG,EAAE,4BAA4B;IACjC,GAAG,EAAE,iBAAiB;IACtB,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,wBAAwB;IAC7B,GAAG,EAAE,sCAAsC;IAC3C,GAAG,EAAE,2BAA2B;IAChC,GAAG,EAAE,0BAA0B;IAC/B,GAAG,EAAE,6BAA6B;IAClC,GAAG,EAAE,oBAAoB;IACzB,GAAG,EAAE,mCAAmC;IACxC,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,gCAAgC;CACtC,CAAC;AAGW,QAAA,4BAA4B,GAAG,IAAA,UAAG,EAC7C,CAAC,IAA6B,EAAoB,EAAE;IAClD,IAAI,QAAQ,GAAqB;QAC/B,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,qCAAqC;QAC9C,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,GAAG;KACZ,CAAC;IACF,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;IACrB,IAAI,OAAO,QAAQ,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;SAC3F;QACH,QAAQ,GAAG;YACT,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,KAAK,EAAE,IAAI,CAAC,MAAM,IAAI,GAAG;YACzB,OAAO,EAAE,IAAI,CAAC,UAAU;YACxB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;KACH;AACH,CAAC,CACF,CAAC;AAEW,QAAA,yBAAyB,GAAG,IAAA,iBAAU,EAAC,CAAC,KAAiB,EAAwB,EAAE;IAC9F,IAAI,IAAI,GAAqB;QAC3B,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,kBAAkB;QAC3B,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,GAAG;KACZ,CAAC;IACF,IAAI,KAAK,CAAC,YAAY,EAAE;QACtB,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE;YAC9B,IAAI,CAAC,OAAO,GAAG,2CAA2C,KAAK,CAAC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;SACrG;aAAM,IAAI,KAAK,CAAC,QAAQ,EAAE;YACzB,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAW,CAAC;YAC5C,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE;gBAC9E,IAAI,GAAG,QAA4B,CAAC;aACrC;iBAAM;gBACL,IAAI,GAAG;oBACL,KAAK,EAAE,IAAI;oBACX,OAAO,EAAE,2BAA2B,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;oBAC3D,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM;iBAC9B,CAAC;aACH;SACF;KACF;IACD,IAAI,IAAI,CAAC,OAAO,KAAK,kBAAkB;QAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC9D,OAAO,IAAA,SAAE,EAAC,IAAI,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
@@ -3,6 +3,14 @@ export declare const protobufPackage = "seguridad.Seguridad";
|
|
3
3
|
export interface TokenBody {
|
4
4
|
token: string;
|
5
5
|
}
|
6
|
+
export interface LoginRequest {
|
7
|
+
usuario: string;
|
8
|
+
password: string;
|
9
|
+
aplicacion: string;
|
10
|
+
userAgent: string;
|
11
|
+
ip: string;
|
12
|
+
codigoDispositivo?: string | undefined;
|
13
|
+
}
|
6
14
|
export interface ResponseListPermissions {
|
7
15
|
error: boolean;
|
8
16
|
message: string;
|
@@ -18,6 +26,21 @@ export interface ResponseListPermissions_Response {
|
|
18
26
|
permisos: string[];
|
19
27
|
total: number;
|
20
28
|
}
|
29
|
+
export interface ResponseListServices {
|
30
|
+
error: boolean;
|
31
|
+
message: string;
|
32
|
+
status: number;
|
33
|
+
response: ResponseListServices_ResponseServicesMsn | undefined;
|
34
|
+
}
|
35
|
+
export interface ResponseListServices_ResponseServicesMsn {
|
36
|
+
data: ResponseListServices_ResponseServices | undefined;
|
37
|
+
validationErrors: string;
|
38
|
+
suggestions: string;
|
39
|
+
}
|
40
|
+
export interface ResponseListServices_ResponseServices {
|
41
|
+
servicios: string[];
|
42
|
+
total: number;
|
43
|
+
}
|
21
44
|
export interface ResponseValidToken {
|
22
45
|
error: boolean;
|
23
46
|
message: string;
|
@@ -42,15 +65,87 @@ export interface ResponseUserData_UserPayload {
|
|
42
65
|
idPersona: number;
|
43
66
|
usuarioId: number;
|
44
67
|
}
|
68
|
+
export interface LogoutResponse {
|
69
|
+
error: boolean;
|
70
|
+
message: string;
|
71
|
+
status: number;
|
72
|
+
}
|
73
|
+
export interface LoginResponse {
|
74
|
+
error: boolean;
|
75
|
+
message: string;
|
76
|
+
status: number;
|
77
|
+
response: LoginResponse_ResponseLogin | undefined;
|
78
|
+
}
|
79
|
+
export interface LoginResponse_ResponseLogin {
|
80
|
+
token?: string | undefined;
|
81
|
+
tokenRefresh?: string | undefined;
|
82
|
+
usuario: LoginResponse_Usuario | undefined;
|
83
|
+
roles: string[];
|
84
|
+
funcionario: LoginResponse_Funcionario | undefined;
|
85
|
+
cargos: LoginResponse_Cargo[];
|
86
|
+
apps: LoginResponse_App[];
|
87
|
+
permisos: string[];
|
88
|
+
}
|
89
|
+
export interface LoginResponse_Usuario {
|
90
|
+
ci: string;
|
91
|
+
nombre: string;
|
92
|
+
paterno: string;
|
93
|
+
materno: string;
|
94
|
+
nombreCompleto: string;
|
95
|
+
nacimiento: string;
|
96
|
+
sexo: string;
|
97
|
+
direccion: string;
|
98
|
+
celular: number;
|
99
|
+
email: string;
|
100
|
+
nacionalidad: string;
|
101
|
+
profesion: string;
|
102
|
+
foto: string;
|
103
|
+
fotoRuta: string;
|
104
|
+
whatsapp: number;
|
105
|
+
telegram: number;
|
106
|
+
emailValidado: number;
|
107
|
+
notificacionDefault: string;
|
108
|
+
}
|
109
|
+
export interface LoginResponse_Funcionario {
|
110
|
+
estado: number;
|
111
|
+
fechaIngresoInstitucion: string;
|
112
|
+
aniosAntiguedad: number;
|
113
|
+
idFirma: number;
|
114
|
+
sinControlAsistencia: number;
|
115
|
+
conInamovilidad: number;
|
116
|
+
siglaProfesion: string;
|
117
|
+
usuarioId: number;
|
118
|
+
}
|
119
|
+
export interface LoginResponse_App {
|
120
|
+
nombre: string;
|
121
|
+
codigo: string;
|
122
|
+
url: string;
|
123
|
+
}
|
124
|
+
export interface LoginResponse_Cargo {
|
125
|
+
nombre: string;
|
126
|
+
fechaAlta: string;
|
127
|
+
fechaBaja: string;
|
128
|
+
tipo: number;
|
129
|
+
situacion: number;
|
130
|
+
estado: number;
|
131
|
+
}
|
45
132
|
export declare const SEGURIDAD__SEGURIDAD_PACKAGE_NAME = "seguridad.Seguridad";
|
46
133
|
export interface SeguridadControllerClient {
|
47
134
|
listPermissions(request: TokenBody): Observable<ResponseListPermissions>;
|
135
|
+
listServices(request: TokenBody): Observable<ResponseListServices>;
|
48
136
|
validToken(request: TokenBody): Observable<ResponseValidToken>;
|
137
|
+
login(request: LoginRequest): Observable<LoginResponse>;
|
138
|
+
tokenInformation(request: TokenBody): Observable<LoginResponse>;
|
139
|
+
logout(request: TokenBody): Observable<LogoutResponse>;
|
49
140
|
userDataByToken(request: TokenBody): Observable<ResponseUserData>;
|
50
141
|
}
|
51
142
|
export interface SeguridadControllerController {
|
52
143
|
listPermissions(request: TokenBody): Promise<ResponseListPermissions> | Observable<ResponseListPermissions> | ResponseListPermissions;
|
144
|
+
listServices(request: TokenBody): Promise<ResponseListServices> | Observable<ResponseListServices> | ResponseListServices;
|
53
145
|
validToken(request: TokenBody): Promise<ResponseValidToken> | Observable<ResponseValidToken> | ResponseValidToken;
|
146
|
+
login(request: LoginRequest): Promise<LoginResponse> | Observable<LoginResponse> | LoginResponse;
|
147
|
+
tokenInformation(request: TokenBody): Promise<LoginResponse> | Observable<LoginResponse> | LoginResponse;
|
148
|
+
logout(request: TokenBody): Promise<LogoutResponse> | Observable<LogoutResponse> | LogoutResponse;
|
54
149
|
userDataByToken(request: TokenBody): Promise<ResponseUserData> | Observable<ResponseUserData> | ResponseUserData;
|
55
150
|
}
|
56
151
|
export declare function SeguridadControllerControllerMethods(): (constructor: Function) => void;
|
@@ -6,7 +6,15 @@ exports.protobufPackage = "seguridad.Seguridad";
|
|
6
6
|
exports.SEGURIDAD__SEGURIDAD_PACKAGE_NAME = "seguridad.Seguridad";
|
7
7
|
function SeguridadControllerControllerMethods() {
|
8
8
|
return function (constructor) {
|
9
|
-
const grpcMethods = [
|
9
|
+
const grpcMethods = [
|
10
|
+
"listPermissions",
|
11
|
+
"listServices",
|
12
|
+
"validToken",
|
13
|
+
"login",
|
14
|
+
"tokenInformation",
|
15
|
+
"logout",
|
16
|
+
"userDataByToken",
|
17
|
+
];
|
10
18
|
for (const method of grpcMethods) {
|
11
19
|
const descriptor = Reflect.getOwnPropertyDescriptor(constructor.prototype, method);
|
12
20
|
(0, microservices_1.GrpcMethod)("SeguridadController", method)(constructor.prototype[method], method, descriptor);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Seguridad.pb.js","sourceRoot":"","sources":["../../src/ms-seguridad/Seguridad.pb.ts"],"names":[],"mappings":";;;AACA,yDAAqE;AAGxD,QAAA,eAAe,GAAG,qBAAqB,CAAC;
|
1
|
+
{"version":3,"file":"Seguridad.pb.js","sourceRoot":"","sources":["../../src/ms-seguridad/Seguridad.pb.ts"],"names":[],"mappings":";;;AACA,yDAAqE;AAGxD,QAAA,eAAe,GAAG,qBAAqB,CAAC;AAuJxC,QAAA,iCAAiC,GAAG,qBAAqB,CAAC;AA0CvE,SAAgB,oCAAoC;IAClD,OAAO,UAAU,WAAqB;QACpC,MAAM,WAAW,GAAa;YAC5B,iBAAiB;YACjB,cAAc;YACd,YAAY;YACZ,OAAO;YACP,kBAAkB;YAClB,QAAQ;YACR,iBAAiB;SAClB,CAAC;QACF,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE;YAChC,MAAM,UAAU,GAAQ,OAAO,CAAC,wBAAwB,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACxF,IAAA,0BAAU,EAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;SAC9F;QACD,MAAM,iBAAiB,GAAa,EAAE,CAAC;QACvC,KAAK,MAAM,MAAM,IAAI,iBAAiB,EAAE;YACtC,MAAM,UAAU,GAAQ,OAAO,CAAC,wBAAwB,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACxF,IAAA,gCAAgB,EAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;SACpG;IACH,CAAC,CAAC;AACJ,CAAC;AArBD,oFAqBC;AAEY,QAAA,iCAAiC,GAAG,qBAAqB,CAAC"}
|
@@ -5,7 +5,11 @@ package seguridad.Seguridad;
|
|
5
5
|
// Inicio AuthAplicaciones
|
6
6
|
service SeguridadController {
|
7
7
|
rpc ListPermissions (TokenBody) returns (ResponseListPermissions) {}
|
8
|
+
rpc ListServices (TokenBody) returns (ResponseListServices) {}
|
8
9
|
rpc ValidToken (TokenBody) returns (ResponseValidToken) {}
|
10
|
+
rpc Login (LoginRequest) returns (LoginResponse) {}
|
11
|
+
rpc TokenInformation (TokenBody) returns (LoginResponse) {}
|
12
|
+
rpc Logout (TokenBody) returns (LogoutResponse) {}
|
9
13
|
rpc UserDataByToken (TokenBody) returns (ResponseUserData) {}
|
10
14
|
}
|
11
15
|
|
@@ -13,6 +17,15 @@ message TokenBody {
|
|
13
17
|
string token = 1;
|
14
18
|
}
|
15
19
|
|
20
|
+
message LoginRequest {
|
21
|
+
string usuario = 1;
|
22
|
+
string password = 2;
|
23
|
+
string aplicacion = 3;
|
24
|
+
string userAgent = 4;
|
25
|
+
string ip = 5;
|
26
|
+
optional string codigoDispositivo = 6;
|
27
|
+
}
|
28
|
+
|
16
29
|
message ResponseListPermissions {
|
17
30
|
bool error = 1;
|
18
31
|
string message = 2;
|
@@ -23,11 +36,29 @@ message ResponseListPermissions {
|
|
23
36
|
Response data = 1;
|
24
37
|
string validationErrors = 2;
|
25
38
|
string suggestions = 3;
|
39
|
+
}
|
40
|
+
|
41
|
+
message Response{
|
42
|
+
repeated string permisos = 1;
|
43
|
+
int32 total = 2;
|
44
|
+
}
|
26
45
|
}
|
27
|
-
message Response{
|
28
|
-
repeated string permisos = 1;
|
29
|
-
int32 total = 2;
|
30
46
|
|
47
|
+
message ResponseListServices {
|
48
|
+
bool error = 1;
|
49
|
+
string message = 2;
|
50
|
+
int32 status = 3;
|
51
|
+
ResponseServicesMsn response = 4;
|
52
|
+
|
53
|
+
message ResponseServicesMsn {
|
54
|
+
ResponseServices data = 1;
|
55
|
+
string validationErrors = 2;
|
56
|
+
string suggestions = 3;
|
57
|
+
}
|
58
|
+
|
59
|
+
message ResponseServices{
|
60
|
+
repeated string servicios = 1;
|
61
|
+
int32 total = 2;
|
31
62
|
}
|
32
63
|
}
|
33
64
|
|
@@ -58,3 +89,77 @@ message ResponseUserData {
|
|
58
89
|
int32 usuarioId= 5;
|
59
90
|
}
|
60
91
|
}
|
92
|
+
|
93
|
+
/* ---------------------------------------------------------------------------------------------- */
|
94
|
+
|
95
|
+
message LogoutResponse {
|
96
|
+
bool error = 1;
|
97
|
+
string message = 2;
|
98
|
+
int32 status = 3;
|
99
|
+
}
|
100
|
+
|
101
|
+
/* ---------------------------------------------------------------------------------------------- */
|
102
|
+
message LoginResponse {
|
103
|
+
bool error = 1;
|
104
|
+
string message = 2;
|
105
|
+
int32 status = 3;
|
106
|
+
ResponseLogin response = 4;
|
107
|
+
|
108
|
+
message ResponseLogin {
|
109
|
+
optional string token = 1;
|
110
|
+
optional string tokenRefresh = 2;
|
111
|
+
Usuario usuario = 3;
|
112
|
+
repeated string roles = 4;
|
113
|
+
Funcionario funcionario = 5;
|
114
|
+
repeated Cargo cargos = 6;
|
115
|
+
repeated App apps = 7;
|
116
|
+
repeated string permisos = 8;
|
117
|
+
}
|
118
|
+
|
119
|
+
message Usuario {
|
120
|
+
string ci = 1;
|
121
|
+
string nombre = 2;
|
122
|
+
string paterno = 3;
|
123
|
+
string materno = 4;
|
124
|
+
string nombreCompleto = 5;
|
125
|
+
string nacimiento = 6;
|
126
|
+
string sexo = 7;
|
127
|
+
string direccion = 8;
|
128
|
+
uint32 celular = 9;
|
129
|
+
string email = 10;
|
130
|
+
string nacionalidad = 11;
|
131
|
+
string profesion = 12;
|
132
|
+
string foto = 13;
|
133
|
+
string fotoRuta = 14;
|
134
|
+
int32 whatsapp = 15;
|
135
|
+
int32 telegram = 16;
|
136
|
+
int32 emailValidado = 17;
|
137
|
+
string notificacionDefault = 18;
|
138
|
+
}
|
139
|
+
|
140
|
+
message Funcionario {
|
141
|
+
int32 estado = 1;
|
142
|
+
string fechaIngresoInstitucion = 2;
|
143
|
+
int32 aniosAntiguedad = 3;
|
144
|
+
int32 idFirma = 4;
|
145
|
+
int32 sinControlAsistencia = 5;
|
146
|
+
int32 conInamovilidad = 6;
|
147
|
+
string siglaProfesion = 7;
|
148
|
+
int32 usuarioId = 8;
|
149
|
+
}
|
150
|
+
|
151
|
+
message App {
|
152
|
+
string nombre = 1;
|
153
|
+
string codigo = 2;
|
154
|
+
string url = 3;
|
155
|
+
}
|
156
|
+
|
157
|
+
message Cargo {
|
158
|
+
string nombre = 1;
|
159
|
+
string fechaAlta = 2;
|
160
|
+
string fechaBaja = 3;
|
161
|
+
int32 tipo = 4;
|
162
|
+
int32 situacion = 5;
|
163
|
+
int32 estado = 6;
|
164
|
+
}
|
165
|
+
}
|
@@ -0,0 +1,53 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
|
+
};
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
+
exports.LoginDto = void 0;
|
13
|
+
const swagger_1 = require("@nestjs/swagger");
|
14
|
+
const class_validator_1 = require("class-validator");
|
15
|
+
class LoginDto {
|
16
|
+
}
|
17
|
+
__decorate([
|
18
|
+
(0, swagger_1.ApiProperty)(),
|
19
|
+
(0, class_validator_1.IsDefined)({ message: 'El campo `usuario` es obligatorio.' }),
|
20
|
+
(0, class_validator_1.MinLength)(5, {
|
21
|
+
message: 'El campo `usuario` debe contener al menos 5 carácter.',
|
22
|
+
}),
|
23
|
+
__metadata("design:type", String)
|
24
|
+
], LoginDto.prototype, "usuario", void 0);
|
25
|
+
__decorate([
|
26
|
+
(0, swagger_1.ApiProperty)(),
|
27
|
+
(0, class_validator_1.IsDefined)({ message: 'El campo `password` es obligatorio.' }),
|
28
|
+
(0, class_validator_1.MinLength)(8, {
|
29
|
+
message: 'El campo `password` debe contener al menos 8 carácter.',
|
30
|
+
}),
|
31
|
+
__metadata("design:type", String)
|
32
|
+
], LoginDto.prototype, "password", void 0);
|
33
|
+
__decorate([
|
34
|
+
(0, swagger_1.ApiProperty)(),
|
35
|
+
(0, class_validator_1.IsDefined)({ message: 'El campo `aplicacion` es obligatorio.' }),
|
36
|
+
(0, class_validator_1.MinLength)(2, {
|
37
|
+
message: 'El campo `aplicacion` debe contener al menos 2 carácter.',
|
38
|
+
}),
|
39
|
+
__metadata("design:type", String)
|
40
|
+
], LoginDto.prototype, "aplicacion", void 0);
|
41
|
+
__decorate([
|
42
|
+
(0, swagger_1.ApiProperty)({
|
43
|
+
required: false,
|
44
|
+
description: 'identificador unico por dispotivo generado en el front',
|
45
|
+
}),
|
46
|
+
(0, class_validator_1.MinLength)(10, {
|
47
|
+
message: `valor de codigo de dispositivo es muy corto, debe ser mayor a 10 carácteres`,
|
48
|
+
}),
|
49
|
+
(0, class_validator_1.IsOptional)(),
|
50
|
+
__metadata("design:type", String)
|
51
|
+
], LoginDto.prototype, "codigoDispositivo", void 0);
|
52
|
+
exports.LoginDto = LoginDto;
|
53
|
+
//# sourceMappingURL=ms-seguridad.input.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ms-seguridad.input.js","sourceRoot":"","sources":["../../../src/ms-seguridad/dto/ms-seguridad.input.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA8C;AAC9C,qDAAmE;AAEnE,MAAa,QAAQ;CA+BpB;AA9BC;IAAC,IAAA,qBAAW,GAAE;IACb,IAAA,2BAAS,EAAC,EAAE,OAAO,EAAE,oCAAoC,EAAE,CAAC;IAC5D,IAAA,2BAAS,EAAC,CAAC,EAAE;QACZ,OAAO,EAAE,uDAAuD;KACjE,CAAC;;yCACc;AAEhB;IAAC,IAAA,qBAAW,GAAE;IACb,IAAA,2BAAS,EAAC,EAAE,OAAO,EAAE,qCAAqC,EAAE,CAAC;IAC7D,IAAA,2BAAS,EAAC,CAAC,EAAE;QACZ,OAAO,EAAE,wDAAwD;KAClE,CAAC;;0CACe;AAEjB;IAAC,IAAA,qBAAW,GAAE;IACb,IAAA,2BAAS,EAAC,EAAE,OAAO,EAAE,uCAAuC,EAAE,CAAC;IAC/D,IAAA,2BAAS,EAAC,CAAC,EAAE;QACZ,OAAO,EAAE,0DAA0D;KACpE,CAAC;;4CACiB;AAEnB;IAAC,IAAA,qBAAW,EAAC;QACX,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,wDAAwD;KACtE,CAAC;IACD,IAAA,2BAAS,EAAC,EAAE,EAAE;QACb,OAAO,EAAE,6EAA6E;KACvF,CAAC;IACD,IAAA,4BAAU,GAAE;;mDACc;AA9B7B,4BA+BC"}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { MsSeguridadService } from './ms-seguridad.service';
|
2
|
+
import { LoginDto } from './dto/ms-seguridad.input';
|
3
|
+
export declare class MsSeguridadController {
|
4
|
+
private readonly seguridadService;
|
5
|
+
constructor(seguridadService: MsSeguridadService);
|
6
|
+
login(req: Request, ip: any, body: LoginDto): Promise<import("./Seguridad.pb").LoginResponse>;
|
7
|
+
token(token: string): Promise<import("./Seguridad.pb").LoginResponse>;
|
8
|
+
logoutV2(token: string): Promise<import("./Seguridad.pb").LogoutResponse>;
|
9
|
+
}
|
@@ -0,0 +1,84 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
|
+
};
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
13
|
+
};
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
+
exports.MsSeguridadController = void 0;
|
16
|
+
const common_1 = require("@nestjs/common");
|
17
|
+
const swagger_1 = require("@nestjs/swagger");
|
18
|
+
const ms_seguridad_decorator_1 = require("./ms-seguridad.decorator");
|
19
|
+
const ms_seguridad_service_1 = require("./ms-seguridad.service");
|
20
|
+
const ms_seguridad_input_1 = require("./dto/ms-seguridad.input");
|
21
|
+
const uaParser = require("ua-parser-js");
|
22
|
+
const global_exception_filter_1 = require("../helpers/global-exception.filter");
|
23
|
+
let MsSeguridadController = class MsSeguridadController {
|
24
|
+
constructor(seguridadService) {
|
25
|
+
this.seguridadService = seguridadService;
|
26
|
+
}
|
27
|
+
async login(req, ip, body) {
|
28
|
+
try {
|
29
|
+
const headers = req.headers;
|
30
|
+
const agent = new uaParser(`${headers['user-agent']}`);
|
31
|
+
const userAgent = agent.getResult();
|
32
|
+
return this.seguridadService.login(Object.assign(Object.assign({}, body), { ip, userAgent: JSON.stringify(userAgent) }));
|
33
|
+
}
|
34
|
+
catch (err) {
|
35
|
+
throw new global_exception_filter_1.CustomHttpError(err.message);
|
36
|
+
}
|
37
|
+
}
|
38
|
+
async token(token) {
|
39
|
+
const response = await this.seguridadService.getTokenInformation({ token });
|
40
|
+
return response;
|
41
|
+
}
|
42
|
+
async logoutV2(token) {
|
43
|
+
const response = await this.seguridadService.logout({ token });
|
44
|
+
return response;
|
45
|
+
}
|
46
|
+
};
|
47
|
+
__decorate([
|
48
|
+
(0, common_1.Post)('login'),
|
49
|
+
(0, common_1.Version)('1'),
|
50
|
+
(0, swagger_1.ApiOperation)({ summary: 'Servicio login de usuario.' }),
|
51
|
+
__param(0, (0, common_1.Req)()),
|
52
|
+
__param(1, (0, common_1.Ip)()),
|
53
|
+
__param(2, (0, common_1.Body)()),
|
54
|
+
__metadata("design:type", Function),
|
55
|
+
__metadata("design:paramtypes", [Request, Object, ms_seguridad_input_1.LoginDto]),
|
56
|
+
__metadata("design:returntype", Promise)
|
57
|
+
], MsSeguridadController.prototype, "login", null);
|
58
|
+
__decorate([
|
59
|
+
(0, common_1.Get)('information'),
|
60
|
+
(0, swagger_1.ApiBearerAuth)(),
|
61
|
+
(0, common_1.Version)('1'),
|
62
|
+
(0, swagger_1.ApiOperation)({ summary: 'Servicio obtener la información de token.' }),
|
63
|
+
__param(0, (0, ms_seguridad_decorator_1.AuthToken)()),
|
64
|
+
__metadata("design:type", Function),
|
65
|
+
__metadata("design:paramtypes", [String]),
|
66
|
+
__metadata("design:returntype", Promise)
|
67
|
+
], MsSeguridadController.prototype, "token", null);
|
68
|
+
__decorate([
|
69
|
+
(0, common_1.Post)('logout'),
|
70
|
+
(0, swagger_1.ApiBearerAuth)(),
|
71
|
+
(0, common_1.Version)('1'),
|
72
|
+
(0, swagger_1.ApiOperation)({ summary: 'Servicio de logout.' }),
|
73
|
+
__param(0, (0, ms_seguridad_decorator_1.AuthToken)()),
|
74
|
+
__metadata("design:type", Function),
|
75
|
+
__metadata("design:paramtypes", [String]),
|
76
|
+
__metadata("design:returntype", Promise)
|
77
|
+
], MsSeguridadController.prototype, "logoutV2", null);
|
78
|
+
MsSeguridadController = __decorate([
|
79
|
+
(0, common_1.Controller)('auth'),
|
80
|
+
(0, swagger_1.ApiTags)('[MS-SEGURIDAD] AUTH'),
|
81
|
+
__metadata("design:paramtypes", [ms_seguridad_service_1.MsSeguridadService])
|
82
|
+
], MsSeguridadController);
|
83
|
+
exports.MsSeguridadController = MsSeguridadController;
|
84
|
+
//# sourceMappingURL=ms-seguridad.controller.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"ms-seguridad.controller.js","sourceRoot":"","sources":["../../src/ms-seguridad/ms-seguridad.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA+E;AAC/E,6CAAuE;AACvE,qEAAqD;AACrD,iEAA4D;AAC5D,iEAAoD;AACpD,yCAAyC;AACzC,gFAAsE;AAI/D,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAChC,YAA6B,gBAAoC;QAApC,qBAAgB,GAAhB,gBAAgB,CAAoB;IAAG,CAAC;IAS/D,AAAN,KAAK,CAAC,KAAK,CAAQ,GAAY,EAAQ,EAAE,EAAU,IAAc;QAC/D,IAAI;YACF,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;YAC5B,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACvD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,iCAAM,IAAI,KAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAG,CAAC;SAC3F;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,IAAI,yCAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;SACxC;IACH,CAAC;IAOK,AAAN,KAAK,CAAC,KAAK,CAAc,KAAa;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5E,OAAO,QAAQ,CAAC;IAClB,CAAC;IAOK,AAAN,KAAK,CAAC,QAAQ,CAAc,KAAa;QACvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/D,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF,CAAA;AA9BO;IAHL,IAAA,aAAI,EAAC,OAAO,CAAC;IACb,IAAA,gBAAO,EAAC,GAAG,CAAC;IACZ,IAAA,sBAAY,EAAC,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC;IAC3C,WAAA,IAAA,YAAG,GAAE,CAAA;IAAgB,WAAA,IAAA,WAAE,GAAE,CAAA;IAAM,WAAA,IAAA,aAAI,GAAE,CAAA;;qCAA1B,OAAO,UAA0B,6BAAQ;;kDAShE;AAOK;IAJL,IAAA,YAAG,EAAC,aAAa,CAAC;IAClB,IAAA,uBAAa,GAAE;IACf,IAAA,gBAAO,EAAC,GAAG,CAAC;IACZ,IAAA,sBAAY,EAAC,EAAE,OAAO,EAAE,2CAA2C,EAAE,CAAC;IAC1D,WAAA,IAAA,kCAAS,GAAE,CAAA;;;;kDAGvB;AAOK;IAJL,IAAA,aAAI,EAAC,QAAQ,CAAC;IACd,IAAA,uBAAa,GAAE;IACf,IAAA,gBAAO,EAAC,GAAG,CAAC;IACZ,IAAA,sBAAY,EAAC,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC;IACjC,WAAA,IAAA,kCAAS,GAAE,CAAA;;;;qDAG1B;AAvCU,qBAAqB;IAFjC,IAAA,mBAAU,EAAC,MAAM,CAAC;IAClB,IAAA,iBAAO,EAAC,qBAAqB,CAAC;qCAEkB,yCAAkB;GADtD,qBAAqB,CAwCjC;AAxCY,sDAAqB"}
|
@@ -15,6 +15,7 @@ const ms_redis_module_1 = require("../ms-redis/ms-redis.module");
|
|
15
15
|
const path_1 = require("path");
|
16
16
|
const chalk_1 = require("chalk");
|
17
17
|
const core_1 = require("@nestjs/core");
|
18
|
+
const ms_seguridad_controller_1 = require("./ms-seguridad.controller");
|
18
19
|
let MsSeguridadModule = MsSeguridadModule_1 = class MsSeguridadModule {
|
19
20
|
static register(options) {
|
20
21
|
const urlSeguridad = process.env.ENV_GRPC_MS_SEGURIDAD || (options && options.urlSeguridad);
|
@@ -36,6 +37,7 @@ let MsSeguridadModule = MsSeguridadModule_1 = class MsSeguridadModule {
|
|
36
37
|
global: options.global,
|
37
38
|
module: MsSeguridadModule_1,
|
38
39
|
imports: [ms_redis_module_1.MsRedisModule.register({ urlRedisCache })],
|
40
|
+
controllers: [ms_seguridad_controller_1.MsSeguridadController],
|
39
41
|
providers: [
|
40
42
|
{ provide: 'PROVIDER_NAME_MS_SEGURIDAD', useValue: this.client },
|
41
43
|
ms_seguridad_service_1.MsSeguridadService,
|
@@ -62,6 +64,7 @@ let MsSeguridadModule = MsSeguridadModule_1 = class MsSeguridadModule {
|
|
62
64
|
return {
|
63
65
|
module: MsSeguridadModule_1,
|
64
66
|
imports: [ms_redis_module_1.MsRedisModule.register({ urlRedisCache })],
|
67
|
+
controllers: [ms_seguridad_controller_1.MsSeguridadController],
|
65
68
|
providers: [
|
66
69
|
{ provide: 'PROVIDER_NAME_MS_SEGURIDAD', useValue: this.client },
|
67
70
|
ms_seguridad_service_1.MsSeguridadService,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ms-seguridad.module.js","sourceRoot":"","sources":["../../src/ms-seguridad/ms-seguridad.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAuD;AACvD,yDAAmF;AACnF,iEAA4D;AAC5D,iEAA6D;AAC7D,+BAA4B;AAC5B,iCAA6B;AAC7B,uCAAyC;
|
1
|
+
{"version":3,"file":"ms-seguridad.module.js","sourceRoot":"","sources":["../../src/ms-seguridad/ms-seguridad.module.ts"],"names":[],"mappings":"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"}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import { ClientGrpc } from '@nestjs/microservices';
|
2
|
-
import { ResponseListPermissions_ResponseListPermisoMsn, TokenBody } from './Seguridad.pb';
|
2
|
+
import { LoginRequest, ResponseListPermissions_ResponseListPermisoMsn, TokenBody } from './Seguridad.pb';
|
3
3
|
import { UserPayload } from './ms-seguridad.decorator';
|
4
4
|
import { MsRedisService } from 'src/ms-redis/ms-redis.service';
|
5
5
|
export declare class MsSeguridadService {
|
@@ -11,5 +11,8 @@ export declare class MsSeguridadService {
|
|
11
11
|
listPermissions(user: UserPayload, tokenBody: TokenBody): Promise<ResponseListPermissions_ResponseListPermisoMsn>;
|
12
12
|
validToken(tokenBody: TokenBody): Promise<import("./Seguridad.pb").ResponseValidToken>;
|
13
13
|
userData(tokenBody: TokenBody): Promise<import("./Seguridad.pb").ResponseUserData>;
|
14
|
+
login(data: LoginRequest): Promise<import("./Seguridad.pb").LoginResponse>;
|
15
|
+
getTokenInformation(tokenBody: TokenBody): Promise<import("./Seguridad.pb").LoginResponse>;
|
16
|
+
logout(tokenBody: TokenBody): Promise<import("./Seguridad.pb").LogoutResponse>;
|
14
17
|
private saveInRedisCache;
|
15
18
|
}
|
@@ -40,6 +40,15 @@ let MsSeguridadService = class MsSeguridadService {
|
|
40
40
|
userData(tokenBody) {
|
41
41
|
return (0, rxjs_1.firstValueFrom)(this.seguridadService.userDataByToken(tokenBody));
|
42
42
|
}
|
43
|
+
login(data) {
|
44
|
+
return (0, rxjs_1.firstValueFrom)(this.seguridadService.login(data));
|
45
|
+
}
|
46
|
+
getTokenInformation(tokenBody) {
|
47
|
+
return (0, rxjs_1.firstValueFrom)(this.seguridadService.tokenInformation(tokenBody));
|
48
|
+
}
|
49
|
+
logout(tokenBody) {
|
50
|
+
return (0, rxjs_1.firstValueFrom)(this.seguridadService.logout(tokenBody));
|
51
|
+
}
|
43
52
|
saveInRedisCache(result, keyCache) {
|
44
53
|
const { message, status, response, error } = result;
|
45
54
|
if (error) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ms-seguridad.service.js","sourceRoot":"","sources":["../../src/ms-seguridad/ms-seguridad.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAoD;
|
1
|
+
{"version":3,"file":"ms-seguridad.service.js","sourceRoot":"","sources":["../../src/ms-seguridad/ms-seguridad.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAoD;AAQpD,+BAAsC;AAEtC,mEAA+D;AAC/D,gFAAsE;AAM/D,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAG7B,YACyD,MAAkB,EACxD,UAA0B;QADY,WAAM,GAAN,MAAM,CAAY;QACxD,eAAU,GAAV,UAAU,CAAgB;IAC1C,CAAC;IAEI,YAAY;QAClB,IAAI,CAAC,gBAAgB;YACnB,IAAI,CAAC,MAAM,CAAC,UAAU,CAA4B,qBAAqB,CAAC,CAAC;IAC7E,CAAC;IAMD,KAAK,CAAC,eAAe,CACnB,IAAiB,EACjB,SAAoB;QAEpB,MAAM,QAAQ,GAAG,0BAA0B,IAAI,CAAC,SAAS,EAAE,CAAC;QAG5D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACxD,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK;YAAE,OAAO,MAAM,CAAC,QAAQ,CAAC;QAGnD,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAc,EAAC,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;QACxF,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,UAAU,CAAC,SAAoB;QAC7B,OAAO,IAAA,qBAAc,EAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,QAAQ,CAAC,SAAoB;QAC3B,OAAO,IAAA,qBAAc,EAAC,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,IAAkB;QACtB,OAAO,IAAA,qBAAc,EAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,mBAAmB,CAAC,SAAoB;QACtC,OAAO,IAAA,qBAAc,EAAC,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,CAAC,SAAoB;QACzB,OAAO,IAAA,qBAAc,EAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IACjE,CAAC;IAQO,gBAAgB,CAAC,MAAM,EAAE,QAAgB;QAC/C,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;QAGpD,IAAI,KAAK,EAAE;YACT,MAAM,IAAI,yCAAe,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;SAC7D;QAGD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF,CAAA;AAtEY,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;IAKR,WAAA,IAAA,eAAM,EAAC,4BAA4B,CAAC,CAAA;6CACR,iCAAc;GALlC,kBAAkB,CAsE9B;AAtEY,gDAAkB"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "fiscalia_bo-nest-helpers",
|
3
|
-
"version": "0.0.
|
3
|
+
"version": "0.0.23",
|
4
4
|
"author": "UTIC",
|
5
5
|
"contact": {
|
6
6
|
"name": "Unidad de Tecnologías de la Información y Comunicación - Ministerio Público",
|
@@ -49,8 +49,8 @@
|
|
49
49
|
},
|
50
50
|
"peerDependencies": {
|
51
51
|
"@grpc/grpc-js": "^1.8.14",
|
52
|
-
"@nestjs/microservices": "^9.3.12",
|
53
52
|
"@nestjs/axios": "^2.0.0",
|
53
|
+
"@nestjs/microservices": "^9.3.12",
|
54
54
|
"axios": "^1.3.4",
|
55
55
|
"class-transformer": "^0.5.1",
|
56
56
|
"class-validator": "^0.14.0",
|
@@ -58,11 +58,13 @@
|
|
58
58
|
},
|
59
59
|
"dependencies": {
|
60
60
|
"@nestjs/common": "^9.0.0",
|
61
|
-
"dotenv": "^16.0.3"
|
61
|
+
"dotenv": "^16.0.3",
|
62
|
+
"ua-parser-js": "^1.0.35"
|
62
63
|
},
|
63
64
|
"devDependencies": {
|
64
65
|
"@grpc/grpc-js": "^1.8.14",
|
65
66
|
"@grpc/proto-loader": "^0.7.6",
|
67
|
+
"@nestjs/axios": "^2.0.0",
|
66
68
|
"@nestjs/cli": "^9.0.0",
|
67
69
|
"@nestjs/config": "^2.3.1",
|
68
70
|
"@nestjs/core": "^9.0.0",
|
@@ -87,6 +89,7 @@
|
|
87
89
|
"jest": "29.3.1",
|
88
90
|
"prettier": "^2.3.2",
|
89
91
|
"reflect-metadata": "^0.1.13",
|
92
|
+
"rxjs": "^7.8.1",
|
90
93
|
"source-map-support": "^0.5.20",
|
91
94
|
"supertest": "^6.1.3",
|
92
95
|
"ts-jest": "29.0.3",
|