export interface EmeventgrpModel {
    eventgrpId: string
    companyId: string
    tdesc: string
    edesc: string
    event_status: number
    limits: number
    daytype: string
    datebeforerequest: number
    service_year: number
    limit_times: number
    clear_leave: number
    privilege_event: string
    limit_probation: number
    sex_type: string
    guarantee: string
    guarantee_date: number
    remarks: string
    display_order: number
    display: number
    displayEss: number
    event_desc: string
    display_limit: number
    lvpastlimit: number
    lvfuturelimit: number
    day_leave_stat: number
    fhalf_leave_stat: number
    shalf_leave_stat: number
    hour_leave_stat: number
    month_limit0: number
    month_limit1: number
    month_limit2: number
    month_limit3: number
    leaverounding: string
    clear_leave_month: number
    limit_hours: string
    sharelimit_event: string
    needapprovedate: number
    min_limit_hours: string
    advance_approve: string
    approve_before: number
    approve_after: number
    tsdesc: string
    esdesc: string
    dctsal: string
    dctsvc: string
    prev_last: string
    yos: string
    ispay: number
    limit_per_request: number
}


export class MyEmeventgrpModel implements EmeventgrpModel {
    eventgrpId: string
    companyId: string
    tdesc: string
    edesc: string
    event_status: number
    limits: number
    daytype: string
    datebeforerequest: number
    service_year: number
    limit_times: number
    clear_leave: number
    privilege_event: string
    limit_probation: number
    sex_type: string
    guarantee: string
    guarantee_date: number
    remarks: string
    display_order: number
    display: number
    displayEss: number
    event_desc: string
    display_limit: number
    lvpastlimit: number
    lvfuturelimit: number
    day_leave_stat: number
    fhalf_leave_stat: number
    shalf_leave_stat: number
    hour_leave_stat: number
    month_limit0: number
    month_limit1: number
    month_limit2: number
    month_limit3: number
    leaverounding: string
    clear_leave_month: number
    limit_hours: string
    sharelimit_event: string
    needapprovedate: number
    min_limit_hours: string
    advance_approve: string
    approve_before: number
    approve_after: number
    tsdesc: string
    esdesc: string
    dctsal: string
    dctsvc: string
    prev_last: string
    yos: string
    ispay: number
    limit_per_request: number
    constructor(data?: Partial<EmeventgrpModel>) {
        this.eventgrpId = data?.eventgrpId || ""
        this.companyId = data?.companyId || ""
        this.tdesc = data?.tdesc || ""
        this.edesc = data?.edesc || ""
        this.event_status = data?.event_status ?? 0
        this.limits = data?.limits ?? 0
        this.daytype = data?.daytype || ""
        this.datebeforerequest = data?.datebeforerequest ?? 0
        this.service_year = data?.service_year ?? 0
        this.limit_times = data?.limit_times ?? 0
        this.clear_leave = data?.clear_leave ?? 0
        this.privilege_event = data?.privilege_event || ""
        this.limit_probation = data?.limit_probation ?? 0
        this.sex_type = data?.sex_type || ""
        this.guarantee = data?.guarantee || ""
        this.guarantee_date = data?.guarantee_date ?? 0
        this.remarks = data?.remarks || ""
        this.display_order = data?.display_order ?? 0
        this.display = data?.display ?? 0
        this.displayEss = data?.displayEss ?? 0
        this.event_desc = data?.event_desc || ""
        this.display_limit = data?.display_limit ?? 0
        this.lvpastlimit = data?.lvpastlimit ?? 0
        this.lvfuturelimit = data?.lvfuturelimit ?? 0
        this.day_leave_stat = data?.day_leave_stat ?? 0
        this.fhalf_leave_stat = data?.fhalf_leave_stat ?? 0
        this.shalf_leave_stat = data?.shalf_leave_stat ?? 0
        this.hour_leave_stat = data?.hour_leave_stat ?? 0
        this.month_limit0 = data?.month_limit0 ?? 0
        this.month_limit1 = data?.month_limit1 ?? 0
        this.month_limit2 = data?.month_limit2 ?? 0
        this.month_limit3 = data?.month_limit3 ?? 0
        this.leaverounding = data?.leaverounding || ""
        this.clear_leave_month = data?.clear_leave_month ?? 0
        this.limit_hours = data?.limit_hours || ""
        this.sharelimit_event = data?.sharelimit_event || ""
        this.needapprovedate = data?.needapprovedate ?? 0
        this.min_limit_hours = data?.min_limit_hours || ""
        this.advance_approve = data?.advance_approve || ""
        this.approve_before = data?.approve_before ?? 0
        this.approve_after = data?.approve_after ?? 0
        this.tsdesc = data?.tsdesc || ""
        this.esdesc = data?.esdesc || ""
        this.dctsal = data?.dctsal || ""
        this.dctsvc = data?.dctsvc || ""
        this.prev_last = data?.prev_last || ""
        this.yos = data?.yos || ""
        this.ispay = data?.ispay ?? 0
        this.limit_per_request = data?.limit_per_request ?? 0
    }
}

