Commit 42d22de4 by Nakarin Luankla

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

parents b2001f7f 0c259e86
...@@ -244,12 +244,12 @@ ...@@ -244,12 +244,12 @@
class="text-danger">*</span></label> class="text-danger">*</span></label>
<div class="col-span-6 sm:col-span-6 "> <div class="col-span-6 sm:col-span-6 ">
<mat-form-field> <mat-form-field>
<input matInput [matDatepicker]="resigndate" type="text" readonly <input matInput [matDatepicker]="resignDate" type="text" readonly
class="ti-form-input rounded-l-none focus:z-10 flatpickr-input !text-gray-500 !bg-white" id="datetime" class="ti-form-input rounded-l-none focus:z-10 flatpickr-input !text-gray-500 !bg-white" id="datetime"
[(ngModel)]="employee.select.dateEndIso" [(ngModel)]="employee.select.dateEndIso"
(ngModelChange)="changeDate(this.employee.select, 'resigndate', employee.select.dateEndIso);"> (ngModelChange)="changeDate(this.employee.select, 'resignDate', employee.select.dateEndIso);">
<mat-datepicker-toggle matSuffix [for]="resigndate"></mat-datepicker-toggle> <mat-datepicker-toggle matSuffix [for]="resignDate"></mat-datepicker-toggle>
<mat-datepicker #resigndate></mat-datepicker> <mat-datepicker #resignDate></mat-datepicker>
</mat-form-field> </mat-form-field>
</div> </div>
</div> </div>
...@@ -287,8 +287,7 @@ ...@@ -287,8 +287,7 @@
readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.bu1.tdesc"> readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.bu1.tdesc">
<div <div
class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2"> class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2">
<button type="button" class="flex items-center text-red-500" <button type="button" class="flex items-center text-red-500" (click)="selectBu1()">
(click)="employee.select.bu1.bu1id='';employee.select.bu1.tdesc=''">
<i class="ti ti-circle-x cursor-pointer"></i> <i class="ti ti-circle-x cursor-pointer"></i>
</button> </button>
<button type="button" class="flex items-center text-gray-500 dark:text-white/70" <button type="button" class="flex items-center text-gray-500 dark:text-white/70"
...@@ -308,16 +307,18 @@ ...@@ -308,16 +307,18 @@
<div class="flex"> <div class="flex">
<div class="relative flex rounded-md"> <div class="relative flex rounded-md">
<input type="text" class="ti-form-input rounded-sm ltr:rounded-r-sm rtl:rounded-l-sm focus:z-10" <input type="text" class="ti-form-input rounded-sm ltr:rounded-r-sm rtl:rounded-l-sm focus:z-10"
readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.bu2.tdesc"> readonly style="padding-right: 3.5rem;" [class.!bg-input-readonly]="!employee.select.bu1.bu1id"
[(ngModel)]="employee.select.bu2.tdesc">
<div <div
class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2"> class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2">
<button type="button" class="flex items-center text-red-500" <button type="button" class="flex items-center text-red-500" (click)="selectBu2()"
(click)="employee.select.bu2.bu2id='';employee.select.bu2.tdesc=''"> *ngIf="employee.select.bu1.bu1id">
<i class="ti ti-circle-x cursor-pointer"></i> <i class="ti ti-circle-x cursor-pointer"></i>
</button> </button>
<button type="button" class="flex items-center text-gray-500 dark:text-white/70" <button type="button" class="flex items-center text-gray-500 dark:text-white/70"
data-hs-overlay="#sub-employee-registration-bu2-table-modal" data-hs-overlay="#sub-employee-registration-bu2-table-modal"
(click)="modal.pageSize=10;modal.search='';searchModalChange(bu2ListFilter())"> (click)="modal.pageSize=10;modal.search='';searchModalChange(bu2ListFilter())"
*ngIf="employee.select.bu1.bu1id">
<i class="ri-search-line cursor-pointer text-gray"></i> <i class="ri-search-line cursor-pointer text-gray"></i>
</button> </button>
</div> </div>
...@@ -332,16 +333,18 @@ ...@@ -332,16 +333,18 @@
<div class="flex"> <div class="flex">
<div class="relative flex rounded-md"> <div class="relative flex rounded-md">
<input type="text" class="ti-form-input rounded-sm ltr:rounded-r-sm rtl:rounded-l-sm focus:z-10" <input type="text" class="ti-form-input rounded-sm ltr:rounded-r-sm rtl:rounded-l-sm focus:z-10"
readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.bu3.tdesc"> readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.bu3.tdesc"
[class.!bg-input-readonly]="!employee.select.bu2.bu2id">
<div <div
class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2"> class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2">
<button type="button" class="flex items-center text-red-500" <button type="button" class="flex items-center text-red-500" (click)="selectBu3()"
(click)="employee.select.bu3.bu3id='';employee.select.bu3.tdesc=''"> *ngIf="employee.select.bu2.bu2id">
<i class="ti ti-circle-x cursor-pointer"></i> <i class="ti ti-circle-x cursor-pointer"></i>
</button> </button>
<button type="button" class="flex items-center text-gray-500 dark:text-white/70" <button type="button" class="flex items-center text-gray-500 dark:text-white/70"
data-hs-overlay="#sub-employee-registration-bu3-table-modal" data-hs-overlay="#sub-employee-registration-bu3-table-modal"
(click)="modal.pageSize=10;modal.search='';searchModalChange(bu3ListFilter())"> (click)="modal.pageSize=10;modal.search='';searchModalChange(bu3ListFilter())"
*ngIf="employee.select.bu2.bu2id">
<i class="ri-search-line cursor-pointer text-gray"></i> <i class="ri-search-line cursor-pointer text-gray"></i>
</button> </button>
</div> </div>
...@@ -356,16 +359,18 @@ ...@@ -356,16 +359,18 @@
<div class="flex"> <div class="flex">
<div class="relative flex rounded-md"> <div class="relative flex rounded-md">
<input type="text" class="ti-form-input rounded-sm ltr:rounded-r-sm rtl:rounded-l-sm focus:z-10" <input type="text" class="ti-form-input rounded-sm ltr:rounded-r-sm rtl:rounded-l-sm focus:z-10"
readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.bu4.tdesc"> readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.bu4.tdesc"
[class.!bg-input-readonly]="!employee.select.bu3.bu3id">
<div <div
class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2"> class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2">
<button type="button" class="flex items-center text-red-500" <button type="button" class="flex items-center text-red-500" (click)="selectBu4()"
(click)="employee.select.bu4.bu4id='';employee.select.bu4.tdesc=''"> *ngIf="employee.select.bu3.bu3id">
<i class="ti ti-circle-x cursor-pointer"></i> <i class="ti ti-circle-x cursor-pointer"></i>
</button> </button>
<button type="button" class="flex items-center text-gray-500 dark:text-white/70" <button type="button" class="flex items-center text-gray-500 dark:text-white/70"
data-hs-overlay="#sub-employee-registration-bu4-table-modal" data-hs-overlay="#sub-employee-registration-bu4-table-modal"
(click)="modal.pageSize=10;modal.search='';searchModalChange(bu4ListFilter())"> (click)="modal.pageSize=10;modal.search='';searchModalChange(bu4ListFilter())"
*ngIf="employee.select.bu3.bu3id">
<i class="ri-search-line cursor-pointer text-gray"></i> <i class="ri-search-line cursor-pointer text-gray"></i>
</button> </button>
</div> </div>
...@@ -380,16 +385,18 @@ ...@@ -380,16 +385,18 @@
<div class="flex"> <div class="flex">
<div class="relative flex rounded-md"> <div class="relative flex rounded-md">
<input type="text" class="ti-form-input rounded-sm ltr:rounded-r-sm rtl:rounded-l-sm focus:z-10" <input type="text" class="ti-form-input rounded-sm ltr:rounded-r-sm rtl:rounded-l-sm focus:z-10"
readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.bu5.tdesc"> readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.bu5.tdesc"
[class.!bg-input-readonly]="!employee.select.bu4.bu4id">
<div <div
class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2"> class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2">
<button type="button" class="flex items-center text-red-500" <button type="button" class="flex items-center text-red-500" (click)="selectBu5()"
(click)="employee.select.bu5.bu5id='';employee.select.bu5.tdesc=''"> *ngIf="employee.select.bu4.bu4id">
<i class="ti ti-circle-x cursor-pointer"></i> <i class="ti ti-circle-x cursor-pointer"></i>
</button> </button>
<button type="button" class="flex items-center text-gray-500 dark:text-white/70" <button type="button" class="flex items-center text-gray-500 dark:text-white/70"
data-hs-overlay="#sub-employee-registration-bu5-table-modal" data-hs-overlay="#sub-employee-registration-bu5-table-modal"
(click)="modal.pageSize=10;modal.search='';searchModalChange(bu5ListFilter())"> (click)="modal.pageSize=10;modal.search='';searchModalChange(bu5ListFilter())"
*ngIf="employee.select.bu4.bu4id">
<i class="ri-search-line cursor-pointer text-gray"></i> <i class="ri-search-line cursor-pointer text-gray"></i>
</button> </button>
</div> </div>
...@@ -403,16 +410,18 @@ ...@@ -403,16 +410,18 @@
<div class="flex"> <div class="flex">
<div class="relative flex rounded-md"> <div class="relative flex rounded-md">
<input type="text" class="ti-form-input rounded-sm ltr:rounded-r-sm rtl:rounded-l-sm focus:z-10" <input type="text" class="ti-form-input rounded-sm ltr:rounded-r-sm rtl:rounded-l-sm focus:z-10"
readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.bu6.tdesc"> readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.bu6.tdesc"
[class.!bg-input-readonly]="!employee.select.bu5.bu5id">
<div <div
class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2"> class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2">
<button type="button" class="flex items-center text-red-500" <button type="button" class="flex items-center text-red-500" (click)="selectBu6()"
(click)="employee.select.bu6.bu6id='';employee.select.bu6.tdesc=''"> *ngIf="employee.select.bu5.bu5id">
<i class="ti ti-circle-x cursor-pointer"></i> <i class="ti ti-circle-x cursor-pointer"></i>
</button> </button>
<button type="button" class="flex items-center text-gray-500 dark:text-white/70" <button type="button" class="flex items-center text-gray-500 dark:text-white/70"
data-hs-overlay="#sub-employee-registration-bu6-table-modal" data-hs-overlay="#sub-employee-registration-bu6-table-modal"
(click)="modal.pageSize=10;modal.search='';searchModalChange(bu6ListFilter())"> (click)="modal.pageSize=10;modal.search='';searchModalChange(bu6ListFilter())"
*ngIf="employee.select.bu5.bu5id">
<i class="ri-search-line cursor-pointer text-gray"></i> <i class="ri-search-line cursor-pointer text-gray"></i>
</button> </button>
</div> </div>
...@@ -426,16 +435,18 @@ ...@@ -426,16 +435,18 @@
<div class="flex"> <div class="flex">
<div class="relative flex rounded-md"> <div class="relative flex rounded-md">
<input type="text" class="ti-form-input rounded-sm ltr:rounded-r-sm rtl:rounded-l-sm focus:z-10" <input type="text" class="ti-form-input rounded-sm ltr:rounded-r-sm rtl:rounded-l-sm focus:z-10"
readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.bu7.tdesc"> readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.bu7.tdesc"
[class.!bg-input-readonly]="!employee.select.bu6.bu6id">
<div <div
class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2"> class="absolute inset-y-0 ltr:right-0 rtl:left-0 flex items-center z-20 ltr:pr-4 rtl:pl-4 space-x-2">
<button type="button" class="flex items-center text-red-500" <button type="button" class="flex items-center text-red-500" (click)="selectBu7()"
(click)="employee.select.bu7.bu7id='';employee.select.bu7.tdesc=''"> *ngIf="employee.select.bu6.bu6id">
<i class="ti ti-circle-x cursor-pointer"></i> <i class="ti ti-circle-x cursor-pointer"></i>
</button> </button>
<button type="button" class="flex items-center text-gray-500 dark:text-white/70" <button type="button" class="flex items-center text-gray-500 dark:text-white/70"
data-hs-overlay="#sub-employee-registration-bu7-table-modal" data-hs-overlay="#sub-employee-registration-bu7-table-modal"
(click)="modal.pageSize=10;modal.search='';searchModalChange(bu7ListFilter())"> (click)="modal.pageSize=10;modal.search='';searchModalChange(bu7ListFilter())"
*ngIf="employee.select.bu6.bu6id">
<i class="ri-search-line cursor-pointer text-gray"></i> <i class="ri-search-line cursor-pointer text-gray"></i>
</button> </button>
</div> </div>
...@@ -689,7 +700,8 @@ ...@@ -689,7 +700,8 @@
ย้อนกลับ ย้อนกลับ
</button> </button>
<a class="ti-btn ti-btn-success" href="javascript:void(0);" <a class="ti-btn ti-btn-success" href="javascript:void(0);"
data-hs-overlay="#sub-employee-registration-alert-delete-modal" (click)="updateEmployeeList(modalType)" *ngIf="numDataListChecked"> data-hs-overlay="#sub-employee-registration-alert-delete-modal" (click)="updateEmployeeList(modalType)"
*ngIf="numDataListChecked">
ลบข้อมูล ลบข้อมูล
</a> </a>
</div> </div>
...@@ -855,8 +867,7 @@ ...@@ -855,8 +867,7 @@
<tbody *ngIf="!bu1.loading&&bu1ListFilter().length"> <tbody *ngIf="!bu1.loading&&bu1ListFilter().length">
<tr <tr
*ngFor="let item of bu1ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index" *ngFor="let item of bu1ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index"
class="cursor-pointer" (click)="selectDataModal(this.employee.select,'bu1',item)" class="cursor-pointer" (click)="selectBu1(item)" data-hs-overlay="#sub-employee-registration-modal">
data-hs-overlay="#sub-employee-registration-modal">
<td class="flex justify-center"> <td class="flex justify-center">
{{((modal.currentPage-1) * modal.pageSize)+(i+1)}} {{((modal.currentPage-1) * modal.pageSize)+(i+1)}}
</td> </td>
...@@ -947,8 +958,7 @@ ...@@ -947,8 +958,7 @@
<tbody *ngIf="!bu2.loading&&bu2ListFilter().length"> <tbody *ngIf="!bu2.loading&&bu2ListFilter().length">
<tr <tr
*ngFor="let item of bu2ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index" *ngFor="let item of bu2ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index"
class="cursor-pointer" (click)="selectDataModal(this.employee.select,'bu2',item)" class="cursor-pointer" (click)="selectBu2(item)" data-hs-overlay="#sub-employee-registration-modal">
data-hs-overlay="#sub-employee-registration-modal">
<td class="flex justify-center"> <td class="flex justify-center">
{{((modal.currentPage-1) * modal.pageSize)+(i+1)}} {{((modal.currentPage-1) * modal.pageSize)+(i+1)}}
</td> </td>
...@@ -1039,8 +1049,7 @@ ...@@ -1039,8 +1049,7 @@
<tbody *ngIf="!bu3.loading&&bu3ListFilter().length"> <tbody *ngIf="!bu3.loading&&bu3ListFilter().length">
<tr <tr
*ngFor="let item of bu3ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index" *ngFor="let item of bu3ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index"
class="cursor-pointer" (click)="selectDataModal(this.employee.select,'bu3',item)" class="cursor-pointer" (click)="selectBu3(item)" data-hs-overlay="#sub-employee-registration-modal">
data-hs-overlay="#sub-employee-registration-modal">
<td class="flex justify-center"> <td class="flex justify-center">
{{((modal.currentPage-1) * modal.pageSize)+(i+1)}} {{((modal.currentPage-1) * modal.pageSize)+(i+1)}}
</td> </td>
...@@ -1131,8 +1140,7 @@ ...@@ -1131,8 +1140,7 @@
<tbody *ngIf="!bu4.loading&&bu4ListFilter().length"> <tbody *ngIf="!bu4.loading&&bu4ListFilter().length">
<tr <tr
*ngFor="let item of bu4ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index" *ngFor="let item of bu4ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index"
class="cursor-pointer" (click)="selectDataModal(this.employee.select,'bu4',item)" class="cursor-pointer" (click)="selectBu4(item)" data-hs-overlay="#sub-employee-registration-modal">
data-hs-overlay="#sub-employee-registration-modal">
<td class="flex justify-center"> <td class="flex justify-center">
{{((modal.currentPage-1) * modal.pageSize)+(i+1)}} {{((modal.currentPage-1) * modal.pageSize)+(i+1)}}
</td> </td>
...@@ -1223,8 +1231,7 @@ ...@@ -1223,8 +1231,7 @@
<tbody *ngIf="!bu5.loading&&bu5ListFilter().length"> <tbody *ngIf="!bu5.loading&&bu5ListFilter().length">
<tr <tr
*ngFor="let item of bu5ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index" *ngFor="let item of bu5ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index"
class="cursor-pointer" (click)="selectDataModal(this.employee.select,'bu5',item)" class="cursor-pointer" (click)="selectBu5(item)" data-hs-overlay="#sub-employee-registration-modal">
data-hs-overlay="#sub-employee-registration-modal">
<td class="flex justify-center"> <td class="flex justify-center">
{{((modal.currentPage-1) * modal.pageSize)+(i+1)}} {{((modal.currentPage-1) * modal.pageSize)+(i+1)}}
</td> </td>
...@@ -1315,8 +1322,7 @@ ...@@ -1315,8 +1322,7 @@
<tbody *ngIf="!bu6.loading&&bu6ListFilter().length"> <tbody *ngIf="!bu6.loading&&bu6ListFilter().length">
<tr <tr
*ngFor="let item of bu6ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index" *ngFor="let item of bu6ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index"
class="cursor-pointer" (click)="selectDataModal(this.employee.select,'bu6',item)" class="cursor-pointer" (click)="selectBu6(item)" data-hs-overlay="#sub-employee-registration-modal">
data-hs-overlay="#sub-employee-registration-modal">
<td class="flex justify-center"> <td class="flex justify-center">
{{((modal.currentPage-1) * modal.pageSize)+(i+1)}} {{((modal.currentPage-1) * modal.pageSize)+(i+1)}}
</td> </td>
...@@ -1407,8 +1413,7 @@ ...@@ -1407,8 +1413,7 @@
<tbody *ngIf="!bu7.loading&&bu7ListFilter().length"> <tbody *ngIf="!bu7.loading&&bu7ListFilter().length">
<tr <tr
*ngFor="let item of bu7ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index" *ngFor="let item of bu7ListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index"
class="cursor-pointer" (click)="selectDataModal(this.employee.select,'bu7',item)" class="cursor-pointer" (click)="selectBu7(item)" data-hs-overlay="#sub-employee-registration-modal">
data-hs-overlay="#sub-employee-registration-modal">
<td class="flex justify-center"> <td class="flex justify-center">
{{((modal.currentPage-1) * modal.pageSize)+(i+1)}} {{((modal.currentPage-1) * modal.pageSize)+(i+1)}}
</td> </td>
...@@ -1869,7 +1874,7 @@ ...@@ -1869,7 +1874,7 @@
<tbody *ngIf="!employee.loading&&employeeModalListFilter().length"> <tbody *ngIf="!employee.loading&&employeeModalListFilter().length">
<tr <tr
*ngFor="let item of employeeModalListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index" *ngFor="let item of employeeModalListFilter() | slice:((modal.currentPage-1) * modal.pageSize) : (((modal.currentPage-1) * modal.pageSize) + modal.pageSize);let i = index"
class="cursor-pointer" (click)="selectDataModal(this.employee.select,'boss',item)" class="cursor-pointer" (click)="selectBoss(item)"
data-hs-overlay="#sub-employee-registration-modal"> data-hs-overlay="#sub-employee-registration-modal">
<td class="text-center"> <td class="text-center">
{{item.employeeId}} {{item.employeeId}}
......
...@@ -31,6 +31,7 @@ import { Bu6Model, MyBu6Model } from 'src/app/shared/model/bu6.model'; ...@@ -31,6 +31,7 @@ import { Bu6Model, MyBu6Model } from 'src/app/shared/model/bu6.model';
import { Bu7Model, MyBu7Model } from 'src/app/shared/model/bu7.model'; import { Bu7Model, MyBu7Model } from 'src/app/shared/model/bu7.model';
import { EmpStatusService } from 'src/app/shared/services/emp-status.service'; import { EmpStatusService } from 'src/app/shared/services/emp-status.service';
import { StatusModel, MyStatusModel } from 'src/app/shared/model/status.model'; import { StatusModel, MyStatusModel } from 'src/app/shared/model/status.model';
import { MyBossModel } from 'src/app/shared/model/boss.model';
export interface DataEmployee { export interface DataEmployee {
loading: boolean loading: boolean
select: EmployeeModel | any select: EmployeeModel | any
...@@ -112,12 +113,6 @@ export class SubEmployeeRegistrationComponent { ...@@ -112,12 +113,6 @@ export class SubEmployeeRegistrationComponent {
this.getEmployeeList() this.getEmployeeList()
this.getEmpGroupList() this.getEmpGroupList()
this.getBu1List() this.getBu1List()
this.getBu2List()
this.getBu3List()
this.getBu4List()
this.getBu5List()
this.getBu6List()
this.getBu7List()
this.getPositionList() this.getPositionList()
this.getJobcodeList() this.getJobcodeList()
this.getBranchList() this.getBranchList()
...@@ -304,10 +299,24 @@ export class SubEmployeeRegistrationComponent { ...@@ -304,10 +299,24 @@ export class SubEmployeeRegistrationComponent {
x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) || x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) ||
x.edesc.toLowerCase().includes(this.modal.search.toLowerCase())) x.edesc.toLowerCase().includes(this.modal.search.toLowerCase()))
} }
selectBu1(data?: Bu1Model) {
this.employee.select.bu1 = new MyBu1Model(data)
this.employee.select.bu2 = new MyBu2Model()
this.employee.select.bu3 = new MyBu3Model()
this.employee.select.bu4 = new MyBu4Model()
this.employee.select.bu5 = new MyBu5Model()
this.employee.select.bu6 = new MyBu6Model()
this.employee.select.bu7 = new MyBu7Model()
if (this.employee.select.bu1.bu1id) {
this.getBu2List()
} else {
this.bu2.dataList = []
}
}
getBu2List() { getBu2List() {
this.bu2.loading = false this.bu2.loading = false
this.bu2Service.getList().subscribe({ this.bu2Service.getListByParent(this.employee.select.bu1.bu1id).subscribe({
next: response => { next: response => {
this.bu2.dataList = response.map((x: any) => new MyBu2Model(x)) this.bu2.dataList = response.map((x: any) => new MyBu2Model(x))
this.bu2.loading = false this.bu2.loading = false
...@@ -324,10 +333,23 @@ export class SubEmployeeRegistrationComponent { ...@@ -324,10 +333,23 @@ export class SubEmployeeRegistrationComponent {
x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) || x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) ||
x.edesc.toLowerCase().includes(this.modal.search.toLowerCase())) x.edesc.toLowerCase().includes(this.modal.search.toLowerCase()))
} }
selectBu2(data?: Bu2Model) {
this.employee.select.bu2 = new MyBu2Model(data)
this.employee.select.bu3 = new MyBu3Model()
this.employee.select.bu4 = new MyBu4Model()
this.employee.select.bu5 = new MyBu5Model()
this.employee.select.bu6 = new MyBu6Model()
this.employee.select.bu7 = new MyBu7Model()
if (this.employee.select.bu2.bu2id) {
this.getBu3List()
} else {
this.bu3.dataList = []
}
}
getBu3List() { getBu3List() {
this.bu3.loading = false this.bu3.loading = false
this.bu3Service.getList().subscribe({ this.bu3Service.getListByParent(this.employee.select.bu2.bu2id).subscribe({
next: response => { next: response => {
this.bu3.dataList = response.map((x: any) => new MyBu3Model(x)) this.bu3.dataList = response.map((x: any) => new MyBu3Model(x))
this.bu3.loading = false this.bu3.loading = false
...@@ -344,10 +366,22 @@ export class SubEmployeeRegistrationComponent { ...@@ -344,10 +366,22 @@ export class SubEmployeeRegistrationComponent {
x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) || x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) ||
x.edesc.toLowerCase().includes(this.modal.search.toLowerCase())) x.edesc.toLowerCase().includes(this.modal.search.toLowerCase()))
} }
selectBu3(data?: Bu3Model) {
this.employee.select.bu3 = new MyBu3Model(data)
this.employee.select.bu4 = new MyBu4Model()
this.employee.select.bu5 = new MyBu5Model()
this.employee.select.bu6 = new MyBu6Model()
this.employee.select.bu7 = new MyBu7Model()
if (this.employee.select.bu3.bu3id) {
this.getBu4List()
} else {
this.bu4.dataList = []
}
}
getBu4List() { getBu4List() {
this.bu4.loading = false this.bu4.loading = false
this.bu4Service.getList().subscribe({ this.bu4Service.getListByParent(this.employee.select.bu3.bu3id).subscribe({
next: response => { next: response => {
this.bu4.dataList = response.map((x: any) => new MyBu4Model(x)) this.bu4.dataList = response.map((x: any) => new MyBu4Model(x))
this.bu4.loading = false this.bu4.loading = false
...@@ -364,10 +398,21 @@ export class SubEmployeeRegistrationComponent { ...@@ -364,10 +398,21 @@ export class SubEmployeeRegistrationComponent {
x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) || x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) ||
x.edesc.toLowerCase().includes(this.modal.search.toLowerCase())) x.edesc.toLowerCase().includes(this.modal.search.toLowerCase()))
} }
selectBu4(data?: Bu4Model) {
this.employee.select.bu4 = new MyBu4Model(data)
this.employee.select.bu5 = new MyBu5Model()
this.employee.select.bu6 = new MyBu6Model()
this.employee.select.bu7 = new MyBu7Model()
if (this.employee.select.bu4.bu4id) {
this.getBu5List()
} else {
this.bu5.dataList = []
}
}
getBu5List() { getBu5List() {
this.bu5.loading = false this.bu5.loading = false
this.bu5Service.getList().subscribe({ this.bu5Service.getListByParent(this.employee.select.bu4.bu4id).subscribe({
next: response => { next: response => {
this.bu5.dataList = response.map((x: any) => new MyBu5Model(x)) this.bu5.dataList = response.map((x: any) => new MyBu5Model(x))
this.bu5.loading = false this.bu5.loading = false
...@@ -384,10 +429,20 @@ export class SubEmployeeRegistrationComponent { ...@@ -384,10 +429,20 @@ export class SubEmployeeRegistrationComponent {
x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) || x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) ||
x.edesc.toLowerCase().includes(this.modal.search.toLowerCase())) x.edesc.toLowerCase().includes(this.modal.search.toLowerCase()))
} }
selectBu5(data?: Bu5Model) {
this.employee.select.bu5 = new MyBu5Model(data)
this.employee.select.bu6 = new MyBu6Model()
this.employee.select.bu7 = new MyBu7Model()
if (this.employee.select.bu5.bu5id) {
this.getBu6List()
} else {
this.bu6.dataList = []
}
}
getBu6List() { getBu6List() {
this.bu6.loading = false this.bu6.loading = false
this.bu6Service.getList().subscribe({ this.bu6Service.getListByParent(this.employee.select.bu5.bu5id).subscribe({
next: response => { next: response => {
this.bu6.dataList = response.map((x: any) => new MyBu6Model(x)) this.bu6.dataList = response.map((x: any) => new MyBu6Model(x))
this.bu6.loading = false this.bu6.loading = false
...@@ -404,10 +459,19 @@ export class SubEmployeeRegistrationComponent { ...@@ -404,10 +459,19 @@ export class SubEmployeeRegistrationComponent {
x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) || x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) ||
x.edesc.toLowerCase().includes(this.modal.search.toLowerCase())) x.edesc.toLowerCase().includes(this.modal.search.toLowerCase()))
} }
selectBu6(data?: Bu6Model) {
this.employee.select.bu6 = new MyBu6Model(data)
this.employee.select.bu7 = new MyBu7Model()
if (this.employee.select.bu6.bu6id) {
this.getBu7List()
} else {
this.bu7.dataList = []
}
}
getBu7List() { getBu7List() {
this.bu7.loading = false this.bu7.loading = false
this.bu7Service.getList().subscribe({ this.bu7Service.getListByParent(this.employee.select.bu6.bu6id).subscribe({
next: response => { next: response => {
this.bu7.dataList = response.map((x: any) => new MyBu7Model(x)) this.bu7.dataList = response.map((x: any) => new MyBu7Model(x))
this.bu7.loading = false this.bu7.loading = false
...@@ -424,6 +488,9 @@ export class SubEmployeeRegistrationComponent { ...@@ -424,6 +488,9 @@ export class SubEmployeeRegistrationComponent {
x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) || x.tdesc.toLowerCase().includes(this.modal.search.toLowerCase()) ||
x.edesc.toLowerCase().includes(this.modal.search.toLowerCase())) x.edesc.toLowerCase().includes(this.modal.search.toLowerCase()))
} }
selectBu7(data?: Bu7Model) {
this.employee.select.bu7 = new MyBu7Model(data)
}
getEmpGroupList() { getEmpGroupList() {
this.empGroup.loading = false this.empGroup.loading = false
...@@ -518,15 +585,18 @@ export class SubEmployeeRegistrationComponent { ...@@ -518,15 +585,18 @@ export class SubEmployeeRegistrationComponent {
} }
selectEmployee(data?: EmployeeModel) { selectEmployee(data?: EmployeeModel) {
if (this.modalType == 'update' && !data) { if (this.modalType == 'update' && !data) {
this.employee.select = { ...new MyEmployeeModel({ employeeId: this.employee.select.employeeId }), dateIso: '', dateEndIso: '' } this.employee.select = { ...new MyEmployeeModel({ employeeId: this.employee.select.employeeId }), dateIso: '', dateEndIso: '2100-12-31' }
this.employee.select.status = new MyStatusModel(this.empStatus.dataList[0]) this.employee.select.status = new MyStatusModel(this.empStatus.dataList[0])
} else { } else {
this.employee.select = { ...new MyEmployeeModel(data || {}), dateIso: this.toISODate(data?.firstHireDate), dateEndIso: this.toISODate(data?.resigndate) } this.employee.select = { ...new MyEmployeeModel(data || {}), dateIso: this.toISODate(data?.firstHireDate), dateEndIso: this.toISODate(data?.resignDate || '2100-12-31') }
if (!this.employee.select.status.statusCode) { if (!this.employee.select.status.statusCode) {
this.employee.select.status = new MyStatusModel(this.empStatus.dataList[0]) this.employee.select.status = new MyStatusModel(this.empStatus.dataList[0])
} }
} }
} }
selectBoss(data: any) {
this.employee.select.boss = new MyBossModel({ ...data, empType: data.empType.codeId })
}
changeDate(target: { [key: string]: any }, field: string, dateIso: string) { changeDate(target: { [key: string]: any }, field: string, dateIso: string) {
target[field] = this.toYYYYMMDD(dateIso) target[field] = this.toYYYYMMDD(dateIso)
} }
...@@ -555,6 +625,7 @@ export class SubEmployeeRegistrationComponent { ...@@ -555,6 +625,7 @@ export class SubEmployeeRegistrationComponent {
selectDataModal(target: { [key: string]: any }, field: string, data: any) { selectDataModal(target: { [key: string]: any }, field: string, data: any) {
target[field] = JSON.parse(JSON.stringify(data)) target[field] = JSON.parse(JSON.stringify(data))
} }
showAlert(text: string, type: 'success' | 'error') { showAlert(text: string, type: 'success' | 'error') {
this.toastr[type](text, 'แจ้งเตือน', { this.toastr[type](text, 'แจ้งเตือน', {
timeOut: 3000, timeOut: 3000,
...@@ -586,7 +657,7 @@ export class SubEmployeeRegistrationComponent { ...@@ -586,7 +657,7 @@ export class SubEmployeeRegistrationComponent {
!this.employee.select.lname || !this.employee.select.lname ||
!this.employee.select.empGroup.groupId || !this.employee.select.empGroup.groupId ||
!this.employee.select.firstHireDate || !this.employee.select.firstHireDate ||
!this.employee.select.resigndate || !this.employee.select.resignDate ||
!this.employee.select.bu1.bu1id || !this.employee.select.bu1.bu1id ||
!this.employee.select.bu2.bu2id || !this.employee.select.bu2.bu2id ||
!this.employee.select.bu3.bu3id || !this.employee.select.bu3.bu3id ||
......
...@@ -27,18 +27,18 @@ export class MyBossModel implements BossModel { ...@@ -27,18 +27,18 @@ export class MyBossModel implements BossModel {
job: JobCodeModel job: JobCodeModel
thFullName: string thFullName: string
engFullName: string engFullName: string
constructor(data: Partial<BossModel>) { constructor(data?: Partial<BossModel>) {
this.employeeId = data.employeeId || "" this.employeeId = data?.employeeId || ""
this.prefix = new MyPrefixModel(data.prefix || {}) this.prefix = new MyPrefixModel(data?.prefix || {})
this.fname = data.fname || "" this.fname = data?.fname || ""
this.lname = data.lname || "" this.lname = data?.lname || ""
this.efname = data.efname || "" this.efname = data?.efname || ""
this.elname = data.elname || "" this.elname = data?.elname || ""
this.empType = data.empType || "" this.empType = data?.empType || ""
this.empPosition = data.empPosition || "" this.empPosition = data?.empPosition || ""
this.job = new MyJobCodeModel(data.job || {}) this.job = new MyJobCodeModel(data?.job || {})
this.thFullName = data.thFullName || "" this.thFullName = data?.thFullName || ""
this.engFullName = data.engFullName || "" this.engFullName = data?.engFullName || ""
} }
} }
...@@ -111,7 +111,7 @@ export interface EmployeeModel { ...@@ -111,7 +111,7 @@ export interface EmployeeModel {
thFullName: string thFullName: string
engFullName: string engFullName: string
pl: PLModel pl: PLModel
resigndate: string resignDate: string
} }
export class MyEmployeeModel implements EmployeeModel { export class MyEmployeeModel implements EmployeeModel {
...@@ -201,7 +201,7 @@ export class MyEmployeeModel implements EmployeeModel { ...@@ -201,7 +201,7 @@ export class MyEmployeeModel implements EmployeeModel {
thFullName: string thFullName: string
engFullName: string engFullName: string
pl: PLModel pl: PLModel
resigndate: string resignDate: string
constructor(data?: Partial<EmployeeModel>) { constructor(data?: Partial<EmployeeModel>) {
this.employeeId = data?.employeeId || "" this.employeeId = data?.employeeId || ""
this.prefix = new MyPrefixModel(data?.prefix || {}) this.prefix = new MyPrefixModel(data?.prefix || {})
...@@ -289,7 +289,7 @@ export class MyEmployeeModel implements EmployeeModel { ...@@ -289,7 +289,7 @@ export class MyEmployeeModel implements EmployeeModel {
this.thFullName = data?.thFullName || "" this.thFullName = data?.thFullName || ""
this.engFullName = data?.engFullName || "" this.engFullName = data?.engFullName || ""
this.pl = new MyPLModel(data?.workarea || {}) this.pl = new MyPLModel(data?.workarea || {})
this.resigndate = data?.resigndate || "" this.resignDate = data?.resignDate || ""
} }
} }
...@@ -26,4 +26,8 @@ export class AppraisalService { ...@@ -26,4 +26,8 @@ export class AppraisalService {
getBossList(): Observable<AppraisalSubordinateModel[]> { getBossList(): Observable<AppraisalSubordinateModel[]> {
return this.http.get<AppraisalSubordinateModel[]>(this.urlApi + "/boss/emp") return this.http.get<AppraisalSubordinateModel[]>(this.urlApi + "/boss/emp")
} }
getFormPmsById(evaluationRoundId: string, apsassessy: string): Observable<AppraisalCompentencyModel2> {
return this.http.get<AppraisalCompentencyModel2>(this.urlApi + "/pms/" + evaluationRoundId + "/" + apsassessy)
}
} }
\ No newline at end of file
...@@ -15,6 +15,9 @@ export class Bu2Service { ...@@ -15,6 +15,9 @@ export class Bu2Service {
getList(): Observable<Bu2Model[]> { getList(): Observable<Bu2Model[]> {
return this.http.get<Bu2Model[]>(this.urlApi + "/lists") return this.http.get<Bu2Model[]>(this.urlApi + "/lists")
} }
getListByParent(bu1id: string): Observable<Bu2Model[]> {
return this.http.get<Bu2Model[]>(environment.baseUrl + "/bu1/parent/" + bu1id)
}
getById(bu2id: string): Observable<Bu2Model> { getById(bu2id: string): Observable<Bu2Model> {
return this.http.get<Bu2Model>(this.urlApi + "/" + bu2id) return this.http.get<Bu2Model>(this.urlApi + "/" + bu2id)
} }
......
...@@ -6,15 +6,18 @@ import { Bu3Model } from '../model/bu3.model'; ...@@ -6,15 +6,18 @@ import { Bu3Model } from '../model/bu3.model';
import { AlertModel } from '../model/alert.model'; import { AlertModel } from '../model/alert.model';
@Injectable({ @Injectable({
providedIn: 'root' providedIn: 'root'
}) })
export class Bu3Service { export class Bu3Service {
api = "/bu3" api = "/bu3"
urlApi = environment.baseUrl + this.api urlApi = environment.baseUrl + this.api
constructor(private http: HttpClient) { constructor(private http: HttpClient) {
} }
getById(bu3id:string): Observable<Bu3Model> { getById(bu3id: string): Observable<Bu3Model> {
return this.http.get<Bu3Model>(this.urlApi + "/" + bu3id) return this.http.get<Bu3Model>(this.urlApi + "/" + bu3id)
} }
getListByParent(bu2id: string): Observable<Bu3Model[]> {
return this.http.get<Bu3Model[]>(environment.baseUrl + "/bu2/parent/" + bu2id)
}
getList(): Observable<Bu3Model[]> { getList(): Observable<Bu3Model[]> {
return this.http.get<Bu3Model[]>(this.urlApi + "/lists") return this.http.get<Bu3Model[]>(this.urlApi + "/lists")
} }
...@@ -30,4 +33,4 @@ import { AlertModel } from '../model/alert.model'; ...@@ -30,4 +33,4 @@ import { AlertModel } from '../model/alert.model';
}; };
return this.http.delete<AlertModel>(this.urlApi, options) return this.http.delete<AlertModel>(this.urlApi, options)
} }
} }
\ No newline at end of file \ No newline at end of file
...@@ -15,6 +15,9 @@ export class Bu4Service { ...@@ -15,6 +15,9 @@ export class Bu4Service {
getList(): Observable<Bu4Model[]> { getList(): Observable<Bu4Model[]> {
return this.http.get<Bu4Model[]>(this.urlApi + "/lists") return this.http.get<Bu4Model[]>(this.urlApi + "/lists")
} }
getListByParent(bu3id: string): Observable<Bu4Model[]> {
return this.http.get<Bu4Model[]>(environment.baseUrl + "/bu3/parent/" + bu3id)
}
getById(bu4id: string): Observable<Bu4Model> { getById(bu4id: string): Observable<Bu4Model> {
return this.http.get<Bu4Model>(this.urlApi + "/" + bu4id) return this.http.get<Bu4Model>(this.urlApi + "/" + bu4id)
} }
......
...@@ -15,6 +15,9 @@ export class Bu5Service { ...@@ -15,6 +15,9 @@ export class Bu5Service {
getList(): Observable<Bu5Model[]> { getList(): Observable<Bu5Model[]> {
return this.http.get<Bu5Model[]>(this.urlApi + "/lists") return this.http.get<Bu5Model[]>(this.urlApi + "/lists")
} }
getListByParent(bu4id: string): Observable<Bu5Model[]> {
return this.http.get<Bu5Model[]>(environment.baseUrl + "/bu4/parent/" + bu4id)
}
getById(bu5id: string): Observable<Bu5Model> { getById(bu5id: string): Observable<Bu5Model> {
return this.http.get<Bu5Model>(this.urlApi + "/" + bu5id) return this.http.get<Bu5Model>(this.urlApi + "/" + bu5id)
} }
......
...@@ -15,6 +15,9 @@ export class Bu6Service { ...@@ -15,6 +15,9 @@ export class Bu6Service {
getList(): Observable<Bu6Model[]> { getList(): Observable<Bu6Model[]> {
return this.http.get<Bu6Model[]>(this.urlApi + "/lists") return this.http.get<Bu6Model[]>(this.urlApi + "/lists")
} }
getListByParent(bu5id: string): Observable<Bu6Model[]> {
return this.http.get<Bu6Model[]>(environment.baseUrl + "/bu5/parent/" + bu5id)
}
getById(bu6id: string): Observable<Bu6Model> { getById(bu6id: string): Observable<Bu6Model> {
return this.http.get<Bu6Model>(this.urlApi + "/" + bu6id) return this.http.get<Bu6Model>(this.urlApi + "/" + bu6id)
} }
......
...@@ -15,8 +15,11 @@ export class Bu7Service { ...@@ -15,8 +15,11 @@ export class Bu7Service {
getList(): Observable<Bu7Model[]> { getList(): Observable<Bu7Model[]> {
return this.http.get<Bu7Model[]>(this.urlApi + "/lists") return this.http.get<Bu7Model[]>(this.urlApi + "/lists")
} }
getListByParent(bu6id: string): Observable<Bu7Model[]> {
return this.http.get<Bu7Model[]>(environment.baseUrl + "/parent/" + bu6id)
}
getById(bu7id: string): Observable<Bu7Model> { getById(bu7id: string): Observable<Bu7Model> {
return this.http.get<Bu7Model>(this.urlApi + "/" + bu7id) return this.http.get<Bu7Model>(environment.baseUrl + "/bu6/" + bu7id)
} }
post(body: Bu7Model): Observable<AlertModel> { post(body: Bu7Model): Observable<AlertModel> {
return this.http.post<AlertModel>(this.urlApi, body) return this.http.post<AlertModel>(this.urlApi, body)
......
...@@ -25033,3 +25033,7 @@ div:where(.swal2-container) div:where(.swal2-validation-message) { ...@@ -25033,3 +25033,7 @@ div:where(.swal2-container) div:where(.swal2-validation-message) {
.\!border-red { .\!border-red {
border-color: red !important; border-color: red !important;
} }
.\!bg-white{
background-color: white;
}
\ 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