ff-admin-server/src/factory/admin/newsletterConfig.ts

27 lines
992 B
TypeScript

import { newsletterConfig } from "../../entity/newsletterConfig";
import { NewsletterConfigViewModel } from "../../viewmodel/admin/newsletterConfig.models";
import CommunicationTypeFactory from "./communicationType";
export default abstract class NewsletterConfigFactory {
/**
* @description map record to newsletterConfig
* @param {newsletterConfig} record
* @returns {NewsletterConfigViewModel}
*/
public static mapToSingle(record: newsletterConfig): NewsletterConfigViewModel {
return {
comTypeId: record.comTypeId,
config: record.config,
comType: record?.comType ? CommunicationTypeFactory.mapToSingle(record.comType) : null,
};
}
/**
* @description map records to newsletterConfig
* @param {Array<newsletterConfig>} records
* @returns {Array<NewsletterConfigViewModel>}
*/
public static mapToBase(records: Array<newsletterConfig>): Array<NewsletterConfigViewModel> {
return records.map((r) => this.mapToSingle(r));
}
}