ff-admin/src/viewmodels/admin/club/member/member.models.ts

50 lines
1.2 KiB
TypeScript
Raw Normal View History

2024-09-17 16:44:02 +02:00
import type { CommunicationViewModel } from "./communication.models";
2024-09-16 19:03:52 +02:00
import type { MembershipViewModel } from "./membership.models";
2025-02-15 11:08:09 +01:00
import type { SalutationViewModel } from "../../configuration/salutation.models";
2024-09-16 19:03:52 +02:00
export interface MemberViewModel {
2025-01-29 08:53:42 +01:00
id: string;
2025-01-25 11:57:58 +01:00
salutation: SalutationViewModel;
2024-09-16 19:03:52 +02:00
firstname: string;
lastname: string;
nameaffix: string;
birthdate: Date;
2025-01-02 17:08:43 +01:00
internalId?: string;
2024-09-16 19:03:52 +02:00
firstMembershipEntry?: MembershipViewModel;
lastMembershipEntry?: MembershipViewModel;
2024-09-17 16:44:02 +02:00
sendNewsletter?: CommunicationViewModel;
2024-11-27 10:07:46 +01:00
smsAlarming?: Array<CommunicationViewModel>;
2024-09-17 16:44:02 +02:00
preferredCommunication?: Array<CommunicationViewModel>;
}
2025-01-22 08:56:52 +01:00
export interface MemberStatisticsViewModel {
2025-01-29 08:53:42 +01:00
id: string;
2025-01-25 11:57:58 +01:00
salutation: string;
2025-01-22 08:56:52 +01:00
firstname: string;
lastname: string;
nameaffix: string;
birthdate: Date;
todayAge: number;
ageThisYear: number;
exactAge: string;
}
2024-09-17 16:44:02 +02:00
export interface CreateMemberViewModel {
2025-01-25 11:57:58 +01:00
salutationId: number;
2024-09-17 16:44:02 +02:00
firstname: string;
lastname: string;
nameaffix: string;
birthdate: Date;
2025-01-02 17:08:43 +01:00
internalId?: string;
2024-09-17 16:44:02 +02:00
}
export interface UpdateMemberViewModel {
2025-01-29 08:53:42 +01:00
id: string;
2025-01-25 11:57:58 +01:00
salutationId: number;
2024-09-17 16:44:02 +02:00
firstname: string;
lastname: string;
nameaffix: string;
birthdate: Date;
2025-01-02 17:08:43 +01:00
internalId?: string;
2024-09-16 19:03:52 +02:00
}