wip
This commit is contained in:
@@ -2,7 +2,7 @@ import { FormSelectItem } from '@af/digi-ng/_form/form-select';
|
|||||||
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
||||||
import { FormControl, FormGroup } from '@angular/forms';
|
import { FormControl, FormGroup } from '@angular/forms';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { ActivatedRoute } from '@angular/router';
|
||||||
import { SignalRequest } from '@msfa-models/api/signal.request.model';
|
import { SignalRequest, SignalRequestOmfattning, SignalRequestType } from '@msfa-models/api/signal.request.model';
|
||||||
import { DeltagareAvrop } from '@msfa-models/avrop.model';
|
import { DeltagareAvrop } from '@msfa-models/avrop.model';
|
||||||
import { CustomError } from '@msfa-models/error/custom-error';
|
import { CustomError } from '@msfa-models/error/custom-error';
|
||||||
import { Signal } from '@msfa-models/signal.model';
|
import { Signal } from '@msfa-models/signal.model';
|
||||||
@@ -103,14 +103,50 @@ export class SignalFormComponent {
|
|||||||
this.error$.next(null);
|
this.error$.next(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
submitAndCloseConfirmDialog(genomforandeReferens: number): void {
|
private typeToRequest(type: string): SignalRequestType {
|
||||||
|
switch (type) {
|
||||||
|
case 'arbete':
|
||||||
|
return SignalRequestType.Work;
|
||||||
|
case 'utbildning':
|
||||||
|
return SignalRequestType.Education;
|
||||||
|
default:
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
private omfattningToRequest(omfattning: string): SignalRequestOmfattning {
|
||||||
|
switch (omfattning) {
|
||||||
|
case 'heltid':
|
||||||
|
return SignalRequestOmfattning.Heltid;
|
||||||
|
case 'deltid':
|
||||||
|
return SignalRequestOmfattning.Deltid;
|
||||||
|
default:
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private _formDataToRequest(genomforandereferens: number, formData: SignalFormData): SignalRequest {
|
||||||
|
const { type, omfattning, startDate, percent } = formData;
|
||||||
|
|
||||||
|
const requestType: SignalRequestType = this.typeToRequest(type);
|
||||||
|
const requestOmfattning: SignalRequestOmfattning = this.omfattningToRequest(omfattning);
|
||||||
|
|
||||||
|
return {
|
||||||
|
genomforandereferens,
|
||||||
|
type: requestType,
|
||||||
|
omfattning: requestOmfattning,
|
||||||
|
omfattningPercent: requestOmfattning === SignalRequestOmfattning.Deltid ? percent : null,
|
||||||
|
startdatum: formatDate(startDate),
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
submitAndCloseConfirmDialog(genomforandereferens: number): void {
|
||||||
this.submitLoading$.next(true);
|
this.submitLoading$.next(true);
|
||||||
|
|
||||||
const { type, omfattning, startDate, percent } = this.signalFormGroup.value as Signal;
|
const { type, omfattning, startDate, percent } = this.signalFormGroup.value as Signal;
|
||||||
|
|
||||||
const postRequest: SignalRequest = {
|
const postRequest: SignalRequest = {
|
||||||
genomforandeReferens: +genomforandeReferens,
|
genomforandereferens,
|
||||||
typ: type,
|
type,
|
||||||
omfattning,
|
omfattning,
|
||||||
omfattning_procent: omfattning === 'deltid' ? percent : null,
|
omfattning_procent: omfattning === 'deltid' ? percent : null,
|
||||||
startdatum: formatDate(startDate),
|
startdatum: formatDate(startDate),
|
||||||
|
|||||||
@@ -1,7 +1,17 @@
|
|||||||
export interface SignalRequest {
|
export enum SignalRequestType {
|
||||||
genomforandeReferens: number;
|
Work = 'work',
|
||||||
typ: 'arbete' | 'utbildning';
|
Education = 'education',
|
||||||
omfattning: 'heltid' | 'deltid';
|
}
|
||||||
omfattning_procent: number;
|
|
||||||
startdatum: string;
|
export enum SignalRequestOmfattning {
|
||||||
|
Heltid = 'heltid',
|
||||||
|
Deltid = 'deltid',
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface SignalRequest {
|
||||||
|
genomforandereferens: number;
|
||||||
|
type: SignalRequestType;
|
||||||
|
omfattning: SignalRequestOmfattning;
|
||||||
|
omfattningPercent: number;
|
||||||
|
startDate: string;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user