Commit ed23539d by Nattana Chaiyamat

การประเมินจัดการประสิทธิภาพ > รอบประเมิน > รอบการประเมิน

parent 724546c0
......@@ -75,9 +75,8 @@ const routes: Routes = [
{ path: "command-structure",title: 'โครงสร้างสายการบังคับบัญชา', component: CommandStructureComponent },
{ path: "assessment-management",title: 'การจัดการการประเมิน', component: AssessmentManagementComponent },
{ path: "job-position-indicators",title: 'ตัวชี้วัดของตำแหน่งงาน', component: JobPositionIndicatorsComponent },
{ path: "evaluation-cycle-performance",title: 'รอบการประเมิณ', component: EvaluationCyclePerformanceComponent },
{ path: "supervisor-evaluation",title: 'ประเมินโดยหัวหน้า', component: SupervisorEvaluationComponent },
{ path: "evaluation-cycle-performance",title: 'รอบการประเมิน', component: EvaluationCyclePerformanceComponent },
{ path: "supervisor-evaluation",title: 'ประเมินโดยหัวหน้า', component: SupervisorEvaluationComponent },
{ path: "employee-registration",title: 'ทะเบียนพนักงาน', component: EmployeeRegistrationComponent },
{ path: "name-registration-perfomance",title: 'ทะเบียนกำหนดชื่อ', component: NameRegistrationPerfomanceComponent },
......
......@@ -99,6 +99,7 @@ import { EvaluationGroupingComponent } from '../performance-management-evaluatio
import { EditEvaluationGroupingComponent } from '../performance-management-evaluation/assessment-management/evaluation-grouping/edit-evaluation-grouping/edit-evaluation-grouping.component';
import { JobPositionIndicatorsComponent } from '../job-detail-components/job-position-indicators/job-position-indicators.component';
import { AssessmentTopicsComponent } from '../performance-management-evaluation/name-registration-perfomance/assessment-topics/assessment-topics.component';
import { ManagementCycleComponent } from '../performance-management-evaluation/evaluation-cycle-performance/management-evaluation-cycle/management-evaluation-cycle.component';
@NgModule({
declarations: [
......@@ -180,6 +181,7 @@ import { AssessmentTopicsComponent } from '../performance-management-evaluation/
AssessmentTypesComponent,
EvaluationGroupingComponent,
EditEvaluationGroupingComponent,
ManagementCycleComponent
],
imports: [
CommonModule,
......
......@@ -8,18 +8,17 @@
<div class="page pt-0.75rem">
<div class="border-b border-gray-200 dark:border-white/10 px-2rem">
<nav class="-mb-0.5 flex space-x-6 rtl:space-x-reverse">
<a class="text-base font-medium hs-tab-active:border-secondary hs-tab-active:text-secondary pb-3 inline-flex items-center gap-2 border-b-[3px] border-transparent whitespace-nowrap text-gray-500 dark:text-white/70 hover:text-secondary active"
href="javascript:void(0);" id="underline-item-1" data-hs-tab="#underline-1"
aria-controls="underline-1"
(click)="activeTab='underline-1';pathTitle = ['การประเมินจัดการประสิทธิภาพ','การจัดการประเมิน','รอบการประเมิน']">
จัดกลุ่มการประเมิน
(click)="activeTab='underline-1';pathTitle = ['การประเมินจัดการประสิทธิภาพ','รอบประเมิน','รอบการประเมิน']">
รอบการประเมิน
</a>
<a class="text-base font-medium hs-tab-active:border-secondary hs-tab-active:text-secondary pb-3 inline-flex items-center gap-2 border-b-[3px] border-transparent whitespace-nowrap text-gray-500 dark:text-white/70 hover:text-secondary"
href="javascript:void(0);" id="underline-item-2" data-hs-tab="#underline-2"
aria-controls="underline-2"
(click)="activeTab='underline-2';pathTitle = ['การประเมินจัดการประสิทธิภาพ','การจัดการประเมิน','กำหนดฟอร์มเอกสาร']">
(click)="activeTab='underline-2';pathTitle = ['การประเมินจัดการประสิทธิภาพ','รอบประเมิน','กำหนดฟอร์มเอกสาร']">
กำหนดฟอร์มเอกสาร
</a>
</nav>
......@@ -27,12 +26,12 @@
<div class="mt-3 px-2rem">
<div id="underline-1" role="tabpanel" aria-labelledby="underline-item-1"
*ngIf="activeTab === 'underline-1'">
-----
<app-management-evaluation-cycle></app-management-evaluation-cycle>
</div>
<div id="underline-2" role="tabpanel" aria-labelledby="underline-item-2"
*ngIf="activeTab === 'underline-2'">
<app-document-form *ngIf="groupShow=='1'" [pathTitle]="pathTitle"
(sendPathTitle)="pathTitle=$event" (sendGroupShow)="groupShow=$event"></app-document-form>
<app-document-form *ngIf="groupShow=='1'" [pathTitle]="pathTitle" (sendPathTitle)="pathTitle=$event"
(sendGroupShow)="groupShow=$event"></app-document-form>
<app-edit-evaluation-form *ngIf="groupShow=='2'" [pathTitle]="pathTitle"
(sendPathTitle)="pathTitle=$event" (sendGroupShow)="groupShow=$event"></app-edit-evaluation-form>
</div>
......
import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core';
import { ToastrService } from 'ngx-toastr';
export interface dataModel {
check: boolean,
code: string,
period: string,
year: string,
startDate: string,
endDate: string,
status: string
}
@Component({
selector: 'app-management-evaluation-cycle',
templateUrl: './management-evaluation-cycle.component.html',
styleUrls: ['./management-evaluation-cycle.component.scss']
})
export class ManagementCycleComponent {
currentPage = 1
page = Array.from({ length: 1 }, (_, i) => i + 1);
search = ""
numDataListChecked = 0
isDataListChecked = false
isDataListCheckedAll = false
dataList: dataModel[] = [
{
check: false,
code: "Y67P2",
period: "ช่วงเวลาที่ 2",
year: "2567",
startDate: "01-07-2567",
endDate: "31-12-2567",
status: "1"
},
{
check: false,
code: "Y68P1",
period: "ช่วงเวลาที่ 1",
year: "2568",
startDate: "01-01-2568",
endDate: "30-06-2568",
status: "2"
},
{
check: false,
code: "Y67P1",
period: "ช่วงเวลาที่ 1",
year: "2567",
startDate: "01-01-2567",
endDate: "30-06-2567",
status: "3"
}
]
dataSelect: dataModel = {
check: false,
code: "",
period: "",
year: "",
startDate: "",
endDate: "",
status: "",
}
modalStatus: "add" | "edit" = "add"
constructor(private cdr: ChangeDetectorRef) {
}
dataListSelect(data?: dataModel) {
this.dataSelect = data || {
check: false,
code: "",
period: "",
year: "",
startDate: "",
endDate: "",
status: "",
}
this.cdr.detectChanges()
}
dataListFilter() {
return this.dataList.filter(x => {
const match = x.code.includes(this.search) || x.period.includes(this.search);
if (!match) x.check = false;
return match;
});
}
dataListCheck() {
const dataCheck = this.dataListFilter();
this.isDataListChecked = dataCheck.some(x => x.check);
this.isDataListCheckedAll = dataCheck.length ? dataCheck.every(x => x.check) : false;
this.numDataListChecked = dataCheck.filter(x => x.check).length;
}
dataListCheckAll() {
const selectAll = this.isDataListCheckedAll;
this.dataList.forEach(x => x.check = selectAll);
this.dataListCheck();
}
searchChange() {
this.currentPage = 1;
const filteredData = this.dataListFilter();
this.page = Array.from({ length: Math.ceil(filteredData.length / 10) }, (_, i) => i + 1);
this.dataListCheck();
}
}
......@@ -149,7 +149,7 @@ export class NavService implements OnDestroy {
},
{
title: 'การประเมิผล',
title: 'การประเมิผล',
type: 'sub',
selected: false,
active: false,
......
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