diff --git a/Front/skydivelogs-app/src/app/app.module.ts b/Front/skydivelogs-app/src/app/app.module.ts index 42d328e..bd7ebba 100644 --- a/Front/skydivelogs-app/src/app/app.module.ts +++ b/Front/skydivelogs-app/src/app/app.module.ts @@ -12,7 +12,8 @@ import { NewJumpComponent } from './new-jump/new-jump.component'; import { ListOfAircraftsComponent } from './list-of-aircrafts/list-of-aircrafts.component'; import { ListOfJumpTypesComponent } from './list-of-jump-types/list-of-jump-types.component'; -import { ServiceApi } from '../services/serviceApi'; +import { ServiceApiGet } from '../services/serviceApiGet'; +import { ServiceApiPost } from '../services/serviceApiPost'; import { ServiceComm } from '../services/serviceComm'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { FormsModule } from '@angular/forms'; @@ -73,7 +74,7 @@ const appRoutes: Routes = [ MatIconModule ], exports: [HttpClientModule], - providers: [ServiceApi, ServiceComm], + providers: [ServiceApiPost, ServiceApiGet, ServiceComm], bootstrap: [AppComponent] }) export class AppModule { } diff --git a/Front/skydivelogs-app/src/app/list-of-aircrafts/list-of-aircrafts.component.ts b/Front/skydivelogs-app/src/app/list-of-aircrafts/list-of-aircrafts.component.ts index 34ee53d..974a09f 100644 --- a/Front/skydivelogs-app/src/app/list-of-aircrafts/list-of-aircrafts.component.ts +++ b/Front/skydivelogs-app/src/app/list-of-aircrafts/list-of-aircrafts.component.ts @@ -3,7 +3,7 @@ import { MatPaginator } from '@angular/material/paginator'; import { MatTableDataSource } from '@angular/material/table'; import { AircraftResp } from '../../models/aircraft'; -import { ServiceApi } from '../../services/serviceApi'; +import { ServiceApiGet } from '../../services/serviceApiGet'; import { ServiceComm } from '../../services/serviceComm'; @Component({ @@ -16,7 +16,7 @@ export class ListOfAircraftsComponent implements OnInit { public dataSourceTable; @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator; - constructor(private serviceApi: ServiceApi, private serviceComm: ServiceComm) { + constructor(private serviceApi: ServiceApiGet, private serviceComm: ServiceComm) { } ngOnInit() { 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..e459b60 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 @@ -3,7 +3,7 @@ import { MatPaginator } from '@angular/material/paginator'; import { MatTableDataSource } from '@angular/material/table'; import { DropZoneResp } from '../../models/dropzone'; -import { ServiceApi } from '../../services/serviceApi'; +import { ServiceApiGet } from '../../services/serviceApiGet'; import { ServiceComm } from '../../services/serviceComm'; @Component({ @@ -18,7 +18,7 @@ export class ListOfDzsComponent implements OnInit { public dataSourceTable; @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator; - constructor(private serviceApi: ServiceApi, + constructor(private serviceApi: ServiceApiGet, private serviceComm: ServiceComm) { } 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..dd9dea9 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 @@ -3,7 +3,7 @@ import { MatPaginator } from '@angular/material/paginator'; import { MatTableDataSource } from '@angular/material/table'; import { JumpTypeResp } from '../../models/jumpType'; -import { ServiceApi } from '../../services/serviceApi'; +import { ServiceApiGet } from '../../services/serviceApiGet'; import { ServiceComm } from '../../services/serviceComm'; @Component({ @@ -16,7 +16,7 @@ export class ListOfJumpTypesComponent implements OnInit { public dataSourceTable; @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator; - constructor(private serviceApi: ServiceApi, private serviceComm: ServiceComm) { + constructor(private serviceApi: ServiceApiGet, private serviceComm: ServiceComm) { } ngOnInit() { 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..2d30070 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 @@ -4,7 +4,7 @@ import { MatTableDataSource } from '@angular/material/table'; import { Observable } from 'rxjs'; import { JumpResp } from '../../models/jump'; -import { ServiceApi } from '../../services/serviceApi'; +import { ServiceApiGet } from '../../services/serviceApiGet'; import { ServiceComm } from '../../services/serviceComm'; @@ -19,7 +19,7 @@ export class ListOfJumpsComponent implements OnInit { public dataSourceTable; @ViewChild(MatPaginator, { static: true }) paginator: MatPaginator; - constructor(private serviceApi: ServiceApi, private serviceComm: ServiceComm) { + constructor(private serviceApi: ServiceApiGet, private serviceComm: ServiceComm) { } ngOnInit() { 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 f293171..2a622d1 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,7 +1,7 @@ import { Component, OnInit } from '@angular/core'; -import { FormControl } from '@angular/forms'; - import { ServiceComm } from '../../services/serviceComm'; +import { ServiceApiGet } from '../../services/serviceApiGet'; +import { ServiceApiPost } from '../../services/serviceApiPost'; @Component({ @@ -16,11 +16,14 @@ export class NewJumpComponent implements OnInit { defaultDeployAltitude: number; countOfJumps: number; selectedDz: number; + selectedRig: number; selectedAircraft: number; selectedJumpType: number; withCutaway: boolean; - constructor(private serviceComm: ServiceComm) { + constructor(private serviceComm: ServiceComm, + private serviceApiGet: ServiceApiGet, + private serviceApiPost: ServiceApiPost) { this.beginDate = new Date(); this.endDate = new Date(); @@ -34,14 +37,17 @@ export class NewJumpComponent implements OnInit { } onFormSubmit() { - console.log(this.selectedJumpType); - console.log(this.selectedAircraft); - console.log(this.selectedDz); - console.log(this.withCutaway); - console.log(this.beginDate); - console.log(this.endDate); - console.log(this.defaultExitAltitude); - console.log(this.defaultDeployAltitude); - console.log(this.countOfJumps); + this.serviceApiPost.AddJump( + this.selectedJumpType, + this.selectedAircraft, + this.selectedDz, + this.selectedRig, + this.withCutaway, + this.beginDate, + this.endDate, + this.defaultExitAltitude, + this.defaultDeployAltitude, + this.countOfJumps + ); } } diff --git a/Front/skydivelogs-app/src/app/summary/summary.component.ts b/Front/skydivelogs-app/src/app/summary/summary.component.ts index 59a0cef..763ce52 100644 --- a/Front/skydivelogs-app/src/app/summary/summary.component.ts +++ b/Front/skydivelogs-app/src/app/summary/summary.component.ts @@ -1,6 +1,6 @@ import { Component, OnInit } from '@angular/core'; import { ServiceComm } from '../../services/serviceComm'; -import { ServiceApi } from '../../services/serviceApi'; +import { ServiceApiGet } from '../../services/serviceApiGet'; @Component({ selector: 'app-summary', @@ -15,7 +15,7 @@ export class SummaryComponent implements OnInit { public dsNbJumpByType; public dsNbJumpByYear; - constructor(private serviceApi: ServiceApi, + constructor(private serviceApi: ServiceApiGet, private serviceComm: ServiceComm) { } ngOnInit() { diff --git a/Front/skydivelogs-app/src/models/jump.ts b/Front/skydivelogs-app/src/models/jump.ts index a43d6d1..80a7a7d 100644 --- a/Front/skydivelogs-app/src/models/jump.ts +++ b/Front/skydivelogs-app/src/models/jump.ts @@ -28,4 +28,4 @@ export class JumpResp { public deployAltitude: number; public withCutaway: boolean; public notes: string; -} \ No newline at end of file +} diff --git a/Front/skydivelogs-app/src/services/serviceApi.ts b/Front/skydivelogs-app/src/services/serviceApiGet.ts similarity index 98% rename from Front/skydivelogs-app/src/services/serviceApi.ts rename to Front/skydivelogs-app/src/services/serviceApiGet.ts index d230c13..977c9f0 100644 --- a/Front/skydivelogs-app/src/services/serviceApi.ts +++ b/Front/skydivelogs-app/src/services/serviceApiGet.ts @@ -11,7 +11,7 @@ import { StatsResp, StatsByDzResp, StatsByAircraftResp, StatsByJumpTypeResp, Sta @Injectable() -export class ServiceApi { +export class ServiceApiGet { private readonly headers = new HttpHeaders({ 'Access-Control-Allow-Origin': 'http://localhost:5000', }); diff --git a/Front/skydivelogs-app/src/services/serviceApiPost.ts b/Front/skydivelogs-app/src/services/serviceApiPost.ts new file mode 100644 index 0000000..e242610 --- /dev/null +++ b/Front/skydivelogs-app/src/services/serviceApiPost.ts @@ -0,0 +1,53 @@ +import { Injectable } from '@angular/core'; +import { HttpClient, HttpHeaders } from '@angular/common/http'; +import { Observable } from 'rxjs'; +import { map } from 'rxjs/operators'; + +import { DropZoneResp } from '../models/dropzone'; +import { JumpResp, JumpReq } from '../models/jump'; +import { AircraftResp } from '../models/aircraft'; +import { JumpTypeResp } from '../models/jumpType'; +import { StatsResp, StatsByDzResp, StatsByAircraftResp, StatsByJumpTypeResp, StatsByRigResp, StatsByYearResp } from '../models/statsresp'; + + +@Injectable() +export class ServiceApiPost { + private readonly headers = new HttpHeaders({ + 'Access-Control-Allow-Origin': 'http://localhost:5000', + }); + constructor(private http: HttpClient) { } + + + + public AddJump(selectedJumpType: number, + selectedAircraft: number, + selectedDz: number, + selectedRig: number, + withCutaway: boolean, + beginDate: Date, + endDate: Date, + defaultExitAltitude: number, + defaultDeployAltitude: number, + countOfJumps: number) { + + const bodyNewjump: JumpReq = { + jumpTypeId: selectedJumpType, + aircraftId: selectedAircraft, + dropZoneId: selectedDz, + withCutaway: withCutaway, + //beginDate: beginDate, + //endDate: endDate, + exitAltitude: defaultExitAltitude, + deployAltitude: defaultDeployAltitude, + //countOfJumps: countOfJumps + gearId: selectedRig, + notes: '', + id: 0 + }; + + this.http.post('http://localhost:5000/api/Jump', + bodyNewjump, + { headers: this.headers }) + .subscribe(data => console.log(data)); + } +}