2024-09-16 15:55:41 +02:00
|
|
|
import { membership } from "../../entity/membership";
|
|
|
|
import { MembershipViewModel } from "../../viewmodel/admin/membership.models";
|
|
|
|
|
|
|
|
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,
|
|
|
|
internalId: record.internalId,
|
|
|
|
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));
|
|
|
|
}
|
|
|
|
}
|