How diazzhen06-pixel/irrigation-management-system works
This is a PHP/MySQL web system for planning and monitoring manual irrigation operations. Users log in, maintain irrigation areas and schedules, then review generated daily tasks and record field activity; dashboard and accomplishment reporting expose operational results. Cron jobs separately generate tasks, detect missed work, and process SMS notifications. The sampled router, authentication, schedule/area/task controllers, task generator, and views support the main web flow; other controller and cron connections are represented only where README features and the tree identify them.
Main entry points: index.php Web router · IrrigationSchedulesController.php Schedule management · AuthController.php Authentication · IrrigationAreasController.php Area management
Components 27
Web access
- Web router
public/index.php - Authentication
controllers/AuthController.php - User records
models/User.php - Login screen
views/auth/login.php
Irrigation planning
- Area management
controllers/IrrigationAreasController.php - Irrigation areas
models/IrrigationArea.php - Area screens
views/irrigation_areas/index.php - Schedule management
controllers/IrrigationSchedulesController.php - Schedules
models/IrrigationSchedule.php - Schedule screens
views/irrigation_schedules/index.php
Task operations
- Task activity
controllers/IrrigationTasksController.php - Irrigation tasks
models/IrrigationTask.php - Task screens
views/irrigation_tasks/index.php - Daily generation
cron/generate_tasks.php - Missed-task detection
cron/detect_missed_tasks.php
Monitoring and reports
- Dashboard
controllers/DashboardController.php - Operations overview
views/dashboard/index.php - Accomplishment reports
controllers/ReportController.php - Report screen
views/reports/accomplishment.php - Alerts
models/Alert.php
Runtime services
- Audit logging
models/AuditLog.php - Audit helper
helpers/audit_helper.php - SMS queue processor
cron/send_sms.php - SMS sender
lib/SmsHelper.php - Database access
config/database.php
Other components
- System users
- MySQL database
Connections 24
- System users → Web router: requests pages
- Web router → Authentication: dispatches login
- Authentication → User records: checks credentials
- Authentication → Login screen: renders
- Web router → Area management: dispatches area routes
- Area management → Irrigation areas: manages areas
- Area management → Area screens: renders
- Web router → Schedule management: dispatches schedule routes
- Schedule management → Schedules: manages schedules
- Schedule management → Irrigation areas: loads area choices
- Schedule management → Schedule screens: renders
- Web router → Task activity: dispatches task routes
- Task activity → Irrigation tasks: reads and logs tasks
- Task activity → Task screens: renders
- Daily generation → Database access: queries and inserts
- Database access → MySQL database: executes SQL
- Web router → Dashboard: dispatches dashboard
- Dashboard → Operations overview: renders overview
- Web router → Accomplishment reports: dispatches reports
- Accomplishment reports → Report screen: renders report
- Web router → Audit helper: loads audit helper
- Audit helper → Audit logging: records events
- Missed-task detection → Alerts: creates exceptions
- SMS queue processor → SMS sender: processes notifications