<app-page-header [pathTitle]="pathTitle"></app-page-header>
<div class="bg-card-white">
</div>
<div class="block-main-content" *ngIf="appraisalCompentency.data">
    <div class="pb-2rem px-2rem pt-1.5rem w-full min-height-50px justify-between items-center">
        <div class="flex">
            <button type="button" class="ti-btn ti-btn-outline ti-btn-outline-light h-20px m-0 shadow-md text-blue-500"
                (click)="returnPath()">
                <i class="ti ti-chevron-left"></i>
                ย้อนกลับ
            </button>
            <div class="font-size-18px font-weight-700 align-center text-primary pl-1rem">
                ประเมินผลประจำปี {{currentDate.getFullYear()}}
            </div>
        </div>
    </div>
    <div class="pb-2rem px-2rem">
        <div class="font-size-18px font-weight-700 text-primary">
            แบบประเมินสมรรถนะพนักงาน {{currentDate.getFullYear()}}
        </div>
    </div>
    <div class="pb-2rem px-2rem">
        <div class="p-2 grid grid-cols-6 gap-3">
            <div class="grid-cols-1">
                <div class="text-gray-400">เครื่องมือประเมิน</div>
                <div class="text-gray-400">O = แบบสังเกต</div>
                <div class="text-gray-400">P = แบบการปฏิบัติงาน</div>
                <div class="text-gray-400">D = การบันทึก/เอกสาร</div>
                <div class="text-gray-400">I = การสัมภาษณ์</div>
                <div class="text-gray-400">T = แบบทดสอบ</div>
            </div>
            <div class="grid-cols-1">
                <div class="text-gray-400">คำชี้แจง</div>
                <div class="text-gray-400">- ใช้วิธีประเมินโดย ผู้บังคับบัญชา = 100 %</div>
            </div>
            <div class="col-span-3 grid-cols-1">
                <div class="text-gray-400">ระดับความสามารถ (Target Degree)</div>
                <div class="text-gray-400">ระดับ 1 = ไม่มีความรู้พื้นฐานเลย ขาดทักษะในงาน</div>
                <div class="text-gray-400">ระดับ 2 = มีความรู้ในงานบ้างแต่ยังไม่สามารถ ประยุกต์ใช้ในงานได้</div>
                <div class="text-gray-400">ระดับ 3 = นำความรู้มาประยุกต์ใช้ในงานได้ ปฏิบัติงานเองได้ด้วยตัวเอง
                    แก้ไขปัญหาหน้างานได้</div>
                <div class="text-gray-400">ระดับ 4 = สอนผู้อื่นได้ มีความคล่องตัว เชื่อมโยง ความรู้ในงานได้</div>
                <div class="text-gray-400">ระดับ 5 = มีความชำนาญ เชี่ยวชาญ เป็นที่ยอมรับ ในองค์กร</div>
            </div>
        </div>
    </div>
    <div class="pb-2rem px-2rem">
        <div class="overflow-auto rounded-top-0.65rem">
            <table class="ti-custom-table ti-custom-table-head ti-custom-table-hover2">
                <thead class="height-50px">
                    <tr class="font-size-12px">
                        <ng-container
                            *ngFor="let item of ['ลำดับที่','รหัสสมรรถนะ','ชื่อสมรรถนะ','Behavior Indicator (BI)','เครื่องมือประเมิน\n(ตัวย่อ)\n(O,P,D,I,T)']">
                            <th scope="col" rowspan="2"
                                class="relative px-10px py-10px bg-soft-secondary text-primary !text-center">
                                <span class="font-size-12px font-weight-700 ">{{ item }}</span>
                                <div class="absolute top-1/2 transform -translate-y-1/2 right-0">
                                    <i class="ti ti-dots-vertical fs-l"></i>
                                </div>
                            </th>
                        </ng-container>
                        <th scope="col" colspan="5"
                            class="relative px-10px py-10px bg-soft-secondary text-primary !text-center">
                            ระดับความสามารถ (Target Degree)
                        </th>
                    </tr>
                    <tr class="font-size-12px">
                        <ng-container *ngFor="let item of [5,4,3,2,1]">
                            <th scope="col"
                                class="relative px-10px py-10px bg-soft-secondary text-primary !text-center">
                                {{item}}
                            </th>
                        </ng-container>
                    </tr>
                </thead>
                <tbody *ngIf="appraisalCompentency.loading">
                    <tr>
                        <td class="text-center" colspan="100%">
                            <div *ngFor="let item of [1,2,3]" class="ti-spinner w-8 h-8 text-secondary mx-1"
                                role="status" aria-label="loading">
                                <span class="sr-only">Loading...</span>
                            </div>
                        </td>
                    </tr>
                </tbody>
                <tbody *ngIf="!appraisalCompentency.loading&&!appraisalCompentencyFilter().length">
                    <tr>
                        <td class="text-center" colspan="100%">
                            ไม่พบข้อมูล
                        </td>
                    </tr>
                </tbody>
                <tbody *ngIf="!appraisalCompentency.loading&&appraisalCompentencyFilter().length">
                    <ng-container *ngFor="let item2 of appraisalCompentencyFilter();let i = index">
                        <tr *ngFor="let bi of item2.groupAssessment1.competencyIndicatorsCourses1Mini.behavioralIndicatorsList;let i2 = index;let f = first"
                            (mouseenter)="hoveredCode = item2.groupAssessment1.competencyIndicatorsCourses1Mini.competencyCourseId"
                            (mouseleave)="hoveredCode = null"
                            [ngClass]="{ 'table-hover2': item2.groupAssessment1.competencyIndicatorsCourses1Mini.competencyCourseId === hoveredCode ,'border-none':!f }">
                            <td class="align-start text-center">
                                <ng-container *ngIf="f">
                                    {{i+1}}
                                </ng-container>
                            </td>
                            <td class="align-start text-center">
                                <ng-container *ngIf="f">
                                    {{item2.groupAssessment1.competencyIndicatorsCourses1Mini.competencyIndicatorsCourses0.competencyTopic.competencyTopicId}}
                                </ng-container>
                            </td>
                            <td class="align-start !white-space-normal">
                                <ng-container *ngIf="f">
                                    {{item2.groupAssessment1.competencyIndicatorsCourses1Mini.competencyIndicatorsCourses0.tdesc}}
                                </ng-container>
                            </td>
                            <td class="align-start !white-space-normal">
                                {{bi.behavioralIndicators}}
                            </td>
                            <td class="align-center text-center">
                                {{bi.assessmentId}}
                            </td>
                            <td class="align-center text-center" *ngFor="let value of [5,4,3,2,1]; let i3=index">
                                <input type="radio" [name]="'radio'+i+''+i2" class="ti-form-radio"
                                    [id]="'radio'+i+''+i2+''+i3" [class.cursor-pointer]="canEdit"
                                    [class.cursor-not-allowed]="!canEdit" [value]="value" [disabled]="!canEdit"
                                    [(ngModel)]="bi.competencyBehavioral.scoreTopicExpectation"
                                    (ngModelChange)="calnumberCheck()">
                            </td>
                        </tr>
                    </ng-container>
                </tbody>
            </table>
        </div>
    </div>

    <div class="pb-1rem px-2rem">
        <div class="py-2 grid grid-cols-11">
            <div class="col-span-8">ระดับความสามารถ (Target Degree)</div>
            <div class="col-span-3 grid grid-cols-5">
                <div class="col-span-1 text-center" *ngFor="let item of [5,4,3,2,1]">{{item}}</div>
            </div>
        </div>
        <div class="py-2 grid grid-cols-11">
            <div class="col-span-8">รวมจำนวนเครื่องหมายแต่ละช่อง (1)</div>
            <div class="col-span-3 grid grid-cols-5">
                <div class="col-span-1 text-center">
                    {{appraisalCompentency.data.masfromEvaluationAssessment1lList[0].numberCheck5}}</div>
                <div class="col-span-1 text-center">
                    {{appraisalCompentency.data.masfromEvaluationAssessment1lList[0].numberCheck4}}</div>
                <div class="col-span-1 text-center">
                    {{appraisalCompentency.data.masfromEvaluationAssessment1lList[0].numberCheck3}}</div>
                <div class="col-span-1 text-center">
                    {{appraisalCompentency.data.masfromEvaluationAssessment1lList[0].numberCheck2}}</div>
                <div class="col-span-1 text-center">
                    {{appraisalCompentency.data.masfromEvaluationAssessment1lList[0].numberCheck1}}</div>
            </div>
        </div>
        <div class="py-2 grid grid-cols-11">
            <div class="col-span-8">ตัวคูณคะแนนในแต่ละช่อง (2)</div>
            <div class="col-span-3 grid grid-cols-5">
                <div class="col-span-1 text-center">{{setting.data.settingScore5}}</div>
                <div class="col-span-1 text-center">{{setting.data.settingScore4}}</div>
                <div class="col-span-1 text-center">{{setting.data.settingScore3}}</div>
                <div class="col-span-1 text-center">{{setting.data.settingScore2}}</div>
                <div class="col-span-1 text-center">{{setting.data.settingScore1}}</div>
            </div>
        </div>
        <div class="py-2 grid grid-cols-11">
            <div class="col-span-8">ถ่วงน้ำหนักผลรวม 1X2</div>
            <div class="col-span-3 grid grid-cols-5">
                <div class="col-span-1 text-center" *ngFor="let item of [5,4,3,2,1]">{{calWeightScore(item)}}</div>
            </div>
        </div>
        <div class="py-2 grid grid-cols-11">
            <div class="col-span-8">คะแนนรวมหลังถ่วงน้ำ</div>
            <div class="col-span-3 grid grid-cols-5">
                <div class="col-span-5 text-center">
                    {{appraisalCompentency.data.masfromEvaluationAssessment1lList[0].weightedTotal}}</div>
            </div>
        </div>
        <div class="py-2 grid grid-cols-11">
            <div class="col-span-8">คะแนนเฉลี่ยคิดเป็น</div>
            <div class="col-span-3 grid grid-cols-5">
                <div class="col-span-5 text-center">
                    {{showNumber(appraisalCompentency.data.masfromEvaluationAssessment1lList[0].averageScore)}}
                </div>
            </div>
        </div>
    </div>

    <div class="pb-2rem px-2rem">
        <div class="overflow-auto rounded-top-0.65rem">
            <table class="ti-custom-table ti-custom-table-head ti-custom-table-hover">
                <thead class="height-50px">
                    <tr class="font-size-12px">
                        <ng-container
                            *ngFor="let item of  ['เกณฑ์การให้คะแนนการประประเมิน Check Sheet E01','ผลประเมิน (A)','สรุปผล Gap'];let f = first ;let l = last">
                            <th scope="col" [attr.rowspan]="f?'1':'2'" [attr.colspan]="f?'2':'1'"
                                class="relative px-10px py-10px bg-soft-secondary text-primary !text-center">
                                <span class="font-size-12px font-weight-700 ">{{ item }}</span>
                                <div *ngIf="!f&&!l" class="absolute top-1/2 transform -translate-y-1/2 right-0">
                                    <i class="ti ti-dots-vertical fs-l"></i>
                                </div>
                            </th>
                            <th *ngIf="f" scope="col" rowspan="2"
                                class="relative bg-soft-secondary text-primary !text-center !p-0">
                                <div class="absolute top-1/2 transform -translate-y-1/2 right-0">
                                    <i class="ti ti-dots-vertical fs-l"></i>
                                </div>
                            </th>
                        </ng-container>
                    </tr>
                    <tr class="font-size-12px">
                        <ng-container *ngFor="let item of ['เกณฑ์การให้คะแนน','เงื่อนไข']">
                            <th scope="col"
                                class="relative px-10px py-10px bg-soft-secondary text-primary !text-center">
                                {{item}}
                            </th>
                        </ng-container>
                    </tr>
                </thead>
                <tbody *ngIf="checkSheet.length">
                    <tr *ngFor="let item of checkSheet;let i = index">
                        <td class="align-start" rowspan="2">
                            <div *ngFor="let item2 of item.score">
                                <span>{{item2}} </span><br>
                            </div>
                        </td>
                        <td class="align-start" rowspan="2">
                            <div *ngFor="let item2 of item.condition">
                                <span>{{item2}} </span><br>
                            </div>
                        </td>
                        <td class="!p-0"></td>
                        <td class="align-start text-center">
                            {{calAverage(appraisalCompentency.data.masfromEvaluationAssessment1lList[0].averageScore)}}
                        </td>
                        <td class="align-start text-center">
                            {{calGap(appraisalCompentency.data.masfromEvaluationAssessment1lList[0].averageScore)}}
                        </td>
                    </tr>
                    <tr>
                        <td class="align-start !white-space-normal" colspan="4">
                            หมายเหตุ<br>
                            ผลการประเมินอาจมีการเปลี่ยนแปลงเงื่อนไขข้อ 1-3 เนื่องจากมีคะแนนต่ำกว่าเกณฑ์ในบางข้อ
                        </td>
                    </tr>
                </tbody>
            </table>
        </div>
    </div>
    <div class="py-1rem px-2rem">
        <div class="py-2 grid grid-cols-7 gap-3">
            <div class="col-span-1">ผู้ถูกประเมิน</div>
            <div class="col-span-1">
                {{appraisalCompentency.data.apsassessy.thFullName}}</div>
            <div class="col-span-1">
                <input type="checkbox" id="hs-basic-usage1" class="ti-switch checked:bg-none checked:bg-green-600 checked:hover:bg-green-600 checked:focus:bg-green-600 focus:border-green-600 focus:ring-green-600 dark:checked:bg-green-600
            checked:before:bg-green-200 dark:checked:before:bg-green-200 pointer-events-none "
                    [checked]="appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsassessyStatus=='2'">
                <label for="hs-basic-usage1" class="sr-only">ยืนยันผล</label>
            </div>
            <div class="col-span-2">
                <textarea type="text" rows="2" class="ti-form-input mb-2" placeholder="ใส่ Comment ที่นี่"
                    [class.!bg-input-readonly]="!appraisalCompentency.data||appraisalCompentency.data.currentStep!='0'||!canEdit"
                    [readonly]="!appraisalCompentency.data||appraisalCompentency.data.currentStep!='0'||!canEdit"
                    [(ngModel)]="appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsassessyComment"></textarea>
                <span class="pt-2">
                    วันที่ :
                    {{convertDate(appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsassessyDate)}}
                </span>
            </div>
        </div>
        <div class="py-2 grid grid-cols-7 gap-3" *ngIf="appraisalCompentency.data.apsapprove1.employeeId">
            <div class="col-span-1">
                {{appraisalCompentency.data.apsapprove2.employeeId?'ผู้ประเมิน1':'ผู้อนุมัติ'}}
            </div>
            <div class="col-span-1">
                {{appraisalCompentency.data.apsapprove1.thFullName}}</div>
            <div class="col-span-1">
                <input type="checkbox" id="hs-basic-usage1" class="ti-switch checked:bg-none checked:bg-green-600 checked:hover:bg-green-600 checked:focus:bg-green-600 focus:border-green-600 focus:ring-green-600 dark:checked:bg-green-600
            checked:before:bg-green-200 dark:checked:before:bg-green-200 pointer-events-none"
                    [checked]="appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove1Status=='2'">
                <label for="hs-basic-usage1" class="sr-only">ยืนยันผล</label>
            </div>
            <div class="col-span-2">
                <textarea type="text" rows="2" class="ti-form-input mb-2" placeholder="ใส่ Comment ที่นี่"
                    [class.!bg-input-readonly]="!appraisalCompentency.data||appraisalCompentency.data.currentStep!='1'||!canEdit"
                    [readonly]="!appraisalCompentency.data||appraisalCompentency.data.currentStep!='1'||!canEdit"
                    [(ngModel)]="appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove1Comment"></textarea>
                <span class="pt-2">
                    วันที่ :
                    {{convertDate(appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove1Date)}}
                </span>
            </div>
        </div>
        <div class="py-2 grid grid-cols-7 gap-3" *ngIf="appraisalCompentency.data.apsapprove2.employeeId">
            <div class="col-span-1">
                {{appraisalCompentency.data.apsapprove3.employeeId?'ผู้ประเมิน2':'ผู้อนุมัติ'}}
            </div>
            <div class="col-span-1">
                {{appraisalCompentency.data.apsapprove2.thFullName}}</div>
            <div class="col-span-1">
                <input type="checkbox" id="hs-basic-usage1" class="ti-switch checked:bg-none checked:bg-green-600 checked:hover:bg-green-600 checked:focus:bg-green-600 focus:border-green-600 focus:ring-green-600 dark:checked:bg-green-600
            checked:before:bg-green-200 dark:checked:before:bg-green-200 pointer-events-none"
                    [checked]="appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove2Status=='2'">
                <label for="hs-basic-usage1" class="sr-only">ยืนยันผล</label>
            </div>
            <div class="col-span-2">
                <textarea type="text" rows="2" class="ti-form-input mb-2" placeholder="ใส่ Comment ที่นี่"
                    [class.!bg-input-readonly]="!appraisalCompentency.data||appraisalCompentency.data.currentStep!='2'||!canEdit"
                    [readonly]="!appraisalCompentency.data||appraisalCompentency.data.currentStep!='2'||!canEdit"
                    [(ngModel)]="appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove2Comment"></textarea>
                <span class="pt-2">
                    วันที่ :
                    {{convertDate(appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove2Date)}}
                </span>
            </div>
        </div>
        <div class="py-2 grid grid-cols-7 gap-3" *ngIf="appraisalCompentency.data.apsapprove3.employeeId">
            <div class="col-span-1">
                {{appraisalCompentency.data.apsapprove4.employeeId?'ผู้ประเมิน3':'ผู้อนุมัติ'}}
            </div>
            <div class="col-span-1">
                {{appraisalCompentency.data.apsapprove3.thFullName}}</div>
            <div class="col-span-1">
                <input type="checkbox" id="hs-basic-usage1" class="ti-switch checked:bg-none checked:bg-green-600 checked:hover:bg-green-600 checked:focus:bg-green-600 focus:border-green-600 focus:ring-green-600 dark:checked:bg-green-600
            checked:before:bg-green-200 dark:checked:before:bg-green-200 pointer-events-none"
                    [checked]="appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove3Status=='2'">
                <label for="hs-basic-usage1" class="sr-only">ยืนยันผล</label>
            </div>
            <div class="col-span-2">
                <textarea type="text" rows="2" class="ti-form-input mb-2" placeholder="ใส่ Comment ที่นี่"
                    [class.!bg-input-readonly]="!appraisalCompentency.data||appraisalCompentency.data.currentStep!='3'||!canEdit"
                    [readonly]="!appraisalCompentency.data||appraisalCompentency.data.currentStep!='3'||!canEdit"
                    [(ngModel)]="appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove3Comment"></textarea>
                <span class="pt-2">
                    วันที่ :
                    {{convertDate(appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove3Date)}}
                </span>
            </div>
        </div>
        <div class="py-2 grid grid-cols-7 gap-3" *ngIf="appraisalCompentency.data.apsapprove4.employeeId">
            <div class="col-span-1">
                {{appraisalCompentency.data.apsapprove5.employeeId?'ผู้ประเมิน4':'ผู้อนุมัติ'}}
            </div>
            <div class="col-span-1">
                {{appraisalCompentency.data.apsapprove4.thFullName}}</div>
            <div class="col-span-1">
                <input type="checkbox" id="hs-basic-usage1" class="ti-switch checked:bg-none checked:bg-green-600 checked:hover:bg-green-600 checked:focus:bg-green-600 focus:border-green-600 focus:ring-green-600 dark:checked:bg-green-600
            checked:before:bg-green-200 dark:checked:before:bg-green-200 pointer-events-none"
                    [checked]="appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove4Status=='2'">
                <label for="hs-basic-usage1" class="sr-only">ยืนยันผล</label>
            </div>
            <div class="col-span-2">
                <textarea type="text" rows="2" class="ti-form-input mb-2" placeholder="ใส่ Comment ที่นี่"
                    [class.!bg-input-readonly]="!appraisalCompentency.data||appraisalCompentency.data.currentStep!='4'||!canEdit"
                    [readonly]="!appraisalCompentency.data||appraisalCompentency.data.currentStep!='4'||!canEdit"
                    [(ngModel)]="appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove4Comment"></textarea>
                <span class="pt-2">
                    วันที่ :
                    {{convertDate(appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove4Date)}}
                </span>
            </div>
        </div>
        <div class="py-2 grid grid-cols-7 gap-3" *ngIf="appraisalCompentency.data.apsapprove5.employeeId">
            <div class="col-span-1">
                ผู้อนุมัติ
            </div>
            <div class="col-span-1">
                {{appraisalCompentency.data.apsapprove5.thFullName}}</div>
            <div class="col-span-1">
                <input type="checkbox" id="hs-basic-usage1" class="ti-switch checked:bg-none checked:bg-green-600 checked:hover:bg-green-600 checked:focus:bg-green-600 focus:border-green-600 focus:ring-green-600 dark:checked:bg-green-600
            checked:before:bg-green-200 dark:checked:before:bg-green-200 pointer-events-none"
                    [checked]="appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove5Status=='2'">
                <label for="hs-basic-usage1" class="sr-only">ยืนยันผล</label>
            </div>
            <div class="col-span-2">
                <textarea type="text" rows="2" class="ti-form-input mb-2" placeholder="ใส่ Comment ที่นี่"
                    [class.!bg-input-readonly]="!appraisalCompentency.data||appraisalCompentency.data.currentStep!='5'||!canEdit"
                    [readonly]="!appraisalCompentency.data||appraisalCompentency.data.currentStep!='5'||!canEdit"
                    [(ngModel)]="appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove5Comment"></textarea>
                <span class="pt-2">
                    วันที่ :
                    {{convertDate(appraisalCompentency.data.masfromEvaluationAssessment1lList[0].apsapprove5Date)}}
                </span>
            </div>
        </div>
    </div>

    <div class="flex justify-center mb-1rem pb-2rem" *ngIf="canEdit">
        <button type="submit" class="ti-btn ti-btn-success mx-2rem" (click)="save('draft')">
            บันทึกร่าง
        </button>
        <button type="submit" class="ti-btn ti-btn-success mx-2rem" (click)="save()">
            บันทึกข้อมูล
        </button>
    </div>
</div>