# boxboxmn/ceaps-cspc-employee-attendance-and-payment-system architecture

> Architecture diagram of the GitHub repository boxboxmn/ceaps-cspc-employee-attendance-and-payment-system, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-26). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system
- Repository: https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system

## Overview

CEAPS is a PHP/MySQL employee attendance and payroll portal. The main user journey starts at the landing page, routes to an admin or employee portal, then supports employee access, attendance capture and review, and payroll results. Admins also manage employee records, roles, and schedules, and monitor attendance through dashboard summaries. The README documents profile editing and payroll features; their listed source paths are included, though those implementations were not sampled. The supplied excerpts show some database access and attendance logic, but not every endpoint’s wiring.

Main entry points: [`main.php`](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/main.php) (Role landing), [`employee/employeelogin.php`](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/employee/employeelogin.php) (Employee access), [`employee/employeedashboard.php`](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/employee/employeedashboard.php) (Employee dashboard), [`admin/admin_dashboard.php`](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/admin_dashboard.php) (Admin dashboard)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_entry["Portal and access"]
  node_landing["Role landing<br/>[main.php]"]
  node_admin_login["Admin access<br/>[admin_login.php]"]
  node_employee_login["Employee access<br/>[employeelogin.php]"]
end

subgraph group_admin["Admin operations"]
  node_admin_dash["Admin dashboard"]
  node_admin_profile["Profile editing<br/>[update_admin.php]"]
  node_employee_records["Employee management<br/>[employee_list.php]"]
  node_roles["Role management<br/>[role.php]"]
  node_schedules["Schedule management<br/>[schedule.php]"]
  node_attendance_admin["Attendance monitoring<br/>[attendance.php]"]
  node_attendance_chart["Attendance summaries"]
  node_payroll["Payroll computation<br/>[payroll.php]"]
  node_payslip["Payslip output<br/>[payslip.php]"]
end

subgraph group_employee["Employee workflow"]
  node_registration["Employee registration"]
  node_employee_dash["Employee dashboard"]
  node_attendance_capture["Attendance recording"]
end

subgraph group_data["Persistence"]
  node_mysql[("MySQL database")]
end

node_visitor(("Portal user"))

node_visitor -->|"opens"| node_landing
node_landing -->|"routes admin"| node_admin_login
node_landing -->|"routes employee"| node_employee_login
node_admin_login -->|"verifies access"| node_mysql
node_employee_login -->|"verifies access"| node_mysql
node_employee_login -->|"opens session"| node_employee_dash
node_admin_dash -->|"reads metrics"| node_mysql
node_admin_dash -->|"requests chart data"| node_attendance_chart
node_attendance_chart -->|"reads summaries"| node_mysql
node_admin_profile -->|"updates profile"| node_mysql
node_employee_records -->|"reads and writes"| node_mysql
node_roles -->|"reads and writes"| node_mysql
node_schedules -->|"reads and writes"| node_mysql
node_attendance_admin -->|"reads attendance"| node_mysql
node_payroll -->|"reads payroll inputs"| node_mysql
node_payroll -->|"prepares payslip"| node_payslip
node_registration -->|"registers employee"| node_mysql
node_employee_dash -->|"reads summary"| node_mysql
node_employee_dash -->|"submits attendance"| node_attendance_capture
node_attendance_capture -->|"records attendance"| node_mysql

click node_landing "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/main.php"
click node_admin_login "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/admin_login.php"
click node_employee_login "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/employee/employeelogin.php"
click node_admin_dash "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/admin_dashboard.php"
click node_admin_profile "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/update_admin.php"
click node_employee_records "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/employee_list.php"
click node_roles "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/role.php"
click node_schedules "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/schedule.php"
click node_attendance_admin "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/attendance.php"
click node_attendance_chart "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/get_attendance_summary.php"
click node_payroll "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/payroll.php"
click node_payslip "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/payslip.php"
click node_registration "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/employee/employeeregister.php"
click node_employee_dash "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/employee/employeedashboard.php"
click node_attendance_capture "https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/employee/record_attendance.php"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_landing,node_admin_login,node_employee_login,node_visitor toneBlue
class node_admin_dash,node_admin_profile,node_employee_records,node_roles,node_schedules,node_attendance_admin,node_attendance_chart,node_payroll,node_payslip toneAmber
class node_registration,node_employee_dash,node_attendance_capture toneMint
class node_mysql toneRose
```

## Components

### Portal and access

- [Role landing](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/main.php): `main.php`
- [Admin access](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/admin_login.php): `admin/admin_login.php`
- [Employee access](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/employee/employeelogin.php): `employee/employeelogin.php`

### Admin operations

- [Admin dashboard](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/admin_dashboard.php): `admin/admin_dashboard.php`
- [Profile editing](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/update_admin.php): `admin/update_admin.php`
- [Employee management](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/employee_list.php): `admin/employee_list.php`
- [Role management](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/role.php): `admin/role.php`
- [Schedule management](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/schedule.php): `admin/schedule.php`
- [Attendance monitoring](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/attendance.php): `admin/attendance.php`
- [Attendance summaries](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/get_attendance_summary.php): `admin/get_attendance_summary.php`
- [Payroll computation](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/payroll.php): `admin/payroll.php`
- [Payslip output](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/admin/payslip.php): `admin/payslip.php`

### Employee workflow

- [Employee registration](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/employee/employeeregister.php): `employee/employeeregister.php`
- [Employee dashboard](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/employee/employeedashboard.php): `employee/employeedashboard.php`
- [Attendance recording](https://github.com/boxboxmn/ceaps-cspc-employee-attendance-and-payment-system/blob/main/employee/record_attendance.php): `employee/record_attendance.php`

### Persistence

- **MySQL database**

### Other components

- **Portal user**

## Connections

- Portal user → Role landing: opens
- Role landing → Admin access: routes admin
- Role landing → Employee access: routes employee
- Admin access → MySQL database: verifies access
- Employee access → MySQL database: verifies access
- Employee access → Employee dashboard: opens session
- Admin dashboard → MySQL database: reads metrics
- Admin dashboard → Attendance summaries: requests chart data
- Attendance summaries → MySQL database: reads summaries
- Profile editing → MySQL database: updates profile
- Employee management → MySQL database: reads and writes
- Role management → MySQL database: reads and writes
- Schedule management → MySQL database: reads and writes
- Attendance monitoring → MySQL database: reads attendance
- Payroll computation → MySQL database: reads payroll inputs
- Payroll computation → Payslip output: prepares payslip
- Employee registration → MySQL database: registers employee
- Employee dashboard → MySQL database: reads summary
- Employee dashboard → Attendance recording: submits attendance
- Attendance recording → MySQL database: records attendance
