easywork-common-lib 1.0.1334 → 1.0.1337
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/dist/entities/tools/mail/mail-queue-distribution.d.ts +8 -0
- package/dist/entities/tools/mail/mail-queue-distribution.js +38 -0
- package/dist/entities/tools/mail/mail-queue-distribution.js.map +1 -0
- package/dist/entities/tools/mail/mail-queue-entities-assigned.d.ts +9 -0
- package/dist/entities/tools/mail/mail-queue-entities-assigned.js +39 -0
- package/dist/entities/tools/mail/mail-queue-entities-assigned.js.map +1 -0
- package/dist/entities/tools/mail/mail-queue-status.d.ts +9 -0
- package/dist/entities/tools/mail/mail-queue-status.js +44 -0
- package/dist/entities/tools/mail/mail-queue-status.js.map +1 -0
- package/dist/grpc/drive/drive.proto +339 -339
- package/dist/grpc/drive/leads.proto +114 -114
- package/dist/modules/authorization/authorization.module.d.ts +2 -2
- package/dist/modules/authorization/services/resource-access-filter.service.js +21 -21
- package/package.json +55 -55
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Mailbox } from './mailbox.entity';
|
|
2
|
+
import { BaseEntityOnlyEssential } from 'common';
|
|
3
|
+
import { User } from 'entities/user.entity';
|
|
4
|
+
export declare class MailQueueDistribution extends BaseEntityOnlyEssential {
|
|
5
|
+
orderInQueue: number;
|
|
6
|
+
mailbox: Mailbox;
|
|
7
|
+
userInvited: User;
|
|
8
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
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.MailQueueDistribution = void 0;
|
|
13
|
+
const typeorm_1 = require("typeorm");
|
|
14
|
+
const mailbox_entity_1 = require("./mailbox.entity");
|
|
15
|
+
const common_1 = require("common");
|
|
16
|
+
const user_entity_1 = require("entities/user.entity");
|
|
17
|
+
let MailQueueDistribution = class MailQueueDistribution extends common_1.BaseEntityOnlyEssential {
|
|
18
|
+
orderInQueue;
|
|
19
|
+
mailbox;
|
|
20
|
+
userInvited;
|
|
21
|
+
};
|
|
22
|
+
exports.MailQueueDistribution = MailQueueDistribution;
|
|
23
|
+
__decorate([
|
|
24
|
+
(0, typeorm_1.Column)(),
|
|
25
|
+
__metadata("design:type", Number)
|
|
26
|
+
], MailQueueDistribution.prototype, "orderInQueue", void 0);
|
|
27
|
+
__decorate([
|
|
28
|
+
(0, typeorm_1.ManyToOne)(() => mailbox_entity_1.Mailbox, { nullable: true, onDelete: 'SET NULL' }),
|
|
29
|
+
__metadata("design:type", mailbox_entity_1.Mailbox)
|
|
30
|
+
], MailQueueDistribution.prototype, "mailbox", void 0);
|
|
31
|
+
__decorate([
|
|
32
|
+
(0, typeorm_1.ManyToOne)(() => user_entity_1.User, { nullable: false, onDelete: 'CASCADE' }),
|
|
33
|
+
__metadata("design:type", user_entity_1.User)
|
|
34
|
+
], MailQueueDistribution.prototype, "userInvited", void 0);
|
|
35
|
+
exports.MailQueueDistribution = MailQueueDistribution = __decorate([
|
|
36
|
+
(0, typeorm_1.Entity)()
|
|
37
|
+
], MailQueueDistribution);
|
|
38
|
+
//# sourceMappingURL=mail-queue-distribution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mail-queue-distribution.js","sourceRoot":"","sources":["../../../../src/entities/tools/mail/mail-queue-distribution.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAoD;AAEpD,qDAA2C;AAC3C,mCAAiD;AACjD,sDAA4C;AAGrC,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,gCAAuB;IAEhE,YAAY,CAAS;IAGrB,OAAO,CAAU;IAGjB,WAAW,CAAO;CACnB,CAAA;AATY,sDAAqB;AAEhC;IADC,IAAA,gBAAM,GAAE;;2DACY;AAGrB;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,wBAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;8BAC1D,wBAAO;sDAAC;AAGjB;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,kBAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;8BACnD,kBAAI;0DAAC;gCARP,qBAAqB;IADjC,IAAA,gBAAM,GAAE;GACI,qBAAqB,CASjC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Mailbox } from './mailbox.entity';
|
|
2
|
+
import { BaseEntityOnlyEssential } from 'common';
|
|
3
|
+
import { User } from 'entities/user.entity';
|
|
4
|
+
import { MailMessageCRMLink } from './mail.entity';
|
|
5
|
+
export declare class MailQueueEntitiesAssigned extends BaseEntityOnlyEssential {
|
|
6
|
+
crm: MailMessageCRMLink;
|
|
7
|
+
mailbox: Mailbox;
|
|
8
|
+
userAssigned: User;
|
|
9
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
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.MailQueueEntitiesAssigned = void 0;
|
|
13
|
+
const typeorm_1 = require("typeorm");
|
|
14
|
+
const mailbox_entity_1 = require("./mailbox.entity");
|
|
15
|
+
const common_1 = require("common");
|
|
16
|
+
const user_entity_1 = require("entities/user.entity");
|
|
17
|
+
let MailQueueEntitiesAssigned = class MailQueueEntitiesAssigned extends common_1.BaseEntityOnlyEssential {
|
|
18
|
+
crm;
|
|
19
|
+
mailbox;
|
|
20
|
+
userAssigned;
|
|
21
|
+
};
|
|
22
|
+
exports.MailQueueEntitiesAssigned = MailQueueEntitiesAssigned;
|
|
23
|
+
__decorate([
|
|
24
|
+
(0, typeorm_1.Column)({ type: 'jsonb', nullable: true }),
|
|
25
|
+
__metadata("design:type", Object)
|
|
26
|
+
], MailQueueEntitiesAssigned.prototype, "crm", void 0);
|
|
27
|
+
__decorate([
|
|
28
|
+
(0, typeorm_1.Unique)(['mailbox']),
|
|
29
|
+
(0, typeorm_1.ManyToOne)(() => mailbox_entity_1.Mailbox, { nullable: true, onDelete: 'CASCADE' }),
|
|
30
|
+
__metadata("design:type", mailbox_entity_1.Mailbox)
|
|
31
|
+
], MailQueueEntitiesAssigned.prototype, "mailbox", void 0);
|
|
32
|
+
__decorate([
|
|
33
|
+
(0, typeorm_1.ManyToOne)(() => user_entity_1.User, { nullable: true, onDelete: 'SET NULL' }),
|
|
34
|
+
__metadata("design:type", user_entity_1.User)
|
|
35
|
+
], MailQueueEntitiesAssigned.prototype, "userAssigned", void 0);
|
|
36
|
+
exports.MailQueueEntitiesAssigned = MailQueueEntitiesAssigned = __decorate([
|
|
37
|
+
(0, typeorm_1.Entity)()
|
|
38
|
+
], MailQueueEntitiesAssigned);
|
|
39
|
+
//# sourceMappingURL=mail-queue-entities-assigned.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mail-queue-entities-assigned.js","sourceRoot":"","sources":["../../../../src/entities/tools/mail/mail-queue-entities-assigned.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAA4D;AAE5D,qDAA2C;AAC3C,mCAAiD;AACjD,sDAA4C;AAIrC,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,gCAAuB;IAEpE,GAAG,CAAqB;IAIxB,OAAO,CAAU;IAGjB,YAAY,CAAO;CACpB,CAAA;AAVY,8DAAyB;AAEpC;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sDAClB;AAIxB;IAFC,IAAA,gBAAM,EAAC,CAAC,SAAS,CAAC,CAAC;IACnB,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,wBAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;8BACzD,wBAAO;0DAAC;AAGjB;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,kBAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;8BAClD,kBAAI;+DAAC;oCATR,yBAAyB;IADrC,IAAA,gBAAM,GAAE;GACI,yBAAyB,CAUrC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Mailbox } from './mailbox.entity';
|
|
2
|
+
import { BaseEntityOnlyEssential } from 'common';
|
|
3
|
+
import { User } from 'entities/user.entity';
|
|
4
|
+
export declare class MailQueueStatus extends BaseEntityOnlyEssential {
|
|
5
|
+
lastAssignedOrder: number;
|
|
6
|
+
lastAssignmentTimestamp: string;
|
|
7
|
+
mailbox: Mailbox;
|
|
8
|
+
lastAssignedUser: User;
|
|
9
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
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.MailQueueStatus = void 0;
|
|
13
|
+
const typeorm_1 = require("typeorm");
|
|
14
|
+
const mailbox_entity_1 = require("./mailbox.entity");
|
|
15
|
+
const common_1 = require("common");
|
|
16
|
+
const user_entity_1 = require("entities/user.entity");
|
|
17
|
+
let MailQueueStatus = class MailQueueStatus extends common_1.BaseEntityOnlyEssential {
|
|
18
|
+
lastAssignedOrder;
|
|
19
|
+
lastAssignmentTimestamp;
|
|
20
|
+
mailbox;
|
|
21
|
+
lastAssignedUser;
|
|
22
|
+
};
|
|
23
|
+
exports.MailQueueStatus = MailQueueStatus;
|
|
24
|
+
__decorate([
|
|
25
|
+
(0, typeorm_1.Column)(),
|
|
26
|
+
__metadata("design:type", Number)
|
|
27
|
+
], MailQueueStatus.prototype, "lastAssignedOrder", void 0);
|
|
28
|
+
__decorate([
|
|
29
|
+
(0, typeorm_1.Column)({ type: 'timestamp' }),
|
|
30
|
+
__metadata("design:type", String)
|
|
31
|
+
], MailQueueStatus.prototype, "lastAssignmentTimestamp", void 0);
|
|
32
|
+
__decorate([
|
|
33
|
+
(0, typeorm_1.Unique)(['mailbox']),
|
|
34
|
+
(0, typeorm_1.ManyToOne)(() => mailbox_entity_1.Mailbox, { nullable: true, onDelete: 'CASCADE' }),
|
|
35
|
+
__metadata("design:type", mailbox_entity_1.Mailbox)
|
|
36
|
+
], MailQueueStatus.prototype, "mailbox", void 0);
|
|
37
|
+
__decorate([
|
|
38
|
+
(0, typeorm_1.ManyToOne)(() => user_entity_1.User, { nullable: true, onDelete: 'SET NULL' }),
|
|
39
|
+
__metadata("design:type", user_entity_1.User)
|
|
40
|
+
], MailQueueStatus.prototype, "lastAssignedUser", void 0);
|
|
41
|
+
exports.MailQueueStatus = MailQueueStatus = __decorate([
|
|
42
|
+
(0, typeorm_1.Entity)()
|
|
43
|
+
], MailQueueStatus);
|
|
44
|
+
//# sourceMappingURL=mail-queue-status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mail-queue-status.js","sourceRoot":"","sources":["../../../../src/entities/tools/mail/mail-queue-status.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAA4D;AAE5D,qDAA2C;AAC3C,mCAAiD;AACjD,sDAA4C;AAGrC,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,gCAAuB;IAE1D,iBAAiB,CAAS;IAG1B,uBAAuB,CAAS;IAIhC,OAAO,CAAU;IAGjB,gBAAgB,CAAO;CACxB,CAAA;AAbY,0CAAe;AAE1B;IADC,IAAA,gBAAM,GAAE;;0DACiB;AAG1B;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;;gEACE;AAIhC;IAFC,IAAA,gBAAM,EAAC,CAAC,SAAS,CAAC,CAAC;IACnB,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,wBAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;8BACzD,wBAAO;gDAAC;AAGjB;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,kBAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;8BAC9C,kBAAI;yDAAC;0BAZZ,eAAe;IAD3B,IAAA,gBAAM,GAAE;GACI,eAAe,CAa3B"}
|
|
@@ -1,339 +1,339 @@
|
|
|
1
|
-
// drive/proto/drive.proto
|
|
2
|
-
syntax = "proto3";
|
|
3
|
-
|
|
4
|
-
package drive;
|
|
5
|
-
|
|
6
|
-
// Define el mensaje que representa una carpeta.
|
|
7
|
-
message FolderObject {
|
|
8
|
-
string name = 1; // Nombre de la carpeta
|
|
9
|
-
string metadata = 2; // Metadatos en formato JSON
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
// Representa la entidad propietaria de un archivo o carpeta.
|
|
13
|
-
message OwnerEntity {
|
|
14
|
-
string ownerId = 1; // Identificador del propietario
|
|
15
|
-
string entityType = 2; // Tipo de entidad (e.g., usuario, organización)
|
|
16
|
-
string relation = 3; // Relación del propietario con el recurso
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
// Representa un archivo para ser subido.
|
|
20
|
-
message IFile {
|
|
21
|
-
string name = 1; // Nombre del archivo
|
|
22
|
-
int64 size = 2; // Tamaño del archivo en bytes
|
|
23
|
-
string mimeType = 3; // Tipo MIME del archivo
|
|
24
|
-
string s3Key = 4; // Clave del archivo en S3
|
|
25
|
-
bytes filecontent = 5; // Contenido binario del archivo
|
|
26
|
-
string metadata = 6; // Metadatos
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
message File {
|
|
30
|
-
string id = 1; // Identificador del archivo creado
|
|
31
|
-
string url = 2; // URL del archivo almacenado
|
|
32
|
-
string name = 3; // Nombre del archivo creado
|
|
33
|
-
string mimeType = 4; // Tipo MIME del archivo
|
|
34
|
-
string folerId = 5; // Carpeta ubicación del archivo.
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
// Categorías para clasificar las carpetas de un recibo.
|
|
38
|
-
enum ReceiptFolderCategory {
|
|
39
|
-
factura = 0; // Categoría para facturas
|
|
40
|
-
pago = 1; // Categoría para pagos recibidos
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
enum LeadDocumentFolderCategory {
|
|
44
|
-
documentos = 0; // Categoría para documentos personales
|
|
45
|
-
cotizacion = 1; // Categoría para cotizaciones
|
|
46
|
-
perfil = 2; // Categoría perfiles
|
|
47
|
-
poliza = 3; // Categoría carpeta polizas
|
|
48
|
-
solicitud = 4; // Categoría carpeta solicitudes
|
|
49
|
-
medica = 5;
|
|
50
|
-
cotizacion_aprobada = 6;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
enum ContactDocumentFolderCategory {
|
|
54
|
-
documentos = 0; // Categoría para documentos personales
|
|
55
|
-
perfil = 1; // Categoría perfiles
|
|
56
|
-
poliza = 2; // Categoría carpeta polizas
|
|
57
|
-
solicitud = 3; // Categoría carpeta solicitudes
|
|
58
|
-
medica = 4;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
// Consulta para especificar la categoría de los archivos subidos.
|
|
63
|
-
message UploadFileToReceiptQueryDto {
|
|
64
|
-
ReceiptFolderCategory category = 1; // Categoría del archivo
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
// Consulta para especificar la categoría de los archivos subidos en leads.
|
|
68
|
-
message UploadFileToLeadQueryDto {
|
|
69
|
-
LeadDocumentFolderCategory category = 1; // Categoría del archivo
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
// Consulta para especificar la categoría de los archivos subidos en contacts.
|
|
73
|
-
message UploadFileToContactQueryDto {
|
|
74
|
-
ContactDocumentFolderCategory category = 1; // Categoría del archivo
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
// Representa un usuario en el contexto del sistema.
|
|
78
|
-
message User {
|
|
79
|
-
string id = 1; // Identificador único del usuario
|
|
80
|
-
string name = 2; // Nombre del usuario
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
// Solicitud para subir archivos a la carpeta de documentos de un recibo.
|
|
84
|
-
message UploadFilesToReceiptRequest {
|
|
85
|
-
repeated IFile files = 1; // Lista de archivos a subir
|
|
86
|
-
string receiptId = 2; // ID del recibo al cual se asociarán los archivos
|
|
87
|
-
UploadFileToReceiptQueryDto query = 3; // Parámetros de consulta relacionados con la categoría
|
|
88
|
-
User user = 4; // Usuario que realiza la operación
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
message UploadFilesToLeadRequest {
|
|
92
|
-
repeated IFile files = 1; // Lista de archivos a subir
|
|
93
|
-
string leadId = 2; // ID del lead al cual se asociarán los archivos
|
|
94
|
-
UploadFileToLeadQueryDto query = 3; // Parámetros de consulta relacionados con la categoría
|
|
95
|
-
User user = 4; // Usuario que realiza la operación
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
message UploadTempFilesRequest {
|
|
99
|
-
repeated IFile files = 1; // Lista de archivos a subir
|
|
100
|
-
User user = 4; // Usuario que realiza la operación
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
message UploadFilesToContactRequest {
|
|
104
|
-
repeated IFile files = 1; // Lista de archivos a subir
|
|
105
|
-
string contactId = 2; // ID del contact al cual se asociarán los archivos
|
|
106
|
-
string query = 3; // Parámetros de consulta relacionados con la categoría
|
|
107
|
-
User user = 4; // Usuario que realiza la operación
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
message FolderFile {
|
|
111
|
-
string id = 1;
|
|
112
|
-
string name = 2;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
message FileResponse {
|
|
117
|
-
string id = 1; // Identificador del archivo
|
|
118
|
-
string name = 2; // Nombre del archivo
|
|
119
|
-
string url = 3; // URL del archivo almacenado
|
|
120
|
-
string mimeType = 4; // Tipo MIME del archivo
|
|
121
|
-
FolderFile folder = 5; // Carpeta donde se almacenó el archivo
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
// Respuesta tras subir archivos a la carpeta de documentos de un recibo.
|
|
125
|
-
message UploadFilesToReceiptResponse {
|
|
126
|
-
repeated FileResponse files = 1; // Identificadores de los archivos subidos
|
|
127
|
-
bool success = 2; // Indicador de éxito de la operación
|
|
128
|
-
string message = 3; // Mensaje de respuesta
|
|
129
|
-
int32 code = 4; // Código de respuesta
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
message UploadFilesToLeadResponse {
|
|
133
|
-
repeated FileResponse files = 1; // Identificadores de los archivos subidos
|
|
134
|
-
bool success = 2; // Indicador de éxito de la operación
|
|
135
|
-
string message = 3; // Mensaje de respuesta
|
|
136
|
-
int32 code = 4; // Código de respuesta
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
message UploadTempFilesResponse {
|
|
140
|
-
repeated FileResponse files = 1; // Identificadores de los archivos subidos
|
|
141
|
-
bool success = 2; // Indicador de éxito de la operación
|
|
142
|
-
string message = 3; // Mensaje de respuesta
|
|
143
|
-
int32 code = 4; // Código de respuesta
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
message UploadFilesToContactResponse {
|
|
147
|
-
repeated FileResponse files = 1; // Identificadores de los archivos subidos
|
|
148
|
-
bool success = 2; // Indicador de éxito de la operación
|
|
149
|
-
string message = 3; // Mensaje de respuesta
|
|
150
|
-
int32 code = 4; // Código de respuesta
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
// Solicitud para crear una nueva carpeta.
|
|
154
|
-
message CreateFolderRequest {
|
|
155
|
-
string name = 1; // Nombre de la carpeta
|
|
156
|
-
string parentId = 2; // ID de la carpeta padre (opcional)
|
|
157
|
-
repeated OwnerEntity ownersData = 3; // Información sobre los propietarios
|
|
158
|
-
string metadata = 4; // Metadatos en formato JSON
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
// Solicitud para actualizar una carpeta existente.
|
|
162
|
-
message UpdateFolderRequest {
|
|
163
|
-
string id = 1; // ID de la carpeta a actualizar
|
|
164
|
-
string name = 2; // Nombre de la carpeta
|
|
165
|
-
string parentId = 3; // ID de la carpeta padre (opcional)
|
|
166
|
-
repeated OwnerEntity ownersData = 4; // Información sobre los propietarios
|
|
167
|
-
string metadata = 5; // Metadatos en formato JSON
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
// Solicitud para crear múltiples carpetas en una sola operación.
|
|
171
|
-
message CreateFolderBulkRequest {
|
|
172
|
-
repeated FolderObject folders = 1; // Lista de carpetas a crear
|
|
173
|
-
string parentId = 2; // ID de la carpeta padre (opcional)
|
|
174
|
-
repeated OwnerEntity ownersData = 3; // Información sobre los propietarios
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
// Respuesta tras la creación de una carpeta.
|
|
178
|
-
message FolderResponse {
|
|
179
|
-
string id = 1; // Identificador de la carpeta creada
|
|
180
|
-
string name = 2; // Nombre de la carpeta
|
|
181
|
-
string parentId = 3; // ID de la carpeta padre (opcional)
|
|
182
|
-
string createdAt = 4; // Fecha de creación
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
message UpdateFolderResponse {
|
|
186
|
-
string id = 1; // Identificador de la carpeta creada
|
|
187
|
-
string name = 2; // Nombre de la carpeta
|
|
188
|
-
string parentId = 3; // ID de la carpeta padre (opcional)
|
|
189
|
-
string createdAt = 4; // Fecha de creación
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
// Respuesta tras la creación de múltiples carpetas.
|
|
193
|
-
message CreateFolderBulkResponse {
|
|
194
|
-
bool success = 1; // Indicador de éxito de la operación
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
message CopyFileRequest {
|
|
198
|
-
string fileId = 1;
|
|
199
|
-
string newName = 2;
|
|
200
|
-
string folderId = 3;
|
|
201
|
-
string metadata = 4;
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
// Solicitud para crear un archivo.
|
|
205
|
-
message CreateFileRequest {
|
|
206
|
-
string name = 1; // Nombre del archivo
|
|
207
|
-
string folderId = 2; // ID de la carpeta donde se almacenará el archivo (opcional)
|
|
208
|
-
int64 size = 3; // Tamaño del archivo en bytes (opcional)
|
|
209
|
-
string mimeType = 4; // Tipo MIME del archivo (opcional)
|
|
210
|
-
string s3Key = 5; // Clave del archivo en S3 (opcional)
|
|
211
|
-
bool isDefault = 6; // Indicador de si es el archivo por defecto (opcional)
|
|
212
|
-
repeated OwnerEntity ownersData = 7; // Información sobre los propietarios
|
|
213
|
-
bytes filecontent = 8; // Contenido binario del archivo
|
|
214
|
-
string encoding = 9; // Codificación del archivo (opcional)
|
|
215
|
-
string metadata = 10;
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
// Solicitud para adjuntar múltiples archivos.
|
|
219
|
-
message CreateFilesRequest {
|
|
220
|
-
repeated CreateFileRequest files = 1; // Lista de archivos a crear
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
message CopyFileResponse {
|
|
224
|
-
string id = 1; // Identificador del archivo copiado
|
|
225
|
-
string url = 2; // URL del archivo almacenado
|
|
226
|
-
string name = 3; // Nombre del archivo copiado
|
|
227
|
-
string mimeType = 4; // Tipo MIME del archivo
|
|
228
|
-
string parentId = 5; // Ubicación del archivo
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
// Respuesta tras la creación de múltiples archivos.
|
|
232
|
-
message CreateFilesResponse {
|
|
233
|
-
repeated File files = 1; // Archivos creados
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
// Respuesta tras la creación de un archivo.
|
|
237
|
-
message CreateFileResponse {
|
|
238
|
-
string id = 1; // Identificador del archivo creado
|
|
239
|
-
string url = 2; // URL del archivo almacenado
|
|
240
|
-
string name = 3; // Nombre del archivo creado
|
|
241
|
-
string mimeType = 4; // Tipo MIME del archivo
|
|
242
|
-
string parentId = 5; // Ubicación del archivo
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
message DeleteAttachedFilesRequest {
|
|
246
|
-
repeated string attachedIds = 1;
|
|
247
|
-
User user = 2;
|
|
248
|
-
}
|
|
249
|
-
|
|
250
|
-
// Respuesta tras la creación de un archivo.
|
|
251
|
-
message DeleteAttachedFilesResponse {
|
|
252
|
-
string message = 1; // Mensaje de respuesta
|
|
253
|
-
bool success = 2; // Indicador de éxito de la operación
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
// Solicitud para renombrar una carpeta cuando se actualiza el nombre de una entidad
|
|
257
|
-
message RenameFolderRequest {
|
|
258
|
-
string entityId = 1; // ID de la entidad (lead o contact)
|
|
259
|
-
string entityType = 2; // Tipo de entidad: "lead" o "contact"
|
|
260
|
-
string newName = 3; // Nuevo nombre de la entidad
|
|
261
|
-
string userId = 4; // ID del usuario que realiza la actualización
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
// Respuesta tras renombrar una carpeta
|
|
265
|
-
message RenameFolderResponse {
|
|
266
|
-
bool success = 1; // Indicador de éxito de la operación
|
|
267
|
-
string message = 2; // Mensaje de respuesta
|
|
268
|
-
string folderId = 3; // ID de la carpeta renombrada
|
|
269
|
-
string oldName = 4; // Nombre anterior de la carpeta
|
|
270
|
-
string newName = 5; // Nuevo nombre de la carpeta
|
|
271
|
-
}
|
|
272
|
-
|
|
273
|
-
// Solicitud para vincular archivos existentes a una entidad
|
|
274
|
-
message LinkFilesToEntityRequest {
|
|
275
|
-
repeated string fileIds = 1; // Lista de IDs de archivos a vincular
|
|
276
|
-
repeated OwnerEntity ownersData = 2; // Información sobre los propietarios
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
// Respuesta tras vincular archivos a una entidad
|
|
280
|
-
message LinkFilesToEntityResponse {
|
|
281
|
-
bool success = 1; // Indicador de éxito de la operación
|
|
282
|
-
string message = 2; // Mensaje de respuesta
|
|
283
|
-
repeated File linkedFiles = 3; // Archivos vinculados
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
message DeleteFileRequest {
|
|
287
|
-
string fileId = 1; // ID del archivo a eliminar
|
|
288
|
-
}
|
|
289
|
-
|
|
290
|
-
message DeleteFileResponse {
|
|
291
|
-
bool success = 1; // Indicador de éxito de la operación
|
|
292
|
-
string message = 2; // Mensaje de respuesta
|
|
293
|
-
}
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
// Define el servicio de gestión de carpetas y archivos.
|
|
297
|
-
service DriveService {
|
|
298
|
-
// Crea una carpeta.
|
|
299
|
-
rpc CreateFolder(CreateFolderRequest) returns (FolderResponse);
|
|
300
|
-
|
|
301
|
-
// Actualiza una carpeta existente.
|
|
302
|
-
rpc UpdateFolder(UpdateFolderRequest) returns (UpdateFolderResponse);
|
|
303
|
-
|
|
304
|
-
// Crea múltiples carpetas en una sola operación.
|
|
305
|
-
rpc CreateFolders(CreateFolderBulkRequest) returns (CreateFolderBulkResponse);
|
|
306
|
-
|
|
307
|
-
// Copia un archivo
|
|
308
|
-
rpc CopyFile(CopyFileRequest) returns (CopyFileResponse);
|
|
309
|
-
|
|
310
|
-
// Crea un archivo.
|
|
311
|
-
rpc CreateFile(CreateFileRequest) returns (CreateFileResponse);
|
|
312
|
-
|
|
313
|
-
// Crea múltiples archivos en una sola operación.
|
|
314
|
-
rpc CreateFiles(CreateFilesRequest) returns (CreateFilesResponse);
|
|
315
|
-
|
|
316
|
-
// Sube archivos temporales
|
|
317
|
-
rpc UploadTempFiles(UploadTempFilesRequest) returns (UploadTempFilesResponse);
|
|
318
|
-
|
|
319
|
-
// Sube archivos a la carpeta de documentos de un recibo.
|
|
320
|
-
rpc UploadFilesToReceipt(UploadFilesToReceiptRequest) returns (UploadFilesToReceiptResponse);
|
|
321
|
-
|
|
322
|
-
// Sube archivos a la carpeta de documentos de un lead.
|
|
323
|
-
rpc UploadFilesToLead(UploadFilesToLeadRequest) returns (UploadFilesToLeadResponse);
|
|
324
|
-
|
|
325
|
-
// Sube archivos a la carpeta de documentos de un contacto.
|
|
326
|
-
rpc UploadFilesToContact(UploadFilesToContactRequest) returns (UploadFilesToContactResponse);
|
|
327
|
-
|
|
328
|
-
// Elimina archivos adjuntos
|
|
329
|
-
rpc DeleteAttachedFiles(DeleteAttachedFilesRequest) returns (DeleteAttachedFilesResponse);
|
|
330
|
-
|
|
331
|
-
// Renombra una carpeta cuando se actualiza el nombre de una entidad
|
|
332
|
-
rpc RenameFolder(RenameFolderRequest) returns (RenameFolderResponse);
|
|
333
|
-
|
|
334
|
-
// Vincula archivos existentes a una entidad
|
|
335
|
-
rpc LinkFilesToEntity(LinkFilesToEntityRequest) returns (LinkFilesToEntityResponse);
|
|
336
|
-
|
|
337
|
-
// Elimina un archivo por su ID
|
|
338
|
-
rpc DeleteFile(DeleteFileRequest) returns (DeleteFileResponse);
|
|
339
|
-
}
|
|
1
|
+
// drive/proto/drive.proto
|
|
2
|
+
syntax = "proto3";
|
|
3
|
+
|
|
4
|
+
package drive;
|
|
5
|
+
|
|
6
|
+
// Define el mensaje que representa una carpeta.
|
|
7
|
+
message FolderObject {
|
|
8
|
+
string name = 1; // Nombre de la carpeta
|
|
9
|
+
string metadata = 2; // Metadatos en formato JSON
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
// Representa la entidad propietaria de un archivo o carpeta.
|
|
13
|
+
message OwnerEntity {
|
|
14
|
+
string ownerId = 1; // Identificador del propietario
|
|
15
|
+
string entityType = 2; // Tipo de entidad (e.g., usuario, organización)
|
|
16
|
+
string relation = 3; // Relación del propietario con el recurso
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
// Representa un archivo para ser subido.
|
|
20
|
+
message IFile {
|
|
21
|
+
string name = 1; // Nombre del archivo
|
|
22
|
+
int64 size = 2; // Tamaño del archivo en bytes
|
|
23
|
+
string mimeType = 3; // Tipo MIME del archivo
|
|
24
|
+
string s3Key = 4; // Clave del archivo en S3
|
|
25
|
+
bytes filecontent = 5; // Contenido binario del archivo
|
|
26
|
+
string metadata = 6; // Metadatos
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
message File {
|
|
30
|
+
string id = 1; // Identificador del archivo creado
|
|
31
|
+
string url = 2; // URL del archivo almacenado
|
|
32
|
+
string name = 3; // Nombre del archivo creado
|
|
33
|
+
string mimeType = 4; // Tipo MIME del archivo
|
|
34
|
+
string folerId = 5; // Carpeta ubicación del archivo.
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
// Categorías para clasificar las carpetas de un recibo.
|
|
38
|
+
enum ReceiptFolderCategory {
|
|
39
|
+
factura = 0; // Categoría para facturas
|
|
40
|
+
pago = 1; // Categoría para pagos recibidos
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
enum LeadDocumentFolderCategory {
|
|
44
|
+
documentos = 0; // Categoría para documentos personales
|
|
45
|
+
cotizacion = 1; // Categoría para cotizaciones
|
|
46
|
+
perfil = 2; // Categoría perfiles
|
|
47
|
+
poliza = 3; // Categoría carpeta polizas
|
|
48
|
+
solicitud = 4; // Categoría carpeta solicitudes
|
|
49
|
+
medica = 5;
|
|
50
|
+
cotizacion_aprobada = 6;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
enum ContactDocumentFolderCategory {
|
|
54
|
+
documentos = 0; // Categoría para documentos personales
|
|
55
|
+
perfil = 1; // Categoría perfiles
|
|
56
|
+
poliza = 2; // Categoría carpeta polizas
|
|
57
|
+
solicitud = 3; // Categoría carpeta solicitudes
|
|
58
|
+
medica = 4;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
// Consulta para especificar la categoría de los archivos subidos.
|
|
63
|
+
message UploadFileToReceiptQueryDto {
|
|
64
|
+
ReceiptFolderCategory category = 1; // Categoría del archivo
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
// Consulta para especificar la categoría de los archivos subidos en leads.
|
|
68
|
+
message UploadFileToLeadQueryDto {
|
|
69
|
+
LeadDocumentFolderCategory category = 1; // Categoría del archivo
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
// Consulta para especificar la categoría de los archivos subidos en contacts.
|
|
73
|
+
message UploadFileToContactQueryDto {
|
|
74
|
+
ContactDocumentFolderCategory category = 1; // Categoría del archivo
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
// Representa un usuario en el contexto del sistema.
|
|
78
|
+
message User {
|
|
79
|
+
string id = 1; // Identificador único del usuario
|
|
80
|
+
string name = 2; // Nombre del usuario
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
// Solicitud para subir archivos a la carpeta de documentos de un recibo.
|
|
84
|
+
message UploadFilesToReceiptRequest {
|
|
85
|
+
repeated IFile files = 1; // Lista de archivos a subir
|
|
86
|
+
string receiptId = 2; // ID del recibo al cual se asociarán los archivos
|
|
87
|
+
UploadFileToReceiptQueryDto query = 3; // Parámetros de consulta relacionados con la categoría
|
|
88
|
+
User user = 4; // Usuario que realiza la operación
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
message UploadFilesToLeadRequest {
|
|
92
|
+
repeated IFile files = 1; // Lista de archivos a subir
|
|
93
|
+
string leadId = 2; // ID del lead al cual se asociarán los archivos
|
|
94
|
+
UploadFileToLeadQueryDto query = 3; // Parámetros de consulta relacionados con la categoría
|
|
95
|
+
User user = 4; // Usuario que realiza la operación
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
message UploadTempFilesRequest {
|
|
99
|
+
repeated IFile files = 1; // Lista de archivos a subir
|
|
100
|
+
User user = 4; // Usuario que realiza la operación
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
message UploadFilesToContactRequest {
|
|
104
|
+
repeated IFile files = 1; // Lista de archivos a subir
|
|
105
|
+
string contactId = 2; // ID del contact al cual se asociarán los archivos
|
|
106
|
+
string query = 3; // Parámetros de consulta relacionados con la categoría
|
|
107
|
+
User user = 4; // Usuario que realiza la operación
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
message FolderFile {
|
|
111
|
+
string id = 1;
|
|
112
|
+
string name = 2;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
message FileResponse {
|
|
117
|
+
string id = 1; // Identificador del archivo
|
|
118
|
+
string name = 2; // Nombre del archivo
|
|
119
|
+
string url = 3; // URL del archivo almacenado
|
|
120
|
+
string mimeType = 4; // Tipo MIME del archivo
|
|
121
|
+
FolderFile folder = 5; // Carpeta donde se almacenó el archivo
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
// Respuesta tras subir archivos a la carpeta de documentos de un recibo.
|
|
125
|
+
message UploadFilesToReceiptResponse {
|
|
126
|
+
repeated FileResponse files = 1; // Identificadores de los archivos subidos
|
|
127
|
+
bool success = 2; // Indicador de éxito de la operación
|
|
128
|
+
string message = 3; // Mensaje de respuesta
|
|
129
|
+
int32 code = 4; // Código de respuesta
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
message UploadFilesToLeadResponse {
|
|
133
|
+
repeated FileResponse files = 1; // Identificadores de los archivos subidos
|
|
134
|
+
bool success = 2; // Indicador de éxito de la operación
|
|
135
|
+
string message = 3; // Mensaje de respuesta
|
|
136
|
+
int32 code = 4; // Código de respuesta
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
message UploadTempFilesResponse {
|
|
140
|
+
repeated FileResponse files = 1; // Identificadores de los archivos subidos
|
|
141
|
+
bool success = 2; // Indicador de éxito de la operación
|
|
142
|
+
string message = 3; // Mensaje de respuesta
|
|
143
|
+
int32 code = 4; // Código de respuesta
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
message UploadFilesToContactResponse {
|
|
147
|
+
repeated FileResponse files = 1; // Identificadores de los archivos subidos
|
|
148
|
+
bool success = 2; // Indicador de éxito de la operación
|
|
149
|
+
string message = 3; // Mensaje de respuesta
|
|
150
|
+
int32 code = 4; // Código de respuesta
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
// Solicitud para crear una nueva carpeta.
|
|
154
|
+
message CreateFolderRequest {
|
|
155
|
+
string name = 1; // Nombre de la carpeta
|
|
156
|
+
string parentId = 2; // ID de la carpeta padre (opcional)
|
|
157
|
+
repeated OwnerEntity ownersData = 3; // Información sobre los propietarios
|
|
158
|
+
string metadata = 4; // Metadatos en formato JSON
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
// Solicitud para actualizar una carpeta existente.
|
|
162
|
+
message UpdateFolderRequest {
|
|
163
|
+
string id = 1; // ID de la carpeta a actualizar
|
|
164
|
+
string name = 2; // Nombre de la carpeta
|
|
165
|
+
string parentId = 3; // ID de la carpeta padre (opcional)
|
|
166
|
+
repeated OwnerEntity ownersData = 4; // Información sobre los propietarios
|
|
167
|
+
string metadata = 5; // Metadatos en formato JSON
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
// Solicitud para crear múltiples carpetas en una sola operación.
|
|
171
|
+
message CreateFolderBulkRequest {
|
|
172
|
+
repeated FolderObject folders = 1; // Lista de carpetas a crear
|
|
173
|
+
string parentId = 2; // ID de la carpeta padre (opcional)
|
|
174
|
+
repeated OwnerEntity ownersData = 3; // Información sobre los propietarios
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
// Respuesta tras la creación de una carpeta.
|
|
178
|
+
message FolderResponse {
|
|
179
|
+
string id = 1; // Identificador de la carpeta creada
|
|
180
|
+
string name = 2; // Nombre de la carpeta
|
|
181
|
+
string parentId = 3; // ID de la carpeta padre (opcional)
|
|
182
|
+
string createdAt = 4; // Fecha de creación
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
message UpdateFolderResponse {
|
|
186
|
+
string id = 1; // Identificador de la carpeta creada
|
|
187
|
+
string name = 2; // Nombre de la carpeta
|
|
188
|
+
string parentId = 3; // ID de la carpeta padre (opcional)
|
|
189
|
+
string createdAt = 4; // Fecha de creación
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
// Respuesta tras la creación de múltiples carpetas.
|
|
193
|
+
message CreateFolderBulkResponse {
|
|
194
|
+
bool success = 1; // Indicador de éxito de la operación
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
message CopyFileRequest {
|
|
198
|
+
string fileId = 1;
|
|
199
|
+
string newName = 2;
|
|
200
|
+
string folderId = 3;
|
|
201
|
+
string metadata = 4;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
// Solicitud para crear un archivo.
|
|
205
|
+
message CreateFileRequest {
|
|
206
|
+
string name = 1; // Nombre del archivo
|
|
207
|
+
string folderId = 2; // ID de la carpeta donde se almacenará el archivo (opcional)
|
|
208
|
+
int64 size = 3; // Tamaño del archivo en bytes (opcional)
|
|
209
|
+
string mimeType = 4; // Tipo MIME del archivo (opcional)
|
|
210
|
+
string s3Key = 5; // Clave del archivo en S3 (opcional)
|
|
211
|
+
bool isDefault = 6; // Indicador de si es el archivo por defecto (opcional)
|
|
212
|
+
repeated OwnerEntity ownersData = 7; // Información sobre los propietarios
|
|
213
|
+
bytes filecontent = 8; // Contenido binario del archivo
|
|
214
|
+
string encoding = 9; // Codificación del archivo (opcional)
|
|
215
|
+
string metadata = 10;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
// Solicitud para adjuntar múltiples archivos.
|
|
219
|
+
message CreateFilesRequest {
|
|
220
|
+
repeated CreateFileRequest files = 1; // Lista de archivos a crear
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
message CopyFileResponse {
|
|
224
|
+
string id = 1; // Identificador del archivo copiado
|
|
225
|
+
string url = 2; // URL del archivo almacenado
|
|
226
|
+
string name = 3; // Nombre del archivo copiado
|
|
227
|
+
string mimeType = 4; // Tipo MIME del archivo
|
|
228
|
+
string parentId = 5; // Ubicación del archivo
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
// Respuesta tras la creación de múltiples archivos.
|
|
232
|
+
message CreateFilesResponse {
|
|
233
|
+
repeated File files = 1; // Archivos creados
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
// Respuesta tras la creación de un archivo.
|
|
237
|
+
message CreateFileResponse {
|
|
238
|
+
string id = 1; // Identificador del archivo creado
|
|
239
|
+
string url = 2; // URL del archivo almacenado
|
|
240
|
+
string name = 3; // Nombre del archivo creado
|
|
241
|
+
string mimeType = 4; // Tipo MIME del archivo
|
|
242
|
+
string parentId = 5; // Ubicación del archivo
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
message DeleteAttachedFilesRequest {
|
|
246
|
+
repeated string attachedIds = 1;
|
|
247
|
+
User user = 2;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
// Respuesta tras la creación de un archivo.
|
|
251
|
+
message DeleteAttachedFilesResponse {
|
|
252
|
+
string message = 1; // Mensaje de respuesta
|
|
253
|
+
bool success = 2; // Indicador de éxito de la operación
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
// Solicitud para renombrar una carpeta cuando se actualiza el nombre de una entidad
|
|
257
|
+
message RenameFolderRequest {
|
|
258
|
+
string entityId = 1; // ID de la entidad (lead o contact)
|
|
259
|
+
string entityType = 2; // Tipo de entidad: "lead" o "contact"
|
|
260
|
+
string newName = 3; // Nuevo nombre de la entidad
|
|
261
|
+
string userId = 4; // ID del usuario que realiza la actualización
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
// Respuesta tras renombrar una carpeta
|
|
265
|
+
message RenameFolderResponse {
|
|
266
|
+
bool success = 1; // Indicador de éxito de la operación
|
|
267
|
+
string message = 2; // Mensaje de respuesta
|
|
268
|
+
string folderId = 3; // ID de la carpeta renombrada
|
|
269
|
+
string oldName = 4; // Nombre anterior de la carpeta
|
|
270
|
+
string newName = 5; // Nuevo nombre de la carpeta
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
// Solicitud para vincular archivos existentes a una entidad
|
|
274
|
+
message LinkFilesToEntityRequest {
|
|
275
|
+
repeated string fileIds = 1; // Lista de IDs de archivos a vincular
|
|
276
|
+
repeated OwnerEntity ownersData = 2; // Información sobre los propietarios
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
// Respuesta tras vincular archivos a una entidad
|
|
280
|
+
message LinkFilesToEntityResponse {
|
|
281
|
+
bool success = 1; // Indicador de éxito de la operación
|
|
282
|
+
string message = 2; // Mensaje de respuesta
|
|
283
|
+
repeated File linkedFiles = 3; // Archivos vinculados
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
message DeleteFileRequest {
|
|
287
|
+
string fileId = 1; // ID del archivo a eliminar
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
message DeleteFileResponse {
|
|
291
|
+
bool success = 1; // Indicador de éxito de la operación
|
|
292
|
+
string message = 2; // Mensaje de respuesta
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
|
|
296
|
+
// Define el servicio de gestión de carpetas y archivos.
|
|
297
|
+
service DriveService {
|
|
298
|
+
// Crea una carpeta.
|
|
299
|
+
rpc CreateFolder(CreateFolderRequest) returns (FolderResponse);
|
|
300
|
+
|
|
301
|
+
// Actualiza una carpeta existente.
|
|
302
|
+
rpc UpdateFolder(UpdateFolderRequest) returns (UpdateFolderResponse);
|
|
303
|
+
|
|
304
|
+
// Crea múltiples carpetas en una sola operación.
|
|
305
|
+
rpc CreateFolders(CreateFolderBulkRequest) returns (CreateFolderBulkResponse);
|
|
306
|
+
|
|
307
|
+
// Copia un archivo
|
|
308
|
+
rpc CopyFile(CopyFileRequest) returns (CopyFileResponse);
|
|
309
|
+
|
|
310
|
+
// Crea un archivo.
|
|
311
|
+
rpc CreateFile(CreateFileRequest) returns (CreateFileResponse);
|
|
312
|
+
|
|
313
|
+
// Crea múltiples archivos en una sola operación.
|
|
314
|
+
rpc CreateFiles(CreateFilesRequest) returns (CreateFilesResponse);
|
|
315
|
+
|
|
316
|
+
// Sube archivos temporales
|
|
317
|
+
rpc UploadTempFiles(UploadTempFilesRequest) returns (UploadTempFilesResponse);
|
|
318
|
+
|
|
319
|
+
// Sube archivos a la carpeta de documentos de un recibo.
|
|
320
|
+
rpc UploadFilesToReceipt(UploadFilesToReceiptRequest) returns (UploadFilesToReceiptResponse);
|
|
321
|
+
|
|
322
|
+
// Sube archivos a la carpeta de documentos de un lead.
|
|
323
|
+
rpc UploadFilesToLead(UploadFilesToLeadRequest) returns (UploadFilesToLeadResponse);
|
|
324
|
+
|
|
325
|
+
// Sube archivos a la carpeta de documentos de un contacto.
|
|
326
|
+
rpc UploadFilesToContact(UploadFilesToContactRequest) returns (UploadFilesToContactResponse);
|
|
327
|
+
|
|
328
|
+
// Elimina archivos adjuntos
|
|
329
|
+
rpc DeleteAttachedFiles(DeleteAttachedFilesRequest) returns (DeleteAttachedFilesResponse);
|
|
330
|
+
|
|
331
|
+
// Renombra una carpeta cuando se actualiza el nombre de una entidad
|
|
332
|
+
rpc RenameFolder(RenameFolderRequest) returns (RenameFolderResponse);
|
|
333
|
+
|
|
334
|
+
// Vincula archivos existentes a una entidad
|
|
335
|
+
rpc LinkFilesToEntity(LinkFilesToEntityRequest) returns (LinkFilesToEntityResponse);
|
|
336
|
+
|
|
337
|
+
// Elimina un archivo por su ID
|
|
338
|
+
rpc DeleteFile(DeleteFileRequest) returns (DeleteFileResponse);
|
|
339
|
+
}
|
|
@@ -1,114 +1,114 @@
|
|
|
1
|
-
syntax = "proto3";
|
|
2
|
-
|
|
3
|
-
package leads;
|
|
4
|
-
|
|
5
|
-
// Definición del mensaje principal para crear un Lead
|
|
6
|
-
message CreateLeadRequest {
|
|
7
|
-
// Representa la foto del lead
|
|
8
|
-
bytes photo = 1;
|
|
9
|
-
|
|
10
|
-
// Especifica el tipo de persona para el lead
|
|
11
|
-
PersonType typePerson = 2;
|
|
12
|
-
|
|
13
|
-
// Nombre del lead
|
|
14
|
-
string name = 3;
|
|
15
|
-
|
|
16
|
-
// Apellido del lead
|
|
17
|
-
string lastName = 4;
|
|
18
|
-
|
|
19
|
-
// Nombre completo del lead
|
|
20
|
-
string fullName = 5;
|
|
21
|
-
|
|
22
|
-
// Segundo nombre del lead
|
|
23
|
-
string secondName = 6;
|
|
24
|
-
|
|
25
|
-
// RFC del lead
|
|
26
|
-
string rfc = 7;
|
|
27
|
-
|
|
28
|
-
// Dirección del lead
|
|
29
|
-
string address = 8;
|
|
30
|
-
|
|
31
|
-
// Cargo del lead
|
|
32
|
-
string cargo = 9;
|
|
33
|
-
|
|
34
|
-
// Fecha de nacimiento del lead
|
|
35
|
-
string birthdate = 10;
|
|
36
|
-
|
|
37
|
-
// Género del lead
|
|
38
|
-
string gender = 11;
|
|
39
|
-
|
|
40
|
-
// CURP del lead
|
|
41
|
-
string curp = 12;
|
|
42
|
-
|
|
43
|
-
// CUA del lead
|
|
44
|
-
string cua = 13;
|
|
45
|
-
|
|
46
|
-
// Puesto del lead
|
|
47
|
-
string post = 14;
|
|
48
|
-
|
|
49
|
-
// Observaciones sobre el lead
|
|
50
|
-
string observations = 15;
|
|
51
|
-
|
|
52
|
-
// ¿El lead es exportado?
|
|
53
|
-
bool export = 16;
|
|
54
|
-
|
|
55
|
-
// Descripción de la fuente del lead
|
|
56
|
-
string sourceDescription = 17;
|
|
57
|
-
|
|
58
|
-
// Compañía del lead
|
|
59
|
-
string company = 18;
|
|
60
|
-
|
|
61
|
-
// ID Tipo de Cliente
|
|
62
|
-
string typeId = 19;
|
|
63
|
-
|
|
64
|
-
// ID Origen del lead
|
|
65
|
-
string sourceId = 20;
|
|
66
|
-
|
|
67
|
-
// Números de teléfono asociados con el lead
|
|
68
|
-
repeated PhoneDto phones = 21;
|
|
69
|
-
|
|
70
|
-
// Emails asociados con el lead
|
|
71
|
-
repeated EmailDto emails = 22;
|
|
72
|
-
|
|
73
|
-
// Códigos de aseguradora asociados con el lead
|
|
74
|
-
repeated CodigoDto codigos = 23;
|
|
75
|
-
|
|
76
|
-
// ID del usuario asignado al lead
|
|
77
|
-
string assignedById = 24;
|
|
78
|
-
|
|
79
|
-
// ID del usuario observador
|
|
80
|
-
string observerId = 25;
|
|
81
|
-
|
|
82
|
-
// Monto de la cotización
|
|
83
|
-
double quoteAmount = 26;
|
|
84
|
-
|
|
85
|
-
// ID de la moneda de la cotización
|
|
86
|
-
string quoteCurrencyId = 27;
|
|
87
|
-
|
|
88
|
-
// IDs de los archivos
|
|
89
|
-
repeated string filesIds = 28;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
// Definición del enum PersonType
|
|
93
|
-
enum PersonType {
|
|
94
|
-
FISICA = 0;
|
|
95
|
-
MORAL = 1;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
// Definición de PhoneDto
|
|
99
|
-
message PhoneDto {
|
|
100
|
-
string number = 1;
|
|
101
|
-
string relation = 2;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
// Definición de EmailDto
|
|
105
|
-
message EmailDto {
|
|
106
|
-
string email = 1;
|
|
107
|
-
string relation = 2;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
// Definición de CodigoDto
|
|
111
|
-
message CodigoDto {
|
|
112
|
-
string codigo = 1;
|
|
113
|
-
string insuranceId = 2;
|
|
114
|
-
}
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
|
|
3
|
+
package leads;
|
|
4
|
+
|
|
5
|
+
// Definición del mensaje principal para crear un Lead
|
|
6
|
+
message CreateLeadRequest {
|
|
7
|
+
// Representa la foto del lead
|
|
8
|
+
bytes photo = 1;
|
|
9
|
+
|
|
10
|
+
// Especifica el tipo de persona para el lead
|
|
11
|
+
PersonType typePerson = 2;
|
|
12
|
+
|
|
13
|
+
// Nombre del lead
|
|
14
|
+
string name = 3;
|
|
15
|
+
|
|
16
|
+
// Apellido del lead
|
|
17
|
+
string lastName = 4;
|
|
18
|
+
|
|
19
|
+
// Nombre completo del lead
|
|
20
|
+
string fullName = 5;
|
|
21
|
+
|
|
22
|
+
// Segundo nombre del lead
|
|
23
|
+
string secondName = 6;
|
|
24
|
+
|
|
25
|
+
// RFC del lead
|
|
26
|
+
string rfc = 7;
|
|
27
|
+
|
|
28
|
+
// Dirección del lead
|
|
29
|
+
string address = 8;
|
|
30
|
+
|
|
31
|
+
// Cargo del lead
|
|
32
|
+
string cargo = 9;
|
|
33
|
+
|
|
34
|
+
// Fecha de nacimiento del lead
|
|
35
|
+
string birthdate = 10;
|
|
36
|
+
|
|
37
|
+
// Género del lead
|
|
38
|
+
string gender = 11;
|
|
39
|
+
|
|
40
|
+
// CURP del lead
|
|
41
|
+
string curp = 12;
|
|
42
|
+
|
|
43
|
+
// CUA del lead
|
|
44
|
+
string cua = 13;
|
|
45
|
+
|
|
46
|
+
// Puesto del lead
|
|
47
|
+
string post = 14;
|
|
48
|
+
|
|
49
|
+
// Observaciones sobre el lead
|
|
50
|
+
string observations = 15;
|
|
51
|
+
|
|
52
|
+
// ¿El lead es exportado?
|
|
53
|
+
bool export = 16;
|
|
54
|
+
|
|
55
|
+
// Descripción de la fuente del lead
|
|
56
|
+
string sourceDescription = 17;
|
|
57
|
+
|
|
58
|
+
// Compañía del lead
|
|
59
|
+
string company = 18;
|
|
60
|
+
|
|
61
|
+
// ID Tipo de Cliente
|
|
62
|
+
string typeId = 19;
|
|
63
|
+
|
|
64
|
+
// ID Origen del lead
|
|
65
|
+
string sourceId = 20;
|
|
66
|
+
|
|
67
|
+
// Números de teléfono asociados con el lead
|
|
68
|
+
repeated PhoneDto phones = 21;
|
|
69
|
+
|
|
70
|
+
// Emails asociados con el lead
|
|
71
|
+
repeated EmailDto emails = 22;
|
|
72
|
+
|
|
73
|
+
// Códigos de aseguradora asociados con el lead
|
|
74
|
+
repeated CodigoDto codigos = 23;
|
|
75
|
+
|
|
76
|
+
// ID del usuario asignado al lead
|
|
77
|
+
string assignedById = 24;
|
|
78
|
+
|
|
79
|
+
// ID del usuario observador
|
|
80
|
+
string observerId = 25;
|
|
81
|
+
|
|
82
|
+
// Monto de la cotización
|
|
83
|
+
double quoteAmount = 26;
|
|
84
|
+
|
|
85
|
+
// ID de la moneda de la cotización
|
|
86
|
+
string quoteCurrencyId = 27;
|
|
87
|
+
|
|
88
|
+
// IDs de los archivos
|
|
89
|
+
repeated string filesIds = 28;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
// Definición del enum PersonType
|
|
93
|
+
enum PersonType {
|
|
94
|
+
FISICA = 0;
|
|
95
|
+
MORAL = 1;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// Definición de PhoneDto
|
|
99
|
+
message PhoneDto {
|
|
100
|
+
string number = 1;
|
|
101
|
+
string relation = 2;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
// Definición de EmailDto
|
|
105
|
+
message EmailDto {
|
|
106
|
+
string email = 1;
|
|
107
|
+
string relation = 2;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
// Definición de CodigoDto
|
|
111
|
+
message CodigoDto {
|
|
112
|
+
string codigo = 1;
|
|
113
|
+
string insuranceId = 2;
|
|
114
|
+
}
|
|
@@ -19,8 +19,8 @@ export declare class AuthorizationModule {
|
|
|
19
19
|
}): {
|
|
20
20
|
module: typeof AuthorizationModule;
|
|
21
21
|
imports: import("@nestjs/common").DynamicModule[];
|
|
22
|
-
providers: (typeof
|
|
23
|
-
exports: (typeof
|
|
22
|
+
providers: (typeof TaskAuthorizationService | typeof PolicyAuthorizationService | typeof LeadAuthorizationService | typeof ContactAuthorizationService | typeof ResourceAuthorizationFactory | typeof PermissionEvaluatorService | typeof ResourceAuthorizationService | typeof AuthorizationService | typeof DynamicFilterService | typeof ResourceAccessFilterService | typeof PermissionCacheService)[];
|
|
23
|
+
exports: (typeof TaskAuthorizationService | typeof PolicyAuthorizationService | typeof LeadAuthorizationService | typeof ContactAuthorizationService | typeof ResourceAuthorizationFactory | typeof PermissionEvaluatorService | typeof ResourceAuthorizationService | typeof AuthorizationService | typeof DynamicFilterService | typeof ResourceAccessFilterService | typeof PermissionCacheService)[];
|
|
24
24
|
global: boolean;
|
|
25
25
|
};
|
|
26
26
|
}
|
|
@@ -70,9 +70,9 @@ let ResourceAccessFilterService = class ResourceAccessFilterService {
|
|
|
70
70
|
const containsValue = value.contains;
|
|
71
71
|
containsValue.forEach((item, itemIndex) => {
|
|
72
72
|
const itemParamName = `${paramName}_contains_${itemIndex}`;
|
|
73
|
-
const relationCondition = `EXISTS (
|
|
74
|
-
SELECT 1 FROM ${tableName} tr
|
|
75
|
-
WHERE tr."taskId" = task.id AND tr."userId" = :${itemParamName}
|
|
73
|
+
const relationCondition = `EXISTS (
|
|
74
|
+
SELECT 1 FROM ${tableName} tr
|
|
75
|
+
WHERE tr."taskId" = task.id AND tr."userId" = :${itemParamName}
|
|
76
76
|
)`;
|
|
77
77
|
subConditions.push(relationCondition);
|
|
78
78
|
parameters[itemParamName] = this.extractUserId(item);
|
|
@@ -161,9 +161,9 @@ let ResourceAccessFilterService = class ResourceAccessFilterService {
|
|
|
161
161
|
const cleanItem = this.extractUserId(item);
|
|
162
162
|
if (cleanItem) {
|
|
163
163
|
const paramName = `${baseParamName}_contains_${index}`;
|
|
164
|
-
queryBuilder.andWhere(`EXISTS (
|
|
165
|
-
SELECT 1 FROM ${tableName} tr
|
|
166
|
-
WHERE tr."taskId" = task.id AND tr."userId" = :${paramName}
|
|
164
|
+
queryBuilder.andWhere(`EXISTS (
|
|
165
|
+
SELECT 1 FROM ${tableName} tr
|
|
166
|
+
WHERE tr."taskId" = task.id AND tr."userId" = :${paramName}
|
|
167
167
|
)`, {
|
|
168
168
|
[paramName]: cleanItem,
|
|
169
169
|
});
|
|
@@ -234,9 +234,9 @@ let ResourceAccessFilterService = class ResourceAccessFilterService {
|
|
|
234
234
|
const cleanItem = this.extractUserId(item);
|
|
235
235
|
if (cleanItem) {
|
|
236
236
|
const itemParamName = `${paramName}_contains_${index}`;
|
|
237
|
-
conditions.push(`EXISTS (
|
|
238
|
-
SELECT 1 FROM ${tableName} tr
|
|
239
|
-
WHERE tr."taskId" = task.id AND tr."userId" = :${itemParamName}
|
|
237
|
+
conditions.push(`EXISTS (
|
|
238
|
+
SELECT 1 FROM ${tableName} tr
|
|
239
|
+
WHERE tr."taskId" = task.id AND tr."userId" = :${itemParamName}
|
|
240
240
|
)`);
|
|
241
241
|
parameters[itemParamName] = cleanItem;
|
|
242
242
|
}
|
|
@@ -312,9 +312,9 @@ let ResourceAccessFilterService = class ResourceAccessFilterService {
|
|
|
312
312
|
const cleanItem = this.extractUserId(item);
|
|
313
313
|
if (cleanItem) {
|
|
314
314
|
const paramName = `${field}_contains_${index}`;
|
|
315
|
-
queryBuilder.andWhere(`EXISTS (
|
|
316
|
-
SELECT 1 FROM ${tableName} tr
|
|
317
|
-
WHERE tr."taskId" = task.id AND tr."userId" = :${paramName}
|
|
315
|
+
queryBuilder.andWhere(`EXISTS (
|
|
316
|
+
SELECT 1 FROM ${tableName} tr
|
|
317
|
+
WHERE tr."taskId" = task.id AND tr."userId" = :${paramName}
|
|
318
318
|
)`, {
|
|
319
319
|
[paramName]: cleanItem,
|
|
320
320
|
});
|
|
@@ -337,9 +337,9 @@ let ResourceAccessFilterService = class ResourceAccessFilterService {
|
|
|
337
337
|
return "1 = 0";
|
|
338
338
|
}
|
|
339
339
|
queryBuilder.setParameter(paramName, cleanCondition);
|
|
340
|
-
return `EXISTS (
|
|
341
|
-
SELECT 1 FROM ${tableName} tr
|
|
342
|
-
WHERE tr."taskId" = task.id AND tr."userId" IN (:...${paramName})
|
|
340
|
+
return `EXISTS (
|
|
341
|
+
SELECT 1 FROM ${tableName} tr
|
|
342
|
+
WHERE tr."taskId" = task.id AND tr."userId" IN (:...${paramName})
|
|
343
343
|
)`;
|
|
344
344
|
}
|
|
345
345
|
else if (typeof condition === "object" &&
|
|
@@ -352,9 +352,9 @@ let ResourceAccessFilterService = class ResourceAccessFilterService {
|
|
|
352
352
|
return "1 = 0";
|
|
353
353
|
}
|
|
354
354
|
queryBuilder.setParameter(paramName, cleanCondition);
|
|
355
|
-
return `EXISTS (
|
|
356
|
-
SELECT 1 FROM ${tableName} tr
|
|
357
|
-
WHERE tr."taskId" = task.id AND tr."userId" IN (:...${paramName})
|
|
355
|
+
return `EXISTS (
|
|
356
|
+
SELECT 1 FROM ${tableName} tr
|
|
357
|
+
WHERE tr."taskId" = task.id AND tr."userId" IN (:...${paramName})
|
|
358
358
|
)`;
|
|
359
359
|
}
|
|
360
360
|
else {
|
|
@@ -363,9 +363,9 @@ let ResourceAccessFilterService = class ResourceAccessFilterService {
|
|
|
363
363
|
return "1 = 0";
|
|
364
364
|
}
|
|
365
365
|
queryBuilder.setParameter(paramName, cleanCondition);
|
|
366
|
-
return `EXISTS (
|
|
367
|
-
SELECT 1 FROM ${tableName} tr
|
|
368
|
-
WHERE tr."taskId" = task.id AND tr."userId" = :${paramName}
|
|
366
|
+
return `EXISTS (
|
|
367
|
+
SELECT 1 FROM ${tableName} tr
|
|
368
|
+
WHERE tr."taskId" = task.id AND tr."userId" = :${paramName}
|
|
369
369
|
)`;
|
|
370
370
|
}
|
|
371
371
|
}
|
package/package.json
CHANGED
|
@@ -1,55 +1,55 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "easywork-common-lib",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "Librería común de Easywork",
|
|
5
|
-
"main": "dist/index.js",
|
|
6
|
-
"types": "dist/index.d.ts",
|
|
7
|
-
"files": [
|
|
8
|
-
"dist/**/*",
|
|
9
|
-
"README.md",
|
|
10
|
-
"LICENSE"
|
|
11
|
-
],
|
|
12
|
-
"scripts": {
|
|
13
|
-
"build": "tsc && cpx-fixed src/**/*.proto dist/",
|
|
14
|
-
"bump": "sh ./scripts/bump.sh",
|
|
15
|
-
"bump-win": "cross-env ./scripts/bump.sh"
|
|
16
|
-
},
|
|
17
|
-
"repository": {
|
|
18
|
-
"type": "git",
|
|
19
|
-
"url": "git+https://github.com/blindariesgos/easywork-common-lib.git"
|
|
20
|
-
},
|
|
21
|
-
"keywords": [
|
|
22
|
-
"nodejs"
|
|
23
|
-
],
|
|
24
|
-
"author": "Rosmer Campos",
|
|
25
|
-
"license": "MIT",
|
|
26
|
-
"bugs": {
|
|
27
|
-
"url": "https://github.com/blindariesgos/easywork-common-lib/issues"
|
|
28
|
-
},
|
|
29
|
-
"homepage": "https://github.com/blindariesgos/easywork-common-lib#readme",
|
|
30
|
-
"dependencies": {
|
|
31
|
-
"@golevelup/nestjs-rabbitmq": "^5.7.0",
|
|
32
|
-
"@nestjs/cache-manager": "^3.0.1",
|
|
33
|
-
"@nestjs/common": "^10.4.19",
|
|
34
|
-
"@nestjs/swagger": "^7.4.2",
|
|
35
|
-
"@nestjs/typeorm": "^10.0.2",
|
|
36
|
-
"cache-manager": "^7.0.1",
|
|
37
|
-
"class-transformer": "^0.5.1",
|
|
38
|
-
"class-validator": "^0.14.2",
|
|
39
|
-
"googleapis": "^144.0.0",
|
|
40
|
-
"nanoid": "^3.3.11",
|
|
41
|
-
"nestjs-rabbitmq": "link:@types/@golevelup/nestjs-rabbitmq",
|
|
42
|
-
"rxjs": "^7.8.2",
|
|
43
|
-
"sharp": "^0.33.5",
|
|
44
|
-
"typeorm": "^0.3.25"
|
|
45
|
-
},
|
|
46
|
-
"devDependencies": {
|
|
47
|
-
"@rubiin/tsconfig": "^1.2.1",
|
|
48
|
-
"@types/node": "^20.19.4",
|
|
49
|
-
"cpx-fixed": "^1.6.0",
|
|
50
|
-
"ts-loader": "^9.5.2",
|
|
51
|
-
"ts-node": "^10.9.2",
|
|
52
|
-
"typescript": "^5.9.3"
|
|
53
|
-
},
|
|
54
|
-
"packageManager": "pnpm@9.12.2+sha512.22721b3a11f81661ae1ec68ce1a7b879425a1ca5b991c975b074ac220b187ce56c708fe5db69f4c962c989452eee76c82877f4ee80f474cebd61ee13461b6228"
|
|
55
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "easywork-common-lib",
|
|
3
|
+
"version": "1.0.1337",
|
|
4
|
+
"description": "Librería común de Easywork",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"files": [
|
|
8
|
+
"dist/**/*",
|
|
9
|
+
"README.md",
|
|
10
|
+
"LICENSE"
|
|
11
|
+
],
|
|
12
|
+
"scripts": {
|
|
13
|
+
"build": "tsc && cpx-fixed src/**/*.proto dist/",
|
|
14
|
+
"bump": "sh ./scripts/bump.sh",
|
|
15
|
+
"bump-win": "cross-env ./scripts/bump.sh"
|
|
16
|
+
},
|
|
17
|
+
"repository": {
|
|
18
|
+
"type": "git",
|
|
19
|
+
"url": "git+https://github.com/blindariesgos/easywork-common-lib.git"
|
|
20
|
+
},
|
|
21
|
+
"keywords": [
|
|
22
|
+
"nodejs"
|
|
23
|
+
],
|
|
24
|
+
"author": "Rosmer Campos",
|
|
25
|
+
"license": "MIT",
|
|
26
|
+
"bugs": {
|
|
27
|
+
"url": "https://github.com/blindariesgos/easywork-common-lib/issues"
|
|
28
|
+
},
|
|
29
|
+
"homepage": "https://github.com/blindariesgos/easywork-common-lib#readme",
|
|
30
|
+
"dependencies": {
|
|
31
|
+
"@golevelup/nestjs-rabbitmq": "^5.7.0",
|
|
32
|
+
"@nestjs/cache-manager": "^3.0.1",
|
|
33
|
+
"@nestjs/common": "^10.4.19",
|
|
34
|
+
"@nestjs/swagger": "^7.4.2",
|
|
35
|
+
"@nestjs/typeorm": "^10.0.2",
|
|
36
|
+
"cache-manager": "^7.0.1",
|
|
37
|
+
"class-transformer": "^0.5.1",
|
|
38
|
+
"class-validator": "^0.14.2",
|
|
39
|
+
"googleapis": "^144.0.0",
|
|
40
|
+
"nanoid": "^3.3.11",
|
|
41
|
+
"nestjs-rabbitmq": "link:@types/@golevelup/nestjs-rabbitmq",
|
|
42
|
+
"rxjs": "^7.8.2",
|
|
43
|
+
"sharp": "^0.33.5",
|
|
44
|
+
"typeorm": "^0.3.25"
|
|
45
|
+
},
|
|
46
|
+
"devDependencies": {
|
|
47
|
+
"@rubiin/tsconfig": "^1.2.1",
|
|
48
|
+
"@types/node": "^20.19.4",
|
|
49
|
+
"cpx-fixed": "^1.6.0",
|
|
50
|
+
"ts-loader": "^9.5.2",
|
|
51
|
+
"ts-node": "^10.9.2",
|
|
52
|
+
"typescript": "^5.9.3"
|
|
53
|
+
},
|
|
54
|
+
"packageManager": "pnpm@9.12.2+sha512.22721b3a11f81661ae1ec68ce1a7b879425a1ca5b991c975b074ac220b187ce56c708fe5db69f4c962c989452eee76c82877f4ee80f474cebd61ee13461b6228"
|
|
55
|
+
}
|