A comprehensive system for tracking, managing, and maintaining fire extinguishers across multiple plants and locations.
- Multi-Plant Support - Manage extinguishers across different plants and levels
- Expiration Tracking - Monitor expiration dates and schedule services
- Visual Mapping - View extinguisher locations on uploaded floor plans
- Service Management - Track service history and replacement status
- Email Notifications - Automated reminders for upcoming expirations
- User Management - Role-based access control for different permission levels
- Activity Logs - Comprehensive audit trail of all system activities
Main dashboard showing fire extinguisher status overview
- Database: Microsoft SQL Server
- Frontend: ASP.NET
- Backend: ASP.NET
- Microsoft SQL Server 2019 or newer
- SQL Server Management Studio (SSMS) or equivalent SQL client
- Open SQL Server Management Studio and connect to your SQL Server instance
- Open the
DATABASE/FETS_DATABASE.sql
script file - Execute the script to create the database and all required tables
- Verify the database has been created with all tables:
- ActivityLogs
- EmailRecipients
- FireExtinguishers
- FireExtinguisherTypes
- Levels
- MapImages
- Plants
- ServiceReminders
- Status
- Users
- Locate the
Web.config.example
file in the root directory - Create a copy of this file and rename it to
Web.config
- Open the new
Web.config
file and update the following settings:
Update the connection string with your SQL Server credentials:
<connectionStrings>
<add name="FETSConnection"
connectionString="Data Source=YOUR_SERVER;Initial Catalog=FETS;User ID=YOUR_USERNAME;Password=YOUR_PASSWORD;Connection Timeout=30"
providerName="System.Data.SqlClient" />
</connectionStrings>
Replace:
YOUR_SERVER
with your SQL Server instance name (e.g.,localhost
orDESKTOP-PC\SQLEXPRESS
)YOUR_USERNAME
with your SQL Server usernameYOUR_PASSWORD
with your SQL Server password
Configure the email settings for notifications:
<system.net>
<mailSettings>
<smtp from="[email protected]">
<network host="smtp.example.com" port="587" userName="[email protected]"
password="your-email-password" enableSsl="true" />
</smtp>
</mailSettings>
</system.net>
Replace with your actual email service details to enable the notification system.
After installing the database:
- Add initial plant locations through the application or direct SQL
- Create admin user(s) to access the system
- Set up email notification recipients for service reminders
- Define fire extinguisher types and status codes
Example SQL for basic setup:
-- Add plants
INSERT INTO Plants (PlantName) VALUES ('Main Plant'), ('Secondary Plant');
-- Add levels for plants
INSERT INTO Levels (PlantID, LevelName)
VALUES (1, 'Floor 1'), (1, 'Floor 2'), (2, 'Ground Floor');
-- Add extinguisher types
INSERT INTO FireExtinguisherTypes (TypeName)
VALUES ('CO2'), ('Dry Chemical'), ('Foam'), ('Water');
-- Add status types with color codes
INSERT INTO Status (StatusName, ColorCode)
VALUES
('Active', '#00FF00'),
('Expired', '#FF0000'),
('In Service', '#FFA500'),
('Replaced', '#0000FF');
- Administrator: Full system access
- Plant Manager: Access to manage specific plant locations
- Technician: Limited access for service updates
- Viewer: Read-only access to system data
The system uses the following main tables:
- Plants: Defines different plant locations
- Levels: Floors or areas within each plant
- FireExtinguishers: Core inventory of all extinguishers
- Status: Possible states of extinguishers
- ServiceReminders: Tracks service schedules and reminders
- Users: System users with role-based permissions
Recommended maintenance cycle:
- Daily: Check for expired extinguishers
- Weekly: Review upcoming service needs
- Monthly: Audit extinguisher locations and statuses
- Quarterly: Update floor plans and location maps