Server IP : 103.191.208.50 / Your IP : 216.73.216.53 Web Server : LiteSpeed System : Linux orion.herosite.pro 4.18.0-553.53.1.lve.el8.x86_64 #1 SMP Wed May 28 17:01:02 UTC 2025 x86_64 User : celkcksm ( 1031) PHP Version : 7.4.33 Disable Function : show_source, system, shell_exec, passthru, popen, exec MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home/celkcksm/ecampus.ncriptech.com/../hrms.ncriptech.com/routes/admin/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
<?php use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Route; use Illuminate\Support\Facades\Artisan; use App\Http\Controllers\DailyLeaveController; use App\Http\Controllers\Backend\RoleController; // use App\Http\Controllers\Api\Leave\DailyLeaveController; use App\Http\Controllers\Backend\Visit\VisitController; use App\Http\Controllers\Backend\Branch\BranchController; use App\Http\Controllers\Backend\Leave\LeaveTypeController; use App\Http\Controllers\Backend\Support\SupportController; use App\Http\Controllers\Backend\Attendance\ShiftController; use App\Http\Controllers\Backend\Attendance\QrCodeController; use App\Http\Controllers\Backend\Leave\AssignLeaveController; use App\Http\Controllers\Notification\NotificationController; use App\Http\Controllers\Backend\Attendance\HolidayController; use App\Http\Controllers\Backend\Expense\HrmExpenseController; use App\Http\Controllers\Backend\Leave\LeaveRequestController; use App\Http\Controllers\Backend\Report\BreakReportController; use App\Http\Controllers\Backend\Attendance\WeekendsController; use App\Http\Controllers\Backend\Employee\AppointmentController; use App\Http\Controllers\Backend\Attendance\AttendanceController; use App\Http\Controllers\Backend\Department\DepartmentController; use App\Http\Controllers\Backend\Attendance\DutyScheduleController; use App\Http\Controllers\Backend\Designation\DesignationController; use App\Http\Controllers\Backend\Report\AttendanceReportController; use App\Http\Controllers\Backend\Call_register\CallRegisterController; Route::group(['prefix' => 'hrm', 'middleware' => ['xss', 'admin', 'MaintenanceMode']], function () { Route::middleware(['FeatureCheck:leaves'])->group(function () { Route::group(['prefix' => 'leave'], function () { //leave type routes start Route::get('/', [LeaveTypeController::class, 'index'])->name('leave.index')->middleware('PermissionCheck:leave_type_read'); Route::post('delete-data', [LeaveTypeController::class, 'deleteData'])->name('leave.delete_data')->middleware('PermissionCheck:leave_type_delete'); Route::post('status-change', [LeaveTypeController::class, 'statusUpdate'])->name('leave.statusUpdate')->middleware('PermissionCheck:leave_type_update'); Route::get('create-modal', [LeaveTypeController::class, 'createModal'])->name('leave.create_modal')->middleware('PermissionCheck:leave_type_create'); Route::get('edit-modal/{id}', [LeaveTypeController::class, 'editModal'])->name('leave.edit_modal')->middleware('PermissionCheck:leave_type_update'); Route::post('update/{leave}', [LeaveTypeController::class, 'update'])->name('leave.update')->middleware('PermissionCheck:leave_type_update'); Route::get('data-table', [LeaveTypeController::class, 'dataTable'])->name('leave.dataTable')->middleware('PermissionCheck:leave_type_read'); Route::get('create', [LeaveTypeController::class, 'create'])->name('leave.create')->middleware('PermissionCheck:leave_type_create'); Route::post('store', [LeaveTypeController::class, 'store'])->name('leave.store')->middleware('PermissionCheck:leave_type_create'); Route::get('show/{leaveType}', [LeaveTypeController::class, 'show'])->name('leave.show')->middleware('PermissionCheck:leave_type_read'); Route::get('edit/{leaveType}', [LeaveTypeController::class, 'edit'])->name('leave.edit')->middleware('PermissionCheck:leave_type_update'); Route::patch('update/{leaveType}', [LeaveTypeController::class, 'update'])->name('leave.update')->middleware('PermissionCheck:leave_type_update'); Route::get('delete/{leaveType}', [LeaveTypeController::class, 'delete'])->name('leave.delete')->middleware('PermissionCheck:leave_type_delete'); //leave type routes end //assign leave routes start Route::group(['prefix' => 'assign'], function () { Route::get('/', [AssignLeaveController::class, 'index'])->name('assignLeave.index')->middleware('PermissionCheck:leave_assign_read'); Route::post('delete-data', [AssignLeaveController::class, 'deleteData'])->name('assignLeave.delete_data')->middleware('PermissionCheck:leave_assign_delete'); Route::post('status-change', [AssignLeaveController::class, 'statusUpdate'])->name('assignLeave.statusUpdate')->middleware('PermissionCheck:leave_assign_update'); Route::get('create', [AssignLeaveController::class, 'create'])->name('assignLeave.create')->middleware('PermissionCheck:leave_assign_create'); Route::post('store', [AssignLeaveController::class, 'store'])->name('assignLeave.store')->middleware('PermissionCheck:leave_assign_create'); Route::get('show/{assignLeave}', [AssignLeaveController::class, 'show'])->name('assignLeave.show')->middleware('PermissionCheck:leave_assign_read'); // annual leave summary Route::get('leave-summary/{assignLeave}', [AssignLeaveController::class, 'leaveSummery'])->name('assignLeave.leave_summery')->middleware('PermissionCheck:leave_assign_read'); Route::get('annual-leave-summary/transfer/{leaveYear}', [AssignLeaveController::class, 'leaveTransferIndex'])->name('assignLeave.transfer.add')->middleware('PermissionCheck:leave_assign_update'); Route::post('annual-leave-summary/transfer/{leaveYear}', [AssignLeaveController::class, 'leaveTransfer'])->name('assignLeave.transfer')->middleware('PermissionCheck:leave_assign_update'); Route::get('edit/{assignLeave}', [AssignLeaveController::class, 'edit'])->name('assignLeave.edit')->middleware('PermissionCheck:leave_assign_update'); Route::post('update/{assignLeave}', [AssignLeaveController::class, 'update'])->name('assignLeave.update')->middleware('PermissionCheck:leave_assign_update'); Route::get('data-table', [AssignLeaveController::class, 'dataTable'])->name('assignLeave.dataTable')->middleware('PermissionCheck:leave_assign_read'); Route::get('delete/{assignLeave}', [AssignLeaveController::class, 'delete'])->name('assignLeave.delete')->middleware('PermissionCheck:leave_assign_delete'); //assign leave routes end }); // DailyLeave old routes // Route::group(['prefix' => 'daily-leave'],function(){ // Route::get('/',[DailyLeaveController::class,'index'])->name('dailyLeave.index')->middleware('PermissionCheck:daily_leave_read'); // }); //apply for leave routes start Route::group(['prefix' => 'request'], function () { Route::get('/', [LeaveRequestController::class, 'index'])->name('leaveRequest.index')->middleware('PermissionCheck:leave_request_read'); Route::post('delete-data', [LeaveRequestController::class, 'deleteData'])->name('leaveRequest.delete_data')->middleware('PermissionCheck:leave_request_delete'); Route::post('status-change', [LeaveRequestController::class, 'statusUpdate'])->name('leaveRequest.statusUpdate')->middleware('PermissionCheck:leave_assign_update'); Route::get('create', [LeaveRequestController::class, 'create'])->name('leaveRequest.create')->middleware('PermissionCheck:leave_request_create'); Route::post('store', [LeaveRequestController::class, 'store'])->name('leaveRequest.store')->middleware('PermissionCheck:leave_request_store'); Route::patch('update', [LeaveRequestController::class, 'update'])->name('leaveRequest.update')->middleware('PermissionCheck:leave_request_update'); Route::get('data-table', [LeaveRequestController::class, 'dataTable'])->name('leaveRequest.dataTable')->middleware('PermissionCheck:leave_request_read'); Route::get('profile-data-table', [LeaveRequestController::class, 'profileDataTable'])->name('leaveRequest.profileDataTable')->middleware('PermissionCheck:leave_request_read'); Route::get('show/{leaveRequest}', [LeaveRequestController::class, 'show'])->name('leaveRequest.show')->middleware('PermissionCheck:leave_request_read'); Route::get('view/{leaveRequest}', [LeaveRequestController::class, 'pdfView'])->name('leaveRequest.view')->middleware('PermissionCheck:leave_request_read'); Route::get('delete/{leaveRequest}', [LeaveRequestController::class, 'delete'])->name('leaveRequest.delete')->middleware('PermissionCheck:leave_request_delete'); Route::get('approve-or-reject/{leaveRequest}/{status_id}', [LeaveRequestController::class, 'requestApproveOrReject'])->name('leaveRequest.approveOrReject')->middleware('PermissionCheck:leave_request_approve'); //assign leave routes end Route::get('leaveRejectReason/{leaveRequest}/{status_id}', [LeaveRequestController::class, 'leaveRejectReason'])->name('leaveRequest.leaveReasonModal')->middleware('PermissionCheck:leave_request_approve'); Route::post('postLeaveRejectReason', [LeaveRequestController::class, 'postLeaveRejectReason'])->name('leaveRequest.postLeaveRejectReason')->middleware('PermissionCheck:leave_request_approve'); }); }); // daily leave routes start Route::group(['prefix' => 'daily-leave'], function () { Route::get('/', [DailyLeaveController::class, 'index'])->name('daily_leave.index')->middleware('PermissionCheck:daily_leave_read'); Route::get('create', [DailyLeaveController::class, 'create'])->name('daily_leave.create')->middleware('PermissionCheck:daily_leave_read'); Route::post('store', [DailyLeaveController::class, 'store'])->name('daily_leave.store')->middleware('PermissionCheck:daily_leave_read'); Route::patch('update', [DailyLeaveController::class, 'update'])->name('daily_leave.update')->middleware('PermissionCheck:daily_leave_read'); Route::post('delete-data', [DailyLeaveController::class, 'deleteData'])->name('daily_leave.delete_data')->middleware('PermissionCheck:daily_leave_read'); Route::post('status-change', [DailyLeaveController::class, 'statusUpdate'])->name('daily_leave.statusUpdate')->middleware('PermissionCheck:daily_leave_read'); Route::get('approved-or-reject/{dailyLeave}/{status_id}', [DailyLeaveController::class, 'requestApproveOrReject'])->name('daily_leave.approveOrReject')->middleware('PermissionCheck:daily_leave_read'); Route::get('delete/{dailyLeave}', [DailyLeaveController::class, 'delete'])->name('daily_leave.delete')->middleware('PermissionCheck:daily_leave_read'); }); }); Route::middleware(['FeatureCheck:attendance'])->group(function () { //attendance start Route::group(['prefix' => 'attendance'], function () { Route::get('/', [AttendanceController::class, 'index'])->name('attendance.index')->middleware('PermissionCheck:attendance_read'); Route::get('add', [AttendanceController::class, 'checkIn'])->name('attendance.check-in')->middleware('PermissionCheck:attendance_create'); Route::get('edit/check-in/{attendance}', [AttendanceController::class, 'checkInEdit'])->name('attendance.checkInEdit')->middleware('PermissionCheck:attendance_update'); Route::get('check-out/{attendance_id}', [AttendanceController::class, 'checkOut'])->name('attendance.checkout')->middleware('PermissionCheck:attendance_update'); Route::post('store', [AttendanceController::class, 'store'])->name('attendance.store')->middleware('PermissionCheck:attendance_create'); Route::get('edit/{attendance_id}', [AttendanceController::class, 'show'])->name('attendance.edit')->middleware('PermissionCheck:attendance_update'); Route::patch('update/{attendance_id}', [AttendanceController::class, 'update'])->name('attendance.update')->middleware('PermissionCheck:attendance_update'); Route::get('delete/{attendance_id}', [AttendanceController::class, 'delete'])->name('attendance.delete')->middleware('PermissionCheck:attendance_delete'); Route::get('show-image-in-modal/{attendance_id}/{type}', [AttendanceController::class, 'showImageInModal'])->name('attendance.show-image-in-modal')->middleware('PermissionCheck:attendance_read'); }); //attendance end }); Route::middleware(['FeatureCheck:hr'])->group(function () { //designation start Route::group(['prefix' => 'designation'], function () { Route::get('/', [DesignationController::class, 'index'])->name('designation.index')->middleware('PermissionCheck:designation_read'); Route::post('delete-data', [DesignationController::class, 'deleteData'])->name('designation.delete_data')->middleware('PermissionCheck:designation_delete'); Route::post('status-change', [DesignationController::class, 'statusUpdate'])->name('designation.statusUpdate')->middleware('PermissionCheck:designation_update'); Route::get('create-modal', [DesignationController::class, 'createModal'])->name('designation.create_modal')->middleware('PermissionCheck:designation_create'); Route::get('edit-modal/{id}', [DesignationController::class, 'editModal'])->name('designation.edit_modal')->middleware('PermissionCheck:designation_update'); Route::post('update/{designation}', [DesignationController::class, 'update'])->name('designation.update')->middleware('PermissionCheck:designation_update'); Route::get('create', [DesignationController::class, 'create'])->name('designation.create')->middleware('PermissionCheck:designation_create'); Route::get('data-table', [DesignationController::class, 'dataTable'])->name('designation.dataTable')->middleware('PermissionCheck:designation_read'); Route::post('store', [DesignationController::class, 'store'])->name('designation.store')->middleware('PermissionCheck:designation_create'); Route::get('show/{designation}', [DesignationController::class, 'show'])->name('designation.show')->middleware('PermissionCheck:designation_read'); Route::get('edit/{designation}', [DesignationController::class, 'edit'])->name('designation.edit')->middleware('PermissionCheck:designation_update'); Route::get('delete/{designation}', [DesignationController::class, 'delete'])->name('designation.delete')->middleware('PermissionCheck:designation_delete'); // new delete array data }); //designation end //department start Route::group(['prefix' => 'department'], function () { Route::get('/', [DepartmentController::class, 'index'])->name('department.index')->middleware('PermissionCheck:department_read'); Route::post('status-change', [DepartmentController::class, 'statusUpdate'])->name('department.statusUpdate')->middleware('PermissionCheck:department_update'); Route::post('delete-data', [DepartmentController::class, 'deleteData'])->name('department.delete_data')->middleware('PermissionCheck:department_delete'); Route::get('create-modal', [DepartmentController::class, 'createModal'])->name('department.create_modal')->middleware('PermissionCheck:department_create'); Route::get('edit-modal/{id}', [DepartmentController::class, 'editModal'])->name('department.edit_modal')->middleware('PermissionCheck:department_update'); Route::post('update/{department}', [DepartmentController::class, 'update'])->name('department.update')->middleware('PermissionCheck:department_update'); Route::get('create', [DepartmentController::class, 'create'])->name('department.create')->middleware('PermissionCheck:department_create'); Route::get('data-table', [DepartmentController::class, 'dataTable'])->name('department.dataTable')->middleware('PermissionCheck:department_read'); Route::post('store', [DepartmentController::class, 'store'])->name('department.store')->middleware('PermissionCheck:department_create'); Route::get('show/{department}', [DepartmentController::class, 'show'])->name('department.show')->middleware('PermissionCheck:department_read'); Route::get('edit/{department}', [DepartmentController::class, 'edit'])->name('department.edit')->middleware('PermissionCheck:department_update'); Route::get('delete/{department}', [DepartmentController::class, 'delete'])->name('department.delete')->middleware('PermissionCheck:department_delete'); }); //department end //roles start Route::group(['prefix' => 'roles'], function () { Route::get('/', [RoleController::class, 'index'])->name('roles.index')->middleware('PermissionCheck:role_read'); Route::post('status-change', [RoleController::class, 'statusUpdate'])->name('roles.statusUpdate')->middleware('PermissionCheck:role_update'); Route::post('delete-data', [RoleController::class, 'deleteData'])->name('roles.delete_data')->middleware('PermissionCheck:role_delete'); Route::get('create-modal', [RoleController::class, 'createModal'])->name('role.create_modal')->middleware('PermissionCheck:role_create'); Route::get('create', [RoleController::class, 'create'])->name('roles.create')->middleware('PermissionCheck:role_create'); Route::post('store', [RoleController::class, 'store'])->name('roles.store')->middleware('PermissionCheck:role_create'); Route::get('show/{role}', [RoleController::class, 'show'])->name('roles.show')->middleware('PermissionCheck:role_read'); Route::get('edit/{role}', [RoleController::class, 'edit'])->name('roles.edit')->middleware('PermissionCheck:role_update'); Route::patch('update/{role}', [RoleController::class, 'update'])->name('roles.update')->middleware('PermissionCheck:role_update'); Route::get('delete/{role}', [RoleController::class, 'destroy'])->name('roles.destroy')->middleware('PermissionCheck:role_delete'); Route::get('data-table', [RoleController::class, 'dataTable'])->name('roles.dataTable')->middleware('PermissionCheck:role_read'); Route::post('change-role', [RoleController::class, 'changeRole'])->name('roles.change')->middleware('PermissionCheck:role_update'); Route::post('change-login', [RoleController::class, 'changeLogin'])->name('roles.change_login')->middleware('PermissionCheck:role_update'); }); //roles end }); //shift end Route::middleware(['FeatureCheck:appointment'])->group(function () { //appointment start Route::group(['prefix' => 'appointment'], function () { Route::get('/', [AppointmentController::class, 'list'])->name('appointment.index'); Route::get('create', [AppointmentController::class, 'create'])->name('appointment.create'); Route::post('store', [AppointmentController::class, 'store'])->name('appointment.store'); Route::patch('update', [AppointmentController::class, 'update'])->name('appointment.update'); Route::get('data-table', [AppointmentController::class, 'dataTable'])->name('appointment.dataTable'); Route::get('profile-data-table', [AppointmentController::class, 'profileDataTable'])->name('appointment.profileDataTable'); Route::get('show/{appointment}', [AppointmentController::class, 'show'])->name('appointment.show')->middleware('PermissionCheck:appointment_read'); Route::get('view/{appointment}', [AppointmentController::class, 'pdfView'])->name('appointment.view')->middleware('PermissionCheck:appointment_read'); Route::get('delete/{appointment}', [AppointmentController::class, 'delete'])->name('appointment.delete')->middleware('PermissionCheck:appointment_delete'); //appointment request Route::get('table', [AppointmentController::class, 'table'])->name('appointment.table'); Route::post('getInstituteDetails', [AppointmentController::class, 'getInstituteDetails'])->name('appointment.getInstituteDetails'); //Details View Appointment Modal Route::get('createViewAppointDetailsModal/{id}', [AppointmentController::class, 'createViewAppointDetailsModal'])->name('appointment.createViewAppointDetailsModal'); Route::get('deleteAppointment/{id}', [AppointmentController::class, 'deleteAppointment'])->name('deleteAppointment.destroy'); Route::get('createAppointmentReportModal/{id}', [AppointmentController::class, 'createAppointmentReportModal'])->name('appointment.createAppointmentReportModal'); Route::post('storeAppointmentReport', [AppointmentController::class, 'storeAppointmentReport'])->name('appointmentReport.store'); Route::get('createAppointmentRescheduleModal/{id}', [AppointmentController::class, 'createAppointmentRescheduleModal'])->name('appointment.createAppointmentRescheduleModal'); Route::post('storeAppointmentReschedule', [AppointmentController::class, 'storeAppointmentReschedule'])->name('appointmentReschedule.store'); //proposal Route::get('proposal', [AppointmentController::class, 'appointmentProposal'])->name('proposal.index'); Route::get('proposalTable', [AppointmentController::class, 'proposalTable'])->name('proposal.table'); Route::get('sendProposal', [AppointmentController::class, 'sendProposal'])->name('proposal.send'); Route::post('proposalStore', [AppointmentController::class, 'proposalStore'])->name('proposal.store'); Route::post('getContactInfoDetails', [AppointmentController::class, 'getContactInfoDetails'])->name('proposal.getContactInfo'); //MANAGE FILES Route::get('manageFiles', [AppointmentController::class, 'manageFiles'])->name('manageFiles.index'); Route::get('manageFilesTables', [AppointmentController::class, 'manageFilesTables'])->name('manageFiles.table'); Route::get('sendManageFiles', [AppointmentController::class, 'sendManageFiles'])->name('manageFiles.send'); Route::post('manageFilesStore', [AppointmentController::class, 'manageFilesStore'])->name('manageFiles.store'); //mou Route::get('mou', [AppointmentController::class, 'proposalMou'])->name('mou.index'); Route::get('mouTable', [AppointmentController::class, 'mouTable'])->name('mou.table'); Route::get('sendMou', [AppointmentController::class, 'sendMou'])->name('mou.send'); Route::post('mouStore', [AppointmentController::class, 'mouStore'])->name('mou.store'); Route::get('viewPaymentSchedule/{id}', [AppointmentController::class, 'viewPaymentSchedule'])->name('mou.viewPaymentSchedule'); Route::post('proposalGetContactInfoDetails', [AppointmentController::class, 'proposalGetContactInfoDetails'])->name('mou.getContactInfo'); //Route::post('getContactInfoDetails', [AppointmentController::class, 'getContactInfoDetails'])->name('proposal.getContactInfo'); //mou payments Route::get('mou/payments', [AppointmentController::class, 'mouPayments'])->name('mou_payment.index'); Route::get('mou/paymentsTable', [AppointmentController::class, 'mouPaymentsTable'])->name('mou_payment.table'); Route::get('mou/receivePayment', [AppointmentController::class, 'receivePayment'])->name('mou_payment.receive'); Route::post('mou/receivePaymentStore', [AppointmentController::class, 'receivePaymentStore'])->name('mou_payment.store'); Route::get('mou/acceptPayment/{id}', [AppointmentController::class, 'acceptPayment'])->name('payment.receive'); //Invoice Details Route::get('mou/proformaInvoice/{id}', [AppointmentController::class, 'proformaInvoice'])->name('payment.proformaInvoice'); Route::get('mou/finalInvoice/{id}', [AppointmentController::class, 'finalInvoice'])->name('payment.finalInvoice'); Route::post('mou/saveProformaInvoice', [AppointmentController::class, 'saveProformaInvoice'])->name('payment.saveProformaInvoice'); Route::post('mou/saveFinalInvoice', [AppointmentController::class, 'saveFinalInvoice'])->name('payment.saveFinalInvoice'); Route::get('mou/downloadProformaInvoice/{id}', [AppointmentController::class, 'downloadProformaInvoice'])->name('payment.downloadProformaInvoice'); Route::get('mou/downloadFinalInvoice/{id}', [AppointmentController::class, 'downloadFinalInvoice'])->name('payment.downloadFinalInvoice'); }); }); Route::middleware(['FeatureCheck:support'])->group(function () { //support routes start Route::group(['prefix' => 'support'], function () { Route::get('ticket/list', [SupportController::class, 'index'])->name('supportTicket.index'); Route::get('ticket/create', [SupportController::class, 'create'])->name('supportTicket.create')->middleware('PermissionCheck:support_create'); Route::post('ticket/store', [SupportController::class, 'store'])->name('supportTicket.store')->middleware('PermissionCheck:support_create'); Route::get('user/ticket', [SupportController::class, 'staffTicket'])->name('user.supportTicket')->middleware('PermissionCheck:support_read'); Route::get('ticket/reply/{ticket}/{code}', [SupportController::class, 'ticketReply'])->name('supportTicket.reply')->middleware('PermissionCheck:support_read'); Route::post('ticket/reply/{ticket}', [SupportController::class, 'ticketReplyStore'])->name('supportTicket.reply.store')->middleware('PermissionCheck:support_read'); Route::get('data-table', [SupportController::class, 'dataTable'])->name('supportTicket.dataTable')->middleware('PermissionCheck:support_read'); Route::get('data-table/{id}', [SupportController::class, 'userTicketDatatable'])->name('user.supportTicket.dataTable')->middleware('PermissionCheck:support_read'); Route::get('ticket/delete/{id}', [SupportController::class, 'delete'])->name('supportTicket.delete')->middleware('PermissionCheck:support_delete'); Route::get('ticket/assign/{id}', [SupportController::class, 'assignTicket'])->name('supportTicket.assign')->middleware('PermissionCheck:support_assign'); Route::post('delete-data', [SupportController::class, 'deleteData'])->name('supportTicket.delete_data')->middleware('PermissionCheck:support_delete'); }); //support routes end }); Route::middleware(['FeatureCheck:visit'])->group(function () { //Visit start Route::group(['prefix' => 'user'], function () { //Visit Route::get('{id}/visit', [VisitController::class, 'visit'])->name('visit.user'); Route::get('{id}/visit-history', [VisitController::class, 'visitHistory'])->name('visit.history'); Route::get('visit-datatable/{user_id}', [VisitController::class, 'visitDatatable'])->name('user.visit.dataTable'); Route::get('visit-history-datatable', [VisitController::class, 'visitHistoryDatatable'])->name('visit.history.dataTable'); Route::get('visit-details/{id}', [VisitController::class, 'visitDetails'])->name('visit.details'); }); Route::group(['prefix' => 'visit'], function () { Route::get('/', [VisitController::class, 'index'])->name('visit.index'); Route::get('create', [VisitController::class, 'create'])->name('visit.create'); }); //Visit end }); //expense start Route::group(['prefix' => 'notification'], function () { Route::get('/', [NotificationController::class, 'index'])->name('notification.index'); Route::post('read', [NotificationController::class, 'readNotification'])->name('notification.readNotification'); }); //expire notification Route::get('/expire_notification', [NotificationController::class, 'expireIndex'])->name('expire.notification.index'); // dummy data for location Route::get('/seed-location-logs', function () { Artisan::call('db:seed', ['--class' => 'LocationLogsTableSeeder']); return 'Location logs seeding completed.'; }); });