From e8dacaaefeb2d7e6e6efb6c388f6cb6067b4df84 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Andr=C3=A9?=
Date: Thu, 24 Oct 2019 18:17:03 +0200
Subject: [PATCH] =?UTF-8?q?D=C3=A9but=20d'evol=20pour=20la=20page=20"Summa?=
=?UTF-8?q?ry"?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../app/list-of-dzs/list-of-dzs.component.ts | 6 +--
.../list-of-jump-types.component.ts | 6 +--
.../list-of-jumps/list-of-jumps.component.ts | 6 +--
.../src/app/new-jump/new-jump.component.ts | 2 +-
.../src/app/summary/summary.component.html | 10 ++--
.../src/app/summary/summary.component.ts | 6 ++-
Front/skydivelogs-app/src/models/statsresp.ts | 51 +++++++++++++++++++
.../src/services/serviceApi.ts | 20 ++++++--
8 files changed, 86 insertions(+), 21 deletions(-)
create mode 100644 Front/skydivelogs-app/src/models/statsresp.ts
diff --git a/Front/skydivelogs-app/src/app/list-of-dzs/list-of-dzs.component.ts b/Front/skydivelogs-app/src/app/list-of-dzs/list-of-dzs.component.ts
index b830f86..e85af14 100644
--- a/Front/skydivelogs-app/src/app/list-of-dzs/list-of-dzs.component.ts
+++ b/Front/skydivelogs-app/src/app/list-of-dzs/list-of-dzs.component.ts
@@ -2,9 +2,9 @@ import { Component, OnInit, ViewChild } from '@angular/core';
import { MatPaginator } from '@angular/material/paginator';
import { MatTableDataSource } from '@angular/material/table';
-import { DropZoneResp } from '../../models/dropzone';
-import { ServiceApi } from '../../services/serviceApi';
-import { ServiceComm } from '../../services/serviceComm';
+import { DropZoneResp } from 'src/models/dropzone';
+import { ServiceApi } from 'src/services/serviceApi';
+import { ServiceComm } from 'src/services/serviceComm';
@Component({
selector: 'app-list-of-dzs',
diff --git a/Front/skydivelogs-app/src/app/list-of-jump-types/list-of-jump-types.component.ts b/Front/skydivelogs-app/src/app/list-of-jump-types/list-of-jump-types.component.ts
index de9ac5f..c7fa904 100644
--- a/Front/skydivelogs-app/src/app/list-of-jump-types/list-of-jump-types.component.ts
+++ b/Front/skydivelogs-app/src/app/list-of-jump-types/list-of-jump-types.component.ts
@@ -2,9 +2,9 @@ import { Component, OnInit, ViewChild } from '@angular/core';
import { MatPaginator } from '@angular/material/paginator';
import { MatTableDataSource } from '@angular/material/table';
-import { JumpTypeResp } from '../../models/jumpType';
-import { ServiceApi } from '../../services/serviceApi';
-import { ServiceComm } from '../../services/serviceComm';
+import { JumpTypeResp } from 'src/models/jumpType';
+import { ServiceApi } from 'src/services/serviceApi';
+import { ServiceComm } from 'src/services/serviceComm';
@Component({
selector: 'app-list-of-jump-types',
diff --git a/Front/skydivelogs-app/src/app/list-of-jumps/list-of-jumps.component.ts b/Front/skydivelogs-app/src/app/list-of-jumps/list-of-jumps.component.ts
index 56efa16..ead8a37 100644
--- a/Front/skydivelogs-app/src/app/list-of-jumps/list-of-jumps.component.ts
+++ b/Front/skydivelogs-app/src/app/list-of-jumps/list-of-jumps.component.ts
@@ -3,9 +3,9 @@ import { MatPaginator } from '@angular/material/paginator';
import { MatTableDataSource } from '@angular/material/table';
import { Observable } from 'rxjs';
-import { JumpResp } from '../../models/jump';
-import { ServiceApi } from '../../services/serviceApi';
-import { ServiceComm } from '../../services/serviceComm';
+import { JumpResp } from 'src/models/jump';
+import { ServiceApi } from 'src/services/serviceApi';
+import { ServiceComm } from 'src/services/serviceComm';
@Component({
diff --git a/Front/skydivelogs-app/src/app/new-jump/new-jump.component.ts b/Front/skydivelogs-app/src/app/new-jump/new-jump.component.ts
index 2eb67bc..54df22f 100644
--- a/Front/skydivelogs-app/src/app/new-jump/new-jump.component.ts
+++ b/Front/skydivelogs-app/src/app/new-jump/new-jump.component.ts
@@ -1,5 +1,5 @@
import { Component, OnInit } from '@angular/core';
-import { ServiceComm } from '../../services/serviceComm';
+import { ServiceComm } from 'src/services/serviceComm';
@Component({
selector: 'app-new-jump',
diff --git a/Front/skydivelogs-app/src/app/summary/summary.component.html b/Front/skydivelogs-app/src/app/summary/summary.component.html
index 4fddda0..7b897a8 100644
--- a/Front/skydivelogs-app/src/app/summary/summary.component.html
+++ b/Front/skydivelogs-app/src/app/summary/summary.component.html
@@ -3,7 +3,7 @@
Total Total
-
+
-
+
| {{element.label}} |
@@ -32,7 +32,7 @@
-
+
| {{element.label}} |
@@ -45,7 +45,7 @@
-
+
| {{element.label}} |
@@ -58,7 +58,7 @@
- Per year
+ By year
| {{element.label}} |
diff --git a/Front/skydivelogs-app/src/app/summary/summary.component.ts b/Front/skydivelogs-app/src/app/summary/summary.component.ts
index df91e59..a2be631 100644
--- a/Front/skydivelogs-app/src/app/summary/summary.component.ts
+++ b/Front/skydivelogs-app/src/app/summary/summary.component.ts
@@ -1,5 +1,6 @@
import { Component, OnInit } from '@angular/core';
-import { ServiceComm } from '../../services/serviceComm';
+import { ServiceComm } from 'src/services/serviceComm';
+import { ServiceApi } from 'src/services/serviceApi';
@Component({
selector: 'app-summary',
@@ -14,7 +15,8 @@ export class SummaryComponent implements OnInit {
public dsNbJumpByType;
public dsNbJumpByYear;
- constructor(private serviceComm: ServiceComm) { }
+ constructor(private serviceApi: ServiceApi,
+ private serviceComm: ServiceComm) { }
ngOnInit() {
this.serviceComm.updatedComponentTitle('Summary');
diff --git a/Front/skydivelogs-app/src/models/statsresp.ts b/Front/skydivelogs-app/src/models/statsresp.ts
new file mode 100644
index 0000000..81a425f
--- /dev/null
+++ b/Front/skydivelogs-app/src/models/statsresp.ts
@@ -0,0 +1,51 @@
+import { Observable } from 'rxjs';
+
+export class StatsResp {
+ public statsByDz: Observable;
+ public statsByAircraft: Observable;
+ public statsByRig: Observable;
+ public statsByJumpType: Observable;
+ public statsByYear: Observable;
+}
+
+
+export class StatsByDzResp {
+ constructor(data: any) {
+ Object.assign(this, data);
+ }
+
+ public label: string;
+ public nb: number;
+}
+export class StatsByAircraftResp {
+ constructor(data: any) {
+ Object.assign(this, data);
+ }
+
+ public label: string;
+ public nb: number;
+}
+export class StatsByRigResp {
+ constructor(data: any) {
+ Object.assign(this, data);
+ }
+
+ public label: string;
+ public nb: number;
+}
+export class StatsByJumpTypeResp {
+ constructor(data: any) {
+ Object.assign(this, data);
+ }
+
+ public label: string;
+ public nb: number;
+}
+export class StatsByYearResp {
+ constructor(data: any) {
+ Object.assign(this, data);
+ }
+
+ public label: string;
+ public nb: number;
+}
\ No newline at end of file
diff --git a/Front/skydivelogs-app/src/services/serviceApi.ts b/Front/skydivelogs-app/src/services/serviceApi.ts
index 8b9ce29..9beee0f 100644
--- a/Front/skydivelogs-app/src/services/serviceApi.ts
+++ b/Front/skydivelogs-app/src/services/serviceApi.ts
@@ -3,10 +3,11 @@ import { HttpClient, HttpHeaders } from '@angular/common/http';
import { Observable } from 'rxjs';
import { map } from 'rxjs/operators';
-import { DropZoneResp } from '../models/dropzone';
-import { JumpResp } from '../models/jump';
-import { AircraftResp } from '../models/aircraft';
-import { JumpTypeResp } from '../models/jumpType';
+import { DropZoneResp } from 'src/models/dropzone';
+import { JumpResp } from 'src/models/jump';
+import { AircraftResp } from 'src/models/aircraft';
+import { JumpTypeResp } from 'src/models/jumpType';
+import { StatsResp, StatsByDzResp, StatsByAircraftResp, StatsByJumpTypeResp, StatsByRigResp, StatsByYearResp } from 'src/models/statsresp';
@Injectable()
@@ -37,4 +38,15 @@ export class ServiceApi {
public getListOfJumpTypes(): Observable> {
return this.http.get>('http://localhost:5000/api/JumpType', { headers: this.headers });
}
+
+ public getStatsOfJumps(): StatsResp {
+ const resultat = new StatsResp();
+ resultat.statsByDz = this.http.get('http://localhost:5000/api/Stats/ByDz', { headers: this.headers });
+ resultat.statsByAircraft = this.http.get('http://localhost:5000/api/Stats/ByAircraft', { headers: this.headers });
+ resultat.statsByJumpType = this.http.get('http://localhost:5000/api/Stats/ByJumpType', { headers: this.headers });
+ resultat.statsByRig = this.http.get('http://localhost:5000/api/Stats/ByRig', { headers: this.headers });
+ resultat.statsByYear = this.http.get('http://localhost:5000/api/Stats/ByYear', { headers: this.headers });
+
+ return resultat;
+ }
}