update marketing
All checks were successful
All checks were successful
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
# Walkthrough - Overtime Delegation Implementation
|
||||
|
||||
I have implemented the Overtime Delegation feature, providing a full workflow for delegates to approve and execute overtime tasks assigned to them.
|
||||
|
||||
## Backend Changes
|
||||
|
||||
### Services and Logic
|
||||
In `delegation-overtime-services.js`, I added the following functions:
|
||||
- **`approveOvertimeDelegation`**: Handles delegate approval by saving their signature and updating the status to 2.
|
||||
- **`updateActualIn`**: Records the actual start time and location (with radius validation) when the delegate starts the overtime.
|
||||
- **`updateActualOut`**: Records the actual end time and location, and updates the status to 3 (Pending HR Staff Approval).
|
||||
- **`getOvertimeDelegationHistoryEmployee`**: Enhanced to return all fields needed for the execution flow (signatures, actual times, etc.) and filter by statuses 1 through 6.
|
||||
|
||||
### API Routes
|
||||
In `delegation-routes.js`, I registered the following endpoints:
|
||||
- `POST /api/delegations/overtime/history/employeedelegate`
|
||||
- `POST /api/delegations/overtime/approve`
|
||||
- `POST /api/delegations/overtime/update-actual-in`
|
||||
- `POST /api/delegations/overtime/update-actual-out`
|
||||
|
||||
## Frontend Changes
|
||||
|
||||
### New Screen
|
||||
Created **`ListOvertimeDelegation.js`** in `screens/lembur_comp/`. This screen is based on the Attendance Delegation benchmark and includes:
|
||||
- Date filtering for history.
|
||||
- Status badges for easy tracking.
|
||||
- **Approve Action**: Signature capture for delegates.
|
||||
- **Execute In/Out Actions**: GPS location capture and radius validation.
|
||||
- Details display including duration, planned times, and actual times.
|
||||
|
||||
### Navigation and UI Integration
|
||||
- **`screens/index.js`**: Exported the new screen.
|
||||
- **`App.js`**: Registered the `OVERTIME DELEGATION` route.
|
||||
- **`Home.js`**: Added the "Overtime Delegate" menu item to the Employee Menus grid.
|
||||
|
||||
## Verification Results
|
||||
|
||||
- **Backend**: API endpoints are registered and logic follows the established pattern for attendance delegations.
|
||||
- **Frontend**: The menu is visible on the Home screen and correctly navigates to the delegation list.
|
||||
|
||||
> [!NOTE]
|
||||
> The "Overtime Delegate" menu item uses ID `21` for the module check. Ensure this ID is correctly configured in your master modules table if you want to control its visibility via the backend.
|
||||
Reference in New Issue
Block a user