import { ViewEntity, ViewColumn } from "typeorm"; import moment = require("moment-timezone"); import { getTimeZone } from ".."; // JSON Transformer const jsonTransformer = { to: (value: any) => JSON.stringify(value), from: (value: string) => JSON.parse(value), }; const DateTransformer = { to(value: Date | string): string { return moment.utc(value).format("YYYY-MM-DD HH:mm:ss"); }, from(value: string): string { return moment.utc(value).tz(getTimeZone()).format("YYYY-MM-DD HH:mm:ss"); }, }; @ViewEntity({ name: "verify_locals", }) export class VerifyLocals { @ViewColumn() id: number; @ViewColumn({ transformer: jsonTransformer }) local_information: any; @ViewColumn({ transformer: jsonTransformer }) basic_information: any; @ViewColumn() partner: number; @ViewColumn() assigned_master: number; @ViewColumn({ transformer: jsonTransformer }) settings: any; @ViewColumn({ transformer: jsonTransformer }) opening_hours: any; @ViewColumn({ transformer: jsonTransformer }) terminal_users: any; @ViewColumn({ transformer: jsonTransformer }) terminals: any; @ViewColumn({ transformer: jsonTransformer }) details: any; @ViewColumn({ transformer: DateTransformer }) created: string; @ViewColumn({ transformer: DateTransformer }) verification_date: string; @ViewColumn({ transformer: DateTransformer }) update_partner: string; @ViewColumn() status: number; @ViewColumn() master_notification_id: number; @ViewColumn({ transformer: jsonTransformer }) master_notification_settings: any; @ViewColumn() master_notification_status: number; @ViewColumn() master_id: number; @ViewColumn() master_name: string; @ViewColumn() master_surname: string; @ViewColumn() master_document: string; @ViewColumn() master_email: string; @ViewColumn() master_phone: string; @ViewColumn({ transformer: jsonTransformer }) master_profile: any; @ViewColumn() partner_id: number; @ViewColumn() partner_name: string; @ViewColumn() partner_surname: string; @ViewColumn() partner_document: string; @ViewColumn() partner_email: string; @ViewColumn() partner_phone: string; @ViewColumn({ transformer: jsonTransformer }) partner_profile: any; @ViewColumn() company_id: number; @ViewColumn() company_name: string; @ViewColumn({ transformer: jsonTransformer }) company_profile: any; }