Commit 8fb28e71 by Nattana Chaiyamat

การประเมินสมรรถนะ

การจัดการสมรรถนะ
จัดกลุ่มสมรรถนะ
parent 61a21b06
...@@ -90,7 +90,7 @@ ...@@ -90,7 +90,7 @@
</div> </div>
<div class="px-1"> <div class="px-1">
<button type="button" class="ti-btn ti-btn-soft-secondary h-20px m-0 shadow-md" <button type="button" class="ti-btn ti-btn-soft-secondary h-20px m-0 shadow-md"
data-hs-overlay="#edit-group-competencies-table-modal-select"> (click)="searchModalChange()" data-hs-overlay="#edit-group-competencies-table-modal-select">
<i class="ri-add-line"></i> <i class="ri-add-line"></i>
Add Add
</button> </button>
...@@ -260,7 +260,7 @@ ...@@ -260,7 +260,7 @@
<thead> <thead>
<tr> <tr>
<ng-container <ng-container
*ngFor="let item of ['รหัส','ชื่อประเภท','ระดับความคาดหวัง','การจัดการ']; let f = first; let l = last; let i = index"> *ngFor="let item of ['รหัส','ชื่อสมรรถนะ','ระดับความคาดหวัง','การจัดการ']; let f = first; let l = last; let i = index">
<th scope="col" class="relative px-10px py-10px bg-soft-secondary text-primary" <th scope="col" class="relative px-10px py-10px bg-soft-secondary text-primary"
[class.!text-center]="f||l"> [class.!text-center]="f||l">
<span class="text-sm">{{ item }}</span> <span class="text-sm">{{ item }}</span>
......
import { Component, EventEmitter, Input, Output } from '@angular/core'; import { ChangeDetectorRef, Component, EventEmitter, Input, Output } from '@angular/core';
import { ToastrService } from 'ngx-toastr'; import { ToastrService } from 'ngx-toastr';
import { AppraisalService } from 'src/app/shared/services/appraisal.service'; import { AppraisalService } from 'src/app/shared/services/appraisal.service';
...@@ -7,15 +7,27 @@ import { AppraisalService } from 'src/app/shared/services/appraisal.service'; ...@@ -7,15 +7,27 @@ import { AppraisalService } from 'src/app/shared/services/appraisal.service';
templateUrl: './round-one.component.html', templateUrl: './round-one.component.html',
styleUrls: ['./round-one.component.scss'] styleUrls: ['./round-one.component.scss']
}) })
export class RoundOneComponent { @Input() pathTitle = ['การประเมินสมรรถนะ', 'ทะเบียนเครื่องมือ', 'เครื่องมือประเมิน']; export class RoundOneComponent {
@Input() pathTitle = ['การประเมินสมรรถนะ', 'ทะเบียนเครื่องมือ', 'เครื่องมือประเมิน'];
@Output() sendPathTitle: EventEmitter<string[]> = new EventEmitter<string[]>(); @Output() sendPathTitle: EventEmitter<string[]> = new EventEmitter<string[]>();
@Output() sendPageEvalution: EventEmitter<string> = new EventEmitter<string>(); @Output() sendPageEvalution: EventEmitter<string> = new EventEmitter<string>();
@Output() sendEmployeeId: EventEmitter<string> = new EventEmitter<string>(); @Output() sendEmployeeId: EventEmitter<string> = new EventEmitter<string>();
constructor(private appraisalService: AppraisalService constructor(private appraisalService: AppraisalService,
) { private cdr: ChangeDetectorRef) {
} }
getBossList(){ ngOnInit(): void {
this.getBossList()
}
getBossList() {
this.appraisalService.getBossList().subscribe({
next: response => {
console.log(" 🐒 response:", response)
this.cdr.detectChanges()
}, error: error => {
this.cdr.detectChanges()
}
})
} }
returnPage(text: string) { returnPage(text: string) {
this.sendEmployeeId.emit() this.sendEmployeeId.emit()
......
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
}
}
...@@ -5,6 +5,7 @@ import { environment } from 'src/environments/environment'; ...@@ -5,6 +5,7 @@ import { environment } from 'src/environments/environment';
import { AlertModel } from '../model/alert.model'; import { AlertModel } from '../model/alert.model';
import { AppraisalFormModel } from '../model/appraisal-form.model'; import { AppraisalFormModel } from '../model/appraisal-form.model';
import { AppraisalCompentencyModel, AppraisalCompentencyModel2 } from '../model/appraisal-competency.model'; import { AppraisalCompentencyModel, AppraisalCompentencyModel2 } from '../model/appraisal-competency.model';
import { AppraisalSubordinateModel } from '../model/appraisal-subordinate .model';
@Injectable({ @Injectable({
providedIn: 'root' providedIn: 'root'
}) })
...@@ -22,7 +23,7 @@ export class AppraisalService { ...@@ -22,7 +23,7 @@ export class AppraisalService {
postCompetency(body: AppraisalCompentencyModel2): Observable<AlertModel> { postCompetency(body: AppraisalCompentencyModel2): Observable<AlertModel> {
return this.http.post<AlertModel>(this.urlApi + "/competency", body) return this.http.post<AlertModel>(this.urlApi + "/competency", body)
} }
getBossList(): Observable<AppraisalCompentencyModel2> { getBossList(): Observable<AppraisalSubordinateModel[]> {
return this.http.get<AppraisalCompentencyModel2>(this.urlApi + "/appraisal/boss/emp") return this.http.get<AppraisalSubordinateModel[]>(this.urlApi + "/boss/emp")
} }
} }
\ No newline at end of file
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