ff-admin-server/src/factory/admin/club/member/membership.ts

30 lines
912 B
TypeScript
Raw Normal View History

2025-01-05 14:14:00 +01:00
import { membership } from "../../../../entity/club/member/membership";
import { MembershipViewModel } from "../../../../viewmodel/admin/club/member/membership.models";
2024-09-16 15:55:41 +02:00
export default abstract class MembershipFactory {
/**
* @description map record to membership
* @param {membership} record
* @returns {MembershipViewModel}
*/
public static mapToSingle(record: membership): MembershipViewModel {
return {
id: record.id,
start: record.start,
end: record.end,
terminationReason: record.terminationReason,
status: record.status.status,
2024-09-27 14:55:34 +02:00
statusId: record.status.id,
2024-09-16 15:55:41 +02:00
};
}
/**
* @description map records to membership
* @param {Array<membership>} records
* @returns {Array<MembershipViewModel>}
*/
public static mapToBase(records: Array<membership>): Array<MembershipViewModel> {
return records.map((r) => this.mapToSingle(r));
}
}