finalize migration (yay)
This commit is contained in:
@@ -2,10 +2,8 @@ import { Inject, Injectable } from '@angular/core';
|
||||
import { FormControl, FormGroup } from '@angular/forms';
|
||||
import { MAT_DATE_LOCALE } from '@angular/material/core';
|
||||
import { Locale, parse } from 'date-fns';
|
||||
import {
|
||||
Member,
|
||||
PickMemberExcludeKeyofMemberIdOrLoeschenam,
|
||||
} from '../generated-api/api';
|
||||
import { MemberCreateArgs, MemberDto } from '../generated-api/api';
|
||||
import { dateToLocal, dateToUTC } from '../pipes/date-pipe.pipe';
|
||||
|
||||
interface MemberForm {
|
||||
id: FormControl<string | null | undefined>;
|
||||
@@ -15,12 +13,12 @@ interface MemberForm {
|
||||
geburtsdatum: FormControl<Date | null>;
|
||||
geburtsort: FormControl<string | null | undefined>;
|
||||
passnummer: FormControl<string | null | undefined>;
|
||||
uvertrag: FormControl<boolean | null | undefined>;
|
||||
verein: FormControl<boolean | null | undefined>;
|
||||
kontakt: FormControl<string | null | undefined>;
|
||||
graduierung: FormControl<string | null | undefined>;
|
||||
kuendigungzum: FormControl<string | null | undefined>;
|
||||
letztePruefung: FormControl<string | null | undefined>;
|
||||
kuendigungzum: FormControl<Date | null | undefined>;
|
||||
letztePruefung: FormControl<Date | null | undefined>;
|
||||
marker: FormControl<boolean | null | undefined>;
|
||||
}
|
||||
|
||||
@Injectable({
|
||||
@@ -28,7 +26,7 @@ interface MemberForm {
|
||||
})
|
||||
export class MemberDtoHelper {
|
||||
constructor(@Inject(MAT_DATE_LOCALE) private locale: Locale) {}
|
||||
public newMemberForm(member?: Member): FormGroup<MemberForm> {
|
||||
public newMemberForm(member?: MemberDto): FormGroup<MemberForm> {
|
||||
const geburtsdatum = member?.geburtsdatum;
|
||||
let enDate: Date | null = null;
|
||||
if (geburtsdatum) {
|
||||
@@ -38,62 +36,71 @@ export class MemberDtoHelper {
|
||||
});
|
||||
}
|
||||
|
||||
return new FormGroup({
|
||||
return new FormGroup<MemberForm>({
|
||||
id: new FormControl(member?.id),
|
||||
vorname: new FormControl(member?.vorname),
|
||||
nachname: new FormControl(member?.nachname),
|
||||
geschlecht: new FormControl(member?.geschlecht),
|
||||
geburtsdatum: new FormControl(enDate),
|
||||
geburtsdatum: new FormControl(
|
||||
member?.geburtsdatum ? dateToUTC(member?.geburtsdatum) : null,
|
||||
),
|
||||
geburtsort: new FormControl(member?.geburtsort),
|
||||
passnummer: new FormControl(member?.passnummer),
|
||||
uvertrag: new FormControl(member?.uvertrag),
|
||||
verein: new FormControl(member?.verein),
|
||||
kontakt: new FormControl(member?.kontakt),
|
||||
graduierung: new FormControl(member?.graduierung),
|
||||
kuendigungzum: new FormControl(member?.kuendigungzum),
|
||||
letztePruefung: new FormControl(member?.letztePruefung),
|
||||
kuendigungzum: new FormControl(
|
||||
member?.kuendigungzum ? dateToUTC(member?.kuendigungzum) : null,
|
||||
),
|
||||
letztePruefung: new FormControl(
|
||||
member?.letztePruefung
|
||||
? dateToUTC(member?.letztePruefung)
|
||||
: null,
|
||||
),
|
||||
marker: new FormControl(false),
|
||||
});
|
||||
}
|
||||
|
||||
memberFromForm(form: FormGroup<MemberForm>): Member {
|
||||
memberFromForm(form: FormGroup<MemberForm>): MemberDto {
|
||||
return {
|
||||
id: form.controls.id.value ?? null,
|
||||
vorname: form.controls.vorname.value ?? null,
|
||||
nachname: form.controls.nachname.value ?? null,
|
||||
geschlecht: form.controls.geschlecht.value ?? null,
|
||||
geburtsdatum: form.controls.geburtsdatum.value
|
||||
? JSON.stringify(form.controls.geburtsdatum.value)
|
||||
? dateToLocal(form.controls.geburtsdatum.value).toISOString()
|
||||
: null,
|
||||
geburtsort: form.controls.geburtsort.value ?? null,
|
||||
passnummer: form.controls.passnummer.value ?? null,
|
||||
uvertrag: form.controls.uvertrag.value ?? null,
|
||||
verein: form.controls.verein.value ?? null,
|
||||
kontakt: form.controls.kontakt.value ?? null,
|
||||
graduierung: form.controls.graduierung?.value ?? null,
|
||||
kuendigungzum: form.controls.kuendigungzum.value ?? null, //TODO not for new member
|
||||
letztePruefung: form.controls.letztePruefung?.value ?? null, //TODO not for new member
|
||||
loeschenam: null, //TODO? not client settable
|
||||
kuendigungzum: form.controls.kuendigungzum.value
|
||||
? dateToLocal(form.controls.kuendigungzum.value).toISOString()
|
||||
: null,
|
||||
letztePruefung: form.controls.letztePruefung.value
|
||||
? dateToLocal(form.controls.letztePruefung.value).toISOString()
|
||||
: null,
|
||||
marker: form.controls.marker.value ?? false,
|
||||
};
|
||||
}
|
||||
|
||||
newMemberFromForm(
|
||||
form: FormGroup<MemberForm>,
|
||||
): PickMemberExcludeKeyofMemberIdOrLoeschenam {
|
||||
newMemberFromForm(form: FormGroup<MemberForm>): MemberCreateArgs {
|
||||
return {
|
||||
vorname: form.controls.vorname.value ?? null,
|
||||
nachname: form.controls.nachname.value ?? null,
|
||||
geschlecht: form.controls.geschlecht.value ?? null,
|
||||
geburtsdatum: form.controls.geburtsdatum.value
|
||||
? JSON.stringify(form.controls.geburtsdatum.value)
|
||||
? dateToLocal(form.controls.geburtsdatum.value).toISOString()
|
||||
: null,
|
||||
geburtsort: form.controls.geburtsort.value ?? null,
|
||||
passnummer: form.controls.passnummer.value ?? null,
|
||||
uvertrag: form.controls.uvertrag.value ?? null,
|
||||
verein: form.controls.verein.value ?? null,
|
||||
kontakt: form.controls.kontakt.value ?? null,
|
||||
graduierung: form.controls.graduierung?.value ?? null,
|
||||
kuendigungzum: null, //TODO not for new member
|
||||
letztePruefung: null, //TODO not for new member
|
||||
marker: form.controls.marker.value ?? false,
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user