Commit f9078521 by Nattana Chaiyamat

ทะเบียนพนักงาน

parent 10d7dbbf
...@@ -35,8 +35,7 @@ ...@@ -35,8 +35,7 @@
<div class="flex justify-end"> <div class="flex justify-end">
<div class="px-1"> <div class="px-1">
<div class="relative shadow-md"> <div class="relative shadow-md">
<input type="text" id="hs-leading-icon" name="hs-leading-icon" <input type="text" class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 " placeholder="Search by No. or Name"
class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 " placeholder="Search by No. or Name"
[(ngModel)]="search" (ngModelChange)="searchChange()"> [(ngModel)]="search" (ngModelChange)="searchChange()">
<div <div
class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4"> class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4">
...@@ -203,11 +202,12 @@ ...@@ -203,11 +202,12 @@
<div class="ti-modal-body mt-5"> <div class="ti-modal-body mt-5">
<div class="space-y-3"> <div class="space-y-3">
<div class="grid grid-cols-12 gap-x-6"> <div class="grid grid-cols-12 gap-x-6">
<label class="col-span-3 ti-form-label text-primary mt-2">รหัสพนักงาน</label> <label class="col-span-3 ti-form-label text-primary mt-2">รหัสพนักงาน*</label>
<input type="text" class="sm:col-span-6 ti-form-input" [(ngModel)]="employee.select.employeeId"> <input type="text" class="sm:col-span-6 ti-form-input" [ngClass]="{'bg-input-readonly':modalType=='update'}"
[readonly]="modalType=='update'" [(ngModel)]="employee.select.employeeId">
</div> </div>
<div class="grid grid-cols-12 gap-x-6"> <div class="grid grid-cols-12 gap-x-6">
<label class="col-span-3 ti-form-label text-primary mt-4">ชื่อ-นามสกุล</label> <label class="col-span-3 ti-form-label text-primary mt-4">ชื่อ-นามสกุล*</label>
<div class="col-span-4 mt-2"> <div class="col-span-4 mt-2">
<div class=" flex rounded-md"> <div class=" flex rounded-md">
<input type="text" class="ti-form-input" [(ngModel)]="employee.select.fname"> <input type="text" class="ti-form-input" [(ngModel)]="employee.select.fname">
...@@ -218,14 +218,18 @@ ...@@ -218,14 +218,18 @@
</div> </div>
</div> </div>
<div class="grid grid-cols-12 gap-x-6"> <div class="grid grid-cols-12 gap-x-6">
<label class="col-span-3 ti-form-label text-primary mt-2">กลุ่มพนักงาน</label> <label class="col-span-3 ti-form-label text-primary mt-2">กลุ่มพนักงาน*</label>
<div class="col-span-6 sm:col-span-6 "> <div class="col-span-6 sm:col-span-6 ">
<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"
style="padding-right: 3.5rem;" [(ngModel)]="employee.select.empGroup.tdesc"> readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.empGroup.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"
(click)="employee.select.empGroup.groupId='';employee.select.empGroup.tdesc=''">
<i class="ti ti-circle-x cursor-pointer"></i>
</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-empgroup-table-modal"> data-hs-overlay="#sub-employee-registration-empgroup-table-modal">
<i class="ri-search-line cursor-pointer text-gray"></i> <i class="ri-search-line cursor-pointer text-gray"></i>
...@@ -236,11 +240,11 @@ ...@@ -236,11 +240,11 @@
</div> </div>
</div> </div>
<div class="grid grid-cols-12 gap-x-6"> <div class="grid grid-cols-12 gap-x-6">
<label class="col-span-3 ti-form-label text-primary mt-2 align-center">วันเริ่มงาน</label> <label class="col-span-3 ti-form-label text-primary mt-2 align-center">วันเริ่มงาน*</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]="firstHireDate" type="text" <input matInput [matDatepicker]="firstHireDate" type="text"
class="ti-form-input rounded-l-none focus:z-10 flatpickr-input !text-gray-500" id="datetime" class="ti-form-input rounded-l-none focus:z-10 flatpickr-input !text-gray-500 bg-white" id="datetime"
[(ngModel)]="employee.select.dateIso" [(ngModel)]="employee.select.dateIso"
(ngModelChange)="changeDate(this.employee.select, 'firstHireDate', employee.select.dateIso);"> (ngModelChange)="changeDate(this.employee.select, 'firstHireDate', employee.select.dateIso);">
<mat-datepicker-toggle matSuffix [for]="firstHireDate"></mat-datepicker-toggle> <mat-datepicker-toggle matSuffix [for]="firstHireDate"></mat-datepicker-toggle>
...@@ -249,14 +253,18 @@ ...@@ -249,14 +253,18 @@
</div> </div>
</div> </div>
<div class="grid grid-cols-12 gap-x-6"> <div class="grid grid-cols-12 gap-x-6">
<label class="col-span-3 ti-form-label text-primary mt-2">BU</label> <label class="col-span-3 ti-form-label text-primary mt-2">BU*</label>
<div class="col-span-6 sm:col-span-6 "> <div class="col-span-6 sm:col-span-6 ">
<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"
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"
(click)="employee.select.bu1.bu1id='';employee.select.bu1.tdesc=''">
<i class="ti ti-circle-x cursor-pointer"></i>
</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-bu-table-modal"> data-hs-overlay="#sub-employee-registration-bu-table-modal">
<i class="ri-search-line cursor-pointer text-gray"></i> <i class="ri-search-line cursor-pointer text-gray"></i>
...@@ -267,14 +275,18 @@ ...@@ -267,14 +275,18 @@
</div> </div>
</div> </div>
<div class="grid grid-cols-12 gap-x-6"> <div class="grid grid-cols-12 gap-x-6">
<label class="col-span-3 ti-form-label text-primary mt-2">ตำแหน่ง</label> <label class="col-span-3 ti-form-label text-primary mt-2">ตำแหน่ง*</label>
<div class="col-span-6 sm:col-span-6 "> <div class="col-span-6 sm:col-span-6 ">
<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"
style="padding-right: 3.5rem;" [(ngModel)]="employee.select.position.tdesc"> readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.position.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"
(click)="employee.select.position.positionId='';employee.select.position.tdesc=''">
<i class="ti ti-circle-x cursor-pointer"></i>
</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-position-table-modal"> data-hs-overlay="#sub-employee-registration-position-table-modal">
<i class="ri-search-line cursor-pointer text-gray"></i> <i class="ri-search-line cursor-pointer text-gray"></i>
...@@ -285,14 +297,18 @@ ...@@ -285,14 +297,18 @@
</div> </div>
</div> </div>
<div class="grid grid-cols-12 gap-x-6"> <div class="grid grid-cols-12 gap-x-6">
<label class="col-span-3 ti-form-label text-primary mt-2">ลักษณะงาน</label> <label class="col-span-3 ti-form-label text-primary mt-2">ลักษณะงาน*</label>
<div class="col-span-6 sm:col-span-6 "> <div class="col-span-6 sm:col-span-6 ">
<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"
style="padding-right: 3.5rem;" [(ngModel)]="employee.select.jobCode.tdesc"> readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.jobCode.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"
(click)="employee.select.jobCode.jobcodeId='';employee.select.jobCode.tdesc=''">
<i class="ti ti-circle-x cursor-pointer"></i>
</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-jobcode-table-modal"> data-hs-overlay="#sub-employee-registration-jobcode-table-modal">
<i class="ri-search-line cursor-pointer text-gray"></i> <i class="ri-search-line cursor-pointer text-gray"></i>
...@@ -303,14 +319,18 @@ ...@@ -303,14 +319,18 @@
</div> </div>
</div> </div>
<div class="grid grid-cols-12 gap-x-6"> <div class="grid grid-cols-12 gap-x-6">
<label class="col-span-3 ti-form-label text-primary mt-2">สาขา</label> <label class="col-span-3 ti-form-label text-primary mt-2">สาขา*</label>
<div class="col-span-6 sm:col-span-6 "> <div class="col-span-6 sm:col-span-6 ">
<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"
style="padding-right: 3.5rem;" [(ngModel)]="employee.select.branch.tdesc"> readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.branch.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"
(click)="employee.select.branch.branchId='';employee.select.branch.tdesc=''">
<i class="ti ti-circle-x cursor-pointer"></i>
</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-branch-table-modal"> data-hs-overlay="#sub-employee-registration-branch-table-modal">
<i class="ri-search-line cursor-pointer text-gray"></i> <i class="ri-search-line cursor-pointer text-gray"></i>
...@@ -321,14 +341,18 @@ ...@@ -321,14 +341,18 @@
</div> </div>
</div> </div>
<div class="grid grid-cols-12 gap-x-6"> <div class="grid grid-cols-12 gap-x-6">
<label class="col-span-3 ti-form-label text-primary mt-2">ประเภทพนักงาน</label> <label class="col-span-3 ti-form-label text-primary mt-2">ประเภทพนักงาน*</label>
<div class="col-span-6 sm:col-span-6 "> <div class="col-span-6 sm:col-span-6 ">
<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"
style="padding-right: 3.5rem;" [(ngModel)]="employee.select.empType.tdesc"> readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.empType.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"
(click)="employee.select.empType.codeId='';employee.select.empType.tdesc=''">
<i class="ti ti-circle-x cursor-pointer"></i>
</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-emptype-table-modal"> data-hs-overlay="#sub-employee-registration-emptype-table-modal">
<i class="ri-search-line cursor-pointer text-gray"></i> <i class="ri-search-line cursor-pointer text-gray"></i>
...@@ -339,14 +363,18 @@ ...@@ -339,14 +363,18 @@
</div> </div>
</div> </div>
<div class="grid grid-cols-12 gap-x-6"> <div class="grid grid-cols-12 gap-x-6">
<label class="col-span-3 ti-form-label text-primary mt-2">ระดับพนักงาน (PL)</label> <label class="col-span-3 ti-form-label text-primary mt-2">ระดับพนักงาน (PL)*</label>
<div class="col-span-6 sm:col-span-6 "> <div class="col-span-6 sm:col-span-6 ">
<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"
style="padding-right: 3.5rem;" [(ngModel)]="employee.select.personalLevel.tdesc"> readonly style="padding-right: 3.5rem;" [(ngModel)]="employee.select.personalLevel.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"
(click)="employee.select.personalLevel.plId='';employee.select.personalLevel.tdesc=''">
<i class="ti ti-circle-x cursor-pointer"></i>
</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-pl-table-modal"> data-hs-overlay="#sub-employee-registration-pl-table-modal">
<i class="ri-search-line cursor-pointer text-gray"></i> <i class="ri-search-line cursor-pointer text-gray"></i>
...@@ -363,10 +391,11 @@ ...@@ -363,10 +391,11 @@
data-hs-overlay="#sub-employee-registration-modal"> data-hs-overlay="#sub-employee-registration-modal">
ย้อนกลับ ย้อนกลับ
</button> </button>
<a class="ti-btn ti-btn-success" href="javascript:void(0);" <button type="button" class="ti-btn ti-btn-success"
data-hs-overlay="#sub-employee-registration-alert-add-modal"> data-hs-overlay="#sub-employee-registration-alert-add-modal" [class.ti-btn-disabled]="checkEmployeeModel()"
[disabled]="checkEmployeeModel()">
บันทึกข้อมูล บันทึกข้อมูล
</a> </button>
</div> </div>
</div> </div>
</div> </div>
...@@ -467,7 +496,7 @@ ...@@ -467,7 +496,7 @@
ย้อนกลับ ย้อนกลับ
</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('delete')"> data-hs-overlay="#sub-employee-registration-alert-delete-modal" (click)="updateEmployeeList(modalType)">
ลบข้อมูล ลบข้อมูล
</a> </a>
</div> </div>
...@@ -495,9 +524,9 @@ ...@@ -495,9 +524,9 @@
<div class="flex justify-end pb-1rem"> <div class="flex justify-end pb-1rem">
<div class="px-1"> <div class="px-1">
<div class="relative shadow-md"> <div class="relative shadow-md">
<input type="text" id="hs-leading-icon" name="hs-leading-icon" <input type="text" class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 "
class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 " placeholder="Search by No. or Name" placeholder="Search by No. or Name" [(ngModel)]="modal.search"
[(ngModel)]="modal.search" (ngModelChange)="searchModalChange(empGroupListFilter())"> (ngModelChange)="searchModalChange(empGroupListFilter())">
<div <div
class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4"> class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4">
<i class="ri-search-line text-gray"></i> <i class="ri-search-line text-gray"></i>
...@@ -623,9 +652,9 @@ ...@@ -623,9 +652,9 @@
<div class="flex justify-end pb-1rem"> <div class="flex justify-end pb-1rem">
<div class="px-1"> <div class="px-1">
<div class="relative shadow-md"> <div class="relative shadow-md">
<input type="text" id="hs-leading-icon" name="hs-leading-icon" <input type="text" class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 "
class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 " placeholder="Search by No. or Name" placeholder="Search by No. or Name" [(ngModel)]="modal.search"
[(ngModel)]="modal.search" (ngModelChange)="searchModalChange(bu1ListFilter())"> (ngModelChange)="searchModalChange(bu1ListFilter())">
<div <div
class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4"> class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4">
<i class="ri-search-line text-gray"></i> <i class="ri-search-line text-gray"></i>
...@@ -750,9 +779,9 @@ ...@@ -750,9 +779,9 @@
<div class="flex justify-end pb-1rem"> <div class="flex justify-end pb-1rem">
<div class="px-1"> <div class="px-1">
<div class="relative shadow-md"> <div class="relative shadow-md">
<input type="text" id="hs-leading-icon" name="hs-leading-icon" <input type="text" class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 "
class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 " placeholder="Search by No. or Name" placeholder="Search by No. or Name" [(ngModel)]="modal.search"
[(ngModel)]="modal.search" (ngModelChange)="searchModalChange(positionListFilter())"> (ngModelChange)="searchModalChange(positionListFilter())">
<div <div
class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4"> class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4">
<i class="ri-search-line text-gray"></i> <i class="ri-search-line text-gray"></i>
...@@ -878,9 +907,9 @@ ...@@ -878,9 +907,9 @@
<div class="flex justify-end pb-1rem"> <div class="flex justify-end pb-1rem">
<div class="px-1"> <div class="px-1">
<div class="relative shadow-md"> <div class="relative shadow-md">
<input type="text" id="hs-leading-icon" name="hs-leading-icon" <input type="text" class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 "
class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 " placeholder="Search by No. or Name" placeholder="Search by No. or Name" [(ngModel)]="modal.search"
[(ngModel)]="modal.search" (ngModelChange)="searchModalChange(jobcodeListFilter())"> (ngModelChange)="searchModalChange(jobcodeListFilter())">
<div <div
class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4"> class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4">
<i class="ri-search-line text-gray"></i> <i class="ri-search-line text-gray"></i>
...@@ -1006,9 +1035,9 @@ ...@@ -1006,9 +1035,9 @@
<div class="flex justify-end pb-1rem"> <div class="flex justify-end pb-1rem">
<div class="px-1"> <div class="px-1">
<div class="relative shadow-md"> <div class="relative shadow-md">
<input type="text" id="hs-leading-icon" name="hs-leading-icon" <input type="text" class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 "
class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 " placeholder="Search by No. or Name" placeholder="Search by No. or Name" [(ngModel)]="modal.search"
[(ngModel)]="modal.search" (ngModelChange)="searchModalChange(branchListFilter())"> (ngModelChange)="searchModalChange(branchListFilter())">
<div <div
class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4"> class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4">
<i class="ri-search-line text-gray"></i> <i class="ri-search-line text-gray"></i>
...@@ -1134,9 +1163,9 @@ ...@@ -1134,9 +1163,9 @@
<div class="flex justify-end pb-1rem"> <div class="flex justify-end pb-1rem">
<div class="px-1"> <div class="px-1">
<div class="relative shadow-md"> <div class="relative shadow-md">
<input type="text" id="hs-leading-icon" name="hs-leading-icon" <input type="text" class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 "
class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 " placeholder="Search by No. or Name" placeholder="Search by No. or Name" [(ngModel)]="modal.search"
[(ngModel)]="modal.search" (ngModelChange)="searchModalChange(empTypeListFilter())"> (ngModelChange)="searchModalChange(empTypeListFilter())">
<div <div
class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4"> class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4">
<i class="ri-search-line text-gray"></i> <i class="ri-search-line text-gray"></i>
...@@ -1262,9 +1291,9 @@ ...@@ -1262,9 +1291,9 @@
<div class="flex justify-end pb-1rem"> <div class="flex justify-end pb-1rem">
<div class="px-1"> <div class="px-1">
<div class="relative shadow-md"> <div class="relative shadow-md">
<input type="text" id="hs-leading-icon" name="hs-leading-icon" <input type="text" class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 "
class="ti-form-input ltr:pl-11 rtl:pr-11 focus:z-10 " placeholder="Search by No. or Name" placeholder="Search by No. or Name" [(ngModel)]="modal.search"
[(ngModel)]="modal.search" (ngModelChange)="searchModalChange(plListFilter())"> (ngModelChange)="searchModalChange(plListFilter())">
<div <div
class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4"> class="absolute inset-y-0 ltr:left-0 rtl:right-0 flex items-center pointer-events-none z-20 ltr:pl-4 rtl:pr-4">
<i class="ri-search-line text-gray"></i> <i class="ri-search-line text-gray"></i>
......
...@@ -116,7 +116,7 @@ export class SubEmployeeRegistrationComponent { ...@@ -116,7 +116,7 @@ export class SubEmployeeRegistrationComponent {
}) })
} }
downloadFile() { downloadFile() {
const fileName = 'IMPORT_MPOSITION.xlsx' const fileName = '.xlsx'
this.fileService.downloadTemplate(fileName).subscribe({ this.fileService.downloadTemplate(fileName).subscribe({
next: response => { next: response => {
const url = window.URL.createObjectURL(response); const url = window.URL.createObjectURL(response);
...@@ -304,6 +304,7 @@ export class SubEmployeeRegistrationComponent { ...@@ -304,6 +304,7 @@ export class SubEmployeeRegistrationComponent {
break; break;
} }
} }
this.employee.loading = true
this.employeeService[type](body).subscribe({ this.employeeService[type](body).subscribe({
next: response => { next: response => {
if (response.success) { if (response.success) {
...@@ -311,9 +312,13 @@ export class SubEmployeeRegistrationComponent { ...@@ -311,9 +312,13 @@ export class SubEmployeeRegistrationComponent {
this.getEmployeeList() this.getEmployeeList()
} else { } else {
this.showAlert(response.message, 'error') this.showAlert(response.message, 'error')
this.employee.loading = false
this.cdr.detectChanges()
} }
}, error: error => { }, error: error => {
this.showAlert(error.message, 'error') this.showAlert(error.message, 'error')
this.employee.loading = false
this.cdr.detectChanges()
} }
}) })
} }
...@@ -385,4 +390,23 @@ export class SubEmployeeRegistrationComponent { ...@@ -385,4 +390,23 @@ export class SubEmployeeRegistrationComponent {
this.isDataListChecked = Boolean(this.numDataListChecked) this.isDataListChecked = Boolean(this.numDataListChecked)
} }
checkEmployeeModel() {
let disable = false
if (!this.employee.select.employeeId ||
!this.employee.select.fname ||
!this.employee.select.lname ||
!this.employee.select.empGroup.groupId ||
!this.employee.select.firstHireDate ||
!this.employee.select.bu1.bu1id ||
!this.employee.select.position.positionId ||
!this.employee.select.jobCode.jobcodeId ||
!this.employee.select.branch.branchId ||
!this.employee.select.empType.codeId ||
!this.employee.select.personalLevel.plId
) {
disable = true
}
return disable
}
} }
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