diff --git a/Front/skydivelogs-app/src/app/summary/summary.component.html b/Front/skydivelogs-app/src/app/summary/summary.component.html
index c078cba..2565b6b 100644
--- a/Front/skydivelogs-app/src/app/summary/summary.component.html
+++ b/Front/skydivelogs-app/src/app/summary/summary.component.html
@@ -1,16 +1,16 @@
-
- 850
+
+ : {{ totalJumps }}
-
- 1
+
+ : {{ totalCutaways }}
-
- 5 Février 2020 à Barcelonnette
+
+ : {{ lastJump }}
diff --git a/Front/skydivelogs-app/src/app/summary/summary.component.ts b/Front/skydivelogs-app/src/app/summary/summary.component.ts
index e773a32..3c58e8a 100644
--- a/Front/skydivelogs-app/src/app/summary/summary.component.ts
+++ b/Front/skydivelogs-app/src/app/summary/summary.component.ts
@@ -32,17 +32,27 @@ export class SummaryComponent implements OnInit {
private _shownStats: Map
;
public StatType = StatType;
+ public totalJumps: number;
+ public totalCutaways: number;
+ public lastJump: string;
+
constructor(
- private serviceApi: StatsService,
- private serviceComm: ServiceComm
+ private _serviceApi: StatsService,
+ private _serviceComm: ServiceComm
) { }
ngOnInit() {
this.initShownStats();
- this.serviceComm.UpdatedComponentTitle('Summary');
+ this._serviceComm.UpdatedComponentTitle('Summary');
- const statsResult = this.serviceApi.getStatsOfJumps();
+ const statsResult = this._serviceApi.getStatsOfJumps();
+
+ statsResult.simpleSummary.subscribe(data => {
+ this.totalJumps = data.totalJumps;
+ this.totalCutaways = data.totalCutaways;
+ this.lastJump = data.lastJump.jumpDate + ' (' + data.lastJump.dropZone.name + ')';
+ });
statsResult.statsByDz.subscribe(data => {
this.dsNbJumpByDz = new MatTableDataSource(data);
diff --git a/Front/skydivelogs-app/src/models/stats.ts b/Front/skydivelogs-app/src/models/stats.ts
index 3c584e5..7f19a3c 100644
--- a/Front/skydivelogs-app/src/models/stats.ts
+++ b/Front/skydivelogs-app/src/models/stats.ts
@@ -1,4 +1,5 @@
import { Observable } from 'rxjs';
+import { JumpResp } from './jump';
export enum StatType {
ForLastMonth = 1,
@@ -11,6 +12,8 @@ export enum StatType {
}
export class StatsResp {
+ public simpleSummary: Observable;
+
public statsByDz: Observable>;
public statsByAircraft: Observable>;
public statsByGear: Observable>;
@@ -21,6 +24,18 @@ export class StatsResp {
public statsForLastMonth: Observable;
}
+export class SimpleSummary {
+ constructor(data: any) {
+ this.totalJumps = data.totalJumps;
+ this.totalCutaways = data.totalCutaways;
+ this.lastJump = new JumpResp(data.lastJump);
+ }
+
+ public totalJumps: number;
+ public totalCutaways: number;
+ public lastJump: JumpResp;
+}
+
export class StatsByDzResp {
constructor(data: any) {
Object.assign(this, data);
diff --git a/Front/skydivelogs-app/src/services/stats.service.ts b/Front/skydivelogs-app/src/services/stats.service.ts
index f807f2c..1fee099 100644
--- a/Front/skydivelogs-app/src/services/stats.service.ts
+++ b/Front/skydivelogs-app/src/services/stats.service.ts
@@ -1,8 +1,8 @@
-import { Injectable } from "@angular/core";
-import { HttpClient, HttpHeaders } from "@angular/common/http";
-import { Observable } from "rxjs";
-import { map } from "rxjs/operators";
-import { environment } from "../environments/environment";
+import { Injectable } from '@angular/core';
+import { HttpClient, HttpHeaders } from '@angular/common/http';
+import { Observable } from 'rxjs';
+import { map } from 'rxjs/operators';
+import { environment } from '../environments/environment';
import {
StatsResp,
StatsByDzResp,
@@ -11,20 +11,23 @@ import {
StatsByGearResp,
StatsByYearResp,
StatsForLastMonthResp,
- StatsForLastYearResp
-} from "../models/stats";
+ StatsForLastYearResp,
+ SimpleSummary
+} from '../models/stats';
@Injectable()
export class StatsService {
private readonly headers = new HttpHeaders({
- "Access-Control-Allow-Origin": environment.urlApi
+ 'Access-Control-Allow-Origin': environment.urlApi
});
- constructor(private http: HttpClient) {}
+ constructor(private http: HttpClient) { }
public getStatsOfJumps(): StatsResp {
const resultats = new StatsResp();
+ resultats.simpleSummary = this.getSimpleSummary();
+
resultats.statsByDz = this.getStatsByDz();
resultats.statsByAircraft = this.getStatsByAircraft();
resultats.statsByJumpType = this.getStatsByJumpType();
@@ -37,6 +40,19 @@ export class StatsService {
return resultats;
}
+ private getSimpleSummary(): Observable {
+ return this.http
+ .get>(`${environment.urlApi}/api/Stats/Simple`, {
+ headers: this.headers
+ })
+ .pipe(
+ map(response => {
+ const stats = new SimpleSummary(response);
+ return stats;
+ })
+ );
+ }
+
private getStatsByDz(): Observable> {
return this.http
.get>(`${environment.urlApi}/api/Stats/ByDz`, {