Commit 2ec684d8 by Nattana Chaiyamat

หน้าจอ ทะเบียนบริษัท > สาขาและหน่วยธุรกิจ > ทะเบียนฝ่าย

parent d9800e04
<div class="head-title">
รายละเอียดสาขาและหน่วยธุรกิจ
</div>
<div class="body-content">
<ul class="nav-tabs">
<li class="nav-item" *ngFor="let item of [{id:'tab1',text:'ทะเบียนฝ่าย'},
{id:'tab2',text:'ทะเบียนแผนก'},
{id:'tab3',text:'ทะเบียนส่วน'},
{id:'tab4',text:'ส่วนย่อย1'},
{id:'tab5',text:'ส่วนย่อย2'},
{id:'tab6',text:'ส่วนย่อย3'},
{id:'tab7',text:'ส่วนย่อย4'}]" (click)="changeTab(item)">
<a [class.active]="activeTab === item.id" class="nav-link">{{item.text}}</a>
</li>
</ul>
<div class="tab-content">
<div *ngIf="activeTab === 'tab1'" class="tab-pane">
<app-department-register></app-department-register>
</div>
<div *ngIf="activeTab === 'tab2'" class="tab-pane">
<p>เนื้อหาของ Tab 2</p>
</div>
</div>
</div>
\ No newline at end of file
/* สไตล์ของแถบเมนู */
.nav-tabs {
display: flex;
border-bottom: 2px solid #ccc; /* เส้นใต้ */
width: 100%;
cursor: pointer;
}
.nav-item {
list-style: none;
margin-right: 10px; /* ช่องว่างระหว่างเมนู */
}
.nav-link {
text-decoration: none;
padding: 10px 20px;
display: inline-block;
font-size: large;
border-width: 2px 2px 0px 2px;
border-style: solid;
border-color: #ccc;
border-radius: 5px 5px 0px 0px;
}
.nav-link:hover {
background-color: #f0f0f0; /* เปลี่ยนสีเมื่อ hover */
}
.nav-link.active {
color: #ffffff; /* สีตัวอักษรในสถานะ active */
font-size: large;
border-bottom: 3.5px solid rgb(var(--color-primary)); /* เส้นใต้ */
background-color: rgb(var(--color-primary));
border-width: 2px 2px 0px 2px;
border-style: solid;
border-color: rgb(var(--color-primary));
border-radius: 5px 5px 0px 0px;
}
.tab-content {
margin-top: 20px;
}
.tab-pane.active {
display: block;
}
import { Component, EventEmitter, Input, Output } from '@angular/core';
@Component({
selector: 'app-branch-business-unit',
templateUrl: './branch-business-unit.component.html',
styleUrls: ['./branch-business-unit.component.scss']
})
export class BranchBusinessUnitComponent {
@Input() pathTitle = ['การจัดการข้อมูลองค์กร', 'ทะเบียนบริษัท', 'สาขาและหน่วยธุรกิจ']
@Output() sendPathTitle: EventEmitter<string[]> = new EventEmitter<string[]>();
activeTab: string = 'tab1'; // กำหนด tab เริ่มต้น
// ฟังก์ชันในการเปลี่ยนแท็บ
changeTab(tab: { id: string, text: string }) {
this.sendPathTitle.emit(['การจัดการข้อมูลองค์กร', 'ทะเบียนบริษัท', 'สาขาและหน่วยธุรกิจ', tab.text])
this.activeTab = tab.id;
}
}
<div class="flex justify-end">
<div class="px-1">
<div class="input-wrapper">
<input type="text" class="ti-form-input" placeholder="Search by No. or Name" />
<div class="icon">
<i class="ri-search-line"></i>
</div>
</div>
</div>
<div class="px-1">
<button type="button" class="button-blue-light"><i class="ri-add-line"></i>Add</button>
</div>
<div class="px-1">
<button type="button" class="button-purple-light"><i class="ri-printer-line"></i> Print</button>
</div>
<div class="px-1">
<button type="button" class="button-yellow-light">
<svg width="16" height="16" viewBox="-2.4 -2.4 28.80 28.80" fill="none" xmlns="http://www.w3.org/2000/svg"
stroke="#E7A927" transform="matrix(1, 0, 0, 1, 0, 0)">
<g id="SVGRepo_bgCarrier" stroke-width="0"></g>
<g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round" stroke="#ffffff"
stroke-width="2.4">
<path d="M12 6.5V18.5" stroke="#E7A927" stroke-linecap="round"></path>
<path d="M20.5 6.5V18.5" stroke="#E7A927" stroke-linecap="round"></path>
<path d="M3.5 6.5V18.5" stroke="#E7A927" stroke-linecap="round"></path>
<path d="M20.5 18.5C20.5 18.5 19.5 16.5 16 16.5C12.5 16.5 12 18.5 12 18.5" stroke="#E7A927"
stroke-linecap="round"></path>
<path d="M3.5 18.5C3.5 18.5 4.5 16.5 8 16.5C11.5 16.5 12 18.5 12 18.5" stroke="#E7A927"
stroke-linecap="round"></path>
<path d="M20.5 6.5C20.5 6.5 19.5 4.5 16 4.5C12.5 4.5 12 6.5 12 6.5" stroke="#E7A927"
stroke-linecap="round"></path>
<path d="M3.5 6.5C3.5 6.5 4.5 4.5 8 4.5C11.5 4.5 12 6.5 12 6.5" stroke="#E7A927"
stroke-linecap="round">
</path>
</g>
<g id="SVGRepo_iconCarrier">
<path d="M12 6.5V18.5" stroke="#E7A927" stroke-linecap="round"></path>
<path d="M20.5 6.5V18.5" stroke="#E7A927" stroke-linecap="round"></path>
<path d="M3.5 6.5V18.5" stroke="#E7A927" stroke-linecap="round"></path>
<path d="M20.5 18.5C20.5 18.5 19.5 16.5 16 16.5C12.5 16.5 12 18.5 12 18.5" stroke="#E7A927"
stroke-linecap="round"></path>
<path d="M3.5 18.5C3.5 18.5 4.5 16.5 8 16.5C11.5 16.5 12 18.5 12 18.5" stroke="#E7A927"
stroke-linecap="round"></path>
<path d="M20.5 6.5C20.5 6.5 19.5 4.5 16 4.5C12.5 4.5 12 6.5 12 6.5" stroke="#E7A927"
stroke-linecap="round"></path>
<path d="M3.5 6.5C3.5 6.5 4.5 4.5 8 4.5C11.5 4.5 12 6.5 12 6.5" stroke="#E7A927"
stroke-linecap="round">
</path>
</g>
</svg>Help
</button>
</div>
</div>
<div class="body-content">
<ul class="nav-tabs">
<li class="nav-item">
<a [class.active]="true" class="nav-link active">นำเข้าข้อมูล</a>
</li>
<li class="nav-item-text flex items-end">
<a class="nav-link-text">ดาวโหลดตัวอย่างไฟล์</a>
</li>
</ul>
<div *ngIf="true" class="tab-pane">
<div class="overflow-auto shadow-gray-smoke">
<table class="ti-custom-table ti-custom-table-head">
<thead class="bg-gray-50 dark:bg-black/20">
<tr>
<ng-container
*ngFor="let item of ['ลำดับ','รหัสฝ่าย','รายละเอียดฝ่าย (ไทย)','รายละเอียดฝ่าย (อังกฤษ)','การจัดการ']; let f = first; let l = last">
<th scope="col" class="relative head-table" [class.!text-center]="f||l">
<span>{{ item }}</span>
<div class="absolute top-1/2 transform -translate-y-1/2 right-0" *ngIf="!l">
<svg class="head-table-icon" xmlns="http://www.w3.org/2000/svg" width="16"
height="16" fill="currentColor" viewBox="0 0 16 16">
<path
d="M9.5 13a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm0-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0zm0-5a1.5 1.5 0 1 1-3 0 1.5 1.5 0 0 1 3 0z">
</path>
</svg>
</div>
</th>
</ng-container>
</tr>
</thead>
<tbody>
<tr *ngFor="let item of[
['80812', 'ลูกค้าสัมพันธ์', 'Customer Relations'],
['30305', 'การตลาด', 'Marketing'],
['310101', 'งานบัญชี', 'Accounting'],
['70711', 'โลจิสติกส์', 'Logistics'],
['40408', 'เทคโนโลยีสารสนเทศ', 'IT']];let i = index">
<td class="body-table-center">{{0+""+(i+1)}}</td>
<td>{{item[0]}}</td>
<td>{{item[1]}}</td>
<td>{{item[2]}}</td>
<td class="body-table-center">
<div class="px-1">
<svg width="16" height="16" viewBox="0 0 24 24" id="Layer_1" data-name="Layer 1"
xmlns="http://www.w3.org/2000/svg" fill="#64748b" stroke="#64748b">
<g id="SVGRepo_bgCarrier" stroke-width="0"></g>
<g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g>
<g id="SVGRepo_iconCarrier">
<defs>
<style>
.cls-1 {
fill: none;
stroke: #64748b;
stroke-miterlimit: 10;
stroke-width: 1.91px;
}
</style>
</defs>
<polyline class="cls-1"
points="20.59 12 20.59 22.5 1.5 22.5 1.5 3.41 12.96 3.41">
</polyline>
<path class="cls-1"
d="M12,15.82l-4.77.95L8.18,12l9.71-9.71A2.69,2.69,0,0,1,19.8,1.5h0a2.7,2.7,0,0,1,2.7,2.7h0a2.69,2.69,0,0,1-.79,1.91Z">
</path>
</g>
</svg>
</div>
<div class="px-1">
<svg width="16" height="16" viewBox="0 0 24 24" fill="none"
xmlns="http://www.w3.org/2000/svg" stroke="#64748b">
<g id="SVGRepo_bgCarrier" stroke-width="0"></g>
<g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g>
<g id="SVGRepo_iconCarrier">
<path
d="M1.5 3.75C1.08579 3.75 0.75 4.08579 0.75 4.5C0.75 4.91421 1.08579 5.25 1.5 5.25V3.75ZM22.5 5.25C22.9142 5.25 23.25 4.91421 23.25 4.5C23.25 4.08579 22.9142 3.75 22.5 3.75V5.25ZM1.5 5.25H22.5V3.75H1.5V5.25Z"
fill="#64748b"></path>
<path
d="M9.75 1.5V0.75V1.5ZM8.25 3H7.5H8.25ZM7.5 4.5C7.5 4.91421 7.83579 5.25 8.25 5.25C8.66421 5.25 9 4.91421 9 4.5H7.5ZM15 4.5C15 4.91421 15.3358 5.25 15.75 5.25C16.1642 5.25 16.5 4.91421 16.5 4.5H15ZM15.75 3H16.5H15.75ZM14.25 0.75H9.75V2.25H14.25V0.75ZM9.75 0.75C9.15326 0.75 8.58097 0.987053 8.15901 1.40901L9.21967 2.46967C9.36032 2.32902 9.55109 2.25 9.75 2.25V0.75ZM8.15901 1.40901C7.73705 1.83097 7.5 2.40326 7.5 3H9C9 2.80109 9.07902 2.61032 9.21967 2.46967L8.15901 1.40901ZM7.5 3V4.5H9V3H7.5ZM16.5 4.5V3H15V4.5H16.5ZM16.5 3C16.5 2.40326 16.2629 1.83097 15.841 1.40901L14.7803 2.46967C14.921 2.61032 15 2.80109 15 3H16.5ZM15.841 1.40901C15.419 0.987053 14.8467 0.75 14.25 0.75V2.25C14.4489 2.25 14.6397 2.32902 14.7803 2.46967L15.841 1.40901Z"
fill="#64748b"></path>
<path
d="M9 17.25C9 17.6642 9.33579 18 9.75 18C10.1642 18 10.5 17.6642 10.5 17.25H9ZM10.5 9.75C10.5 9.33579 10.1642 9 9.75 9C9.33579 9 9 9.33579 9 9.75H10.5ZM10.5 17.25V9.75H9V17.25H10.5Z"
fill="#64748b"></path>
<path
d="M13.5 17.25C13.5 17.6642 13.8358 18 14.25 18C14.6642 18 15 17.6642 15 17.25H13.5ZM15 9.75C15 9.33579 14.6642 9 14.25 9C13.8358 9 13.5 9.33579 13.5 9.75H15ZM15 17.25V9.75H13.5V17.25H15Z"
fill="#64748b"></path>
<path
d="M18.865 21.124L18.1176 21.0617L18.1176 21.062L18.865 21.124ZM17.37 22.5L17.3701 21.75H17.37V22.5ZM6.631 22.5V21.75H6.63093L6.631 22.5ZM5.136 21.124L5.88343 21.062L5.88341 21.0617L5.136 21.124ZM4.49741 4.43769C4.46299 4.0249 4.10047 3.71818 3.68769 3.75259C3.2749 3.78701 2.96818 4.14953 3.00259 4.56231L4.49741 4.43769ZM20.9974 4.56227C21.0318 4.14949 20.7251 3.78698 20.3123 3.75259C19.8995 3.7182 19.537 4.02495 19.5026 4.43773L20.9974 4.56227ZM18.1176 21.062C18.102 21.2495 18.0165 21.4244 17.878 21.5518L18.8939 22.6555C19.3093 22.2732 19.5658 21.7486 19.6124 21.186L18.1176 21.062ZM17.878 21.5518C17.7396 21.6793 17.5583 21.75 17.3701 21.75L17.3699 23.25C17.9345 23.25 18.4785 23.0379 18.8939 22.6555L17.878 21.5518ZM17.37 21.75H6.631V23.25H17.37V21.75ZM6.63093 21.75C6.44274 21.75 6.26142 21.6793 6.12295 21.5518L5.10713 22.6555C5.52253 23.0379 6.06649 23.25 6.63107 23.25L6.63093 21.75ZM6.12295 21.5518C5.98449 21.4244 5.89899 21.2495 5.88343 21.062L4.38857 21.186C4.43524 21.7486 4.69172 22.2732 5.10713 22.6555L6.12295 21.5518ZM5.88341 21.0617L4.49741 4.43769L3.00259 4.56231L4.38859 21.1863L5.88341 21.0617ZM19.5026 4.43773L18.1176 21.0617L19.6124 21.1863L20.9974 4.56227L19.5026 4.43773Z"
fill="#64748b"></path>
</g>
</svg>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
\ No newline at end of file
/* สไตล์ของแถบเมนู */
.nav-tabs {
display: flex;
border-bottom: 2px solid #ccc; /* เส้นใต้ */
width: 100%;
cursor: pointer;
}
.nav-item {
list-style: none;
margin-right: 10px; /* ช่องว่างระหว่างเมนู */
}
.nav-link {
text-decoration: none;
padding: 10px 20px;
display: inline-block;
font-size: large;
border-width: 2px 2px 0px 2px;
border-style: solid;
border-color: #ccc;
border-radius: 5px 5px 0px 0px;
}
.nav-link:hover {
background-color: #f0f0f0; /* เปลี่ยนสีเมื่อ hover */
}
.nav-link.active {
color: #ffffff; /* สีตัวอักษรในสถานะ active */
font-size: large;
border-bottom: 3.5px solid rgb(var(--color-primary)); /* เส้นใต้ */
background-color: rgb(var(--color-primary));
border-width: 2px 2px 0px 2px;
border-style: solid;
border-color: rgb(var(--color-primary));
border-radius: 5px 5px 0px 0px;
}
.tab-content {
margin-top: 20px;
}
.tab-pane.active {
display: block;
}
.nav-item-text {
list-style: none;
margin-right: 10px; /* ช่องว่างระหว่างเมนู */
}
.nav-link-text {
text-decoration: none;
display: inline-block;
font-size: large;
color: #569bf5;
border-bottom: 3.5px solid #569bf5;
}
import { Component, EventEmitter, Input, Output } from '@angular/core';
@Component({
selector: 'app-department-register',
templateUrl: './department-register.component.html',
styleUrls: ['./department-register.component.scss']
})
export class DepartmentRegisterComponent {
}
<app-page-header [pathTitle]="pathTitle"></app-page-header>
<div class="bg-card-white">
</div>
<div class="block-main-content">
<div class="head-title">
ทะเบียนบริษัท
</div>
<div class="body-content">
<ul class="nav-tabs">
<li class="nav-item" *ngFor="let item of [{id:'tab1',text:'ทะเบียนบริษัท'},
{id:'tab2',text:'สาขาและหน่วยธุรกิจ'}]" (click)="changeTab(item)">
<a [class.active]="activeTab === item.id" class="nav-link">{{item.text}}</a>
</li>
</ul>
<div class="tab-content">
<div *ngIf="activeTab === 'tab1'" class="tab-pane">
<p>ทะเบียนบริษัท</p>
</div>
<div *ngIf="activeTab === 'tab2'" class="tab-pane">
<div class="mt-5"></div>
<app-branch-business-unit [pathTitle]="pathTitle"
(sendPathTitle)="pathTitle=$event"></app-branch-business-unit>
</div>
</div>
</div>
</div>
\ No newline at end of file
/* สไตล์ของแถบเมนู */
.nav-tabs {
display: flex;
border-bottom: 2px solid #ccc; /* เส้นใต้ */
width: 100%;
cursor: pointer;
}
.nav-item {
list-style: none;
margin-right: 10px; /* ช่องว่างระหว่างเมนู */
}
.nav-link {
text-decoration: none;
padding: 10px 20px;
display: inline-block;
font-size: large;
}
.nav-link:hover {
background-color: #f0f0f0; /* เปลี่ยนสีเมื่อ hover */
}
.nav-link.active {
color: #569bf5; /* สีตัวอักษรในสถานะ active */
font-size: large;
border-bottom: 3.5px solid #569bf5; /* เส้นใต้ */
}
.tab-content {
margin-top: 20px;
}
.tab-pane.active {
display: block;
}
import { Component } from '@angular/core';
@Component({
selector: 'app-company-registration',
templateUrl: './company-registration.component.html',
styleUrls: ['./company-registration.component.scss']
})
export class CompanyRegistrationComponent {
pathTitle = ['การจัดการข้อมูลองค์กร', 'ทะเบียนบริษัท', 'ทะเบียนบริษัท']
activeTab: string = 'tab1';
// ฟังก์ชันในการเปลี่ยนแท็บ
changeTab(tab: { id: string, text: string }) {
this.pathTitle = ['การจัดการข้อมูลองค์กร', 'ทะเบียนบริษัท', tab.text]
this.activeTab = tab.id
}
}
......@@ -12,28 +12,29 @@ import { PersonalComponent } from './personal/personal.component';
import { ProjectsComponent } from './projects/projects.component';
import { StocksComponent } from './stocks/stocks.component';
import { CourseComponent } from './course/course.component';
import { CompanyRegistrationComponent } from '../company-registration/company-registration.component';
const routes: Routes = [
{
path: "",
children: [
{ path: "dashboard/analytics", component: AnalyticsComponent },
{ path: "dashboard/crypto", component: CryptoComponent },
{ path: "dashboard/ecommerce", component: EcommerceComponent },
{ path: "dashboard/sales", component: SalesComponent },
{ path: "dashboard/crm", component: CrmComponent },
{ path: "dashboard/jobs", component: JobsComponent },
{ path: "dashboard/hrm", component: HrmComponent },
{ path: "dashboard/personal", component: PersonalComponent },
{ path: "dashboard/nft", component: NftComponent },
{ path: "dashboard/projects", component: ProjectsComponent },
{ path: "dashboard/stocks", component: StocksComponent },
{ path: "dashboard/course", component: CourseComponent },
{ path:"",
children:[
{path:"dashboard/analytics", component:AnalyticsComponent},
{path:"dashboard/crypto",component: CryptoComponent},
{path:"dashboard/ecommerce",component: EcommerceComponent},
{path:"dashboard/sales",component: SalesComponent},
{path:"dashboard/crm",component: CrmComponent},
{path:"dashboard/jobs",component:JobsComponent },
{path:"dashboard/hrm",component:HrmComponent },
{path:"dashboard/personal",component:PersonalComponent },
{path:"dashboard/nft",component:NftComponent },
{path:"dashboard/projects",component:ProjectsComponent },
{path:"dashboard/stocks",component:StocksComponent },
{path:"dashboard/course",component:CourseComponent },
]}
// myComponent
{ path: "company-registration", component: CompanyRegistrationComponent },
]
}
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
......
......@@ -20,6 +20,9 @@ import { CarouselModule } from 'ngx-owl-carousel-o';
import { SharedModule } from 'src/app/shared/sharedmodule';
import { NgxChartsModule } from '@swimlane/ngx-charts';
import { NgSelectModule } from '@ng-select/ng-select';
import { CompanyRegistrationComponent } from '../company-registration/company-registration.component';
import { DepartmentRegisterComponent } from '../company-registration/branch-business-unit/department-register/department-register.component';
import { BranchBusinessUnitComponent } from '../company-registration/branch-business-unit/branch-business-unit.component';
@NgModule({
declarations: [
SalesComponent,
......@@ -34,6 +37,11 @@ import { NgSelectModule } from '@ng-select/ng-select';
PersonalComponent,
StocksComponent,
CourseComponent,
// my Component
CompanyRegistrationComponent,
BranchBusinessUnitComponent,
DepartmentRegisterComponent
],
imports: [
CommonModule,
......@@ -46,4 +54,4 @@ import { NgSelectModule } from '@ng-select/ng-select';
NgSelectModule,
],
})
export class DashboardModule {}
export class DashboardModule { }
<!-- Page Header -->
<div class="block justify-between page-header sm:flex">
<div>
<h3 class="text-gray-700 hover:text-gray-900 dark:text-white dark:hover:text-white text-2xl font-medium">{{title}}</h3>
</div>
<ol class="flex items-center whitespace-nowrap min-w-0">
<li class="text-sm">
<a class="flex items-center font-semibold text-primary hover:text-primary dark:text-primary truncate" href="javascript:void(0);">
{{activeitem}}
<i class="ti ti-chevrons-right flex-shrink-0 mx-3 overflow-visible text-gray-300 dark:text-gray-300 rtl:rotate-180"></i>
</a>
</li>
<li class="text-sm text-gray-500 hover:text-primary dark:text-white/70 " aria-current="page">
{{title1}}
</li>
</ol>
<ng-container *ngTemplateOutlet="title ? pageHeaderOriginal : pageHeaderNew"></ng-container>
<ng-template #pageHeaderNew>
<!-- Page Header New -->
<div class="block justify-between page-header sm:flex">
<ol class="flex items-center whitespace-nowrap min-w-0">
<li class="text-sm text-gray-500 hover:text-primary dark:text-white/70 " aria-current="page"
*ngFor="let item of pathTitle;let l = last">
<span class="flex items-center">
{{item}}
<i *ngIf="!l" class="ri-arrow-right-s-line mx-3 text-gray-500"></i>
</span>
</li>
</ol>
</div>
<!-- Page Header Close -->
</ng-template>
<ng-template #pageHeaderOriginal>
<!-- Page Header Original -->
<div class="block justify-between page-header sm:flex">
<div>
<h3 class="text-gray-700 hover:text-gray-900 dark:text-white dark:hover:text-white text-2xl font-medium">{{title}}
</h3>
</div>
<ol class="flex items-center whitespace-nowrap min-w-0">
<li class="text-sm">
<a class="flex items-center font-semibold text-primary hover:text-primary dark:text-primary truncate"
href="javascript:void(0);">
{{activeitem}}
<i
class="ti ti-chevrons-right flex-shrink-0 mx-3 overflow-visible text-gray-300 dark:text-gray-300 rtl:rotate-180"></i>
</a>
</li>
<li class="text-sm text-gray-500 hover:text-primary dark:text-white/70 " aria-current="page">
{{title1}}
</li>
</ol>
</div>
<!-- Page Header Close -->
</ng-template>
\ No newline at end of file
......@@ -9,6 +9,7 @@ export class PageHeaderComponent {
@Input() title!: string;
@Input() title1!:string;
@Input() activeitem!: string;
@Input() pathTitle: string[] = []
constructor() { }
ngOnInit(): void {
......
......@@ -123,4 +123,4 @@
<!-- End::main-sidebar -->
</aside>
<!-- End::app-sidebar -->
<!-- End::app-sidebar -->
\ No newline at end of file
import { Routes } from '@angular/router';
export const content: Routes = [
{
path: '',
loadChildren: () => import('../../components/dashboard/dashboard.module').then(m => m.DashboardModule)
},
{
{
path: '',
loadChildren: () => import('../../components/dashboard/dashboard.module').then(m => m.DashboardModule)
},
{
path: '',
loadChildren: () => import('../../components/widgets/widgets.module').then(m => m.WidgetsModule)
},
......@@ -69,4 +68,4 @@ export const content: Routes = [
loadChildren: () => import('../../components/icons/icons.module').then(m => m.IconsModule)
},
];
];
......@@ -86,13 +86,26 @@ export class NavService implements OnDestroy {
}
MENUITEMS: Menu[] = [
{ headTitle: 'การจัดการข้อมูลองค์กร' },
{
title: 'ทะเบียนบริษัท',
type: 'link',
selected: false,
active: false,
path: '/company-registration'
},
// Dashboard
{ headTitle: 'การประเมินผล' },
{
title: 'การประเมินตนเอง',
icon: 'home-8-line',
type: 'link',
selected : false,
selected: false,
active: false,
path: '/dashboard/sales',
// children: [
......@@ -113,7 +126,7 @@ export class NavService implements OnDestroy {
badgeClass: 'badge badge-sm bg-secondary badge-hide',
badgeValue: 'new',
path: '/widgets',
selected : false,
selected: false,
type: 'link',
},
// {
......
......@@ -34,7 +34,6 @@
// dark styles start
@media (min-width: 992px) {
[data-nav-layout="horizontal"][dir="rtl"] .main-menu-container {
.slide-right {
......@@ -65,10 +64,7 @@
}
@media (min-width: 992px) {
[data-nav-style="icon-click"][toggled="icon-click-closed"]:not(
[data-nav-layout="horizontal"]
)
.main-menu {
[data-nav-style="icon-click"][toggled="icon-click-closed"]:not([data-nav-layout="horizontal"]) .main-menu {
@apply ltr:ps-[2rem] ltr:pe-[1.219rem] rtl:pe-[2rem] rtl:ps-[1.219rem];
}
}
......@@ -145,9 +141,7 @@
.mat-mdc-form-field-infix {
width: 90px;
}
.timepicker
.mat-mdc-text-field-wrapper:not(.mdc-text-field--outlined)
.mat-mdc-form-field-infix {
.timepicker .mat-mdc-text-field-wrapper:not(.mdc-text-field--outlined) .mat-mdc-form-field-infix {
margin-inline-start: 10px;
}
}
......@@ -233,17 +227,12 @@
ngx-dropzone {
@apply border-gray-200 dark:border-white/10 h-20 #{!important};
}
.ng-select.ng-select-multiple
.ng-select-container
.ng-value-container
.ng-value
.ng-value-icon:hover {
.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover {
@apply bg-primary;
}
/* custom styles */
/* custom styles */
@media (min-width: 992px) {
......@@ -251,7 +240,7 @@ ngx-dropzone {
[data-nav-style="menu-hover"] {
.app-sidebar {
.slide.has-sub {
.child1>.sub-slide:hover>.child2{
.child1 > .sub-slide:hover > .child2 {
@apply block -mt-[30px] #{!important};
}
}
......@@ -264,7 +253,7 @@ ngx-dropzone {
}
/* advanced forms */
.ng-select.ng-select-focused:not(.ng-select-opened)>.ng-select-container {
.ng-select.ng-select-focused:not(.ng-select-opened) > .ng-select-container {
@apply shadow-none;
}
......@@ -296,7 +285,7 @@ ngx-dropzone {
@apply stroke-[#fff];
}
.ae-font .ae-picker-label:hover:before {
background: linear-gradient(to right,#293549 100%,#293549 100%);
background: linear-gradient(to right, #293549 100%, #293549 100%);
}
.ae-font.ae-expanded .ae-picker-options {
@apply border-white/10;
......@@ -356,3 +345,154 @@ ngx-dropzone {
}
}
/* colorpicker */
.body-content {
display: flex;
flex-direction: column;
padding: 0.5rem 1rem 1rem 1rem;
}
.head-title {
color: rgb(var(--color-primary));
font-weight: 700;
display: flex;
padding: 1rem 1rem 0.5rem 1rem;
font-size: x-large;
}
.bg-card-white {
background-color: #ffffff;
height: 100vh;
position: fixed;
z-index: -1;
width: 100vw;
right: 1.5rem;
}
.block-main-content {
background: white;
margin-left: -1.5rem;
}
@media (min-width: 480px) {
.bg-card-white {
background-color: #ffffff;
height: 100vh;
position: fixed;
z-index: -1;
width: 100vw;
right: 1.75rem;
}
.block-main-content {
background: white;
margin-left: -1.75rem;
}
}
.input-wrapper {
position: relative;
max-width: 20rem;
box-shadow: rgba(149, 157, 165, 0.2) 0px 6px 24px;
display: flex;
align-items: center; // จัดให้อยู่กลางในแนวตั้ง
justify-content: space-between; // จัดไอคอนให้ไปอยู่ข้างขวา
}
.input-wrapper input {
font-family: Montserrat !important;
padding: 0.5rem;
padding-left: 2.5rem; // เพิ่มพื้นที่สำหรับไอคอน
}
.input-wrapper .icon {
position: absolute;
left: 1rem; // ตำแหน่งไอคอนที่ซ้าย
pointer-events: none; // ไอคอนไม่ทำให้การคลิกใน input หยุด
}
.button-blue-light {
min-width: 5rem;
background-color: #e6f0ff;
--tw-text-opacity: 1;
color: #569bf5;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 0.25rem;
border-width: 1px;
border-color: transparent;
padding-top: 0.5rem;
padding-bottom: 0.5rem;
padding-left: 0.75rem;
padding-right: 0.75rem;
font-size: 0.875rem;
line-height: 1.25rem;
font-weight: 400;
transition-property: all;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
box-shadow: rgba(149, 157, 165, 0.2) 0px 6px 24px;
}
.button-purple-light {
min-width: 5rem;
background-color: #f1e4fe;
--tw-text-opacity: 1;
color: #9f49f1;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 0.25rem;
border-width: 1px;
border-color: transparent;
padding-top: 0.5rem;
padding-bottom: 0.5rem;
padding-left: 0.75rem;
padding-right: 0.75rem;
font-size: 0.875rem;
line-height: 1.25rem;
font-weight: 400;
transition-property: all;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
box-shadow: rgba(149, 157, 165, 0.2) 0px 6px 24px;
}
.button-yellow-light {
min-width: 5rem;
background-color: #fef8bf;
--tw-text-opacity: 1;
color: #e7a927;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 0.25rem;
border-width: 1px;
border-color: transparent;
padding-top: 0.5rem;
padding-bottom: 0.5rem;
padding-left: 0.75rem;
padding-right: 0.75rem;
font-size: 0.875rem;
line-height: 1.25rem;
font-weight: 400;
transition-property: all;
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
transition-duration: 150ms;
box-shadow: rgba(149, 157, 165, 0.2) 0px 6px 24px;
}
.shadow-gray-smoke {
box-shadow: rgba(149, 157, 165, 0.2) 0px 6px 24px;
}
.head-table {
padding: 10px 20px; /* เพิ่มระยะขอบ */
font-weight: bold !important;
font-size: large !important;
background-color: #e6f0ff; /* พื้นหลังสำหรับ header */
color: rgb(var(--color-primary));
}
.head-table-icon {
fill: rgb(var(--color-primary)); /* สีไอคอน */
margin: auto;
}
.body-table-center {
display: flex;
justify-content: center;
}
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