b2m-utils 0.0.216 → 0.0.218
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/build/functions/getLaneFromRatecard/index.d.ts +22 -1
- package/build/index.esm.js +77 -25
- package/build/index.esm.js.gz +0 -0
- package/build/index.esm.js.map +1 -1
- package/build/index.js +77 -25
- package/build/index.js.gz +0 -0
- package/build/index.js.map +1 -1
- package/build/types/Cte/index.d.ts +3 -0
- package/package.json +1 -1
package/build/index.js
CHANGED
|
@@ -222,12 +222,12 @@ var getRatecardFromCte = function (cte) {
|
|
|
222
222
|
var ratecard = null;
|
|
223
223
|
if (((_a = cte.carrier) === null || _a === void 0 ? void 0 : _a.Ratecard) && ((_c = (_b = cte.carrier) === null || _b === void 0 ? void 0 : _b.Ratecard) === null || _c === void 0 ? void 0 : _c.length) > 0) {
|
|
224
224
|
var today_1 = new Date();
|
|
225
|
-
switch (cte.
|
|
226
|
-
case exports.
|
|
225
|
+
switch (cte.ratecardModalId) {
|
|
226
|
+
case exports.RatecardModalEnum.ROAD_DOMESTIC_FTL:
|
|
227
227
|
var ratecardForRoadFTL = cte.carrier.Ratecard.find(function (ratecard) {
|
|
228
228
|
var _a;
|
|
229
229
|
var isValidDate = (ratecard === null || ratecard === void 0 ? void 0 : ratecard.startsAt) && (ratecard === null || ratecard === void 0 ? void 0 : ratecard.endsAt) && today_1 >= new Date(ratecard.startsAt) && today_1 <= new Date(ratecard.endsAt);
|
|
230
|
-
var isValidModal = (ratecard === null || ratecard === void 0 ? void 0 : ratecard.modalId) === cte.
|
|
230
|
+
var isValidModal = (ratecard === null || ratecard === void 0 ? void 0 : ratecard.modalId) === cte.ratecardModalId;
|
|
231
231
|
var hasOriginCity = (_a = ratecard === null || ratecard === void 0 ? void 0 : ratecard.ratecard_origin_cities) === null || _a === void 0 ? void 0 : _a.some(function (city) { return city.cityId === cte.cityOriginId; });
|
|
232
232
|
return isValidDate && isValidModal && hasOriginCity;
|
|
233
233
|
});
|
|
@@ -237,7 +237,7 @@ var getRatecardFromCte = function (cte) {
|
|
|
237
237
|
break;
|
|
238
238
|
default:
|
|
239
239
|
var ratecardFromThisYear = cte.carrier.Ratecard.find(function (ratecard) {
|
|
240
|
-
return (ratecard === null || ratecard === void 0 ? void 0 : ratecard.startsAt) && (ratecard === null || ratecard === void 0 ? void 0 : ratecard.endsAt) && today_1 >= new Date(ratecard.startsAt) && today_1 <= new Date(ratecard.endsAt) && (ratecard === null || ratecard === void 0 ? void 0 : ratecard.modalId) === cte.
|
|
240
|
+
return (ratecard === null || ratecard === void 0 ? void 0 : ratecard.startsAt) && (ratecard === null || ratecard === void 0 ? void 0 : ratecard.endsAt) && today_1 >= new Date(ratecard.startsAt) && today_1 <= new Date(ratecard.endsAt) && (ratecard === null || ratecard === void 0 ? void 0 : ratecard.modalId) === cte.ratecardModalId;
|
|
241
241
|
});
|
|
242
242
|
if (ratecardFromThisYear) {
|
|
243
243
|
ratecard = ratecardFromThisYear;
|
|
@@ -7159,33 +7159,85 @@ var getFilteredFeesToAudit = function (_a) {
|
|
|
7159
7159
|
};
|
|
7160
7160
|
|
|
7161
7161
|
var getLaneFromRatecard = function (cte) {
|
|
7162
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
7162
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
7163
7163
|
var ratecard = getRatecardFromCte(cte);
|
|
7164
7164
|
var cityOriginId = cte.cityOriginId, cityDestination = cte.cityDestination;
|
|
7165
7165
|
var destinationUf = (_a = cityDestination === null || cityDestination === void 0 ? void 0 : cityDestination.state) === null || _a === void 0 ? void 0 : _a.uf;
|
|
7166
7166
|
// Encontrar a ratecardRegion da cidade de destino
|
|
7167
7167
|
var destinationRatecardRegionId = (_c = (_b = ratecard === null || ratecard === void 0 ? void 0 : ratecard.RatecardRegionCity) === null || _b === void 0 ? void 0 : _b.find(function (regionCity) { return regionCity.cityId === (cityDestination === null || cityDestination === void 0 ? void 0 : cityDestination.id); })) === null || _c === void 0 ? void 0 : _c.ratecardRegionId;
|
|
7168
|
-
if ((ratecard === null || ratecard === void 0 ? void 0 : ratecard.RatecardLane)
|
|
7169
|
-
|
|
7170
|
-
|
|
7171
|
-
|
|
7172
|
-
|
|
7173
|
-
|
|
7174
|
-
|
|
7175
|
-
|
|
7176
|
-
|
|
7177
|
-
|
|
7178
|
-
|
|
7179
|
-
|
|
7180
|
-
|
|
7181
|
-
|
|
7182
|
-
|
|
7183
|
-
|
|
7184
|
-
|
|
7185
|
-
|
|
7186
|
-
|
|
7168
|
+
if (!(ratecard === null || ratecard === void 0 ? void 0 : ratecard.RatecardLane) || ((_d = ratecard === null || ratecard === void 0 ? void 0 : ratecard.RatecardLane) === null || _d === void 0 ? void 0 : _d.length) === 0) {
|
|
7169
|
+
return undefined;
|
|
7170
|
+
}
|
|
7171
|
+
// Lógica diferenciada por modal
|
|
7172
|
+
switch (ratecard.modalId) {
|
|
7173
|
+
case exports.RatecardModalEnum.ROAD_DOMESTIC_FTL:
|
|
7174
|
+
// FTL: Verificar rota por UF de destino
|
|
7175
|
+
if (destinationUf) {
|
|
7176
|
+
var directLane = ratecard.RatecardLane.find(function (i) {
|
|
7177
|
+
return i.ufDestination === destinationUf && i.ratecardRegionId === destinationRatecardRegionId;
|
|
7178
|
+
});
|
|
7179
|
+
if (directLane) {
|
|
7180
|
+
return directLane;
|
|
7181
|
+
}
|
|
7182
|
+
// Fallback: Verificar se existe lane única com fees de KM e cidade origem no ratecard_origin_cities
|
|
7183
|
+
var uniqueLane = ratecard.RatecardLane[0];
|
|
7184
|
+
// Verificar se a lane tem fees com intervalo de KM
|
|
7185
|
+
var hasKmFees = (_e = uniqueLane === null || uniqueLane === void 0 ? void 0 : uniqueLane.RatecardLaneFee) === null || _e === void 0 ? void 0 : _e.some(function (fee) { return fee.minKm !== null; });
|
|
7186
|
+
// Verificar se a cidade de origem está no ratecard_origin_cities
|
|
7187
|
+
var hasOriginCity = (_f = ratecard.ratecard_origin_cities) === null || _f === void 0 ? void 0 : _f.some(function (originCity) { return originCity.cityId === cityOriginId; });
|
|
7188
|
+
if (hasKmFees && hasOriginCity) {
|
|
7189
|
+
// Mockar informações para exibição no frontend
|
|
7190
|
+
return __assign(__assign({}, uniqueLane), { city: cte.cityOrigin, ufDestination: destinationUf, ratecardRegion: uniqueLane.ratecardRegion || { name: destinationUf } });
|
|
7191
|
+
}
|
|
7192
|
+
// Rota inversa FTL: Verificar se cidade de destino está em ratecard_origin_cities
|
|
7193
|
+
var originUf_1 = (_h = (_g = cte.cityOrigin) === null || _g === void 0 ? void 0 : _g.state) === null || _h === void 0 ? void 0 : _h.uf;
|
|
7194
|
+
if (originUf_1) {
|
|
7195
|
+
// Verificar se existe lane com ufDestination = originUf
|
|
7196
|
+
var reverseLane = ratecard.RatecardLane.find(function (i) {
|
|
7197
|
+
return i.ufDestination === originUf_1;
|
|
7198
|
+
});
|
|
7199
|
+
if (reverseLane) {
|
|
7200
|
+
// Verificar se a cidade de destino está no ratecard_origin_cities
|
|
7201
|
+
var hasDestinationCity = (_j = ratecard.ratecard_origin_cities) === null || _j === void 0 ? void 0 : _j.some(function (originCity) { return originCity.cityId === (cityDestination === null || cityDestination === void 0 ? void 0 : cityDestination.id); });
|
|
7202
|
+
if (hasDestinationCity) {
|
|
7203
|
+
return reverseLane;
|
|
7204
|
+
}
|
|
7205
|
+
}
|
|
7206
|
+
// Fallback inverso: Lane única com cidade de destino em ratecard_origin_cities
|
|
7207
|
+
var hasDestinationCityInOrigins = (_k = ratecard.ratecard_origin_cities) === null || _k === void 0 ? void 0 : _k.some(function (originCity) { return originCity.cityId === (cityDestination === null || cityDestination === void 0 ? void 0 : cityDestination.id); });
|
|
7208
|
+
if (hasKmFees && hasDestinationCityInOrigins) {
|
|
7209
|
+
// Mockar informações para exibição no frontend (rota inversa)
|
|
7210
|
+
return __assign(__assign({}, uniqueLane), { city: cityDestination, ufDestination: originUf_1, ratecardRegion: uniqueLane.ratecardRegion || { name: originUf_1 } });
|
|
7211
|
+
}
|
|
7212
|
+
}
|
|
7187
7213
|
}
|
|
7188
|
-
|
|
7214
|
+
break;
|
|
7215
|
+
case exports.RatecardModalEnum.ROAD_DOMESTIC_LTL:
|
|
7216
|
+
default:
|
|
7217
|
+
// LTL: Lógica original (rota direta + inversa)
|
|
7218
|
+
if (cityOriginId && destinationUf) {
|
|
7219
|
+
// Primeiro, buscar rota direta (Origem -> Destino)
|
|
7220
|
+
var directLane = ratecard.RatecardLane.find(function (i) {
|
|
7221
|
+
return i.cityOriginId === cityOriginId && i.ufDestination === destinationUf && i.ratecardRegionId === destinationRatecardRegionId;
|
|
7222
|
+
});
|
|
7223
|
+
if (directLane) {
|
|
7224
|
+
return directLane;
|
|
7225
|
+
}
|
|
7226
|
+
// Se não encontrar rota direta, buscar rota inversa (Destino -> Origem)
|
|
7227
|
+
// Para isso, precisamos encontrar a UF da origem e sua ratecardRegion
|
|
7228
|
+
var originUf_2 = (_m = (_l = cte.cityOrigin) === null || _l === void 0 ? void 0 : _l.state) === null || _m === void 0 ? void 0 : _m.uf;
|
|
7229
|
+
// Encontrar a ratecardRegion da cidade de origem
|
|
7230
|
+
var originRatecardRegionId_1 = (_p = (_o = ratecard === null || ratecard === void 0 ? void 0 : ratecard.RatecardRegionCity) === null || _o === void 0 ? void 0 : _o.find(function (regionCity) { return regionCity.cityId === cityOriginId; })) === null || _p === void 0 ? void 0 : _p.ratecardRegionId;
|
|
7231
|
+
if (originUf_2) {
|
|
7232
|
+
var reverseLane = ratecard.RatecardLane.find(function (i) {
|
|
7233
|
+
return i.cityOriginId === (cityDestination === null || cityDestination === void 0 ? void 0 : cityDestination.id) && i.ufDestination === originUf_2 && i.ratecardRegionId === originRatecardRegionId_1;
|
|
7234
|
+
});
|
|
7235
|
+
if (reverseLane) {
|
|
7236
|
+
return reverseLane;
|
|
7237
|
+
}
|
|
7238
|
+
}
|
|
7239
|
+
}
|
|
7240
|
+
break;
|
|
7189
7241
|
}
|
|
7190
7242
|
return undefined;
|
|
7191
7243
|
};
|
package/build/index.js.gz
CHANGED
|
Binary file
|