Ghana Fisheries Monitoring System
# Ghana Fisheries Monitoring System (GFMS)
## Project Team
- Developed by: [Simon K. Gyimah]
## Project Narrative
The Ghana Fisheries Monitoring System (GFMS) is a web-based platform designed to digitize and streamline fisheries management operations for Ghanaian fisheries. It provides tools for vessel registration, catch documentation, violation reporting, analytics for our fisheries resource, and a real-time vessel tracking.
### Primary Use Cases & User Roles
1. **Administrators (Government Agencies and Officials, including the Ministry of Fisheries and Aquaculture, and Fisheries Commission)**
- Manage user accounts and system access
- Approve vessel registrations
- Generate analytical reports
- Monitor overall system activity
2. **Fisheries Officers**
- Record and verify vessel information
- Document fish landings and catch data
- Track vessel movements
- Investigate reported violations
- Generate operational reports
3. **Community Observers**
- Report fishing violations
- View public vessel information
- Monitor local fishing activities
## Relational Schema
```sql
-- Core Tables with Key Relationships
-- User Management
CREATE TABLE fisheries_users (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
email VARCHAR(100) NOT NULL,
password VARCHAR(255) NOT NULL,
role ENUM('admin','officer','observer') NOT NULL,
status ENUM('pending','active','suspended') DEFAULT 'pending'
);
-- Vessel Registration
CREATE TABLE fisheries_vessels (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
registration_number VARCHAR(50) NOT NULL,
local_reg_number VARCHAR(50),
vessel_type VARCHAR(20) NOT NULL,
gear_type VARCHAR(20) NOT NULL,
owner_id INT NOT NULL,
license_status VARCHAR(20) NOT NULL,
region_code VARCHAR(2),
landing_site_code VARCHAR(3),
FOREIGN KEY (owner_id) REFERENCES fisheries_users(id)
);
-- Landing Records
CREATE TABLE fisheries_landings (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
vessel_id INT NOT NULL,
date_time DATETIME NOT NULL,
species V …