Commit 5405eac3 by Nakarin Luankla

Merge branch 'DEV' of https://mygit.myhr.co.th/angular/myAppraisal into DEV

parents 6421bd76 f89fa9a1
......@@ -305,7 +305,7 @@
</tbody>
<tbody *ngIf="!dataLoading&&dataListModalFilter().length">
<tr
*ngFor="let item of dataListModalFilter()| slice:((currentPage-1) * 10) : (((currentPage-1) * 10) + 10);let i = index">
*ngFor="let item of dataListModalFilter()| slice:((currentPageModal-1) * 10) : (((currentPageModal-1) * 10) + 10);let i = index">
<td class="text-center">
{{item.data.competencyIndicatorsCourses0.competencyTopic.competencyTopicId}}
</td>
......@@ -330,27 +330,29 @@
</table>
</div>
</div>
<nav class="pagination-style-3 overflow-auto my-5" *ngIf="page.length">
<nav class="pagination-style-3 overflow-auto my-5" *ngIf="pageModal.length">
<ul class="ti-pagination">
<li>
<a aria-label="anchor" class="page-link" href="javascript:void(0);"
(click)="currentPage = (currentPage-1 || 1)">
(click)="currentPageModal = (currentPageModal-1 || 1)">
<i class="ri-arrow-left-s-line align-middle rtl:rotate-180"></i>
</a>
</li>
<li *ngFor="let item of page;let f = first;let l = last">
<ng-container *ngIf="item==3&&currentPage!=1&&currentPage!=2&&currentPage!=3">
<li *ngFor="let item of pageModal;let f = first;let l = last">
<ng-container
*ngIf="item==3&&currentPageModal!=1&&currentPageModal!=2&&currentPageModal!=3">
<a aria-label="anchor" class="page-link" href="javascript:void(0);"><i
class="ri-more-line"></i>
</a>
</ng-container>
<ng-container *ngIf="(f||l)||(item==currentPage-1||item==currentPage||item==currentPage+1)">
<a class="page-link" href="javascript:void(0);" [class.active]="item==currentPage"
(click)="currentPage=item">{{item}}
<ng-container
*ngIf="(f||l)||(item==currentPageModal-1||item==currentPageModal||item==currentPageModal+1)">
<a class="page-link" href="javascript:void(0);" [class.active]="item==currentPageModal"
(click)="currentPageModal=item">{{item}}
</a>
</ng-container>
<ng-container
*ngIf="item==page.length-2&&currentPage!=page.length&&currentPage!=page.length-1&&currentPage!=page.length-2">
*ngIf="item==pageModal.length-2&&currentPageModal!=pageModal.length&&currentPageModal!=pageModal.length-1&&currentPageModal!=pageModal.length-2">
<a aria-label="anchor" class="page-link" href="javascript:void(0);"><i
class="ri-more-line"></i>
</a>
......@@ -358,16 +360,16 @@
</li>
<li>
<a aria-label="anchor" class="page-link" href="javascript:void(0);"
(click)="currentPage = (currentPage > page.length-1 ? currentPage: currentPage+1 )">
(click)="currentPageModal = (currentPageModal > pageModal.length-1 ? currentPageModal: currentPageModal+1 )">
<i class="ri-arrow-right-s-line align-middle rtl:rotate-180"></i>
</a>
</li>
</ul>
<ul class="nav-tabs mt-3">
<span>Show {{((currentPage-1) * 10)+1}} to {{dataListModalFilter().length<10
?dataListModalFilter().length: (currentPage==page.length ? ((currentPage * 10) -
((currentPage * 10) - dataListModalFilter().length) ) :(currentPage * 10) ) }} of
{{dataListModalFilter().length}} items</span>
<span>Show {{((currentPageModal-1) * 10)+1}} to {{dataListModalFilter().length<10
?dataListModalFilter().length: (currentPageModal==pageModal.length ? ((currentPageModal
* 10) - ((currentPageModal * 10) - dataListModalFilter().length) ) :(currentPageModal *
10) ) }} of {{dataListModalFilter().length}} items</span>
</ul>
</nav>
</div>
......
......@@ -26,6 +26,7 @@ export class EditGroupCompetenciesComponent {
page = Array.from({ length: 1 }, (_, i) => i + 1);
searchModal = ""
currentPageModal = 1
pageModal = Array.from({ length: 1 }, (_, i) => i + 1);
dataLoading = false
dataModalLoading = false
......@@ -122,9 +123,9 @@ export class EditGroupCompetenciesComponent {
}
searchModalChange() {
this.currentPage = 1;
this.currentPageModal = 1;
const filteredData = this.dataListModalFilter();
this.page = Array.from({ length: Math.ceil(filteredData.length / 10) }, (_, i) => i + 1);
this.pageModal = Array.from({ length: Math.ceil(filteredData.length / 10) }, (_, i) => i + 1);
}
dataListModalFilter() {
......
......@@ -344,7 +344,7 @@
<input type="radio" [name]="'radio'+i+''+i2" class="ti-form-radio cursor-pointer"
[id]="'radio'+i+''+i2+''+i3" [value]="value"
[(ngModel)]="bi.competencyBehavioral.scoreTopicExpectation"
(ngModelChange)="caltargetScore()">
(ngModelChange)="calnumberCheck()">
</td>
</tr>
</ng-container>
......@@ -363,11 +363,11 @@
<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">{{appraisalCompentencyForm.data.targetScore5}}</div>
<div class="col-span-1 text-center">{{appraisalCompentencyForm.data.targetScore4}}</div>
<div class="col-span-1 text-center">{{appraisalCompentencyForm.data.targetScore3}}</div>
<div class="col-span-1 text-center">{{appraisalCompentencyForm.data.targetScore2}}</div>
<div class="col-span-1 text-center">{{appraisalCompentencyForm.data.targetScore1}}</div>
<div class="col-span-1 text-center">{{appraisalCompentencyForm.data.numberCheck5}}</div>
<div class="col-span-1 text-center">{{appraisalCompentencyForm.data.numberCheck4}}</div>
<div class="col-span-1 text-center">{{appraisalCompentencyForm.data.numberCheck3}}</div>
<div class="col-span-1 text-center">{{appraisalCompentencyForm.data.numberCheck2}}</div>
<div class="col-span-1 text-center">{{appraisalCompentencyForm.data.numberCheck1}}</div>
</div>
</div>
<div class="py-2 grid grid-cols-11">
......@@ -472,7 +472,8 @@
<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 ที่นี่"></textarea>
<textarea type="text" rows="2" class="ti-form-input mb-2" placeholder="ใส่ Comment ที่นี่"
[(ngModel)]="appraisalCompentencyForm.data.apsassessyComment"></textarea>
<span class="pt-2">
วันที่ : {{convertDate(currentDate)}}
</span>
......
......@@ -107,7 +107,7 @@ export class SelfEvaluationComponent implements OnInit {
this.appraisalService.getFormCompentencyById(this.appraisalCompentency.select.masfromEvaluationRoundModel.evaluationRoundId, this.employee.data.employeeId).subscribe({
next: response => {
this.appraisalCompentencyForm.data = new MyAppraisalFormModel(response)
this.caltargetScore()
this.calnumberCheck()
this.appraisalCompentencyForm.loading = false
this.cdr.detectChanges()
}, error: error => {
......@@ -290,32 +290,32 @@ export class SelfEvaluationComponent implements OnInit {
return date.toLocaleDateString('th-TH', { day: 'numeric', month: 'long', year: 'numeric' });
}
caltargetScore() {
this.appraisalCompentencyForm.data.targetScore1 = this.appraisalCompentencyForm.data.masfromEvaluationAssessment1lList.map(x => x.groupAssessment1.competencyIndicatorsCourses1Mini.behavioralIndicatorsList.filter(y => y.competencyBehavioral.scoreTopicExpectation == 1).length).reduce((acc, num) => acc + num, 0)
this.appraisalCompentencyForm.data.targetScore2 = this.appraisalCompentencyForm.data.masfromEvaluationAssessment1lList.map(x => x.groupAssessment1.competencyIndicatorsCourses1Mini.behavioralIndicatorsList.filter(y => y.competencyBehavioral.scoreTopicExpectation == 2).length).reduce((acc, num) => acc + num, 0)
this.appraisalCompentencyForm.data.targetScore3 = this.appraisalCompentencyForm.data.masfromEvaluationAssessment1lList.map(x => x.groupAssessment1.competencyIndicatorsCourses1Mini.behavioralIndicatorsList.filter(y => y.competencyBehavioral.scoreTopicExpectation == 3).length).reduce((acc, num) => acc + num, 0)
this.appraisalCompentencyForm.data.targetScore4 = this.appraisalCompentencyForm.data.masfromEvaluationAssessment1lList.map(x => x.groupAssessment1.competencyIndicatorsCourses1Mini.behavioralIndicatorsList.filter(y => y.competencyBehavioral.scoreTopicExpectation == 4).length).reduce((acc, num) => acc + num, 0)
this.appraisalCompentencyForm.data.targetScore5 = this.appraisalCompentencyForm.data.masfromEvaluationAssessment1lList.map(x => x.groupAssessment1.competencyIndicatorsCourses1Mini.behavioralIndicatorsList.filter(y => y.competencyBehavioral.scoreTopicExpectation == 5).length).reduce((acc, num) => acc + num, 0)
calnumberCheck() {
this.appraisalCompentencyForm.data.numberCheck1 = this.appraisalCompentencyForm.data.masfromEvaluationAssessment1lList.map(x => x.groupAssessment1.competencyIndicatorsCourses1Mini.behavioralIndicatorsList.filter(y => y.competencyBehavioral.scoreTopicExpectation == 1).length).reduce((acc, num) => acc + num, 0)
this.appraisalCompentencyForm.data.numberCheck2 = this.appraisalCompentencyForm.data.masfromEvaluationAssessment1lList.map(x => x.groupAssessment1.competencyIndicatorsCourses1Mini.behavioralIndicatorsList.filter(y => y.competencyBehavioral.scoreTopicExpectation == 2).length).reduce((acc, num) => acc + num, 0)
this.appraisalCompentencyForm.data.numberCheck3 = this.appraisalCompentencyForm.data.masfromEvaluationAssessment1lList.map(x => x.groupAssessment1.competencyIndicatorsCourses1Mini.behavioralIndicatorsList.filter(y => y.competencyBehavioral.scoreTopicExpectation == 3).length).reduce((acc, num) => acc + num, 0)
this.appraisalCompentencyForm.data.numberCheck4 = this.appraisalCompentencyForm.data.masfromEvaluationAssessment1lList.map(x => x.groupAssessment1.competencyIndicatorsCourses1Mini.behavioralIndicatorsList.filter(y => y.competencyBehavioral.scoreTopicExpectation == 4).length).reduce((acc, num) => acc + num, 0)
this.appraisalCompentencyForm.data.numberCheck5 = this.appraisalCompentencyForm.data.masfromEvaluationAssessment1lList.map(x => x.groupAssessment1.competencyIndicatorsCourses1Mini.behavioralIndicatorsList.filter(y => y.competencyBehavioral.scoreTopicExpectation == 5).length).reduce((acc, num) => acc + num, 0)
this.calWeightTotal()
this.cdr.detectChanges()
}
calWeightScore(targetScore: number) {
switch (targetScore) {
calWeightScore(numberCheck: number) {
switch (numberCheck) {
case (1): {
return +(this.setting.data.settingScore1) * this.appraisalCompentencyForm.data.targetScore1
return +(this.setting.data.settingScore1) * this.appraisalCompentencyForm.data.numberCheck1
}
case (2): {
return +(this.setting.data.settingScore2) * this.appraisalCompentencyForm.data.targetScore2
return +(this.setting.data.settingScore2) * this.appraisalCompentencyForm.data.numberCheck2
}
case (3): {
return +(this.setting.data.settingScore3) * this.appraisalCompentencyForm.data.targetScore3
return +(this.setting.data.settingScore3) * this.appraisalCompentencyForm.data.numberCheck3
}
case (4): {
return +(this.setting.data.settingScore4) * this.appraisalCompentencyForm.data.targetScore4
return +(this.setting.data.settingScore4) * this.appraisalCompentencyForm.data.numberCheck4
}
case (5): {
return +(this.setting.data.settingScore5) * this.appraisalCompentencyForm.data.targetScore5
return +(this.setting.data.settingScore5) * this.appraisalCompentencyForm.data.numberCheck5
}
default: { return }
}
......@@ -343,12 +343,12 @@ export class SelfEvaluationComponent implements OnInit {
calGap(score: number | string) {
const roundedScore = this.showNumber(score) % 1 <= 0.5 ? Math.floor(this.showNumber(score)) : Math.round(this.showNumber(score));
if (roundedScore >= 90 && roundedScore <= 100) {
if (this.appraisalCompentencyForm.data.targetScore1 || this.appraisalCompentencyForm.data.targetScore2 || this.appraisalCompentencyForm.data.targetScore3) {
if (this.appraisalCompentencyForm.data.numberCheck1 || this.appraisalCompentencyForm.data.numberCheck2 || this.appraisalCompentencyForm.data.numberCheck3) {
return "-1";
}
return "+1";
} else if (roundedScore >= 80 && roundedScore <= 89) {
if (this.appraisalCompentencyForm.data.targetScore1 || this.appraisalCompentencyForm.data.targetScore2 || this.appraisalCompentencyForm.data.targetScore3) {
if (this.appraisalCompentencyForm.data.numberCheck1 || this.appraisalCompentencyForm.data.numberCheck2 || this.appraisalCompentencyForm.data.numberCheck3) {
return "-1";
}
return "0";
......
......@@ -9,6 +9,7 @@ export interface AppraisalFormModel {
companyId: string
fromDetail: string
apsassessy: EmployeeModel
apsassessyComment: string
apsapprove1: EmployeeModel
apsapprove2: EmployeeModel
apsapprove3: EmployeeModel
......@@ -20,11 +21,11 @@ export interface AppraisalFormModel {
apsapprove3Status: string
apsapprove4Status: string
apsapprove5Status: string
targetScore1: number
targetScore2: number
targetScore3: number
targetScore4: number
targetScore5: number
numberCheck1: number
numberCheck2: number
numberCheck3: number
numberCheck4: number
numberCheck5: number
weightedTotal: number
averageScore: number
apsapprove1Comment: string
......@@ -42,6 +43,7 @@ export class MyAppraisalFormModel implements AppraisalFormModel {
companyId: string
fromDetail: string
apsassessy: EmployeeModel
apsassessyComment: string
apsapprove1: EmployeeModel
apsapprove2: EmployeeModel
apsapprove3: EmployeeModel
......@@ -53,11 +55,11 @@ export class MyAppraisalFormModel implements AppraisalFormModel {
apsapprove3Status: string
apsapprove4Status: string
apsapprove5Status: string
targetScore1: number
targetScore2: number
targetScore3: number
targetScore4: number
targetScore5: number
numberCheck1: number
numberCheck2: number
numberCheck3: number
numberCheck4: number
numberCheck5: number
weightedTotal: number
averageScore: number
apsapprove1Comment: string
......@@ -73,6 +75,7 @@ export class MyAppraisalFormModel implements AppraisalFormModel {
this.masfromEvaluationRoundModel = new MyEvaluationCycleModel(data?.masfromEvaluationRoundModel)
this.companyId = data?.companyId || ""
this.fromDetail = data?.fromDetail || ""
this.apsassessyComment = data?.apsassessyComment || ""
this.apsassessy = new MyEmployeeModel(data?.apsassessy)
this.apsapprove1 = new MyEmployeeModel(data?.apsapprove1)
this.apsapprove2 = new MyEmployeeModel(data?.apsapprove2)
......@@ -85,11 +88,11 @@ export class MyAppraisalFormModel implements AppraisalFormModel {
this.apsapprove3Status = data?.apsapprove3Status || ""
this.apsapprove4Status = data?.apsapprove4Status || ""
this.apsapprove5Status = data?.apsapprove5Status || ""
this.targetScore1 = data?.targetScore1 ?? 0
this.targetScore2 = data?.targetScore2 ?? 0
this.targetScore3 = data?.targetScore3 ?? 0
this.targetScore4 = data?.targetScore4 ?? 0
this.targetScore5 = data?.targetScore5 ?? 0
this.numberCheck1 = data?.numberCheck1 ?? 0
this.numberCheck2 = data?.numberCheck2 ?? 0
this.numberCheck3 = data?.numberCheck3 ?? 0
this.numberCheck4 = data?.numberCheck4 ?? 0
this.numberCheck5 = data?.numberCheck5 ?? 0
this.weightedTotal = data?.weightedTotal ?? 0
this.averageScore = data?.averageScore ?? 0
this.apsapprove1Comment = data?.apsapprove1Comment || ""
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment