import { EmployeeModel, MyEmployeeModel } from "./employee.model"
import { MyStatusCodeModel, StatusCodeModel } from "./status-code.model"

export interface AppraisalSubordinateModel {
    companyId: string
    active: boolean
    masfromStatusType: StatusCodeModel
    apsapproveType: StatusCodeModel
    apsassessy: EmployeeModel
    gread: string
    sumScore: number
}
export class MyAppraisalSubordinateModel implements AppraisalSubordinateModel {
    companyId: string
    active: boolean
    masfromStatusType: StatusCodeModel
    apsapproveType: StatusCodeModel
    apsassessy: EmployeeModel
    gread: string
    sumScore: number
    constructor(data: Partial<AppraisalSubordinateModel>) {
        this.companyId = data.companyId || ""
        this.active = data.active ?? false
        this.masfromStatusType = new MyStatusCodeModel(data.masfromStatusType)
        this.apsapproveType = new MyStatusCodeModel(data.apsapproveType)
        this.apsassessy = new MyEmployeeModel(data.apsassessy)
        this.gread = data.gread || ""
        this.sumScore = data.sumScore ?? 0
    }
}