@fiado/type-kit 3.275.0 → 3.277.0

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.
Files changed (52) hide show
  1. package/bin/biometrics/dtos/BiometricDelivery.d.ts +36 -4
  2. package/bin/biometrics/dtos/BiometricDelivery.js +40 -1
  3. package/bin/biometrics/dtos/requests/CreateBiometricVerificationRequest.d.ts +18 -0
  4. package/bin/biometrics/dtos/requests/CreateBiometricVerificationRequest.js +7 -0
  5. package/bin/biometrics/enums/BiometricDeliveryModeEnum.d.ts +14 -1
  6. package/bin/biometrics/enums/BiometricDeliveryModeEnum.js +14 -1
  7. package/bin/helpdesk/dtos/ZendeskInternalAlertRequest.d.ts +8 -2
  8. package/bin/helpdesk/dtos/ZendeskInternalAlertRequest.js +5 -3
  9. package/bin/retailOrg/dtos/GoalAmounts.d.ts +18 -0
  10. package/bin/retailOrg/dtos/GoalAmounts.js +2 -0
  11. package/bin/retailOrg/dtos/requests/GoalListQuery.d.ts +16 -0
  12. package/bin/retailOrg/dtos/requests/GoalListQuery.js +35 -0
  13. package/bin/retailOrg/dtos/requests/GoalPathParams.d.ts +14 -0
  14. package/bin/retailOrg/dtos/requests/GoalPathParams.js +41 -0
  15. package/bin/retailOrg/dtos/requests/GoalUpsertRequest.d.ts +34 -0
  16. package/bin/retailOrg/dtos/requests/GoalUpsertRequest.js +60 -0
  17. package/bin/retailOrg/dtos/requests/KpiQuery.d.ts +9 -0
  18. package/bin/retailOrg/dtos/requests/KpiQuery.js +29 -0
  19. package/bin/retailOrg/dtos/requests/PrivateSellerListQuery.d.ts +27 -0
  20. package/bin/retailOrg/dtos/requests/PrivateSellerListQuery.js +45 -0
  21. package/bin/retailOrg/dtos/responses/GoalListResponse.d.ts +18 -0
  22. package/bin/retailOrg/dtos/responses/GoalListResponse.js +2 -0
  23. package/bin/retailOrg/dtos/responses/GoalUpsertResponse.d.ts +10 -0
  24. package/bin/retailOrg/dtos/responses/GoalUpsertResponse.js +2 -0
  25. package/bin/retailOrg/dtos/responses/SellerKpiResponse.d.ts +27 -0
  26. package/bin/retailOrg/dtos/responses/SellerKpiResponse.js +2 -0
  27. package/bin/retailOrg/dtos/responses/StoreKpiResponse.d.ts +34 -0
  28. package/bin/retailOrg/dtos/responses/StoreKpiResponse.js +2 -0
  29. package/bin/retailOrg/dtos/validation/PrivateSellerListResponse.d.ts +30 -0
  30. package/bin/retailOrg/dtos/validation/PrivateSellerListResponse.js +2 -0
  31. package/bin/retailOrg/enums/GoalTargetTypeEnum.d.ts +11 -0
  32. package/bin/retailOrg/enums/GoalTargetTypeEnum.js +15 -0
  33. package/bin/retailOrg/index.d.ts +12 -0
  34. package/bin/retailOrg/index.js +14 -0
  35. package/package.json +1 -1
  36. package/src/biometrics/dtos/BiometricDelivery.ts +48 -4
  37. package/src/biometrics/dtos/requests/CreateBiometricVerificationRequest.ts +20 -0
  38. package/src/biometrics/enums/BiometricDeliveryModeEnum.ts +15 -1
  39. package/src/helpdesk/dtos/ZendeskInternalAlertRequest.ts +12 -4
  40. package/src/retailOrg/dtos/GoalAmounts.ts +18 -0
  41. package/src/retailOrg/dtos/requests/GoalListQuery.ts +25 -0
  42. package/src/retailOrg/dtos/requests/GoalPathParams.ts +25 -0
  43. package/src/retailOrg/dtos/requests/GoalUpsertRequest.ts +66 -0
  44. package/src/retailOrg/dtos/requests/KpiQuery.ts +15 -0
  45. package/src/retailOrg/dtos/requests/PrivateSellerListQuery.ts +43 -0
  46. package/src/retailOrg/dtos/responses/GoalListResponse.ts +20 -0
  47. package/src/retailOrg/dtos/responses/GoalUpsertResponse.ts +10 -0
  48. package/src/retailOrg/dtos/responses/SellerKpiResponse.ts +29 -0
  49. package/src/retailOrg/dtos/responses/StoreKpiResponse.ts +36 -0
  50. package/src/retailOrg/dtos/validation/PrivateSellerListResponse.ts +32 -0
  51. package/src/retailOrg/enums/GoalTargetTypeEnum.ts +11 -0
  52. package/src/retailOrg/index.ts +14 -0
@@ -0,0 +1,36 @@
1
+ import type { GoalAmounts } from '../GoalAmounts';
2
+
3
+ /**
4
+ * Volumen vendido en el periodo, según el data lake.
5
+ *
6
+ * 🔴 `soldCents` NO es `amountCents` de la venta. Es `COALESCE(equipmentPriceCents, amountCents)` —
7
+ * volumen **colocado**, por DEC-032. En una venta a crédito `amountCents` es solo el enganche: un
8
+ * equipo de $5,000 financiado aportaría $1,300 y el vendedor cobraría comisión sobre eso.
9
+ */
10
+ export interface SoldAggregate {
11
+ pieces: number;
12
+ soldCents: number;
13
+ }
14
+
15
+ /**
16
+ * Respuesta de `GET /backoffice/stores/{storeId}/kpis` — el drawer de una tienda.
17
+ *
18
+ * 🔴 **`null`, nunca `0`.** Un `0` dice *«no vendió»*; un `null` dice *«no sé todavía»*, y la UI lo
19
+ * pinta `—`. Un 0 % de meta a media tarde manda a alguien a corregir algo que nadie fijó.
20
+ *
21
+ * `sellersActive` es la excepción: sale del padrón (`RetailUser_GT`), siempre se puede contar, y `0`
22
+ * ahí SÍ es un dato — una tienda sin vendedores asignados.
23
+ */
24
+ export interface StoreKpiResponse {
25
+ storeId: string;
26
+ name: string;
27
+ zoneId: string | null;
28
+ /** Vendedores ACTIVE con esta tienda como `homeStoreId`. `0` es válido. */
29
+ sellersActive: number;
30
+ /** `null` si no se fijó meta para el periodo. */
31
+ goal: GoalAmounts | null;
32
+ /** `null` si el lake no contestó (o si está apagado por flag). NUNCA ceros. */
33
+ sold: SoldAggregate | null;
34
+ /** Avance sobre la meta mensual, 1 decimal. `null` si falta cualquiera de los dos. */
35
+ goalPct: number | null;
36
+ }
@@ -0,0 +1,32 @@
1
+ import type { RetailUserStatusEnum } from '../../enums/RetailUserStatusEnum';
2
+
3
+ /**
4
+ * Shape mínimo de un vendedor para el motor de comisiones (F3b): a quién pagarle, de qué tienda es y
5
+ * en qué tier va.
6
+ *
7
+ * **Sin PII** — nada de teléfono ni `cognitoSub`. `displayName` es el rótulo de conveniencia con el
8
+ * que el motor arma su reporte de devengo; no es identidad (la identidad vive en RBAC).
9
+ *
10
+ * `commissionTier` no es adorno: es lo que el motor usa para resolver CUÁNTO le toca a cada vendedor
11
+ * según el plan de comisiones vigente.
12
+ */
13
+ export interface PrivateSellerDto {
14
+ sellerId: string;
15
+ displayName: string | null;
16
+ homeStoreId: string | null;
17
+ commissionTier: string;
18
+ status: RetailUserStatusEnum;
19
+ }
20
+
21
+ /**
22
+ * Respuesta de `GET /private/sellers?retailerId=…` — el padrón de una cadena, para máquinas.
23
+ *
24
+ * ⚠️ `status` viene en cada fila a propósito. Un vendedor dado de baja a mitad de periodo **sí tiene
25
+ * comisión** por lo que vendió antes, así que el filtro `?status=` es una conveniencia y el motor de
26
+ * comisiones probablemente tenga que pedir TODOS. Pedir solo activos y perder a alguien que renunció
27
+ * el día 20 sería un error caro.
28
+ */
29
+ export interface PrivateSellerListResponse {
30
+ retailerId: string;
31
+ sellers: PrivateSellerDto[];
32
+ }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * A quién se le fija una meta de venta del periodo (SureKeep F3, Portal Admin VentasLuga).
3
+ *
4
+ * Es parte de la SORT KEY de `RetailGoal_GT` (`GOAL#<periodId>#<targetType>#<targetId>`), así que
5
+ * los valores son contrato de datos, no solo de API: cambiar un literal deja huérfanas las filas ya
6
+ * escritas. Solo hay dos targets y no se prevén más — la meta de una zona sale de sumar sus tiendas.
7
+ */
8
+ export enum GoalTargetTypeEnum {
9
+ STORE = 'STORE',
10
+ SELLER = 'SELLER',
11
+ }
@@ -5,9 +5,12 @@ export * from './enums/StoreStatusEnum';
5
5
  export * from './enums/RetailUserStatusEnum';
6
6
  export * from './enums/EmploymentTypeEnum';
7
7
  export * from './enums/CollectorSeniorityEnum';
8
+ // F3 — Portal Admin VentasLuga (metas de venta del periodo)
9
+ export * from './enums/GoalTargetTypeEnum';
8
10
 
9
11
  // Entity DTOs
10
12
  export * from './dtos/GeoLocation';
13
+ export * from './dtos/GoalAmounts';
11
14
  export * from './dtos/Retailer';
12
15
  export * from './dtos/Zone';
13
16
  export * from './dtos/Store';
@@ -18,6 +21,7 @@ export * from './dtos/validation/RetailerValidationDto';
18
21
  export * from './dtos/validation/StoreValidationDto';
19
22
  export * from './dtos/validation/RetailUserValidationDto';
20
23
  export * from './dtos/validation/CollectorValidationDto';
24
+ export * from './dtos/validation/PrivateSellerListResponse';
21
25
 
22
26
  // Paginación genérica
23
27
  export * from './dtos/PaginatedResult';
@@ -39,6 +43,16 @@ export * from './dtos/requests/ProvisionRetailUserRequest';
39
43
  export * from './dtos/requests/UpdateRetailUserRequest';
40
44
  export * from './dtos/requests/ChangeRetailUserStatusRequest';
41
45
  export * from './dtos/requests/TransferRetailUserRequest';
46
+ // F3 — metas y KPIs del Portal Admin VL
47
+ export * from './dtos/requests/GoalListQuery';
48
+ export * from './dtos/requests/GoalUpsertRequest';
49
+ export * from './dtos/requests/GoalPathParams';
50
+ export * from './dtos/requests/KpiQuery';
51
+ export * from './dtos/requests/PrivateSellerListQuery';
42
52
 
43
53
  // Response DTOs
44
54
  export * from './dtos/responses/RetailerHierarchyResponse';
55
+ export * from './dtos/responses/GoalListResponse';
56
+ export * from './dtos/responses/GoalUpsertResponse';
57
+ export * from './dtos/responses/StoreKpiResponse';
58
+ export * from './dtos/responses/SellerKpiResponse';