Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
portal-apps-manage
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Registry
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
angular
portal-apps-manage
Commits
41881135
Commit
41881135
authored
Sep 14, 2025
by
Ooh-Ao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
dashboard
parent
b67f5495
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
146 additions
and
66 deletions
+146
-66
myhr-plus-create-category.component.ts
...myhr-plus/category/myhr-plus-create-category.component.ts
+35
-0
myhr-plus.component.ts
src/app/portal-manage/myhr-plus/myhr-plus.component.ts
+28
-2
myhr-plus.routes.ts
src/app/portal-manage/myhr-plus/myhr-plus.routes.ts
+10
-0
myhr-plus-excel-report.component.ts
...age/myhr-plus/reports/myhr-plus-excel-report.component.ts
+53
-0
portal-manage.routes.ts
src/app/portal-manage/portal-manage.routes.ts
+0
-10
nav.service.ts
src/app/shared/services/nav.service.ts
+19
-53
environment.ts
src/environments/environment.ts
+1
-1
No files found.
src/app/portal-manage/myhr-plus/category/myhr-plus-create-category.component.ts
0 → 100644
View file @
41881135
import
{
Component
}
from
'@angular/core'
;
@
Component
({
selector
:
'app-myhr-plus-create-category'
,
standalone
:
true
,
template
:
`
<div class="container-fluid">
<div class="row">
<div class="col-12">
<div class="card">
<div class="card-header">
<h4 class="card-title">Create Category</h4>
</div>
<div class="card-body">
<p>ยินดีต้อนรับสู่หน้าสร้างหมวดหมู่</p>
<p>ระบบจัดการหมวดหมู่สำหรับ myHR-Plus</p>
</div>
</div>
</div>
</div>
</div>
`
,
styles
:
[
`
.card {
margin: 20px 0;
}
.card-header {
background-color: #f8f9fa;
border-bottom: 1px solid #dee2e6;
}
`
]
})
export
class
MyhrPlusCreateCategoryComponent
{
constructor
()
{
}
}
src/app/portal-manage/myhr-plus/myhr-plus.component.ts
View file @
41881135
import
{
Component
,
OnInit
}
from
'@angular/core'
;
import
{
Component
,
OnInit
}
from
'@angular/core'
;
import
{
RouterOutlet
}
from
'@angular/router'
;
@
Component
({
@
Component
({
selector
:
'app-myhr-plus'
,
selector
:
'app-myhr-plus'
,
templateUrl
:
'./myhr-plus.component.html'
,
standalone
:
true
,
styleUrls
:
[
'./myhr-plus.component.css'
]
imports
:
[
RouterOutlet
],
template
:
`
<div class="container-fluid">
<div class="row">
<div class="col-12">
<div class="card">
<div class="card-header">
<h4 class="card-title">myHR-Plus</h4>
</div>
<div class="card-body">
<router-outlet></router-outlet>
</div>
</div>
</div>
</div>
</div>
`
,
styles
:
[
`
.card {
margin: 20px 0;
}
.card-header {
background-color: #f8f9fa;
border-bottom: 1px solid #dee2e6;
}
`
]
})
})
export
class
MyhrPlusComponent
implements
OnInit
{
export
class
MyhrPlusComponent
implements
OnInit
{
...
...
src/app/portal-manage/myhr-plus/myhr-plus.routes.ts
View file @
41881135
import
{
Routes
}
from
'@angular/router'
;
import
{
Routes
}
from
'@angular/router'
;
import
{
MyHrPermissionService
}
from
'./services/myhr-permission.service'
;
import
{
MyHrPermissionService
}
from
'./services/myhr-permission.service'
;
import
{
HrDashboardComponent
}
from
'./hr-dashboard.component'
;
import
{
HrDashboardComponent
}
from
'./hr-dashboard.component'
;
import
{
MyhrPlusComponent
}
from
'./myhr-plus.component'
;
export
const
MYHR_PLUS_ROUTES
:
Routes
=
[
export
const
MYHR_PLUS_ROUTES
:
Routes
=
[
{
{
path
:
''
,
path
:
''
,
component
:
MyhrPlusComponent
,
// By providing the service here, a new instance is created when this route is loaded.
// By providing the service here, a new instance is created when this route is loaded.
// It is available to this component and all its children, but not outside this module.
// It is available to this component and all its children, but not outside this module.
providers
:
[
MyHrPermissionService
],
providers
:
[
MyHrPermissionService
],
...
@@ -42,6 +44,14 @@ export const MYHR_PLUS_ROUTES: Routes = [
...
@@ -42,6 +44,14 @@ export const MYHR_PLUS_ROUTES: Routes = [
loadComponent
:
()
=>
import
(
'./org-chart/myhr-plus-org-chart.component'
).
then
(
m
=>
m
.
MyhrPlusOrgChartComponent
)
loadComponent
:
()
=>
import
(
'./org-chart/myhr-plus-org-chart.component'
).
then
(
m
=>
m
.
MyhrPlusOrgChartComponent
)
},
},
{
{
path
:
'create-category'
,
loadComponent
:
()
=>
import
(
'./category/myhr-plus-create-category.component'
).
then
(
m
=>
m
.
MyhrPlusCreateCategoryComponent
)
},
{
path
:
'excel-report'
,
loadComponent
:
()
=>
import
(
'./reports/myhr-plus-excel-report.component'
).
then
(
m
=>
m
.
MyhrPlusExcelReportComponent
)
},
{
path
:
''
,
path
:
''
,
redirectTo
:
'dashboard'
,
redirectTo
:
'dashboard'
,
pathMatch
:
'full'
pathMatch
:
'full'
...
...
src/app/portal-manage/myhr-plus/reports/myhr-plus-excel-report.component.ts
0 → 100644
View file @
41881135
import
{
Component
}
from
'@angular/core'
;
@
Component
({
selector
:
'app-myhr-plus-excel-report'
,
standalone
:
true
,
template
:
`
<div class="container-fluid">
<div class="row">
<div class="col-12">
<div class="card">
<div class="card-header">
<h4 class="card-title">Excel Report</h4>
</div>
<div class="card-body">
<p>ยินดีต้อนรับสู่หน้า Excel Report</p>
<p>ระบบสร้างรายงาน Excel สำหรับ myHR-Plus</p>
<div class="mt-3">
<button class="btn btn-primary me-2">สร้างรายงาน</button>
<button class="btn btn-secondary">ดาวน์โหลด Template</button>
</div>
</div>
</div>
</div>
</div>
</div>
`
,
styles
:
[
`
.card {
margin: 20px 0;
}
.card-header {
background-color: #f8f9fa;
border-bottom: 1px solid #dee2e6;
}
.btn {
padding: 8px 16px;
border: none;
border-radius: 4px;
cursor: pointer;
}
.btn-primary {
background-color: #007bff;
color: white;
}
.btn-secondary {
background-color: #6c757d;
color: white;
}
`
]
})
export
class
MyhrPlusExcelReportComponent
{
constructor
()
{
}
}
src/app/portal-manage/portal-manage.routes.ts
View file @
41881135
...
@@ -12,16 +12,6 @@ import { MenuPermissionManagementComponent } from './menu-permission-management/
...
@@ -12,16 +12,6 @@ import { MenuPermissionManagementComponent } from './menu-permission-management/
export
const
portalManageRoutes
:
Routes
=
[
export
const
portalManageRoutes
:
Routes
=
[
// Home/Dashboard Route
// Home/Dashboard Route
{
path
:
''
,
component
:
HomeComponent
,
pathMatch
:
'full'
},
{
path
:
'home'
,
component
:
HomeComponent
},
// === แอปพลิเคชันที่เข้าถึงได้ ===
// === แอปพลิเคชันที่เข้าถึงได้ ===
// myHR-Plus Module
// myHR-Plus Module
...
...
src/app/shared/services/nav.service.ts
View file @
41881135
...
@@ -103,29 +103,29 @@ export class NavService implements OnDestroy {
...
@@ -103,29 +103,29 @@ export class NavService implements OnDestroy {
title
:
'จัดเรียงแดชบอร์ด'
,
title
:
'จัดเรียงแดชบอร์ด'
,
type
:
'link'
type
:
'link'
},
},
{
//
{
path
:
`/portal-manage/
${
appName
}
/widget-warehouse`
,
//
path: `/portal-manage/${appName}/widget-warehouse`,
title
:
'คลังวิดเจ็ต'
,
//
title: 'คลังวิดเจ็ต',
type
:
'link'
//
type: 'link'
},
//
},
{
//
{
path
:
`/portal-manage/
${
appName
}
/widget-linker`
,
//
path: `/portal-manage/${appName}/widget-linker`,
title
:
'เชื่อมโยงวิดเจ็ตกับชุดข้อมูล'
,
//
title: 'เชื่อมโยงวิดเจ็ตกับชุดข้อมูล',
icon
:
'link'
,
//
icon: 'link',
type
:
'link'
//
type: 'link'
},
//
},
]
]
};
};
}
}
private
createPortalMenu
(
appName
:
string
):
Menu
[]
{
private
createPortalMenu
(
appName
:
string
):
Menu
[]
{
return
[{
return
[{
icon
:
'receipt'
,
icon
:
'receipt'
,
path
:
`/
${
appName
}
/category-list`
,
path
:
`/
portal-manage/
${
appName
}
/category-list`
,
title
:
'รายการเอกสาร'
,
title
:
'รายการเอกสาร'
,
type
:
'link'
,
type
:
'link'
,
},
{
},
{
icon
:
'receipt'
,
icon
:
'receipt'
,
path
:
`/
${
appName
}
/create-category`
,
path
:
`/
portal-manage/
${
appName
}
/create-category`
,
title
:
'รายการอัพโหลดเอกสาร'
,
title
:
'รายการอัพโหลดเอกสาร'
,
type
:
'link'
,
type
:
'link'
,
},
},
...
@@ -135,8 +135,8 @@ export class NavService implements OnDestroy {
...
@@ -135,8 +135,8 @@ export class NavService implements OnDestroy {
title
:
'การจัดการ'
,
title
:
'การจัดการ'
,
type
:
'sub'
,
type
:
'sub'
,
children
:
[
children
:
[
{
path
:
`/
${
appName
}
/category-list-approve`
,
title
:
'รายการรอการอนุมัติ'
,
type
:
'link'
},
{
path
:
`/
portal-manage/
${
appName
}
/category-list-approve`
,
title
:
'รายการรอการอนุมัติ'
,
type
:
'link'
},
{
path
:
`/
${
appName
}
/approved-list`
,
title
:
'รายการผ่านการอนุมัติ'
,
type
:
'link'
}
{
path
:
`/
portal-manage/
${
appName
}
/approved-list`
,
title
:
'รายการผ่านการอนุมัติ'
,
type
:
'link'
}
],
],
},
},
{
{
...
@@ -145,19 +145,19 @@ export class NavService implements OnDestroy {
...
@@ -145,19 +145,19 @@ export class NavService implements OnDestroy {
title
:
'ตั้งรายงานเอ็กเซล'
,
title
:
'ตั้งรายงานเอ็กเซล'
,
type
:
'sub'
,
type
:
'sub'
,
children
:
[
children
:
[
{
path
:
`/
${
appName
}
/excel-list`
,
title
:
'เพิ่มรายงาน Excel'
,
type
:
'link'
},
{
path
:
`/
portal-manage/
${
appName
}
/excel-list`
,
title
:
'เพิ่มรายงาน Excel'
,
type
:
'link'
},
{
path
:
`/
${
appName
}
/excel-report-toggle`
,
title
:
'เปิด-ปิด การใช้รายงาน Excel'
,
type
:
'link'
}
{
path
:
`/
${
appName
}
/excel-report-toggle`
,
title
:
'เปิด-ปิด การใช้รายงาน Excel'
,
type
:
'link'
}
],
],
},
},
{
{
icon
:
'data'
,
icon
:
'data'
,
path
:
`/
${
appName
}
/datasource-table`
,
path
:
`/
portal-manage/
${
appName
}
/datasource-table`
,
title
:
'DataSource Table'
,
title
:
'DataSource Table'
,
type
:
'link'
,
type
:
'link'
,
},
},
{
{
icon
:
'file'
,
icon
:
'file'
,
path
:
`/
${
appName
}
/excel-report`
,
path
:
`/
portal-manage/
${
appName
}
/excel-report`
,
title
:
'รายงาน Excel'
,
title
:
'รายงาน Excel'
,
type
:
'link'
,
type
:
'link'
,
},]
},]
...
@@ -416,47 +416,13 @@ export class NavService implements OnDestroy {
...
@@ -416,47 +416,13 @@ export class NavService implements OnDestroy {
return
[
return
[
// myHR-Plus
// myHR-Plus
{
headTitle
:
'myHR-Plus'
},
{
headTitle
:
'myHR-Plus'
},
this
.
createDashboardMenu
(
'myhr-plus'
),
{
{
title
:
'แดชบอร์ด'
,
title
:
'แดชบอร์ด'
,
icon
:
'dashboard'
,
icon
:
'dashboard'
,
path
:
'/portal-manage/myhr-plus/dashboard'
,
path
:
'/portal-manage/myhr-plus/dashboard'
,
type
:
'link'
,
type
:
'link'
,
},
},
{
this
.
createDashboardMenu
(
'myhr-plus'
),
title
:
'จัดการพนักงาน'
,
icon
:
'users'
,
type
:
'sub'
,
active
:
false
,
children
:
[
{
path
:
'/portal-manage/myhr-plus/employee-management'
,
title
:
'จัดการข้อมูลพนักงาน'
,
type
:
'link'
},
{
path
:
'/portal-manage/myhr-plus/attendance'
,
title
:
'ระบบลงเวลา'
,
type
:
'link'
},
{
path
:
'/portal-manage/myhr-plus/leave-management'
,
title
:
'จัดการการลา'
,
type
:
'link'
},
{
path
:
'/portal-manage/myhr-plus/payroll'
,
title
:
'ระบบเงินเดือน'
,
type
:
'link'
},
],
},
{
title
:
'จัดการองค์กร'
,
icon
:
'building'
,
type
:
'sub'
,
active
:
false
,
children
:
[
{
path
:
'/portal-manage/myhr-plus/department'
,
title
:
'จัดการแผนก'
,
type
:
'link'
},
{
path
:
'/portal-manage/myhr-plus/position'
,
title
:
'จัดการตำแหน่ง'
,
type
:
'link'
},
{
path
:
'/portal-manage/myhr-plus/org-chart'
,
title
:
'แผนภูมิองค์กร'
,
type
:
'link'
},
],
},
{
title
:
'รายงาน'
,
icon
:
'chart-bar'
,
type
:
'sub'
,
active
:
false
,
children
:
[
{
path
:
'/portal-manage/myhr-plus/hr-reports'
,
title
:
'รายงาน HR'
,
type
:
'link'
},
{
path
:
'/portal-manage/myhr-plus/attendance-reports'
,
title
:
'รายงานการลงเวลา'
,
type
:
'link'
},
{
path
:
'/portal-manage/myhr-plus/payroll-reports'
,
title
:
'รายงานเงินเดือน'
,
type
:
'link'
},
],
},
...
this
.
createPortalMenu
(
'myhr-plus'
)
...
this
.
createPortalMenu
(
'myhr-plus'
)
];
];
}
}
...
...
src/environments/environment.ts
View file @
41881135
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
// The list of file replacements can be found in `angular.json`.
// The list of file replacements can be found in `angular.json`.
export
const
environment
=
{
export
const
environment
=
{
production
:
false
,
production
:
false
,
apiUrl
:
'http
://localhost:3000/api
'
,
// Example API URL for development
apiUrl
:
'http
s://portal.myhr.co.th/api/
'
,
// Example API URL for development
baseUrl
:
'https://myjob-uat.myhr.co.th/api'
,
baseUrl
:
'https://myjob-uat.myhr.co.th/api'
,
baseUrlMylearn
:
'https://mylearn-uat.myhr.co.th/api'
,
baseUrlMylearn
:
'https://mylearn-uat.myhr.co.th/api'
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment