Commit Graph

295 Commits

Author SHA1 Message Date
359de36252 Fix LeaveBalanceController query relationship for branch_id 2026-07-06 12:54:40 +08:00
755650c3b3 Fix HR branch isolation for leave balances and attendance records, and separate My Attendance 2026-07-06 12:50:37 +08:00
91adb44439 Restore Clock In/Out buttons in UI 2026-07-06 12:29:55 +08:00
f63e078bc6 Build assets for production 2026-07-06 11:53:50 +08:00
0c43ac406b Add enable_clock_in_out toggle for branches 2026-07-06 11:51:11 +08:00
3872cabda2 feat: hide attendance card on employee dashboard unless branch is Jalipa, Mirandilla &. Co. 2026-07-06 11:37:44 +08:00
21a076c5b3 chore: push built frontend assets 2026-07-06 11:33:33 +08:00
9951096e0d feat: group employee personal modules into Self Service folder 2026-07-06 11:28:37 +08:00
687ea154c0 feat: show company menus to employees if permissions are granted, deduplicate dashboard 2026-07-06 11:21:26 +08:00
3ece654965 fix: remove location_exempt from validation and prevent form reset on error 2026-07-06 10:30:34 +08:00
31652ce057 feat: implement out of radius clock in warning modal, remove location exempt UI 2026-07-06 10:23:19 +08:00
ffaaded062 feat: rename location exempt label and add tooltip for clarity 2026-07-06 10:08:58 +08:00
8ed2f9559a feat: improve employee form validation auto-scroll and specific errors 2026-07-06 10:03:54 +08:00
f9bad53efd fix: import Switch component in employee create page 2026-07-06 09:42:18 +08:00
f63c7ea54f feat: embed map in attendance record details modal 2026-07-02 13:46:29 +08:00
31d0ffb9ce fix: completely decouple locate me button from leaflet DOM tree 2026-07-02 13:41:11 +08:00
53f7dde231 fix: intercept leaflet map clicks using L.DomEvent 2026-07-02 13:37:22 +08:00
f562243210 fix: make locate me button clickable by fixing pointer events 2026-07-02 13:33:25 +08:00
8f9a30be12 chore: build frontend assets for locate me button 2026-07-02 13:31:49 +08:00
119148cbcb feat: add locate me button to branch location picker 2026-07-02 13:28:25 +08:00
fe7f19b8a7 chore: set COMPOSER_HOME for shared hosting deployment 2026-07-02 13:24:28 +08:00
49c711d2d9 chore: remove npm build from deployment script 2026-07-02 13:23:46 +08:00
59697d9a54 chore: add composer install to git-pull script 2026-07-02 13:22:25 +08:00
4f6a53b73d chore: lock composer platform php version to 8.2 2026-07-02 13:20:34 +08:00
d40c5662d3 feat: add branch isolation for managers and zkteco biometric tracking 2026-07-02 13:06:09 +08:00
1974ea1982 Fix route middleware for leave balances and biometric attendance to allow view-only access 2026-07-01 10:32:09 +08:00
ec042d377e chore: update compiled production assets 2026-07-01 10:09:43 +08:00
5b7a41927b Add Leave Balances and Biometric Attendance menu items for employees and handle view-only permissions 2026-07-01 10:02:32 +08:00
a5074282aa Fix role permission saving: use admin's modules instead of target role's restricted list 2026-07-01 09:48:52 +08:00
228f4649c0 Add missing modules to employee role config (leave_balances, biometric_attendance, etc.) 2026-07-01 09:45:57 +08:00
15244b0488 Fix permission caching and validation issues 2026-07-01 09:22:17 +08:00
50ad5f45eb fix: resolve permission/role cache not reflecting issues
- UserController: use Spatie syncRoles([$role]) instead of direct Eloquent relations relation sync() which bypassed Spatie model events and cache observers
- RoleController: explicitly call forgetCachedPermissions() on store and update to force cache refresh
- Clear application cache
2026-06-30 16:44:13 +08:00
5a95cdf4ef feat: simplify leave applications UI and endpoint access for employee role 2026-06-30 16:10:48 +08:00
96c7e7cd63 feat: hide clock in/out buttons on employee dashboard 2026-06-30 15:58:08 +08:00
a1e6b46817 feat: add Role dropdown to employee create and edit forms
- EmployeeController::create(): pass company roles + defaultRole (employee) to Inertia
- EmployeeController::store(): assign role from role_id request field (fallback to 'employee')
- EmployeeController::edit(): pass company roles + currentRoleId to Inertia
- EmployeeController::update(): syncRoles() with selected role_id
- create.tsx: Role <Select> dropdown pre-selected to default employee role
- edit.tsx: Role <Select> dropdown pre-selected to employee's current role
2026-06-30 15:37:58 +08:00
75ee8cacb8 fix: employee self-service - open controller access and clock-in/out
- LeaveApplicationController: add employee branch to bypass can() check
- AttendanceRecordController: add employee calendar view (own records only)
  + open clockIn/clockOut to employee type (no permission required)
- PayslipController: add employee branch to show own payslips only
- routes/web.php: remove permission:clock-in-out middleware from clock routes
- employee-dashboard.tsx: always show clock in/out buttons for employees
- Rebuild frontend assets
2026-06-30 13:51:02 +08:00
c11ee26183 build: recompile frontend assets with employee sidebar menu changes 2026-06-30 13:44:43 +08:00
de172942ff feat: add employee self-service sidebar menu and open access routes
- Add getEmployeeNavItems() to app-sidebar.tsx for users with type='employee'
  showing Dashboard, My Leaves, Overtime Requests, My Attendance, My Payslips
- Route employee users to their own nav instead of admin getCompanyNavItems()
- Move GET index routes for leave-applications, attendance-records, overtime,
  and payslips outside permission:manage-* middleware so employees can access
  their own records without admin permissions (controllers already scope by user)
2026-06-30 13:43:11 +08:00
47e6b93688 fix: embed raw SQL directly into check-leaves script and split queries 2026-06-30 13:19:06 +08:00
1b8586b331 fix: actually perform data insert in check-leaves due to PDO multi-query restrictions 2026-06-30 13:17:31 +08:00
91ba3e7aba chore: add db debug script for leaves 2026-06-30 13:14:59 +08:00
afff2606da feat: seed leave data to production database 2026-06-30 13:11:53 +08:00
18fef514b3 fix: robust git cleanup in git-pull script 2026-06-30 13:06:14 +08:00
20abd5d0bb fix: map overtime hours and amount in payroll entries and backfill historical data 2026-06-26 14:59:37 +08:00
0feba46378 Fix leave balance calculation and ensure payslip number uniqueness 2026-06-26 14:05:23 +08:00
21fd05f064 build: compile assets for payroll export and totals 2026-06-15 11:08:18 +08:00
494b43fabf feat: add payroll export, totals row, audit command, and payroll scenario tests 2026-06-15 10:57:01 +08:00
bfe796e65c Add standalone Laravel optimize script 2026-06-15 09:35:49 +08:00
965388330b fix: remove RDOT and hide resigned employees from calendar 2026-06-08 14:49:48 +08:00
ea7c5670f3 refactor: make branch alignment migration dynamic for all employees 2026-06-05 12:13:32 +08:00