Welcome to the Warehouse Management System! This is my first major project, built to help manage employees' data, work schedules, performance evaluations, and communications within a company. I've included features like user authentication, feedback management, and data uploads.
- User login and logout functionality.
- Different access levels for users (User, Administrator, Super Administrator).
- User Management:
- Add, edit, and delete users.
- Super Administrators can assign access levels.
- Employee Data Management:
- View detailed information about employees.
- Manage employee details like work schedules, languages, companies, groups, and transport.
- Feedback and Complaints:
- Employees can submit feedback and complaints.
- Admins can view and manage feedback.
- Messaging and Notifications:
- Send and receive messages between users.
- View notifications and new message counts.
- Performance and Scheduling:
- View performance evaluations for employees.
- Display employee schedules in a calendar format.
- Data Upload and Processing:
- Upload files with user data, working hours, and process data.
- Process and store uploaded data.
- Python 3.8+
- PostgreSQL
-
Clone the repository:
git clone https://github.com/Ktyby21/warehouse_app.git cd warehouse_app
-
Create a virtual environment and activate it:
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
Install the required dependencies:
pip install -r requirements.txt
-
Set up the environment variables:
Create a file named
.env
in the root directory of the project with the following content:DATABASE_URL=postgresql://yourusername:yourpassword@localhost/warehouse_db SECRET_KEY=your_secret_key
Replace
yourusername
,yourpassword
, andyour_secret_key
with your own values. -
Create a PostgreSQL user:
Open PostgreSQL command-line tool:
psql -U postgres
Then run the following commands to create a user and database:
CREATE USER yourusername WITH PASSWORD 'yourpassword';
-
Set up the database:
` - Import the PostgreSQL database backup:
```sh
psql -U yourusername -d postgres -f database_backup.sql
```
` Users and passwords by default at database
- "1" "1" user
- "2" "2" admin
- "3" "3" superadmin
- "4" "4" user
- "LOGIN1" "1" user
- "LOGIN2" "2" user
- "LOGIN3" "3" user
- "LOGIN4" "4" user
-
Run the application:
flask run
-
Open your browser and go to:
http://127.0.0.1:5000/login
├── app
│ ├── __init__.py
│ ├── models.py
│ ├── routes.py
│ └── utils.py
├── database_backup.sql
├── run.py
├── requirements.txt
├── static
│ ├── css
│ │ └── styles.css
│ ├── images
│ ├── js
│ │ └── scripts.js
│ └── uploads
└── templates
├── absence_form.html
├── admin_home.html
├── attendance.html
├── data_upload.html
├── edit_user.html
├── feedback.html
├── feedback_details.html
├── login.html
├── message_details.html
├── messages.html
├── performance.html
├── schedule.html
├── send_message.html
├── send_notification.html
├── user_accounts.html
├── view_feedbacks.html
├── view_notifications.html
├── worker_home.html
└── workers.html
Hi! I'm a self-taught developer, and this is my first major programming project. I created this application to learn and practice web development with Flask. Through this project, I've learned a lot about user authentication, database management, and creating dynamic web pages. I haven't fully implemented all the features I had planned, and many are still in development.