Refactor ING importer
This commit is contained in:
@@ -36,27 +36,21 @@ const headers = [
|
||||
'unknown4',
|
||||
];
|
||||
|
||||
const readIngTransaction = (data: string[]): IngTransaction|undefined => {
|
||||
if (data.length !== headers.length) {
|
||||
return;
|
||||
}
|
||||
|
||||
const transaction: IngTransaction = {};
|
||||
headers.forEach((key, index) => {
|
||||
transaction[key] = data[index].trim();
|
||||
});
|
||||
|
||||
return transaction;
|
||||
};
|
||||
|
||||
export default class extends BaseTransactionParser<ParserConfig> {
|
||||
protected requiredFields = [];
|
||||
#transactions: ValidatedIngTransaction[] = [];
|
||||
|
||||
async pushTransaction(data: string[]): Promise<boolean> {
|
||||
const ing = readIngTransaction(data);
|
||||
if (data.length !== headers.length) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!ing) {
|
||||
const transaction: IngTransaction = {};
|
||||
headers.forEach((key, index) => {
|
||||
transaction[key] = data[index].trim();
|
||||
});
|
||||
|
||||
if (!transaction) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -65,18 +59,19 @@ export default class extends BaseTransactionParser<ParserConfig> {
|
||||
return false;
|
||||
}
|
||||
|
||||
const transactionAmount = parseAmount(ing.transactionAmount);
|
||||
const lockAmount = parseAmount(ing.lockAmount);
|
||||
const transactionAmount = parseAmount(transaction.transactionAmount);
|
||||
const lockAmount = parseAmount(transaction.lockAmount);
|
||||
|
||||
if(transactionAmount === undefined && lockAmount === undefined) {
|
||||
return false;
|
||||
}
|
||||
|
||||
this.#transactions.push({
|
||||
...ing,
|
||||
...transaction,
|
||||
transactionAmount,
|
||||
lockAmount,
|
||||
} as ValidatedIngTransaction);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user