folder structure
This commit is contained in:
parent
5d3f8ea46a
commit
84e2ec72ac
242 changed files with 635 additions and 635 deletions
43
src/factory/admin/club/member/member.ts
Normal file
43
src/factory/admin/club/member/member.ts
Normal file
|
@ -0,0 +1,43 @@
|
|||
import { member } from "../../../../entity/club/member/member";
|
||||
import { MemberViewModel } from "../../../../viewmodel/admin/club/member/member.models";
|
||||
import CommunicationFactory from "./communication";
|
||||
import MembershipFactory from "./membership";
|
||||
|
||||
export default abstract class MemberFactory {
|
||||
/**
|
||||
* @description map record to member
|
||||
* @param {member} record
|
||||
* @returns {MemberViewModel}
|
||||
*/
|
||||
public static mapToSingle(record: member): MemberViewModel {
|
||||
return {
|
||||
id: record?.id,
|
||||
salutation: record?.salutation,
|
||||
firstname: record?.firstname,
|
||||
lastname: record?.lastname,
|
||||
nameaffix: record?.nameaffix,
|
||||
birthdate: record?.birthdate,
|
||||
internalId: record.internalId,
|
||||
firstMembershipEntry: record?.firstMembershipEntry
|
||||
? MembershipFactory.mapToSingle(record.firstMembershipEntry)
|
||||
: null,
|
||||
lastMembershipEntry: record?.lastMembershipEntry
|
||||
? MembershipFactory.mapToSingle(record.lastMembershipEntry)
|
||||
: null,
|
||||
sendNewsletter: record?.sendNewsletter ? CommunicationFactory.mapToSingle(record.sendNewsletter, true) : null,
|
||||
preferredCommunication: record?.preferredCommunication
|
||||
? CommunicationFactory.mapToBase(record.preferredCommunication)
|
||||
: null,
|
||||
smsAlarming: record?.smsAlarming ? CommunicationFactory.mapToBase(record.smsAlarming) : null,
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* @description map records to member
|
||||
* @param {Array<member>} records
|
||||
* @returns {Array<MemberViewModel>}
|
||||
*/
|
||||
public static mapToBase(records: Array<member>): Array<MemberViewModel> {
|
||||
return records.map((r) => this.mapToSingle(r));
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue