add maximum amount share to value metric in insights explorer

This commit is contained in:
MaysWind
2026-04-19 21:18:39 +08:00
parent e69df56874
commit d39494a78e
21 changed files with 27 additions and 0 deletions
+2
View File
@@ -296,6 +296,7 @@ export enum TransactionExplorerValueMetricType {
SourceAmountInterquartileRange = 'sourceAmountInterquartileRange',
SourceAmountMeanAbsoluteDeviation = 'sourceAmountMeanAbsoluteDeviation',
SourceAmountMedianAbsoluteDeviation = 'sourceAmountMedianAbsoluteDeviation',
SourceMaximumAmountShare = 'sourceMaximumAmountShare',
SourceTop5AmountSum = 'sourceTop5AmountSum',
SourceTop5AmountShare = 'sourceTop5AmountShare',
TransactionsForEightyPercentOfSourceAmount = 'transactionsForEightyPercentOfSourceAmount',
@@ -333,6 +334,7 @@ export class TransactionExplorerValueMetric implements NameValue {
public static readonly SourceAmountInterquartileRange = new TransactionExplorerValueMetric('Interquartile Range (Q3 - Q1)', TransactionExplorerValueMetricType.SourceAmountInterquartileRange, true, false, true);
public static readonly SourceAmountMeanAbsoluteDeviation = new TransactionExplorerValueMetric('Mean Absolute Deviation', TransactionExplorerValueMetricType.SourceAmountMeanAbsoluteDeviation, true, false, false);
public static readonly SourceAmountMedianAbsoluteDeviation = new TransactionExplorerValueMetric('Median Absolute Deviation', TransactionExplorerValueMetricType.SourceAmountMedianAbsoluteDeviation, true, false, false);
public static readonly SourceMaximumAmountShare = new TransactionExplorerValueMetric('Maximum Amount Share', TransactionExplorerValueMetricType.SourceMaximumAmountShare, false, true, false);
public static readonly SourceTop5AmountSum = new TransactionExplorerValueMetric('Top 5 Amount Sum', TransactionExplorerValueMetricType.SourceTop5AmountSum, true, false, true);
public static readonly SourceTop5AmountShare = new TransactionExplorerValueMetric('Top 5 Amount Share', TransactionExplorerValueMetricType.SourceTop5AmountShare, false, true, false);
public static readonly TransactionsForEightyPercentOfSourceAmount = new TransactionExplorerValueMetric('Transactions for 80% of Amount', TransactionExplorerValueMetricType.TransactionsForEightyPercentOfSourceAmount, false, true, false);
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90. Perzentil Betrag",
"95th Percentile Amount": "95. Perzentil Betrag",
"99th Percentile Amount": "99. Perzentil Betrag",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Betragsanteil",
"Transactions for 80% of Amount": "Transaktionen für 80% des Betrags",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "Valor do Percentil 90",
"95th Percentile Amount": "Valor do Percentil 95",
"99th Percentile Amount": "Valor do Percentil 99",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Participação dos 5 Maiores Valores",
"Transactions for 80% of Amount": "Transações para 80% do Valor",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90th Percentile Amount",
"95th Percentile Amount": "95th Percentile Amount",
"99th Percentile Amount": "99th Percentile Amount",
"Maximum Amount Share": "Maximum Amount Share",
"Top 5 Amount Sum": "Top 5 Amount Sum",
"Top 5 Amount Share": "Top 5 Amount Share",
"Transactions for 80% of Amount": "Transactions for 80% of Amount",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90百分位金额",
"95th Percentile Amount": "95百分位金额",
"99th Percentile Amount": "99百分位金额",
"Maximum Amount Share": "最大金额占比",
"Top 5 Amount Sum": "前5大金额总和",
"Top 5 Amount Share": "前5大金额占比",
"Transactions for 80% of Amount": "贡献80%金额的交易占比",
+1
View File
@@ -1830,6 +1830,7 @@
"90th Percentile Amount": "90百分位數金額",
"95th Percentile Amount": "95百分位數金額",
"99th Percentile Amount": "99百分位數金額",
"Maximum Amount Share": "最大金額占比",
"Top 5 Amount Sum": "前5大金額總和",
"Top 5 Amount Share": "前5大金額占比",
"Transactions for 80% of Amount": "貢獻80%金額的交易占比",
+6
View File
@@ -1359,6 +1359,12 @@ export const useExplorersStore = defineStore('explorers', () => {
} else {
value = 0;
}
} else if (valueMetric === TransactionExplorerValueMetric.SourceMaximumAmountShare) {
if (allSourceAmountsInDefaultCurrency.length > 0) {
value = maximumSourceAmountInDefaultCurrency !== Number.MIN_SAFE_INTEGER ? 100.0 * maximumSourceAmountInDefaultCurrency / totalSourceAmountSumInDefaultCurrency : 0;
} else {
value = 0;
}
} else if (valueMetric === TransactionExplorerValueMetric.SourceTop5AmountSum) {
if (allSourceAmountsInDefaultCurrency.length > 0) {
allSourceAmountsInDefaultCurrency.sort((a, b) => a - b);