
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
import { createWebHistory, createRouter } from "vue-router";
import Main from '../pages/main/Main.vue';
import Login from '../pages/User/Login.vue';
import Join from '../pages/User/Join.vue';
import MyPage from '../pages/User/MyPage.vue';
// import Main2 from '../pages/main/Main2.vue';
// import HomeView from "../pages/HomeView.vue";
// import AboutView from "../pages/AboutView.vue";
// 직원
import ChuljangList from '../pages/Employee/ChuljangList.vue';
import HyugaList from '../pages/Employee/HyugaList.vue';
import HyugaOk from '../pages/Employee/HyugaOk.vue';
// 관리자
import approval from '../pages/Manager/approval/approval.vue';
import approvalList from '../pages/Manager/approval/approvalList.vue';
import approvalRequest from '../pages/Manager/approval/approvalRequest.vue';
import HyugaInsert from '../pages/Manager/approval/HyugaInsert.vue';
import ChuljangInsert from '../pages/Manager/approval/ChuljangInsert.vue';
import attendance from '../pages/Manager/attendance/attendance.vue';
import task from '../pages/Manager/task/task.vue';
import financial from '../pages/Manager/financial/financial.vue';
import asset from '../pages/Manager/asset/asset.vue';
import hr from '../pages/Manager/hr/hr.vue';
import system from '../pages/Manager/system/system.vue';
const routes = [
/* 메인화면 */
{ path: '/', name: '/', component: Main},
{ path: '/login.page', name: 'Login', component: Login},
{ path: '/join.page', name: 'Join', component: Join},
{ path: '/MyPage.page', name: 'MyPage', component: MyPage},
{ path: '/ChuljangList.page', name: 'ChuljangList', component: ChuljangList },
{ path: '/HyugaList.page', name: 'HyugaList', component: HyugaList },
{ path: '/HyugaOk.page', name: 'HyugaOk', component: HyugaOk },
{ path: '/approval-management.page', name: 'approval', component: approval,
children: [
{
path: '/approvalRequest.page', // => /approval-management.page/list
name: 'approvalRequest',
component: approvalRequest,
children: [
]
},
{
path: '/approvalList.page', // => /approval-management.page/detail/123
name: 'approvalList',
component: approvalList
},
{ path: '/ChuljangInsert.page', name: 'ChuljangInsert', component: ChuljangInsert },
{ path: '/HyugaInsert.page', name: 'HyugaInsert', component: HyugaInsert },
]
}, //결재관리
{ path: '/attendance-management.page', name: 'attendance', component: attendance }, //근태관리
{ path: '/task-management.page', name: 'task', component: task }, //업무관리
{ path: '/financial-management.page', name: 'financial', component: financial }, //재무관리
{ path: '/asset-management.page', name: 'asset', component: asset }, //자산관리
{ path: '/hr-management.page', name: 'hr', component: hr }, //인사관리
{ path: '/system-management.page', name: 'system', component: system }, //시스템관리
];
const AppRouter = createRouter({
history: createWebHistory(),
routes,
});
// Add navigation guard
AppRouter.beforeEach((to, from, next) => {
// Check login status
const isLoggedIn = localStorage.getItem('isLoggedIn') === 'true';
// If not logged in and trying to access any page other than login, redirect to login page
if (!isLoggedIn && to.path !== '/login.page') {
next('/login.page');
}
// If logged in and trying to access login page, redirect to main page
else if (isLoggedIn && to.path === '/login.page') {
next('/');
}
else {
next(); // Proceed to requested route
}
});
export default AppRouter;