All files / myorm clinic-entity.ts

0% Statements 0/16
0% Branches 0/14
0% Functions 0/1
0% Lines 0/16

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60                                                                                                                       
import { Clinic } from '@/services/clinicDataService';
import "reflect-metadata";
import { Column, Entity, PrimaryGeneratedColumn } from './decorators';
import BaseEntity from './base-entity';
 
 
 
@Entity({ immutable: true })
export default class ClinicEntity extends BaseEntity implements Clinic {
 
    @PrimaryGeneratedColumn()
    id!: number;
 
    @Column({ tsType: Number, isNullable: true })
    latitude?: number;
 
    @Column({ tsType: Number, isNullable: true })
    longitude?: number;
 
    @Column({ tsType: String, isNullable: true })
    serviceArea: string;
 
    @Column({ tsType: String, isNullable: true })
    name: string;
 
    @Column({ tsType: String, isNullable: true })
    address: string;
 
    @Column({ tsType: String, isNullable: true })
    contactInfo: string;
 
    @Column({ tsType: String, isNullable: true })
    hours: string;
 
    @Column({ tsType: String, isList: true, isNullable: true })
    services: string[];
 
    constructor(data?: Partial<Clinic>) {
        super();
        if (data) {
            this.serviceArea = data.serviceArea ?? '';
            this.name = data.name ?? '';
            this.address = data.address ?? '';
            this.contactInfo = data.contactInfo ?? '';
            this.hours = data.hours ?? '';
            this.services = data.services || [];
            this.latitude = data.latitude;
            this.longitude = data.longitude;
        }
        else {
            this.serviceArea = '';
            this.name = '';
            this.address = '';
            this.contactInfo = '';
            this.hours = '';
            this.services = [];
        }
    }
}