uaxi-shared-entities 1.0.209 → 1.0.211

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.
@@ -1,47 +1,41 @@
1
1
  import { Model } from "sequelize-typescript";
2
+ /**
3
+ * Configuración global de expansión de búsqueda de conductores (un solo registro activo).
4
+ *
5
+ * La lógica de búsqueda deriva 3 fases a partir de este registro:
6
+ * - Duración por fase: searchTimeMinutes / 3
7
+ * - Fase 1: radio = minRadiusKm
8
+ * - Fase 2: radio = minRadiusKm + 1 km
9
+ * - Fase 3: radio = maxRadiusKm
10
+ */
2
11
  export interface DriverSearchExpansionConfigurationAttributes {
3
12
  id: string;
4
- name: string;
5
- isActive: boolean;
6
- /** Radio inicial de búsqueda (km). */
7
- initialRadiusKm: number;
8
- /** Radio tras la primera expansión (km). */
9
- firstExpansionRadiusKm: number;
10
- /** Radio máximo / tercera expansión (km). */
13
+ metadata: Record<string, unknown> | null;
14
+ /** Tiempo total de búsqueda del viaje (minutos); cada expansión dura searchTimeMinutes / 3. */
15
+ searchTimeMinutes: number;
16
+ /** Radio de la primera búsqueda (km). */
17
+ minRadiusKm: number;
18
+ /** Radio de la tercera expansión (km). */
11
19
  maxRadiusKm: number;
12
- /** Tiempo total de búsqueda antes de auto-cancelar (minutos). */
13
- searchTimeoutMinutes: number;
14
- /** Segundos de espera en fase inicial/1 antes de expandir por tiempo. */
15
- phase1WaitSeconds: number;
16
- /** Segundos de espera en fase 2 antes de expandir a la máxima por tiempo. */
17
- phase2WaitSeconds: number;
18
20
  createdAt: Date;
19
21
  updatedAt: Date;
20
22
  deletedAt?: Date | null;
21
23
  }
22
24
  export interface CreateDriverSearchExpansionConfigurationData {
23
25
  id?: string;
24
- name?: string;
25
- isActive?: boolean;
26
- initialRadiusKm?: number;
27
- firstExpansionRadiusKm?: number;
28
- maxRadiusKm?: number;
29
- searchTimeoutMinutes?: number;
30
- phase1WaitSeconds?: number;
31
- phase2WaitSeconds?: number;
26
+ metadata?: Record<string, unknown> | null;
27
+ searchTimeMinutes: number;
28
+ minRadiusKm: number;
29
+ maxRadiusKm: number;
32
30
  }
33
31
  export declare class DriverSearchExpansionConfiguration extends Model<DriverSearchExpansionConfigurationAttributes, CreateDriverSearchExpansionConfigurationData> {
34
32
  id: string;
35
- name: string;
36
- isActive: boolean;
37
- initialRadiusKm: number;
38
- firstExpansionRadiusKm: number;
33
+ metadata: Record<string, unknown> | null;
34
+ searchTimeMinutes: number;
35
+ minRadiusKm: number;
39
36
  maxRadiusKm: number;
40
- searchTimeoutMinutes: number;
41
- phase1WaitSeconds: number;
42
- phase2WaitSeconds: number;
43
37
  createdAt: Date;
44
38
  updatedAt: Date;
45
- deletedAt?: Date | null;
39
+ deletedAt: Date | null;
46
40
  }
47
41
  //# sourceMappingURL=driver-search-expansion-configuration.entity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"driver-search-expansion-configuration.entity.d.ts","sourceRoot":"","sources":["../../src/entities/driver-search-expansion-configuration.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,EAGN,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,4CAA4C;IAC3D,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,sCAAsC;IACtC,eAAe,EAAE,MAAM,CAAC;IACxB,4CAA4C;IAC5C,sBAAsB,EAAE,MAAM,CAAC;IAC/B,6CAA6C;IAC7C,WAAW,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,oBAAoB,EAAE,MAAM,CAAC;IAC7B,yEAAyE;IACzE,iBAAiB,EAAE,MAAM,CAAC;IAC1B,6EAA6E;IAC7E,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,4CAA4C;IAC3D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,qBAea,kCAAmC,SAAQ,KAAK,CAC3D,4CAA4C,EAC5C,4CAA4C,CAC7C;IAMS,EAAE,EAAE,MAAM,CAAC;IAQnB,IAAI,EAAE,MAAM,CAAC;IASb,QAAQ,EAAE,OAAO,CAAC;IASlB,eAAe,EAAE,MAAM,CAAC;IASxB,sBAAsB,EAAE,MAAM,CAAC;IAS/B,WAAW,EAAE,MAAM,CAAC;IASpB,oBAAoB,EAAE,MAAM,CAAC;IAU7B,iBAAiB,EAAE,MAAM,CAAC;IAU1B,iBAAiB,EAAE,MAAM,CAAC;IAG1B,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CACzB"}
1
+ {"version":3,"file":"driver-search-expansion-configuration.entity.d.ts","sourceRoot":"","sources":["../../src/entities/driver-search-expansion-configuration.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,EAGN,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;GAQG;AACH,MAAM,WAAW,4CAA4C;IAC3D,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACzC,+FAA+F;IAC/F,iBAAiB,EAAE,MAAM,CAAC;IAC1B,yCAAyC;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,4CAA4C;IAC3D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC1C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qBAKa,kCAAmC,SAAQ,KAAK,CAC3D,4CAA4C,EAC5C,4CAA4C,CAC7C;IAMS,EAAE,EAAE,MAAM,CAAC;IAOnB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IASzC,iBAAiB,EAAE,MAAM,CAAC;IAQ1B,WAAW,EAAE,MAAM,CAAC;IAQpB,WAAW,EAAE,MAAM,CAAC;IAGZ,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;CAChC"}
@@ -24,83 +24,39 @@ __decorate([
24
24
  ], DriverSearchExpansionConfiguration.prototype, "id", void 0);
25
25
  __decorate([
26
26
  (0, sequelize_typescript_1.Column)({
27
- type: sequelize_typescript_1.DataType.STRING(80),
28
- allowNull: false,
29
- defaultValue: "default",
30
- comment: "Nombre descriptivo de la configuración",
27
+ type: sequelize_typescript_1.DataType.JSON,
28
+ allowNull: true,
29
+ comment: "Metadatos opcionales de la configuración",
31
30
  }),
32
- __metadata("design:type", String)
33
- ], DriverSearchExpansionConfiguration.prototype, "name", void 0);
34
- __decorate([
35
- (0, sequelize_typescript_1.Column)({
36
- type: sequelize_typescript_1.DataType.BOOLEAN,
37
- allowNull: false,
38
- defaultValue: true,
39
- field: "is_active",
40
- comment: "Solo una configuración activa se usa en búsqueda",
41
- }),
42
- __metadata("design:type", Boolean)
43
- ], DriverSearchExpansionConfiguration.prototype, "isActive", void 0);
31
+ __metadata("design:type", Object)
32
+ ], DriverSearchExpansionConfiguration.prototype, "metadata", void 0);
44
33
  __decorate([
45
34
  (0, sequelize_typescript_1.Column)({
46
- type: sequelize_typescript_1.DataType.DECIMAL(5, 2),
35
+ type: sequelize_typescript_1.DataType.INTEGER,
47
36
  allowNull: false,
48
- defaultValue: 1,
49
- field: "initial_radius_km",
50
- comment: "Radio inicial de búsqueda en km",
37
+ field: "search_time_minutes",
38
+ comment: "Tiempo total de búsqueda del viaje (min). Cada expansión dura searchTimeMinutes / 3",
51
39
  }),
52
40
  __metadata("design:type", Number)
53
- ], DriverSearchExpansionConfiguration.prototype, "initialRadiusKm", void 0);
41
+ ], DriverSearchExpansionConfiguration.prototype, "searchTimeMinutes", void 0);
54
42
  __decorate([
55
43
  (0, sequelize_typescript_1.Column)({
56
44
  type: sequelize_typescript_1.DataType.DECIMAL(5, 2),
57
45
  allowNull: false,
58
- defaultValue: 2,
59
- field: "first_expansion_radius_km",
60
- comment: "Radio tras la primera expansión en km",
46
+ field: "min_radius_km",
47
+ comment: "Radio de la 1ª búsqueda (km)",
61
48
  }),
62
49
  __metadata("design:type", Number)
63
- ], DriverSearchExpansionConfiguration.prototype, "firstExpansionRadiusKm", void 0);
50
+ ], DriverSearchExpansionConfiguration.prototype, "minRadiusKm", void 0);
64
51
  __decorate([
65
52
  (0, sequelize_typescript_1.Column)({
66
53
  type: sequelize_typescript_1.DataType.DECIMAL(5, 2),
67
54
  allowNull: false,
68
- defaultValue: 3,
69
55
  field: "max_radius_km",
70
- comment: "Radio máximo (tercera expansión) en km",
56
+ comment: "Radio de la expansión (km); la 2ª es minRadiusKm + 1",
71
57
  }),
72
58
  __metadata("design:type", Number)
73
59
  ], DriverSearchExpansionConfiguration.prototype, "maxRadiusKm", void 0);
74
- __decorate([
75
- (0, sequelize_typescript_1.Column)({
76
- type: sequelize_typescript_1.DataType.INTEGER,
77
- allowNull: false,
78
- defaultValue: 10,
79
- field: "search_timeout_minutes",
80
- comment: "Tiempo total de búsqueda en minutos",
81
- }),
82
- __metadata("design:type", Number)
83
- ], DriverSearchExpansionConfiguration.prototype, "searchTimeoutMinutes", void 0);
84
- __decorate([
85
- (0, sequelize_typescript_1.Column)({
86
- type: sequelize_typescript_1.DataType.INTEGER,
87
- allowNull: false,
88
- defaultValue: 100,
89
- field: "phase1_wait_seconds",
90
- comment: "Segundos de espera en fase inicial antes de expandir por tiempo (si hay conductores)",
91
- }),
92
- __metadata("design:type", Number)
93
- ], DriverSearchExpansionConfiguration.prototype, "phase1WaitSeconds", void 0);
94
- __decorate([
95
- (0, sequelize_typescript_1.Column)({
96
- type: sequelize_typescript_1.DataType.INTEGER,
97
- allowNull: false,
98
- defaultValue: 100,
99
- field: "phase2_wait_seconds",
100
- comment: "Segundos de espera en segunda expansión antes de expandir a la máxima por tiempo",
101
- }),
102
- __metadata("design:type", Number)
103
- ], DriverSearchExpansionConfiguration.prototype, "phase2WaitSeconds", void 0);
104
60
  __decorate([
105
61
  sequelize_typescript_1.CreatedAt,
106
62
  __metadata("design:type", Date)
@@ -118,16 +74,6 @@ exports.DriverSearchExpansionConfiguration = DriverSearchExpansionConfiguration
118
74
  tableName: "driver_search_expansion_configurations",
119
75
  timestamps: true,
120
76
  paranoid: true,
121
- indexes: [
122
- {
123
- name: "idx_driver_search_expansion_config_deleted_at",
124
- fields: ["deletedAt"],
125
- },
126
- {
127
- name: "idx_driver_search_expansion_config_active",
128
- fields: ["is_active"],
129
- },
130
- ],
131
77
  })
132
78
  ], DriverSearchExpansionConfiguration);
133
79
  //# sourceMappingURL=driver-search-expansion-configuration.entity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"driver-search-expansion-configuration.entity.js","sourceRoot":"","sources":["../../src/entities/driver-search-expansion-configuration.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+DAQ8B;AAkDvB,IAAM,kCAAkC,GAAxC,MAAM,kCAAmC,SAAQ,4BAGvD;CAyFA,CAAA;AA5FY,gFAAkC;AASrC;IALP,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,YAAY,EAAE,+BAAQ,CAAC,MAAM;QAC7B,UAAU,EAAE,IAAI;KACjB,CAAC;;8DACiB;AAQnB;IANC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACzB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,SAAS;QACvB,OAAO,EAAE,wCAAwC;KAClD,CAAC;;gEACW;AASb;IAPC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO;QACtB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,IAAI;QAClB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,kDAAkD;KAC5D,CAAC;;oEACgB;AASlB;IAPC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5B,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,CAAC;QACf,KAAK,EAAE,mBAAmB;QAC1B,OAAO,EAAE,iCAAiC;KAC3C,CAAC;;2EACsB;AASxB;IAPC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5B,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,CAAC;QACf,KAAK,EAAE,2BAA2B;QAClC,OAAO,EAAE,uCAAuC;KACjD,CAAC;;kFAC6B;AAS/B;IAPC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5B,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,CAAC;QACf,KAAK,EAAE,eAAe;QACtB,OAAO,EAAE,wCAAwC;KAClD,CAAC;;uEACkB;AASpB;IAPC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO;QACtB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,EAAE;QAChB,KAAK,EAAE,wBAAwB;QAC/B,OAAO,EAAE,qCAAqC;KAC/C,CAAC;;gFAC2B;AAU7B;IARC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO;QACtB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,GAAG;QACjB,KAAK,EAAE,qBAAqB;QAC5B,OAAO,EACL,sFAAsF;KACzF,CAAC;;6EACwB;AAU1B;IARC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO;QACtB,SAAS,EAAE,KAAK;QAChB,YAAY,EAAE,GAAG;QACjB,KAAK,EAAE,qBAAqB;QAC5B,OAAO,EACL,kFAAkF;KACrF,CAAC;;6EACwB;AAG1B;IADC,gCAAS;8BACC,IAAI;qEAAC;AAGhB;IADC,gCAAS;8BACC,IAAI;qEAAC;AAGhB;IADC,gCAAS;;qEACc;6CA3Fb,kCAAkC;IAf9C,IAAA,4BAAK,EAAC;QACL,SAAS,EAAE,wCAAwC;QACnD,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,+CAA+C;gBACrD,MAAM,EAAE,CAAC,WAAW,CAAC;aACtB;YACD;gBACE,IAAI,EAAE,2CAA2C;gBACjD,MAAM,EAAE,CAAC,WAAW,CAAC;aACtB;SACF;KACF,CAAC;GACW,kCAAkC,CA4F9C"}
1
+ {"version":3,"file":"driver-search-expansion-configuration.entity.js","sourceRoot":"","sources":["../../src/entities/driver-search-expansion-configuration.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+DAQ8B;AAsCvB,IAAM,kCAAkC,GAAxC,MAAM,kCAAmC,SAAQ,4BAGvD;CAgDA,CAAA;AAnDY,gFAAkC;AASrC;IALP,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,YAAY,EAAE,+BAAQ,CAAC,MAAM;QAC7B,UAAU,EAAE,IAAI;KACjB,CAAC;;8DACiB;AAOnB;IALC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,IAAI;QACnB,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,0CAA0C;KACpD,CAAC;;oEACuC;AASzC;IAPC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO;QACtB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,qBAAqB;QAC5B,OAAO,EACL,qFAAqF;KACxF,CAAC;;6EACwB;AAQ1B;IANC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5B,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,eAAe;QACtB,OAAO,EAAE,8BAA8B;KACxC,CAAC;;uEACkB;AAQpB;IANC,IAAA,6BAAM,EAAC;QACN,IAAI,EAAE,+BAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5B,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,eAAe;QACtB,OAAO,EAAE,yDAAyD;KACnE,CAAC;;uEACkB;AAGZ;IADP,gCAAS;8BACS,IAAI;qEAAC;AAGhB;IADP,gCAAS;8BACS,IAAI;qEAAC;AAGhB;IADP,gCAAS;;qEACqB;6CAlDpB,kCAAkC;IAL9C,IAAA,4BAAK,EAAC;QACL,SAAS,EAAE,wCAAwC;QACnD,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,IAAI;KACf,CAAC;GACW,kCAAkC,CAmD9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"system-configuration.entity.d.ts","sourceRoot":"","sources":["../../src/entities/system-configuration.entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"system-configuration.entity.d.ts","sourceRoot":"","sources":["../../src/entities/system-configuration.entity.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"system-configuration.entity.js","sourceRoot":"","sources":["../../src/entities/system-configuration.entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"system-configuration.entity.js","sourceRoot":"","sources":["../../src/entities/system-configuration.entity.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,5 +2,4 @@ export * from "./entities";
2
2
  export * from "./enums";
3
3
  export * from "./config";
4
4
  export * from "./types";
5
- export * from "./utils/driver-search-expansion.util";
6
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,cAAc,YAAY,CAAC;AAG3B,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,sCAAsC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,cAAc,YAAY,CAAC;AAG3B,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -25,6 +25,4 @@ __exportStar(require("./enums"), exports);
25
25
  __exportStar(require("./config"), exports);
26
26
  // Exportar tipos y interfaces
27
27
  __exportStar(require("./types"), exports);
28
- // Utilidades compartidas
29
- __exportStar(require("./utils/driver-search-expansion.util"), exports);
30
28
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,gDAAgD;AAChD,4BAA4B;AAC5B,gDAAgD;;;;;;;;;;;;;;;;AAEhD,oDAAoD;AACpD,6CAA2B;AAE3B,uDAAuD;AACvD,0CAAwB;AAExB,2BAA2B;AAC3B,2CAAyB;AAEzB,8BAA8B;AAC9B,0CAAwB;AAExB,yBAAyB;AACzB,uEAAqD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,gDAAgD;AAChD,4BAA4B;AAC5B,gDAAgD;;;;;;;;;;;;;;;;AAEhD,oDAAoD;AACpD,6CAA2B;AAE3B,uDAAuD;AACvD,0CAAwB;AAExB,2BAA2B;AAC3B,2CAAyB;AAEzB,8BAA8B;AAC9B,0CAAwB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "uaxi-shared-entities",
3
- "version": "1.0.209",
3
+ "version": "1.0.211",
4
4
  "description": "Entidades compartidas para microservicios UAXI",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -8,22 +8,24 @@ import {
8
8
  UpdatedAt,
9
9
  } from "sequelize-typescript";
10
10
 
11
+ /**
12
+ * Configuración global de expansión de búsqueda de conductores (un solo registro activo).
13
+ *
14
+ * La lógica de búsqueda deriva 3 fases a partir de este registro:
15
+ * - Duración por fase: searchTimeMinutes / 3
16
+ * - Fase 1: radio = minRadiusKm
17
+ * - Fase 2: radio = minRadiusKm + 1 km
18
+ * - Fase 3: radio = maxRadiusKm
19
+ */
11
20
  export interface DriverSearchExpansionConfigurationAttributes {
12
21
  id: string;
13
- name: string;
14
- isActive: boolean;
15
- /** Radio inicial de búsqueda (km). */
16
- initialRadiusKm: number;
17
- /** Radio tras la primera expansión (km). */
18
- firstExpansionRadiusKm: number;
19
- /** Radio máximo / tercera expansión (km). */
22
+ metadata: Record<string, unknown> | null;
23
+ /** Tiempo total de búsqueda del viaje (minutos); cada expansión dura searchTimeMinutes / 3. */
24
+ searchTimeMinutes: number;
25
+ /** Radio de la primera búsqueda (km). */
26
+ minRadiusKm: number;
27
+ /** Radio de la tercera expansión (km). */
20
28
  maxRadiusKm: number;
21
- /** Tiempo total de búsqueda antes de auto-cancelar (minutos). */
22
- searchTimeoutMinutes: number;
23
- /** Segundos de espera en fase inicial/1 antes de expandir por tiempo. */
24
- phase1WaitSeconds: number;
25
- /** Segundos de espera en fase 2 antes de expandir a la máxima por tiempo. */
26
- phase2WaitSeconds: number;
27
29
  createdAt: Date;
28
30
  updatedAt: Date;
29
31
  deletedAt?: Date | null;
@@ -31,30 +33,16 @@ export interface DriverSearchExpansionConfigurationAttributes {
31
33
 
32
34
  export interface CreateDriverSearchExpansionConfigurationData {
33
35
  id?: string;
34
- name?: string;
35
- isActive?: boolean;
36
- initialRadiusKm?: number;
37
- firstExpansionRadiusKm?: number;
38
- maxRadiusKm?: number;
39
- searchTimeoutMinutes?: number;
40
- phase1WaitSeconds?: number;
41
- phase2WaitSeconds?: number;
36
+ metadata?: Record<string, unknown> | null;
37
+ searchTimeMinutes: number;
38
+ minRadiusKm: number;
39
+ maxRadiusKm: number;
42
40
  }
43
41
 
44
42
  @Table({
45
43
  tableName: "driver_search_expansion_configurations",
46
44
  timestamps: true,
47
45
  paranoid: true,
48
- indexes: [
49
- {
50
- name: "idx_driver_search_expansion_config_deleted_at",
51
- fields: ["deletedAt"],
52
- },
53
- {
54
- name: "idx_driver_search_expansion_config_active",
55
- fields: ["is_active"],
56
- },
57
- ],
58
46
  })
59
47
  export class DriverSearchExpansionConfiguration extends Model<
60
48
  DriverSearchExpansionConfigurationAttributes,
@@ -68,84 +56,43 @@ export class DriverSearchExpansionConfiguration extends Model<
68
56
  declare id: string;
69
57
 
70
58
  @Column({
71
- type: DataType.STRING(80),
72
- allowNull: false,
73
- defaultValue: "default",
74
- comment: "Nombre descriptivo de la configuración",
75
- })
76
- name: string;
77
-
78
- @Column({
79
- type: DataType.BOOLEAN,
80
- allowNull: false,
81
- defaultValue: true,
82
- field: "is_active",
83
- comment: "Solo una configuración activa se usa en búsqueda",
59
+ type: DataType.JSON,
60
+ allowNull: true,
61
+ comment: "Metadatos opcionales de la configuración",
84
62
  })
85
- isActive: boolean;
63
+ metadata: Record<string, unknown> | null;
86
64
 
87
65
  @Column({
88
- type: DataType.DECIMAL(5, 2),
66
+ type: DataType.INTEGER,
89
67
  allowNull: false,
90
- defaultValue: 1,
91
- field: "initial_radius_km",
92
- comment: "Radio inicial de búsqueda en km",
68
+ field: "search_time_minutes",
69
+ comment:
70
+ "Tiempo total de búsqueda del viaje (min). Cada expansión dura searchTimeMinutes / 3",
93
71
  })
94
- initialRadiusKm: number;
72
+ searchTimeMinutes: number;
95
73
 
96
74
  @Column({
97
75
  type: DataType.DECIMAL(5, 2),
98
76
  allowNull: false,
99
- defaultValue: 2,
100
- field: "first_expansion_radius_km",
101
- comment: "Radio tras la primera expansión en km",
77
+ field: "min_radius_km",
78
+ comment: "Radio de la 1ª búsqueda (km)",
102
79
  })
103
- firstExpansionRadiusKm: number;
80
+ minRadiusKm: number;
104
81
 
105
82
  @Column({
106
83
  type: DataType.DECIMAL(5, 2),
107
84
  allowNull: false,
108
- defaultValue: 3,
109
85
  field: "max_radius_km",
110
- comment: "Radio máximo (tercera expansión) en km",
86
+ comment: "Radio de la expansión (km); la 2ª es minRadiusKm + 1",
111
87
  })
112
88
  maxRadiusKm: number;
113
89
 
114
- @Column({
115
- type: DataType.INTEGER,
116
- allowNull: false,
117
- defaultValue: 10,
118
- field: "search_timeout_minutes",
119
- comment: "Tiempo total de búsqueda en minutos",
120
- })
121
- searchTimeoutMinutes: number;
122
-
123
- @Column({
124
- type: DataType.INTEGER,
125
- allowNull: false,
126
- defaultValue: 100,
127
- field: "phase1_wait_seconds",
128
- comment:
129
- "Segundos de espera en fase inicial antes de expandir por tiempo (si hay conductores)",
130
- })
131
- phase1WaitSeconds: number;
132
-
133
- @Column({
134
- type: DataType.INTEGER,
135
- allowNull: false,
136
- defaultValue: 100,
137
- field: "phase2_wait_seconds",
138
- comment:
139
- "Segundos de espera en segunda expansión antes de expandir a la máxima por tiempo",
140
- })
141
- phase2WaitSeconds: number;
142
-
143
90
  @CreatedAt
144
- createdAt: Date;
91
+ declare createdAt: Date;
145
92
 
146
93
  @UpdatedAt
147
- updatedAt: Date;
94
+ declare updatedAt: Date;
148
95
 
149
96
  @DeletedAt
150
- deletedAt?: Date | null;
97
+ declare deletedAt: Date | null;
151
98
  }
@@ -272,7 +272,8 @@ export class SystemConfiguration extends Model<
272
272
  allowNull: true,
273
273
  defaultValue: 14,
274
274
  field: "business_fare_surcharge_percent",
275
- comment: "Porcentaje de aumento sobre tarifa base para viajes de empresa (14 = +14%)",
275
+ comment:
276
+ "Porcentaje de aumento sobre tarifa base para viajes de empresa (14 = +14%)",
276
277
  })
277
278
  businessFareSurchargePercent?: number;
278
279
 
package/src/index.ts CHANGED
@@ -13,6 +13,3 @@ export * from "./config";
13
13
 
14
14
  // Exportar tipos y interfaces
15
15
  export * from "./types";
16
-
17
- // Utilidades compartidas
18
- export * from "./utils/driver-search-expansion.util";
@@ -1,22 +0,0 @@
1
- /** Canal Redis para solicitar expansión inmediata cuando no hay conductores. */
2
- export declare const DRIVER_SEARCH_IMMEDIATE_EXPANSION_CHANNEL = "trip:radius:expand:immediate";
3
- export interface DriverSearchExpansionRadii {
4
- initial: number;
5
- expansion1: number;
6
- expansion2: number;
7
- expansion3: number;
8
- }
9
- export interface DriverSearchExpansionConfigInput {
10
- initialRadiusKm: number;
11
- firstExpansionRadiusKm: number;
12
- maxRadiusKm: number;
13
- }
14
- /** Radios por fase. La expansión 2 es el punto medio entre la 1 y la máxima. */
15
- export declare function computeExpansionRadii(config: DriverSearchExpansionConfigInput): DriverSearchExpansionRadii;
16
- /** Fase actual (0=inicial, 1..3=tras cada expansión). */
17
- export declare function getExpansionPhaseFromRadius(radiusKm: number, radii: DriverSearchExpansionRadii): number;
18
- /** Radio objetivo de la siguiente expansión, o null si ya está en fase 3. */
19
- export declare function getNextExpansionRadius(currentPhase: number, radii: DriverSearchExpansionRadii): number | null;
20
- /** Tiempo de espera (ms) antes de la siguiente expansión programada por tiempo. */
21
- export declare function getPhaseWaitMs(currentPhase: number, phase1WaitSeconds: number, phase2WaitSeconds: number): number;
22
- //# sourceMappingURL=driver-search-expansion.util.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"driver-search-expansion.util.d.ts","sourceRoot":"","sources":["../../src/utils/driver-search-expansion.util.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,eAAO,MAAM,yCAAyC,iCACtB,CAAC;AAEjC,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gCAAgC;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC;CACrB;AAMD,gFAAgF;AAChF,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,gCAAgC,GACvC,0BAA0B,CAY5B;AAED,yDAAyD;AACzD,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,0BAA0B,GAChC,MAAM,CAKR;AAED,6EAA6E;AAC7E,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,0BAA0B,GAChC,MAAM,GAAG,IAAI,CAWf;AAED,mFAAmF;AACnF,wBAAgB,cAAc,CAC5B,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,MAAM,EACzB,iBAAiB,EAAE,MAAM,GACxB,MAAM,CAIR"}
@@ -1,57 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DRIVER_SEARCH_IMMEDIATE_EXPANSION_CHANNEL = void 0;
4
- exports.computeExpansionRadii = computeExpansionRadii;
5
- exports.getExpansionPhaseFromRadius = getExpansionPhaseFromRadius;
6
- exports.getNextExpansionRadius = getNextExpansionRadius;
7
- exports.getPhaseWaitMs = getPhaseWaitMs;
8
- /** Canal Redis para solicitar expansión inmediata cuando no hay conductores. */
9
- exports.DRIVER_SEARCH_IMMEDIATE_EXPANSION_CHANNEL = 'trip:radius:expand:immediate';
10
- function roundKm(value) {
11
- return Math.round(value * 100) / 100;
12
- }
13
- /** Radios por fase. La expansión 2 es el punto medio entre la 1 y la máxima. */
14
- function computeExpansionRadii(config) {
15
- const initial = roundKm(config.initialRadiusKm);
16
- const expansion1 = roundKm(config.firstExpansionRadiusKm);
17
- const expansion3 = roundKm(config.maxRadiusKm);
18
- const expansion2 = roundKm((expansion1 + expansion3) / 2);
19
- return {
20
- initial,
21
- expansion1,
22
- expansion2,
23
- expansion3,
24
- };
25
- }
26
- /** Fase actual (0=inicial, 1..3=tras cada expansión). */
27
- function getExpansionPhaseFromRadius(radiusKm, radii) {
28
- if (radiusKm >= radii.expansion3)
29
- return 3;
30
- if (radiusKm >= radii.expansion2)
31
- return 2;
32
- if (radiusKm >= radii.expansion1)
33
- return 1;
34
- return 0;
35
- }
36
- /** Radio objetivo de la siguiente expansión, o null si ya está en fase 3. */
37
- function getNextExpansionRadius(currentPhase, radii) {
38
- switch (currentPhase) {
39
- case 0:
40
- return radii.expansion1;
41
- case 1:
42
- return radii.expansion2;
43
- case 2:
44
- return radii.expansion3;
45
- default:
46
- return null;
47
- }
48
- }
49
- /** Tiempo de espera (ms) antes de la siguiente expansión programada por tiempo. */
50
- function getPhaseWaitMs(currentPhase, phase1WaitSeconds, phase2WaitSeconds) {
51
- if (currentPhase <= 0)
52
- return phase1WaitSeconds * 1000;
53
- if (currentPhase === 1)
54
- return phase2WaitSeconds * 1000;
55
- return 0;
56
- }
57
- //# sourceMappingURL=driver-search-expansion.util.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"driver-search-expansion.util.js","sourceRoot":"","sources":["../../src/utils/driver-search-expansion.util.ts"],"names":[],"mappings":";;;AAsBA,sDAcC;AAGD,kEAQC;AAGD,wDAcC;AAGD,wCAQC;AA3ED,gFAAgF;AACnE,QAAA,yCAAyC,GACpD,8BAA8B,CAAC;AAejC,SAAS,OAAO,CAAC,KAAa;IAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;AACvC,CAAC;AAED,gFAAgF;AAChF,SAAgB,qBAAqB,CACnC,MAAwC;IAExC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IAE1D,OAAO;QACL,OAAO;QACP,UAAU;QACV,UAAU;QACV,UAAU;KACX,CAAC;AACJ,CAAC;AAED,yDAAyD;AACzD,SAAgB,2BAA2B,CACzC,QAAgB,EAChB,KAAiC;IAEjC,IAAI,QAAQ,IAAI,KAAK,CAAC,UAAU;QAAE,OAAO,CAAC,CAAC;IAC3C,IAAI,QAAQ,IAAI,KAAK,CAAC,UAAU;QAAE,OAAO,CAAC,CAAC;IAC3C,IAAI,QAAQ,IAAI,KAAK,CAAC,UAAU;QAAE,OAAO,CAAC,CAAC;IAC3C,OAAO,CAAC,CAAC;AACX,CAAC;AAED,6EAA6E;AAC7E,SAAgB,sBAAsB,CACpC,YAAoB,EACpB,KAAiC;IAEjC,QAAQ,YAAY,EAAE,CAAC;QACrB,KAAK,CAAC;YACJ,OAAO,KAAK,CAAC,UAAU,CAAC;QAC1B,KAAK,CAAC;YACJ,OAAO,KAAK,CAAC,UAAU,CAAC;QAC1B,KAAK,CAAC;YACJ,OAAO,KAAK,CAAC,UAAU,CAAC;QAC1B;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,mFAAmF;AACnF,SAAgB,cAAc,CAC5B,YAAoB,EACpB,iBAAyB,EACzB,iBAAyB;IAEzB,IAAI,YAAY,IAAI,CAAC;QAAE,OAAO,iBAAiB,GAAG,IAAI,CAAC;IACvD,IAAI,YAAY,KAAK,CAAC;QAAE,OAAO,iBAAiB,GAAG,IAAI,CAAC;IACxD,OAAO,CAAC,CAAC;AACX,CAAC"}
@@ -1,76 +0,0 @@
1
- /** Canal Redis para solicitar expansión inmediata cuando no hay conductores. */
2
- export const DRIVER_SEARCH_IMMEDIATE_EXPANSION_CHANNEL =
3
- 'trip:radius:expand:immediate';
4
-
5
- export interface DriverSearchExpansionRadii {
6
- initial: number;
7
- expansion1: number;
8
- expansion2: number;
9
- expansion3: number;
10
- }
11
-
12
- export interface DriverSearchExpansionConfigInput {
13
- initialRadiusKm: number;
14
- firstExpansionRadiusKm: number;
15
- maxRadiusKm: number;
16
- }
17
-
18
- function roundKm(value: number): number {
19
- return Math.round(value * 100) / 100;
20
- }
21
-
22
- /** Radios por fase. La expansión 2 es el punto medio entre la 1 y la máxima. */
23
- export function computeExpansionRadii(
24
- config: DriverSearchExpansionConfigInput,
25
- ): DriverSearchExpansionRadii {
26
- const initial = roundKm(config.initialRadiusKm);
27
- const expansion1 = roundKm(config.firstExpansionRadiusKm);
28
- const expansion3 = roundKm(config.maxRadiusKm);
29
- const expansion2 = roundKm((expansion1 + expansion3) / 2);
30
-
31
- return {
32
- initial,
33
- expansion1,
34
- expansion2,
35
- expansion3,
36
- };
37
- }
38
-
39
- /** Fase actual (0=inicial, 1..3=tras cada expansión). */
40
- export function getExpansionPhaseFromRadius(
41
- radiusKm: number,
42
- radii: DriverSearchExpansionRadii,
43
- ): number {
44
- if (radiusKm >= radii.expansion3) return 3;
45
- if (radiusKm >= radii.expansion2) return 2;
46
- if (radiusKm >= radii.expansion1) return 1;
47
- return 0;
48
- }
49
-
50
- /** Radio objetivo de la siguiente expansión, o null si ya está en fase 3. */
51
- export function getNextExpansionRadius(
52
- currentPhase: number,
53
- radii: DriverSearchExpansionRadii,
54
- ): number | null {
55
- switch (currentPhase) {
56
- case 0:
57
- return radii.expansion1;
58
- case 1:
59
- return radii.expansion2;
60
- case 2:
61
- return radii.expansion3;
62
- default:
63
- return null;
64
- }
65
- }
66
-
67
- /** Tiempo de espera (ms) antes de la siguiente expansión programada por tiempo. */
68
- export function getPhaseWaitMs(
69
- currentPhase: number,
70
- phase1WaitSeconds: number,
71
- phase2WaitSeconds: number,
72
- ): number {
73
- if (currentPhase <= 0) return phase1WaitSeconds * 1000;
74
- if (currentPhase === 1) return phase2WaitSeconds * 1000;
75
- return 0;
76
- }