diff --git a/frontend/src/app/Services/data.service.ts b/frontend/src/app/Services/data.service.ts
index 46fcc10..8a93070 100644
--- a/frontend/src/app/Services/data.service.ts
+++ b/frontend/src/app/Services/data.service.ts
@@ -50,7 +50,8 @@ export class DataService {
* @returns Observable
*/
public createTransaction(
- symbol: string,
+ comment: string,
+ isin: string,
time: string,
count: number,
price: number
@@ -60,9 +61,10 @@ export class DataService {
return this.http.post(
API_URL + 'transaction',
{
+ comment,
count,
+ isin,
price,
- symbol,
time,
},
{
diff --git a/frontend/src/app/Views/dashboard/dashboard.component.html b/frontend/src/app/Views/dashboard/dashboard.component.html
index 509ebbe..4a43432 100644
--- a/frontend/src/app/Views/dashboard/dashboard.component.html
+++ b/frontend/src/app/Views/dashboard/dashboard.component.html
@@ -123,6 +123,12 @@
{{ element.count }} |
+
+
+ Comment |
+ {{ element.comment }} |
+
+
Price |
@@ -131,8 +137,8 @@
- Symbol |
- {{ element.symbol }} |
+ ISIN |
+ {{ element.isin }} |
diff --git a/frontend/src/app/Views/dashboard/dashboard.component.ts b/frontend/src/app/Views/dashboard/dashboard.component.ts
index f3e012b..de4cf55 100644
--- a/frontend/src/app/Views/dashboard/dashboard.component.ts
+++ b/frontend/src/app/Views/dashboard/dashboard.component.ts
@@ -2,7 +2,6 @@ import { Component, OnInit } from '@angular/core';
import { DataService } from 'src/app/Services/data.service';
import { MatDialog } from '@angular/material/dialog';
import { UserDialogComponent } from './user-dialog/user-dialog.component';
-import { C } from '@angular/cdk/keycodes';
import { HelperService } from 'src/app/Helpers/helper.service';
export interface PeriodicElement {
@@ -31,7 +30,8 @@ var TRANSACTION_DATA: TransactionData[] = [];
var STOCK_DATA: Stock[] = [];
export interface TransactionData {
- symbol: string;
+ comment: string;
+ isin: string;
time: string;
count: number;
price: number;
@@ -44,8 +44,8 @@ export interface TransactionData {
})
export class DashboardComponent implements OnInit {
constructor(
- private helper: HelperService,
private dataService: DataService,
+ private helper: HelperService,
public dialog: MatDialog
) {}
@@ -55,11 +55,34 @@ export class DashboardComponent implements OnInit {
depotCost: number = 0;
profit: number = 0;
+ getTransactions() {
+ var TRANSACTION_DATA: TransactionData[] = [];
+ this.dataService.getTransactionData().subscribe((response: any) => {
+ var data = JSON.parse(response);
+ this.depotCost = 0;
+ for (let i = 0; i < data.data.length; i++) {
+ this.depotCost += data.data[i].price;
+ TRANSACTION_DATA.push({
+ comment: data.data[i].comment,
+ isin: data.data[i].isin,
+ time: data.data[i].time,
+ count: data.data[i].count,
+ price: data.data[i].price,
+ });
+ }
+ this.dataSourceTransactions = TRANSACTION_DATA;
+ //TODO move to helper service
+
+ this.profit = this.depotCurrentValue - this.depotCost;
+ });
+ }
+
ngOnInit() {
this.dataService.getStockData().subscribe((response: any) => {
var data = JSON.parse(response);
+ this.depotCurrentValue = 0;
for (let i = 0; i < data.data.length; i++) {
- this.depotCurrentValue += data.data[i].current_price;
+ this.depotCurrentValue = data.data[i].current_price;
STOCK_DATA.push({
count: data.data[i].count,
currentPrice: data.data[i].current_price,
@@ -75,10 +98,12 @@ export class DashboardComponent implements OnInit {
this.dataService.getTransactionData().subscribe((response: any) => {
var data = JSON.parse(response);
+ this.depotCost = 0;
for (let i = 0; i < data.data.length; i++) {
this.depotCost += data.data[i].price;
TRANSACTION_DATA.push({
- symbol: data.data[i].symbol,
+ comment: data.data[i].comment,
+ isin: data.data[i].isin,
time: data.data[i].time,
count: data.data[i].count,
price: data.data[i].price,
@@ -91,7 +116,8 @@ export class DashboardComponent implements OnInit {
});
}
- symbol: string = '';
+ comment: string = '';
+ isin: string = '';
time: Date = new Date();
count: number = 0.0;
price: number = 0.0;
@@ -100,7 +126,8 @@ export class DashboardComponent implements OnInit {
const dialogRef = this.dialog.open(UserDialogComponent, {
width: '50vw',
data: {
- symbol: this.symbol,
+ comment: this.comment,
+ isin: this.isin,
time: this.time,
count: this.count,
price: this.price,
@@ -108,11 +135,18 @@ export class DashboardComponent implements OnInit {
});
dialogRef.afterClosed().subscribe((result) => {
- console.log('The dialog was closed');
+ this.helper.delay(1000);
+ this.getTransactions();
});
}
- displayedColumns: string[] = ['weight', 'position', 'name', 'symbol'];
+ displayedColumns: string[] = [
+ 'comment',
+ 'weight',
+ 'position',
+ 'name',
+ 'symbol',
+ ];
displayedColumnsStocks: string[] = [
'position',
'name',
diff --git a/frontend/src/app/Views/dashboard/user-dialog/user-dialog.component.html b/frontend/src/app/Views/dashboard/user-dialog/user-dialog.component.html
index 21b87cf..0808e12 100644
--- a/frontend/src/app/Views/dashboard/user-dialog/user-dialog.component.html
+++ b/frontend/src/app/Views/dashboard/user-dialog/user-dialog.component.html
@@ -7,15 +7,27 @@
class="backgorund"
>
-
+
+
+
+
+
diff --git a/frontend/src/app/Views/dashboard/user-dialog/user-dialog.component.ts b/frontend/src/app/Views/dashboard/user-dialog/user-dialog.component.ts
index 1f469ad..c76068c 100644
--- a/frontend/src/app/Views/dashboard/user-dialog/user-dialog.component.ts
+++ b/frontend/src/app/Views/dashboard/user-dialog/user-dialog.component.ts
@@ -22,11 +22,12 @@ export class UserDialogComponent {
) {}
onSubmit() {
- //TODO check tat price is decimal
+ //TODO check that price is decimal
console.log(
this.dataService
.createTransaction(
- this.data.symbol,
+ this.data.comment,
+ this.data.isin,
this.data.time,
+this.data.count,
+this.data.price.toFixed(2)