b2m-utils 0.0.284 → 0.0.286
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/index.d.ts +1 -0
- package/build/functions/matchTariffs/index.d.ts +29 -0
- package/build/index.esm.js +112 -1
- package/build/index.esm.js.gz +0 -0
- package/build/index.esm.js.map +1 -1
- package/build/index.js +119 -0
- package/build/index.js.gz +0 -0
- package/build/index.js.map +1 -1
- package/build/types/Invoice/index.d.ts +1 -0
- package/package.json +1 -1
package/build/index.js
CHANGED
|
@@ -7896,13 +7896,128 @@ var setFormattedDatesInObjects = function (objectFormat) { return __awaiter(void
|
|
|
7896
7896
|
});
|
|
7897
7897
|
}); };
|
|
7898
7898
|
|
|
7899
|
+
var TARIFF_MAPPING = {
|
|
7900
|
+
"Frete Rodo LTL Valor fixo": ["Frete", "Frete peso", "Frete Rodo", "Frete LTL", "Frete Rodo LTL"],
|
|
7901
|
+
"Pedagio cada 100kg / fração": ["Pedagio", "Pedágio", "Pedagio cada 100kg", "Pedágio cada 100kg", "Valor pedagio"],
|
|
7902
|
+
"ICMS Alíquota": ["ICMS", "ICMS Alíquota", "Imposto ICMS", "ICMS Imposto", "IMP REPASSADO"],
|
|
7903
|
+
"AdValorem % Valor NF": ["AdValorem", "Ad valorem", "Advalorem", "AdValorem NF", "Ad Valorem NF"],
|
|
7904
|
+
"GRIS % Valor NF": ["GRIS", "GRIS NF", "Seguro GRIS", "Seguro", "GRIS Seguro"],
|
|
7905
|
+
"Taxa de despacho": ["Despacho", "Taxa despacho", "Despacho aduaneiro", "Despache"],
|
|
7906
|
+
"Taxa de armazenagem": ["Armazenagem", "Armazenagem", "Estocagem", "Armazém"],
|
|
7907
|
+
"Taxa de coleta": ["Coleta", "Taxa coleta", "Coleta e entrega"],
|
|
7908
|
+
"Taxa de entrega": ["Entrega", "Taxa entrega", "Entrega urbana"],
|
|
7909
|
+
"Taxa de embarque": ["Embarque", "Taxa embarque", "Embarque/desembarque"],
|
|
7910
|
+
"TRT % Frete": ["TRT %", "TRT Percentual", "TRT percentual"],
|
|
7911
|
+
"TRT Min": ["TRT", "TRT Min", "TRT mínimo", "TRT minimo"],
|
|
7912
|
+
"TDE % Frete": ["TDE %", "TDE Percentual", "TDE percentual"],
|
|
7913
|
+
"TDE Min": ["TDE", "TDE Min", "TDE mínimo", "TDE minimo"],
|
|
7914
|
+
"Frete % Valor NF": ["Valor frete", "Valor Frete", "Frete valor", "Frete Valor", "Valor do frete"],
|
|
7915
|
+
"Taxa por conhecimento Valor fixo": ["Taxa por conhecimento", "Despacho", "DESPACHO"],
|
|
7916
|
+
"TSO % Valor NF": ["POS", "TSO"],
|
|
7917
|
+
"TSO Min": ["POS", "TSO", "TSO mínimo", "TSO minimo"],
|
|
7918
|
+
"Suframa por CTE/CRT": ["Suframa", "Suframa por CTE"],
|
|
7919
|
+
};
|
|
7920
|
+
var parseAliases = function (aliasesString) {
|
|
7921
|
+
return aliasesString
|
|
7922
|
+
.split(';')
|
|
7923
|
+
.map(function (alias) { return alias.trim(); })
|
|
7924
|
+
.filter(function (alias) { return alias.length > 0; });
|
|
7925
|
+
};
|
|
7926
|
+
var buildDynamicMapping = function (ratecardAliases) {
|
|
7927
|
+
var mapping = {};
|
|
7928
|
+
for (var _i = 0, ratecardAliases_1 = ratecardAliases; _i < ratecardAliases_1.length; _i++) {
|
|
7929
|
+
var alias = ratecardAliases_1[_i];
|
|
7930
|
+
mapping[alias.feeName] = parseAliases(alias.aliases);
|
|
7931
|
+
}
|
|
7932
|
+
return mapping;
|
|
7933
|
+
};
|
|
7934
|
+
var findAuditedMatch = function (chargedFee, auditedFees, dynamicMapping) {
|
|
7935
|
+
var directMatch = auditedFees.find(function (audited) { var _a, _b; return ((_a = audited.feeName) === null || _a === void 0 ? void 0 : _a.toLowerCase().trim()) === ((_b = chargedFee.name) === null || _b === void 0 ? void 0 : _b.toLowerCase().trim()); });
|
|
7936
|
+
if (directMatch)
|
|
7937
|
+
return directMatch;
|
|
7938
|
+
for (var _i = 0, auditedFees_1 = auditedFees; _i < auditedFees_1.length; _i++) {
|
|
7939
|
+
var auditedFee = auditedFees_1[_i];
|
|
7940
|
+
var possibleChargedNames = (dynamicMapping === null || dynamicMapping === void 0 ? void 0 : dynamicMapping[auditedFee.feeName]) ||
|
|
7941
|
+
TARIFF_MAPPING[auditedFee.feeName];
|
|
7942
|
+
if (possibleChargedNames) {
|
|
7943
|
+
var isMatch = possibleChargedNames.some(function (possibleName) { var _a; return ((_a = chargedFee.name) === null || _a === void 0 ? void 0 : _a.toLowerCase().trim()) === possibleName.toLowerCase().trim(); });
|
|
7944
|
+
if (isMatch) {
|
|
7945
|
+
return auditedFee;
|
|
7946
|
+
}
|
|
7947
|
+
}
|
|
7948
|
+
}
|
|
7949
|
+
return null;
|
|
7950
|
+
};
|
|
7951
|
+
var matchAllTariffs = function (chargedFees, auditedFees, dynamicMapping) {
|
|
7952
|
+
var results = [];
|
|
7953
|
+
var usedCharged = new Set();
|
|
7954
|
+
var usedAudited = new Set();
|
|
7955
|
+
chargedFees.forEach(function (charged) {
|
|
7956
|
+
var _a, _b;
|
|
7957
|
+
var auditedMatch = findAuditedMatch(charged, auditedFees, dynamicMapping);
|
|
7958
|
+
if (auditedMatch) {
|
|
7959
|
+
var difference = +charged.value - +((_a = auditedMatch.approvedValue) !== null && _a !== void 0 ? _a : auditedMatch.total);
|
|
7960
|
+
results.push({
|
|
7961
|
+
chargedName: charged.name,
|
|
7962
|
+
chargedValue: charged.value,
|
|
7963
|
+
auditedName: auditedMatch.feeName,
|
|
7964
|
+
auditedValue: (_b = auditedMatch.approvedValue) !== null && _b !== void 0 ? _b : auditedMatch.total,
|
|
7965
|
+
difference: Math.round(difference * 100) / 100,
|
|
7966
|
+
status: 'MATCHED'
|
|
7967
|
+
});
|
|
7968
|
+
usedCharged.add(charged.name);
|
|
7969
|
+
usedAudited.add(auditedMatch.feeName);
|
|
7970
|
+
}
|
|
7971
|
+
});
|
|
7972
|
+
chargedFees.filter(function (charged) { return !usedCharged.has(charged.name); })
|
|
7973
|
+
.forEach(function (charged) {
|
|
7974
|
+
results.push({
|
|
7975
|
+
chargedName: charged.name,
|
|
7976
|
+
chargedValue: charged.value,
|
|
7977
|
+
auditedName: 'NÃO AUDITADO',
|
|
7978
|
+
auditedValue: 0,
|
|
7979
|
+
difference: charged.value,
|
|
7980
|
+
status: 'CHARGED_ONLY'
|
|
7981
|
+
});
|
|
7982
|
+
});
|
|
7983
|
+
auditedFees.filter(function (audited) { return !usedAudited.has(audited.feeName); })
|
|
7984
|
+
.forEach(function (audited) {
|
|
7985
|
+
var _a, _b;
|
|
7986
|
+
results.push({
|
|
7987
|
+
chargedName: 'NÃO COBRADO',
|
|
7988
|
+
chargedValue: 0,
|
|
7989
|
+
auditedName: audited.feeName,
|
|
7990
|
+
auditedValue: (_a = audited.approvedValue) !== null && _a !== void 0 ? _a : audited.total,
|
|
7991
|
+
difference: -((_b = audited.approvedValue) !== null && _b !== void 0 ? _b : audited.total),
|
|
7992
|
+
status: 'AUDITED_ONLY'
|
|
7993
|
+
});
|
|
7994
|
+
});
|
|
7995
|
+
return results;
|
|
7996
|
+
};
|
|
7997
|
+
var addTariffMapping = function (auditedTariffName, chargedTariffNames) {
|
|
7998
|
+
TARIFF_MAPPING[auditedTariffName] = chargedTariffNames;
|
|
7999
|
+
};
|
|
8000
|
+
var getTariffVariations = function (auditedTariffName) {
|
|
8001
|
+
return TARIFF_MAPPING[auditedTariffName] || [auditedTariffName];
|
|
8002
|
+
};
|
|
8003
|
+
var isTariffMatch = function (chargedName, auditedTariffName) {
|
|
8004
|
+
var variations = getTariffVariations(auditedTariffName);
|
|
8005
|
+
return variations.some(function (variation) {
|
|
8006
|
+
return variation.toLowerCase().trim() === chargedName.toLowerCase().trim();
|
|
8007
|
+
});
|
|
8008
|
+
};
|
|
8009
|
+
|
|
7899
8010
|
exports.EXPORT_CTE_COLUMN_LABELS = EXPORT_CTE_COLUMN_LABELS;
|
|
7900
8011
|
exports.EXPORT_CTE_TYPE_LABELS = EXPORT_CTE_TYPE_LABELS;
|
|
8012
|
+
exports.TARIFF_MAPPING = TARIFF_MAPPING;
|
|
8013
|
+
exports.addTariffMapping = addTariffMapping;
|
|
7901
8014
|
exports.applyRedeliveryMultiplier = applyRedeliveryMultiplier;
|
|
8015
|
+
exports.buildDynamicMapping = buildDynamicMapping;
|
|
7902
8016
|
exports.calculateFee = calculateFee;
|
|
7903
8017
|
exports.calculateIcms = calculateIcms;
|
|
7904
8018
|
exports.convertNumberToCurrency = convertNumberToCurrency;
|
|
7905
8019
|
exports.filterSiblingFees = filterSiblingFees;
|
|
8020
|
+
exports.findAuditedMatch = findAuditedMatch;
|
|
7906
8021
|
exports.formatDateString = formatDateString;
|
|
7907
8022
|
exports.getAllFeesForCalculation = getAllFeesForCalculation;
|
|
7908
8023
|
exports.getAuditTotalFromCte = getAuditTotalFromCte;
|
|
@@ -7923,7 +8038,11 @@ exports.getNormalizedCityName = getNormalizedCityName;
|
|
|
7923
8038
|
exports.getRatecardFromCte = getRatecardFromCte;
|
|
7924
8039
|
exports.getRouteDeliveryTimeFromFreight = getRouteDeliveryTimeFromFreight;
|
|
7925
8040
|
exports.getRouteOnTimeFromFreight = getRouteOnTimeFromFreight;
|
|
8041
|
+
exports.getTariffVariations = getTariffVariations;
|
|
8042
|
+
exports.isTariffMatch = isTariffMatch;
|
|
8043
|
+
exports.matchAllTariffs = matchAllTariffs;
|
|
7926
8044
|
exports.normalizeString = normalizeString;
|
|
8045
|
+
exports.parseAliases = parseAliases;
|
|
7927
8046
|
exports.setFormattedDatesInObjects = setFormattedDatesInObjects;
|
|
7928
8047
|
exports.verifyConditionalFee = verifyConditionalFee;
|
|
7929
8048
|
exports.verifyDefaultFees = verifyDefaultFees;
|
package/build/index.js.gz
CHANGED
|
Binary file
|