import { masfromEvaluationAssessment1List } from "./pms-masfrom-evaluation-list.model"

  export interface EvaluationModal {
    personalLevel: PersonalLevel
    masfromEvaluationRound: MasfromEvaluationRound
    companyId: string
    active: boolean
    apsassessy: Apsassessy
    apsapprove1: Apsapprove1
    apsapprove2: Apsapprove2
    apsapprove3: Apsapprove3
    apsapprove4: Apsapprove4
    apsapprove5: Apsapprove5
    masfromTypeList: MasfromTypeList[]
    masfromTopic: MasfromTopic[]
     masfromEvaluationAssessment1List: masfromEvaluationAssessment1List[]
  }
  
  export interface PersonalLevel {
    plId: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface MasfromEvaluationRound {
    evaluationRoundId: string
    companyId: string
    tdesc: string
    edesc: string
    apsyear: string
    apsPeriodStart: string
    apsPeriodEnd: string
    statusCode: StatusCode
  }
  
  export interface StatusCode {
    code: string
    tdesc: string
    edesc: string
  }
  
  export interface Apsassessy {
    employeeId: string
    bossId: string
    prefix: Prefix
    fname: string
    lname: string
    efname: string
    elname: string
    bu1: Bu1
    bu2: Bu2
    bu3: Bu3
    bu4: Bu4
    bu5: Bu5
    position: Position
    job: Job
    pl: Pl
    status: Status
    time0: Time0
    resignDate: string
    endWorkDate: string
    thFullName: string
    engFullName: string
  }
  
  export interface Prefix {
    prefixId: string
    tdesc: string
    edesc: string
  }
  
  export interface Bu1 {
    bu1id: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface Bu2 {
    bu2id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu3 {
    bu3id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu4 {
    bu4id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu5 {
    bu5id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Position {
    positionId: string
    tdesc: string
    edesc: string
    consolidate: string
    shortName: string
    companyId: string
  }
  
  export interface Job {
    jobCodeId: string
    tdesc: string
    edesc: string
  }
  
  export interface Pl {
    plId: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface Status {
    statusCode: string
    statusType: string
    tdesc: string
    edesc: string
  }
  
  export interface Time0 {
    time0id: string
    tdesc: string
    edesc: string
    stickTm: string
    hourD: number
  }
  
  export interface Apsapprove1 {
    employeeId: string
    bossId: string
    prefix: Prefix2
    fname: string
    lname: string
    efname: string
    elname: string
    bu1: Bu12
    bu2: Bu22
    bu3: Bu32
    bu4: Bu42
    bu5: Bu52
    position: Position2
    job: Job2
    pl: Pl2
    status: Status2
    time0: Time02
    resignDate: string
    endWorkDate: string
    thFullName: string
    engFullName: string
  }
  
  export interface Prefix2 {
    prefixId: string
    tdesc: string
    edesc: string
  }
  
  export interface Bu12 {
    bu1id: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface Bu22 {
    bu2id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu32 {
    bu3id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu42 {
    bu4id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu52 {
    bu5id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Position2 {
    positionId: string
    tdesc: string
    edesc: string
    consolidate: string
    shortName: string
    companyId: string
  }
  
  export interface Job2 {
    jobCodeId: string
    tdesc: string
    edesc: string
  }
  
  export interface Pl2 {
    plId: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface Status2 {
    statusCode: string
    statusType: string
    tdesc: string
    edesc: string
  }
  
  export interface Time02 {
    time0id: string
    tdesc: string
    edesc: string
    stickTm: string
    hourD: number
  }
  
  export interface Apsapprove2 {
    employeeId: string
    bossId: string
    prefix: Prefix3
    fname: string
    lname: string
    efname: string
    elname: string
    bu1: Bu13
    bu2: Bu23
    bu3: Bu33
    bu4: Bu43
    bu5: Bu53
    position: Position3
    job: Job3
    pl: Pl3
    status: Status3
    time0: Time03
    resignDate: string
    endWorkDate: string
    thFullName: string
    engFullName: string
  }
  
  export interface Prefix3 {
    prefixId: string
    tdesc: string
    edesc: string
  }
  
  export interface Bu13 {
    bu1id: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface Bu23 {
    bu2id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu33 {
    bu3id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu43 {
    bu4id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu53 {
    bu5id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Position3 {
    positionId: string
    tdesc: string
    edesc: string
    consolidate: string
    shortName: string
    companyId: string
  }
  
  export interface Job3 {
    jobCodeId: string
    tdesc: string
    edesc: string
  }
  
  export interface Pl3 {
    plId: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface Status3 {
    statusCode: string
    statusType: string
    tdesc: string
    edesc: string
  }
  
  export interface Time03 {
    time0id: string
    tdesc: string
    edesc: string
    stickTm: string
    hourD: number
  }
  
  export interface Apsapprove3 {
    employeeId: string
    bossId: string
    prefix: Prefix4
    fname: string
    lname: string
    efname: string
    elname: string
    bu1: Bu14
    bu2: Bu24
    bu3: Bu34
    bu4: Bu44
    bu5: Bu54
    position: Position4
    job: Job4
    pl: Pl4
    status: Status4
    time0: Time04
    resignDate: string
    endWorkDate: string
    thFullName: string
    engFullName: string
  }
  
  export interface Prefix4 {
    prefixId: string
    tdesc: string
    edesc: string
  }
  
  export interface Bu14 {
    bu1id: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface Bu24 {
    bu2id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu34 {
    bu3id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu44 {
    bu4id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu54 {
    bu5id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Position4 {
    positionId: string
    tdesc: string
    edesc: string
    consolidate: string
    shortName: string
    companyId: string
  }
  
  export interface Job4 {
    jobCodeId: string
    tdesc: string
    edesc: string
  }
  
  export interface Pl4 {
    plId: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface Status4 {
    statusCode: string
    statusType: string
    tdesc: string
    edesc: string
  }
  
  export interface Time04 {
    time0id: string
    tdesc: string
    edesc: string
    stickTm: string
    hourD: number
  }
  
  export interface Apsapprove4 {
    employeeId: string
    bossId: string
    prefix: Prefix5
    fname: string
    lname: string
    efname: string
    elname: string
    bu1: Bu15
    bu2: Bu25
    bu3: Bu35
    bu4: Bu45
    bu5: Bu55
    position: Position5
    job: Job5
    pl: Pl5
    status: Status5
    time0: Time05
    resignDate: string
    endWorkDate: string
    thFullName: string
    engFullName: string
  }
  
  export interface Prefix5 {
    prefixId: string
    tdesc: string
    edesc: string
  }
  
  export interface Bu15 {
    bu1id: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface Bu25 {
    bu2id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu35 {
    bu3id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu45 {
    bu4id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu55 {
    bu5id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Position5 {
    positionId: string
    tdesc: string
    edesc: string
    consolidate: string
    shortName: string
    companyId: string
  }
  
  export interface Job5 {
    jobCodeId: string
    tdesc: string
    edesc: string
  }
  
  export interface Pl5 {
    plId: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface Status5 {
    statusCode: string
    statusType: string
    tdesc: string
    edesc: string
  }
  
  export interface Time05 {
    time0id: string
    tdesc: string
    edesc: string
    stickTm: string
    hourD: number
  }
  
  export interface Apsapprove5 {
    employeeId: string
    bossId: string
    prefix: Prefix6
    fname: string
    lname: string
    efname: string
    elname: string
    bu1: Bu16
    bu2: Bu26
    bu3: Bu36
    bu4: Bu46
    bu5: Bu56
    position: Position6
    job: Job6
    pl: Pl6
    status: Status6
    time0: Time06
    resignDate: string
    endWorkDate: string
    thFullName: string
    engFullName: string
  }
  
  export interface Prefix6 {
    prefixId: string
    tdesc: string
    edesc: string
  }
  
  export interface Bu16 {
    bu1id: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface Bu26 {
    bu2id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu36 {
    bu3id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu46 {
    bu4id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Bu56 {
    bu5id: string
    tdesc: string
    edesc: string
    parent: string
    companyId: string
  }
  
  export interface Position6 {
    positionId: string
    tdesc: string
    edesc: string
    consolidate: string
    shortName: string
    companyId: string
  }
  
  export interface Job6 {
    jobCodeId: string
    tdesc: string
    edesc: string
  }
  
  export interface Pl6 {
    plId: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface Status6 {
    statusCode: string
    statusType: string
    tdesc: string
    edesc: string
  }
  
  export interface Time06 {
    time0id: string
    tdesc: string
    edesc: string
    stickTm: string
    hourD: number
  }
  
  export interface MasfromTypeList {
    plId: string
    companyId: string
    lineNo: number
    competencyType: CompetencyType
    masfromStatusType: MasfromStatusType
    currentStep: string
    lastStep: string
    apsassessyStatus: string
    apsapprove1Status: string
    apsapprove2Status: string
    apsapprove3Status: string
    apsapprove4Status: string
    apsapprove5Status: string
    weightScore1: number
    weightScore2: number
    weightScore3: number
    weightScore4: number
    weightScore5: number
    weightedTotal: number
    averageScore: number
    apsassessyComment: string
    apsapprove1Comment: string
    apsapprove2Comment: string
    apsapprove3Comment: string
    apsapprove4Comment: string
    apsapprove5Comment: string
    apsassessyDate: string
    apsapprove1Date: string
    apsapprove2Date: string
    apsapprove3Date: string
    apsapprove4Date: string
    apsapprove5Date: string
    evaluationResults: string
    sumEvaluationResults: string
  }
  
  export interface CompetencyType {
    competencyTypeId: string
    companyId: string
    edesc: string
    tdesc: string
    shortName: string
    expectationLevel: string
    weight: number
  }
  
  export interface MasfromStatusType {
    code: string
    tdesc: string
    edesc: string
  }
  
  export interface MasfromTopic {
    masfromEvaluationAssessment1: MasfromEvaluationAssessment1
    runNo: number
    companyId: string
    groupAssessment1: GroupAssessment1
  }
  
  export interface MasfromEvaluationAssessment1 {
    plId: string
    companyId: string
    lineNo: number
    competencyType: CompetencyType2
    apsassessyStatus: string
    apsapprove1Status: string
    apsapprove2Status: string
    apsapprove3Status: string
    apsapprove4Status: string
    apsapprove5Status: string
    weightScore1: number
    weightScore2: number
    weightScore3: number
    weightScore4: number
    weightScore5: number
    weightedTotal: number
    averageScore: number
    apsassessyComment: string
    apsapprove1Comment: string
    apsapprove2Comment: string
    apsapprove3Comment: string
    apsapprove4Comment: string
    apsapprove5Comment: string
    apsassessyDate: string
    apsapprove1Date: string
    apsapprove2Date: string
    apsapprove3Date: string
    apsapprove4Date: string
    apsapprove5Date: string
    evaluationResults: string
    sumEvaluationResults: string
  }
  
  export interface CompetencyType2 {
    competencyTypeId: string
    companyId: string
    edesc: string
    tdesc: string
    shortName: string
    expectationLevel: string
    weight: number
  }
  
  export interface GroupAssessment1 {
    personalLevelModel: PersonalLevelModel
    competencyIndicatorsCourses1Mini: CompetencyIndicatorsCourses1Mini
    companyId: string
    groupAssessmentMini: GroupAssessmentMini
  }
  
  export interface PersonalLevelModel {
    plId: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface CompetencyIndicatorsCourses1Mini {
    competencyIndicatorsCourses0: CompetencyIndicatorsCourses0
    lineNo: number
    companyId: string
    competencyCourseId: string
    competencyCourse: CompetencyCourse[]
    behavioralIndicatorsList: BehavioralIndicatorsList[]
  }
  
  export interface CompetencyIndicatorsCourses0 {
    competencyTopic: CompetencyTopic
    companyId: string
    edesc: string
    tdesc: string
    indicatorsCourseDetailTh: string
    indicatorsCourseDetailEn: string
    expectation: string
  }
  
  export interface CompetencyTopic {
    competencyTopicId: string
    competencyType: CompetencyType3
    companyId: string
    edesc: string
    tdesc: string
    competencyDetail: string
    competencyFiles: string
    lineNo: number
    expectationLevel: string
  }
  
  export interface CompetencyType3 {
    competencyTypeId: string
    companyId: string
    edesc: string
    tdesc: string
    shortName: string
    expectationLevel: string
    weight: number
  }
  
  export interface CompetencyCourse {
    competencyCourseId: string
    companyId: string
    edesc: string
    tdesc: string
    courseDetail: string
    courseTopic: string
    courseLinkMylearn: string
  }
  
  export interface BehavioralIndicatorsList {
    competencyIndicators1: CompetencyIndicators1
    runNo: number
    companyId: string
    assessmentId: string
    behavioralIndicators: string
    competencyAssessment: CompetencyAssessment[]
    competencyBehavioral: CompetencyBehavioral
  }
  
  export interface CompetencyIndicators1 {
    competencyIndicatorsCourses0: CompetencyIndicatorsCourses02
    lineNo: number
    companyId: string
    competencyCourseId: string
  }
  
  export interface CompetencyIndicatorsCourses02 {
    competencyTopic: CompetencyTopic2
    companyId: string
    edesc: string
    tdesc: string
    indicatorsCourseDetailTh: string
    indicatorsCourseDetailEn: string
  }
  
  export interface CompetencyTopic2 {
    competencyTopicId: string
    competencyType: CompetencyType4
    companyId: string
    edesc: string
    tdesc: string
    competencyDetail: string
    competencyFiles: string
    lineNo: number
    expectationLevel: string
  }
  
  export interface CompetencyType4 {
    competencyTypeId: string
    companyId: string
    edesc: string
    tdesc: string
    shortName: string
    expectationLevel: string
    weight: number
  }
  
  export interface CompetencyAssessment {
    assessmentId: string
    companyId: string
    edesc: string
    tdesc: string
    shortName: string
  }
  
  export interface CompetencyBehavioral {
    evaluationRoundId: string
    scoreTopicExpectation: number
    companyId: string
  }
  
  export interface GroupAssessmentMini {
    personalLevel: PersonalLevel2
    competencyIndicatorsCourses1Mini: CompetencyIndicatorsCourses1Mini2
    companyId: string
    edesc: string
    tdesc: string
  }
  
  export interface PersonalLevel2 {
    plId: string
    tdesc: string
    edesc: string
    companyId: string
  }
  
  export interface CompetencyIndicatorsCourses1Mini2 {
    competencyIndicatorsCourses0: CompetencyIndicatorsCourses03
    lineNo: number
    companyId: string
    competencyCourseId: string
    competencyCourse: CompetencyCourse2[]
    behavioralIndicatorsList: BehavioralIndicatorsList2[]
  }
  
  export interface CompetencyIndicatorsCourses03 {
    competencyTopic: CompetencyTopic3
    companyId: string
    edesc: string
    tdesc: string
    indicatorsCourseDetailTh: string
    indicatorsCourseDetailEn: string
    expectation: string
  }
  
  export interface CompetencyTopic3 {
    competencyTopicId: string
    competencyType: CompetencyType5
    companyId: string
    edesc: string
    tdesc: string
    competencyDetail: string
    competencyFiles: string
    lineNo: number
    expectationLevel: string
  }
  
  export interface CompetencyType5 {
    competencyTypeId: string
    companyId: string
    edesc: string
    tdesc: string
    shortName: string
    expectationLevel: string
    weight: number
  }
  
  export interface CompetencyCourse2 {
    competencyCourseId: string
    companyId: string
    edesc: string
    tdesc: string
    courseDetail: string
    courseTopic: string
    courseLinkMylearn: string
  }
  
  export interface BehavioralIndicatorsList2 {
    competencyIndicators1: CompetencyIndicators12
    runNo: number
    companyId: string
    assessmentId: string
    behavioralIndicators: string
    competencyAssessment: CompetencyAssessment2[]
    competencyBehavioral: CompetencyBehavioral2
  }
  
  export interface CompetencyIndicators12 {
    competencyIndicatorsCourses0: CompetencyIndicatorsCourses04
    lineNo: number
    companyId: string
    competencyCourseId: string
  }
  
  export interface CompetencyIndicatorsCourses04 {
    competencyTopic: CompetencyTopic4
    companyId: string
    edesc: string
    tdesc: string
    indicatorsCourseDetailTh: string
    indicatorsCourseDetailEn: string
  }
  
  export interface CompetencyTopic4 {
    competencyTopicId: string
    competencyType: CompetencyType6
    companyId: string
    edesc: string
    tdesc: string
    competencyDetail: string
    competencyFiles: string
    lineNo: number
    expectationLevel: string
  }
  
  export interface CompetencyType6 {
    competencyTypeId: string
    companyId: string
    edesc: string
    tdesc: string
    shortName: string
    expectationLevel: string
    weight: number
  }
  
  export interface CompetencyAssessment2 {
    assessmentId: string
    companyId: string
    edesc: string
    tdesc: string
    shortName: string
  }
  
  export interface CompetencyBehavioral2 {
    evaluationRoundId: string
    scoreTopicExpectation: number
    companyId: string
  }
  