27 lines
992 B
TypeScript
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));
|
|
}
|
|
}
|