- Project Overview
- Features
- Installation
- How to Run
- User Roles and Credentials
- Usage Guide
- Database Schema
- Project Structure
- Contributing
- License
Team_M_15_Project is a Python-based bike rental management system that provides a map-based interface for managing bikes, users, operators, and administrators. It features a multi-role access system to facilitate smooth management of bike rentals, payments, and issue reporting.
- Map-based interface for bike management.
- Multi-role access control: User, Operator, and Manager.
- Secure login with encrypted passwords.
- Wallet system for users.
- Comprehensive report handling (broken bikes, payment issues, etc.).
- Admin dashboard for managing bikes, users, and reports.
- Python 3.x
- Required Python libraries:
pip install PIL
-
Navigate to the project directory:
cd C:\Users\Simran\Desktop\Team_M_15_Project
-
Install required libraries:
pip install PIL
-
Run the main script:
python log.py
- Username: admin@qq.com
- Password: 123456
- Glasgow:
- Username: Glasgow@qq.com
- Password: 123456
- Edinburgh:
- Username: Edinburgh@qq.com
- Password: 123456
- Aberdeen:
- Username: Aberdeen@qq.com
- Password: 123456
- Dundee:
- Username: Dundee@qq.com
- Password: 123456
- Glasgow:
- Username: 123@qq.com
- Password: 123456
- Edinburgh:
- Username: Cb@qq.com
- Password: 123456
- Aberdeen:
- Username: V@qq.com
- Password: 123456
- Dundee:
- Username: D@qq.com
- Password: 123456
- Rent a Bike: Click on a point on the map to rent a bike.
- Return a Bike: Click on the green point, enter the final X and Y positions.
- Add Money: Click the "Add" button to top up your wallet.
- Submit Reports: Click the "Reports" button to submit a new report.
- Order History: View past orders and submit reports if needed.
- Manage Bikes: Move, fix, or charge bikes on the map.
- Handle Reports: View, check, and resolve user reports.
- Detailed View: Access detailed information about bikes and reports.
- Fleet Management:
- Add or delete bikes.
- Move bikes across cities.
- User and Operator Management:
- View and manage users and operators.
- Visualizations:
- Access analytics through the "Visualization" button.
- Fields: ID, type, location (X, Y), status, battery, city.
- Fields: ID, username, email, phone, wallet balance, encrypted password.
- Fields: Order ID, user ID, bike ID, start and end coordinates, cost, date.
- Fields: Report ID, user ID, bike ID, issue type (Broken, Payment, Other), status.
Team_M_15_Project/
├── db/ # Database handling files
│ ├── db_config.py # Database configuration
│ ├── Bike.py # Bike-related operations
│ ├── Order.py # Order-related operations
│ ├── Report.py # Report-related operations
│ ├── User.py # User-related operations
├── managerPage.py # Manager's GUI and functions
├── opertorPage.py # Operator's GUI and functions
├── userPage.py # User's GUI and functions
├── register.py # User registration handling
├── log.py # Login handling
├── README.md # Project documentation
- Password Encryption:
- Uses MD5 and random salt to encrypt passwords for secure authentication.
- Fork the repository.
- Create a new branch:
git checkout -b feature-name
- Commit changes:
git commit -m "Added new feature" - Push to the branch:
git push origin feature-name
- Submit a pull request.
This project is licensed under the MIT License.