Commit b0814b9d by Nattana Chaiyamat

ใบกำหนดหน้าที่ (JOB DESCRIPTION)

parent 0520217b
......@@ -56,6 +56,7 @@ import { EssProfileComponent } from '../ess-profile/ess-profile.component';
import { ExcelReportComponent } from '../excel-report/excel-report.component';
import { SettingIndividualKpiComponent } from '../setting-individual-kpi/setting-individual-kpi.component';
import { SettingIndividualKpiSupervisorComponent } from '../setting-individual-kpi-supervisor/setting-individual-kpi-supervisor.component';
import { JobDescriptionEssComponent } from '../job-description-ess/job-description-ess.component';
......@@ -125,6 +126,7 @@ const routes: Routes = [
{ path: "ess/self-setting-individual-kpi", title: 'แก้ไข Individual KPI ตนเอง', component: SettingIndividualKpiComponent },
{ path: "ess/supervisor-setting-individual-kpi", title: 'แก้ไข Individual KPI โดยหัวหน้า', component: SettingIndividualKpiSupervisorComponent },
{ path: "ess/job-description", title: 'รายละเอียดของงาน', component: JobDescriptionEssComponent },
]
}
];
......
......@@ -206,6 +206,7 @@ import {
} from '@syncfusion/ej2-angular-grids';
import { SettingIndividualKpiComponent } from '../setting-individual-kpi/setting-individual-kpi.component';
import { SettingIndividualKpiSupervisorComponent } from '../setting-individual-kpi-supervisor/setting-individual-kpi-supervisor.component';
import { JobDescriptionEssComponent } from '../job-description-ess/job-description-ess.component';
export const MY_DATE_FORMATS = {
parse: {
......@@ -353,7 +354,8 @@ export class CustomDateAdapter extends NativeDateAdapter {
ExcelReportComponent,
PivotSyncfutionComponent,
SettingIndividualKpiComponent,
SettingIndividualKpiSupervisorComponent
SettingIndividualKpiSupervisorComponent,
JobDescriptionEssComponent
],
imports: [
CommonModule,
......
......@@ -17,7 +17,8 @@ export class EmployeeSelfServiceComponent {
// ▶︎ เมนูย่อย (ฝั่งขวา)
modules: SubModule[] = [
{ title: this.sanitizer.bypassSecurityTrustHtml('ประเมิน<p>Competency & PMS'), route: '/ess/self-evaluation' },
{ title: this.sanitizer.bypassSecurityTrustHtml('Job Description<p>รายละเอียดของงาน'), file: '2._JD.pdf' },
// { title: this.sanitizer.bypassSecurityTrustHtml('Job Description<p>รายละเอียดของงาน'), file: '2._JD.pdf' },
{ title: this.sanitizer.bypassSecurityTrustHtml('Job Description<p>รายละเอียดของงาน'), route: '/ess/job-description' },
{ title: this.sanitizer.bypassSecurityTrustHtml('Gap Analysis<p>การวิเคราะห์ Gap'), file: '3._Gap_analysis.pdf' },
{ title: this.sanitizer.bypassSecurityTrustHtml('Profile<p>ข้อมูลพนักงาน'), route: '/ess/profile' },
{ title: this.sanitizer.bypassSecurityTrustHtml('Skill Map<p>ทักษะที่จำเป็นสำหรับแต่ละตำแหน่งงาน'), file: '5._skill_map.pdf' },
......
......@@ -16,10 +16,9 @@
<div class="absolute inset-x-0 text-center space-y-3" style="top:4rem">
<div class="flex justify-center w-full">
<div class="relative">
<img
[src]="employee.data.picture?getImg(employee.data.picture):'./assets/img/users/defaultperson.jpg'" (error)="onImageError($event)"
class="rounded-full ring-4 ring-white/10 mx-auto object-cover" id="profile-img" alt="profile-img"
style="height: 10rem;width: 10rem;">
<img [src]="employee.data.picture?getImg(employee.data.picture):'./assets/img/users/defaultperson.jpg'"
(error)="onImageError($event)" class="rounded-full ring-4 ring-white/10 mx-auto object-cover" id="profile-img"
alt="profile-img" style="height: 10rem;width: 10rem;">
<!-- <span
class="absolute bottom-0 ltr:right-0 rtl:left-0 block p-1 rounded-full ring-2 ring-white/10 text-white bg-white/10 dark:bg-bgdark leading-none cursor-pointer">
<i class="ri ri-pencil-line cursor-pointer"></i>
......
.bg-gradient-custom {
background: linear-gradient(135deg, #4f46e5, #ec4899 60%, #f59e0b);
-webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));
mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));
mask-size: 100% 100%;
mask-repeat: no-repeat;
}
\ No newline at end of file
import { ViewportScroller } from '@angular/common';
import { ChangeDetectorRef, Component } from '@angular/core';
import { EmployeeModel, MyEmployeeModel } from 'src/app/shared/model/employee.model';
import { MyStatusModel, StatusModel } from 'src/app/shared/model/status.model';
import { EmpStatusService } from 'src/app/shared/services/emp-status.service';
import { EmployeeService } from 'src/app/shared/services/employee.service';
import { FileService } from 'src/app/shared/services/file.service';
export interface BiModel {
name: string,
tools: string[],
degree: string
}
@Component({
selector: 'app-job-description-ess',
templateUrl: './job-description-ess.component.html',
styleUrls: ['./job-description-ess.component.scss']
})
export class JobDescriptionEssComponent {
}
\ No newline at end of file
......@@ -23,7 +23,7 @@
<div class="flex flex-col w-3/4 gap-2">
<div class="w-full mb-2 flex">
<div class="w-1/2 flex flex-row gap-2">
<ng-container *ngFor="let item of compentency.dataList; let i=index ; let f= first">
<!-- <ng-container *ngFor="let item of compentency.dataList; let i=index ; let f= first">
<div class="font-size-18px font-weight-700">
<span class="cursor-pointer"
[ngClass]="{'text-secondary border-secondary border-b':compentency.data?.tdesc==item.tdesc,'hover:text-gray-900':!(compentency.data?.tdesc==item.tdesc)}"
......@@ -31,7 +31,7 @@
{{item.tdesc}}
</span>
</div>
</ng-container>
</ng-container> -->
</div>
<div class="w-1/2">
<div class="font-size-18px font-weight-700 text-primary text-right">
......
......@@ -95,7 +95,7 @@ export class SidebarComponent {
this.currentUrl = this.router.url
this.isESSRoute = this.currentUrl.includes('/ess');
this.isAdminRoute = this.currentUrl.includes('/admin');
this.showSideMenu = this.currentUrl.includes('my-skill-x-module') || this.currentUrl.includes('employee-self-service') || this.currentUrl.includes('ess/profile')
this.showSideMenu = this.currentUrl.includes('my-skill-x-module') || this.currentUrl.includes('employee-self-service') || this.currentUrl.includes('ess/profile') || this.currentUrl.includes('ess/job-description')
if (this.showSideMenu) {
const html: any = this.elementRef.nativeElement.ownerDocument.documentElement;;
html.style = '';
......@@ -164,7 +164,7 @@ export class SidebarComponent {
// Update the boolean values
this.isESSRoute = this.currentUrl.includes('/ess');
this.isAdminRoute = this.currentUrl.includes('/admin');
this.showSideMenu = this.currentUrl.includes('my-skill-x-module') || this.currentUrl.includes('employee-self-service') || this.currentUrl.includes('ess/profile')
this.showSideMenu = this.currentUrl.includes('my-skill-x-module') || this.currentUrl.includes('employee-self-service') || this.currentUrl.includes('ess/profile') || this.currentUrl.includes('ess/job-description')
if (this.showSideMenu) {
const html: any = this.elementRef.nativeElement.ownerDocument.documentElement;;
html.style = '';
......
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