@fiado/type-kit 3.503.0 → 3.504.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.
- package/_test_/unit/retailCommission/commissionRules.test.ts +4 -0
- package/bin/retailCommission/dtos/CommissionApi.d.ts +5 -0
- package/bin/retailCommission/dtos/CommissionRule.d.ts +3 -0
- package/bin/retailCommission/enums/CommissionCountByEnum.d.ts +10 -0
- package/bin/retailCommission/enums/CommissionCountByEnum.js +14 -0
- package/bin/retailCommission/index.d.ts +1 -0
- package/bin/retailCommission/index.js +1 -0
- package/package.json +1 -1
- package/src/retailCommission/dtos/CommissionApi.ts +5 -0
- package/src/retailCommission/dtos/CommissionRule.ts +3 -0
- package/src/retailCommission/enums/CommissionCountByEnum.ts +10 -0
- package/src/retailCommission/index.ts +1 -0
|
@@ -24,6 +24,10 @@ describe('retailCommission — enums de las reglas', () => {
|
|
|
24
24
|
expect(Object.values(RetailCommission.CommissionOperatorEnum)).toEqual(['GTE', 'LTE', 'LT', 'GT', 'BETWEEN', 'IN']);
|
|
25
25
|
});
|
|
26
26
|
|
|
27
|
+
it('una regla cuenta piezas o ventas', () => {
|
|
28
|
+
expect(Object.values(RetailCommission.CommissionCountByEnum)).toEqual(['PIECE', 'SALE']);
|
|
29
|
+
});
|
|
30
|
+
|
|
27
31
|
it('expone las ventanas del corte', () => {
|
|
28
32
|
expect(Object.values(RetailCommission.CommissionWindowEnum)).toEqual(['SEMANA_OPERATIVA', 'ROLLING_7D', 'MES']);
|
|
29
33
|
});
|
|
@@ -5,6 +5,7 @@ import type { CommissionAccrual, CommissionAppliedBonus, CommissionSaleInput, Co
|
|
|
5
5
|
import type { CommissionAdjustment, CommissionAppliedMultiplier, CommissionAppliedThreshold, CommissionPayout, CommissionPayoutSeller, CommissionSellerBreakdown } from './CommissionPayout';
|
|
6
6
|
import type { CommissionPolicies, CommissionRule, CommissionRuleCondition, CommissionRuleLevers, CommissionRuleScope, CommissionRuleSetSnapshot } from './CommissionRule';
|
|
7
7
|
import type { CommissionWindowEnum } from '../enums/CommissionWindowEnum';
|
|
8
|
+
import type { CommissionCountByEnum } from '../enums/CommissionCountByEnum';
|
|
8
9
|
import type { CommissionAggregateByEnum } from '../enums/CommissionAggregateByEnum';
|
|
9
10
|
import type { CommissionSeriesByEnum } from '../enums/CommissionSeriesByEnum';
|
|
10
11
|
import type { CommissionAccrualStatusEnum } from '../enums/CommissionAccrualStatusEnum';
|
|
@@ -194,6 +195,8 @@ export interface CommissionRuleInput {
|
|
|
194
195
|
effectiveTo: string | null;
|
|
195
196
|
priority: number;
|
|
196
197
|
replacesOthers: boolean;
|
|
198
|
+
/** Si la regla cuenta piezas o ventas. Ausente = `PIECE`. */
|
|
199
|
+
countBy?: CommissionCountByEnum;
|
|
197
200
|
}
|
|
198
201
|
/** `POST /backoffice/commissions/rules` — la regla nace en borrador. */
|
|
199
202
|
export type CreateRuleRequest = CommissionRuleInput;
|
|
@@ -370,6 +373,8 @@ export interface CommissionRuleView {
|
|
|
370
373
|
condition: CommissionRuleCondition | null;
|
|
371
374
|
effectiveFrom: string;
|
|
372
375
|
effectiveTo: string | null;
|
|
376
|
+
/** Si la regla cuenta piezas o ventas. Ausente = `PIECE`. */
|
|
377
|
+
countBy?: CommissionCountByEnum;
|
|
373
378
|
}
|
|
374
379
|
/** Lo pagado en varios cortes. */
|
|
375
380
|
export interface MyCommissionsTotals {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { ProductCategoryEnum } from '../../retailCatalog/enums/ProductCategoryEnum';
|
|
2
2
|
import type { ProductTierEnum } from '../../retailCatalog/enums/ProductTierEnum';
|
|
3
3
|
import type { CommissionBonusModeEnum } from '../enums/CommissionBonusModeEnum';
|
|
4
|
+
import type { CommissionCountByEnum } from '../enums/CommissionCountByEnum';
|
|
4
5
|
import type { CommissionMetricEnum } from '../enums/CommissionMetricEnum';
|
|
5
6
|
import type { CommissionOperatorEnum } from '../enums/CommissionOperatorEnum';
|
|
6
7
|
import type { CommissionRuleStatusEnum } from '../enums/CommissionRuleStatusEnum';
|
|
@@ -72,6 +73,8 @@ export interface CommissionRule {
|
|
|
72
73
|
priority: number;
|
|
73
74
|
/** Solo con multiplicador: si dispara, es el único multiplicador del corte. */
|
|
74
75
|
replacesOthers: boolean;
|
|
76
|
+
/** Si la regla cuenta piezas o ventas. Ausente = `PIECE`. */
|
|
77
|
+
countBy?: CommissionCountByEnum;
|
|
75
78
|
/** Sube en cada guardado. */
|
|
76
79
|
version: number;
|
|
77
80
|
/** La versión que está en el plan vigente. `null` si nunca se publicó. */
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Qué cuenta una regla para su posición y su bono por venta.
|
|
3
|
+
*
|
|
4
|
+
* PIECE - Cada pieza vendida: una venta con teléfono y funda son dos.
|
|
5
|
+
* SALE - Cada venta (ticket), sin importar cuántas piezas lleve.
|
|
6
|
+
*/
|
|
7
|
+
export declare enum CommissionCountByEnum {
|
|
8
|
+
PIECE = "PIECE",
|
|
9
|
+
SALE = "SALE"
|
|
10
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CommissionCountByEnum = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Qué cuenta una regla para su posición y su bono por venta.
|
|
6
|
+
*
|
|
7
|
+
* PIECE - Cada pieza vendida: una venta con teléfono y funda son dos.
|
|
8
|
+
* SALE - Cada venta (ticket), sin importar cuántas piezas lleve.
|
|
9
|
+
*/
|
|
10
|
+
var CommissionCountByEnum;
|
|
11
|
+
(function (CommissionCountByEnum) {
|
|
12
|
+
CommissionCountByEnum["PIECE"] = "PIECE";
|
|
13
|
+
CommissionCountByEnum["SALE"] = "SALE";
|
|
14
|
+
})(CommissionCountByEnum || (exports.CommissionCountByEnum = CommissionCountByEnum = {}));
|
|
@@ -16,6 +16,7 @@ export * from './enums/CommissionBonusModeEnum';
|
|
|
16
16
|
export * from './enums/CommissionMetricEnum';
|
|
17
17
|
export * from './enums/CommissionOperatorEnum';
|
|
18
18
|
export * from './enums/CommissionWindowEnum';
|
|
19
|
+
export * from './enums/CommissionCountByEnum';
|
|
19
20
|
export * from './enums/CommissionAggregateByEnum';
|
|
20
21
|
export * from './enums/CommissionSeriesByEnum';
|
|
21
22
|
export * from './enums/CommissionSimulationSkipEnum';
|
|
@@ -33,6 +33,7 @@ __exportStar(require("./enums/CommissionBonusModeEnum"), exports);
|
|
|
33
33
|
__exportStar(require("./enums/CommissionMetricEnum"), exports);
|
|
34
34
|
__exportStar(require("./enums/CommissionOperatorEnum"), exports);
|
|
35
35
|
__exportStar(require("./enums/CommissionWindowEnum"), exports);
|
|
36
|
+
__exportStar(require("./enums/CommissionCountByEnum"), exports);
|
|
36
37
|
__exportStar(require("./enums/CommissionAggregateByEnum"), exports);
|
|
37
38
|
__exportStar(require("./enums/CommissionSeriesByEnum"), exports);
|
|
38
39
|
__exportStar(require("./enums/CommissionSimulationSkipEnum"), exports);
|
package/package.json
CHANGED
|
@@ -24,6 +24,7 @@ import type {
|
|
|
24
24
|
CommissionRuleSetSnapshot,
|
|
25
25
|
} from './CommissionRule';
|
|
26
26
|
import type { CommissionWindowEnum } from '../enums/CommissionWindowEnum';
|
|
27
|
+
import type { CommissionCountByEnum } from '../enums/CommissionCountByEnum';
|
|
27
28
|
import type { CommissionAggregateByEnum } from '../enums/CommissionAggregateByEnum';
|
|
28
29
|
import type { CommissionSeriesByEnum } from '../enums/CommissionSeriesByEnum';
|
|
29
30
|
import type { CommissionAccrualStatusEnum } from '../enums/CommissionAccrualStatusEnum';
|
|
@@ -251,6 +252,8 @@ export interface CommissionRuleInput {
|
|
|
251
252
|
effectiveTo: string | null;
|
|
252
253
|
priority: number;
|
|
253
254
|
replacesOthers: boolean;
|
|
255
|
+
/** Si la regla cuenta piezas o ventas. Ausente = `PIECE`. */
|
|
256
|
+
countBy?: CommissionCountByEnum;
|
|
254
257
|
}
|
|
255
258
|
|
|
256
259
|
/** `POST /backoffice/commissions/rules` — la regla nace en borrador. */
|
|
@@ -447,6 +450,8 @@ export interface CommissionRuleView {
|
|
|
447
450
|
condition: CommissionRuleCondition | null;
|
|
448
451
|
effectiveFrom: string;
|
|
449
452
|
effectiveTo: string | null;
|
|
453
|
+
/** Si la regla cuenta piezas o ventas. Ausente = `PIECE`. */
|
|
454
|
+
countBy?: CommissionCountByEnum;
|
|
450
455
|
}
|
|
451
456
|
|
|
452
457
|
/** Lo pagado en varios cortes. */
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { ProductCategoryEnum } from '../../retailCatalog/enums/ProductCategoryEnum';
|
|
2
2
|
import type { ProductTierEnum } from '../../retailCatalog/enums/ProductTierEnum';
|
|
3
3
|
import type { CommissionBonusModeEnum } from '../enums/CommissionBonusModeEnum';
|
|
4
|
+
import type { CommissionCountByEnum } from '../enums/CommissionCountByEnum';
|
|
4
5
|
import type { CommissionMetricEnum } from '../enums/CommissionMetricEnum';
|
|
5
6
|
import type { CommissionOperatorEnum } from '../enums/CommissionOperatorEnum';
|
|
6
7
|
import type { CommissionRuleStatusEnum } from '../enums/CommissionRuleStatusEnum';
|
|
@@ -81,6 +82,8 @@ export interface CommissionRule {
|
|
|
81
82
|
priority: number;
|
|
82
83
|
/** Solo con multiplicador: si dispara, es el único multiplicador del corte. */
|
|
83
84
|
replacesOthers: boolean;
|
|
85
|
+
/** Si la regla cuenta piezas o ventas. Ausente = `PIECE`. */
|
|
86
|
+
countBy?: CommissionCountByEnum;
|
|
84
87
|
/** Sube en cada guardado. */
|
|
85
88
|
version: number;
|
|
86
89
|
/** La versión que está en el plan vigente. `null` si nunca se publicó. */
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Qué cuenta una regla para su posición y su bono por venta.
|
|
3
|
+
*
|
|
4
|
+
* PIECE - Cada pieza vendida: una venta con teléfono y funda son dos.
|
|
5
|
+
* SALE - Cada venta (ticket), sin importar cuántas piezas lleve.
|
|
6
|
+
*/
|
|
7
|
+
export enum CommissionCountByEnum {
|
|
8
|
+
PIECE = 'PIECE',
|
|
9
|
+
SALE = 'SALE',
|
|
10
|
+
}
|
|
@@ -17,6 +17,7 @@ export * from './enums/CommissionBonusModeEnum';
|
|
|
17
17
|
export * from './enums/CommissionMetricEnum';
|
|
18
18
|
export * from './enums/CommissionOperatorEnum';
|
|
19
19
|
export * from './enums/CommissionWindowEnum';
|
|
20
|
+
export * from './enums/CommissionCountByEnum';
|
|
20
21
|
export * from './enums/CommissionAggregateByEnum';
|
|
21
22
|
export * from './enums/CommissionSeriesByEnum';
|
|
22
23
|
export * from './enums/CommissionSimulationSkipEnum';
|