Fix autour des dates des jumps lors

de la création
This commit is contained in:
Sébastien André
2021-04-19 18:58:08 +02:00
parent 9a7b2c5ca3
commit 27928f1696
7 changed files with 147 additions and 227 deletions

View File

@@ -12,10 +12,15 @@ export class AircraftService extends BaseService {
super();
}
public getListOfAircrafts(): Observable<Array<AircraftResp>> {
return this.http.get<Array<AircraftResp>>(`${this.apiUrl}/Aircraft`, {
headers: this.headers
});
public getListOfAircrafts(simple: boolean = false): Observable<Array<AircraftResp>> {
let url : string;
if (simple === true) {
url = `${this.apiUrl}/Aircraft/GetSimple`;
} else {
url = `${this.apiUrl}/Aircraft`;
}
return this.http.get<Array<AircraftResp>>(url, { headers: this.headers });
}
public AddAircraft(aircraftName: string, dataImg: string) {

View File

@@ -13,12 +13,18 @@ export class DropzoneService extends BaseService {
super();
}
public getListOfDropZones(): Observable<Array<DropZoneResp>> {
return this.http.get<Array<DropZoneResp>>(`${this.apiUrl}/DropZone`,
{ headers: this.headers })
public getListOfDropZones(simple: boolean = false): Observable<Array<DropZoneResp>> {
let url : string;
if (simple === true) {
url = `${this.apiUrl}/DropZone/GetSimple`;
} else {
url = `${this.apiUrl}/DropZone`;
}
return this.http.get<Array<DropZoneResp>>(url, { headers: this.headers })
.pipe(map(response => {
const details = response.map(data => new DropZoneResp(data));
return details;
const details = response.map(data => new DropZoneResp(data));
return details;
}));
}

View File

@@ -1,5 +1,6 @@
import { Injectable } from "@angular/core";
import { HttpClient } from "@angular/common/http";
import { DatePipe } from '@angular/common';
import { Observable } from "rxjs";
import { map } from "rxjs/operators";
@@ -10,7 +11,9 @@ import { BaseService } from "./base.service";
@Injectable()
export class JumpService extends BaseService {
constructor(private http: HttpClient, private dateService: DateService) {
constructor(private http: HttpClient,
private dateService: DateService,
private datePipe: DatePipe) {
super();
}
@@ -27,66 +30,61 @@ export class JumpService extends BaseService {
);
}
public AddListOfJump(
selectedJumpType: number,
selectedAircraft: number,
selectedDz: number,
selectedRig: number,
withCutaway: boolean,
beginDate: Date,
endDate: Date,
defaultExitAltitude: number,
defaultDeployAltitude: number,
countOfJumps: number,
notes: string) {
public AddListOfJump(selectedJumpType: number,
selectedAircraft: number,
selectedDz: number,
selectedRig: number,
withCutaway: boolean,
beginDate: Date,
endDate: Date,
defaultExitAltitude: number,
defaultDeployAltitude: number,
countOfJumps: number,
notes: string)
{
const diffInDays = this.dateService.DiffBetweenDates(beginDate, endDate) + 1;
const countOfJumpsPerDay = Math.trunc(countOfJumps / diffInDays);
for (let i = 1; beginDate.getTime() < endDate.getTime(); i++) {
this.AddJumps(
selectedJumpType,
selectedAircraft,
selectedDz,
selectedRig,
withCutaway,
beginDate,
defaultExitAltitude,
defaultDeployAltitude,
countOfJumpsPerDay,
notes
);
this.AddJumps(selectedJumpType,
selectedAircraft,
selectedDz,
selectedRig,
withCutaway,
beginDate,
defaultExitAltitude,
defaultDeployAltitude,
countOfJumpsPerDay,
notes);
beginDate = this.dateService.AddDays(beginDate, 1);
}
const restfJumps = countOfJumps - countOfJumpsPerDay * (diffInDays - 1);
this.AddJumps(
selectedJumpType,
selectedAircraft,
selectedDz,
selectedRig,
withCutaway,
beginDate,
defaultExitAltitude,
defaultDeployAltitude,
restfJumps,
notes
);
this.AddJumps(selectedJumpType,
selectedAircraft,
selectedDz,
selectedRig,
withCutaway,
beginDate,
defaultExitAltitude,
defaultDeployAltitude,
restfJumps,
notes);
}
private AddJumps(
selectedJumpType: number,
selectedAircraft: number,
selectedDz: number,
selectedRig: number,
withCutaway: boolean,
jumpDate: Date,
defaultExitAltitude: number,
defaultDeployAltitude: number,
countOfJumps: number,
notes: string
) {
private AddJumps(selectedJumpType: number,
selectedAircraft: number,
selectedDz: number,
selectedRig: number,
withCutaway: boolean,
jumpDate: Date,
defaultExitAltitude: number,
defaultDeployAltitude: number,
countOfJumps: number,
notes: string)
{
for (let i = 0; i < countOfJumps; i++) {
const bodyNewjump: JumpReq = {
jumpTypeId: selectedJumpType,
@@ -98,7 +96,7 @@ export class JumpService extends BaseService {
gearId: selectedRig,
notes: notes,
id: 0,
jumpDate: jumpDate,
jumpDate: this.datePipe.transform(jumpDate, "yyyy-MM-dd")
};
this.http