
# HR Architecture Design

The HR module must follow the same architecture used in the current system.

Layer structure:

Controllers → Services → Models → Database

## Folder Structure

app/
 ├─ Models/
 │   └─ HR/
 │       ├─ Setup
 │       ├─ Recruitment
 │       ├─ Employee
 │       ├─ Attendance
 │       ├─ Requests
 │       ├─ Payroll
 │       └─ Tasks
 │
 ├─ Services/
 │   └─ HR/
 │       ├─ Recruitment
 │       ├─ Employee
 │       ├─ Attendance
 │       ├─ Requests
 │       ├─ Payroll
 │       └─ Tasks
 │
 ├─ Http/
 │   ├─ Controllers/
 │   │   ├─ Admin/HR
 │   │   └─ Portal
 │   └─ Requests/
 │       ├─ Admin/HR
 │       └─ Portal

resources/views/
 ├─ dashboard/hr
 └─ portal

Rules:
- Controllers must stay thin.
- Business logic must live inside Services.
- Models only handle relationships.
- Use FormRequest classes for validation.
