From b97bd01c2c551fdb3a58acdfae2d2938aef3a6bd Mon Sep 17 00:00:00 2001 From: Ronald Konjer Date: Sat, 29 Jan 2022 13:23:08 +0100 Subject: [PATCH] revert import order to original one make empty row filtering work with papaparseSquashed commits: [184b041] ran nx format and nx test [3824d80] revert import order to original one make empty row filtering work with papaparse --- .../transactions/transactions-page.component.ts | 4 ++-- .../src/app/services/import-transactions.service.ts | 11 ++++++----- package.json | 1 + 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/apps/client/src/app/pages/portfolio/transactions/transactions-page.component.ts b/apps/client/src/app/pages/portfolio/transactions/transactions-page.component.ts index 7ec6d9f79..a3d582cb9 100644 --- a/apps/client/src/app/pages/portfolio/transactions/transactions-page.component.ts +++ b/apps/client/src/app/pages/portfolio/transactions/transactions-page.component.ts @@ -190,7 +190,7 @@ export class TransactionsPageComponent implements OnDestroy, OnInit { try { await this.importTransactionsService.importJson({ - content: content.orders, + content: content.orders }); this.handleImportSuccess(); @@ -205,7 +205,7 @@ export class TransactionsPageComponent implements OnDestroy, OnInit { await this.importTransactionsService.importCsv({ fileContent, primaryDataSource: this.primaryDataSource, - user: this.user, + user: this.user }); this.handleImportSuccess(); diff --git a/apps/client/src/app/services/import-transactions.service.ts b/apps/client/src/app/services/import-transactions.service.ts index 324432d9c..4708a5779 100644 --- a/apps/client/src/app/services/import-transactions.service.ts +++ b/apps/client/src/app/services/import-transactions.service.ts @@ -1,8 +1,8 @@ import { HttpClient } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { CreateOrderDto } from '@ghostfolio/api/app/order/create-order.dto'; -import { parse } from 'date-fns'; import { DataSource, Type } from '@prisma/client'; +import { parse } from 'date-fns'; import { parse as csvToJson } from 'papaparse'; import { isNumber } from 'lodash'; import { EMPTY } from 'rxjs'; @@ -33,14 +33,16 @@ export class ImportTransactionsService { primaryDataSource: DataSource; user: User; }) { - const content = csvToJson(fileContent, { + let content: any[] = []; + + csvToJson(fileContent, { dynamicTyping: true, header: true, skipEmptyLines: true, complete: (parsedData) => { - parsedData.data.filter((item) => item['date'] != null); + content = parsedData.data.filter((item) => item['date'] != null); } - }).data; + }); const orders: CreateOrderDto[] = []; for (const [index, item] of content.entries()) { @@ -57,7 +59,6 @@ export class ImportTransactionsService { }); } - await this.importJson({ content: orders }); } diff --git a/package.json b/package.json index 93dd33c1c..4ce1cd3e9 100644 --- a/package.json +++ b/package.json @@ -103,6 +103,7 @@ "ngx-markdown": "13.0.0", "ngx-skeleton-loader": "2.9.1", "ngx-stripe": "13.0.0", + "papaparse": "5.3.1", "passport": "0.4.1", "passport-google-oauth20": "2.0.0", "passport-jwt": "4.0.0",