Закрепить маржу и контекст организации в phase106
This commit is contained in:
@@ -1694,7 +1694,8 @@ function hasNomenclatureMarginRankingSignal(text) {
|
||||
const hasMarginCue = /(?:прибыл|марж|рентаб|наценк|себестоим|выручк|profit|margin|profitability|gross\s+spread|cogs)/iu.test(normalized);
|
||||
const hasRankingCue = /(?:высок|низк|топ|сам(?:ая|ый|ое|ые|ой|ого|ому|ым|ых|ую)|больш|меньш|ранж|рейтинг|max|min|high|low|top|rank|best|worst)/iu.test(normalized);
|
||||
const hasCalculationCue = /(?:посчита\p{L}*|рассчита\p{L}*|расч[её]т\p{L}*|расчита\p{L}*|понять|calculate|compute)/iu.test(normalized);
|
||||
return hasNomenclatureCue && hasMarginCue && (hasRankingCue || hasCalculationCue);
|
||||
const hasInspectionCue = /(?:провер\p{L}*|посмотр\p{L}*|разобра\p{L}*|какую|какие|что\s+можно|можно\s+(?:провер|посчит|рассчит|понять)|check|inspect|verify|estimate)/iu.test(normalized);
|
||||
return hasNomenclatureCue && hasMarginCue && (hasRankingCue || hasCalculationCue || hasInspectionCue);
|
||||
}
|
||||
function hasVatPeriodInspectionBridgeSignal(text) {
|
||||
const normalized = String(text ?? "").trim().toLowerCase();
|
||||
|
||||
@@ -33,7 +33,8 @@ function hasInventoryMarginRankingSignal(text) {
|
||||
const hasMarginCue = /(?:прибыл|марж|рентаб|наценк|себестоим|выручк|profit|margin|profitability|gross\s+spread|cogs)/iu.test(normalized);
|
||||
const hasRankingCue = /(?:высок|низк|топ|сам(?:ая|ый|ое|ые|ой|ого|ому|ым|ых|ую)|больш|меньш|ранж|рейтинг|max|min|high|low|top|rank|best|worst)/iu.test(normalized);
|
||||
const hasCalculationCue = /(?:посчита\p{L}*|рассчита\p{L}*|расч[её]т\p{L}*|расчита\p{L}*|понять|calculate|compute)/iu.test(normalized);
|
||||
return hasNomenclatureCue && hasMarginCue && (hasRankingCue || hasCalculationCue);
|
||||
const hasInspectionCue = /(?:провер\p{L}*|посмотр\p{L}*|разобра\p{L}*|какую|какие|что\s+можно|можно\s+(?:провер|посчит|рассчит|понять)|check|inspect|verify|estimate)/iu.test(normalized);
|
||||
return hasNomenclatureCue && hasMarginCue && (hasRankingCue || hasCalculationCue || hasInspectionCue);
|
||||
}
|
||||
function hasInventoryOnHandSignal(text) {
|
||||
const hasColloquialStockSnapshotCue = /(?:что|ч[еёо])\s+(?:у\s+нас\s+)?на\s+склад(?:е|у|ом|ах)(?=$|[\s,.;:!?])/iu.test(text);
|
||||
|
||||
+1
@@ -703,6 +703,7 @@ function businessOverviewOrganizationScopeLabel(value) {
|
||||
}
|
||||
const comparable = compactComparable(text);
|
||||
if (/^(?:с|без)\s+разбивк/.test(comparable) ||
|
||||
/(?:без\s+(?:предположен\p{L}*|допущен\p{L}*|гадан\p{L}*|фантази\p{L}*|догад\p{L}*)|without\s+(?:guesses|assumptions|guessing))/iu.test(comparable) ||
|
||||
/\b(?:входящ|исходящ|нетто|топ|контрагент|платеж|поступлен)\b/.test(comparable)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
+5
-1
@@ -79,6 +79,10 @@ function isReferentialOrganizationPlaceholder(value) {
|
||||
if (isNegativeCounterpartyScopePlaceholder(value)) {
|
||||
return true;
|
||||
}
|
||||
const text = compactLower((0, addressTextRepair_1.repairAddressMojibakeText)(value));
|
||||
if (/(?:без\s+(?:предположен\p{L}*|допущен\p{L}*|гадан\p{L}*|фантази\p{L}*|догад\p{L}*)|without\s+(?:guesses|assumptions|guessing))/iu.test(text)) {
|
||||
return true;
|
||||
}
|
||||
return new Set([
|
||||
"эта организация",
|
||||
"этой организации",
|
||||
@@ -925,7 +929,7 @@ function normalizeLooseOrganizationAlias(value) {
|
||||
if (!text) {
|
||||
return null;
|
||||
}
|
||||
if (isNegativeCounterpartyScopePlaceholder(text)) {
|
||||
if (isReferentialOrganizationPlaceholder(text)) {
|
||||
return null;
|
||||
}
|
||||
const normalized = text
|
||||
|
||||
Reference in New Issue
Block a user