https://github.com/rahimuj570/authentitrack
This is a javaEE project which will solve the fake product confusions among market and users.
https://github.com/rahimuj570/authentitrack
Last synced: 4 months ago
JSON representation
This is a javaEE project which will solve the fake product confusions among market and users.
- Host: GitHub
- URL: https://github.com/rahimuj570/authentitrack
- Owner: rahimuj570
- Created: 2025-09-10T14:41:37.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2025-09-10T16:11:16.000Z (4 months ago)
- Last Synced: 2025-09-10T19:46:40.223Z (4 months ago)
- Language: Java
- Size: 566 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ๐ญ Product Authenticity Verification System (AuthentiTrack)



A **JavaEE + Oracle Database** based web application built exclusively for **manufacturing companies** to fight against **fake and cloned products**.
The system generates **unique QR codes** for every product batch and provides customers with a secure way to verify authenticity, check product details, and submit feedback.
---
## ๐ Features
- **Manufacturer Portal**
- Add products with details (name, description, expiry date, etc.)
- Generate **batches** with expiry date and other metadata
- Automatically generate **unique QR codes** for each product
- Monitor authenticity checks and feedback reports
- Mark unsafe batches as **inactive/recall from market**
- **Customer Portal**
- Scratch & scan QR code to verify product authenticity
- View details: batch number, expiry date, authenticity status, scan history
- Detect if scanned before โ prevents duplicate usage
- See if the batch is **active or recalled**
- Submit **feedback or complaint** (within 30 days of scan)
- Manufacturer can view and contact customer if necessary
- **Security**
- Scratch-before-scan mechanism and watching scan history prevents duplicate QR scans
- Real-time verification against database
- Role-based access (Manufacturer, Customer)
---
## ๐ Project Structure
```
AuthentiTrack/
โโโ README.md
โโโ src
โโโ main
โโโ java
โย ย โโโ controllers
โย ย โย ย โโโ AddProductController.java
โย ย โย ย โโโ ChangePassword.java
โย ย โย ย โโโ DiscontinueProduct.java
โย ย โย ย โโโ GenerateProduction.java
โย ย โย ย โโโ GetAllNotification.java
โย ย โย ย โโโ GetAllProduction.java
โย ย โย ย โโโ LoginController.java
โย ย โย ย โโโ RejectBatch.java
โย ย โย ย โโโ SendReport.java
โย ย โโโ dao
โย ย โย ย โโโ BatchDao.java
โย ย โย ย โโโ NotificationDao.java
โย ย โย ย โโโ ProductDao.java
โย ย โย ย โโโ ProductionDao.java
โย ย โย ย โโโ UserReportDao.java
โย ย โย ย โโโ UsersDao.java
โย ย โโโ entities
โย ย โย ย โโโ Batch.java
โย ย โย ย โโโ Notification.java
โย ย โย ย โโโ Produce.java
โย ย โย ย โโโ Product.java
โย ย โย ย โโโ User.java
โย ย โโโ helper
โย ย โโโ ConnectionProvider.java
โย ย โโโ LoginFilter.java
โย ย โโโ ScanDetailsPOJO.java
โย ย โโโ UserReportPOJO.java
โโโ webapp
โโโ fake.jsp
โโโ index.jsp
โโโ manufacturer
โย ย โโโ add_new_product.jsp
โย ย โโโ batches.jsp
โย ย โโโ footer.jsp
โย ย โโโ generate_product.jsp
โย ย โโโ logout.jsp
โย ย โโโ nav.jsp
โย ย โโโ products.jsp
โย ย โโโ qr_codes.jsp
โย ย โโโ show_report.jsp
โย ย โโโ style.css
โโโ META-INF
โย ย โโโ MANIFEST.MF
โโโ scan.jsp
โโโ WEB-INF
โโโ lib
โโโ web.xml
````
---
## โ๏ธ Tech Stack
- **Backend:** JavaEE (Servlets, JSP)
- **Frontend:** JSP, CSS, JavaScript
- **Database:** Oracle 21c DB
- **QR Code:** qrious (JS library)
- **Server:** Apache Tomcat
- **IDE:** Eclipse Enterprise Edition
- **Build:** WAR deployable
---
## ๐ ๏ธ Setup & Installation
### Prerequisites
- Java 21 (Recommended)
- Oracle Database (21c)
- Apache Tomcat 10.1
- QR Code generation library (qrious)
### Steps
1. **Clone the repository**
```bash
git clone https://github.com/rahimuj570/AuthentiTrack
cd AuthentiTrack
2. **Set up the Database (Oracle)**
* Create a new schema `authenti_tracker`
* Run the script from `source files/authenti_tracker.sql`
3. **Configure Database Connection**
* Update your ConnectionProvider.java with Oracle DB credentials*
4. **Deploy the Application**
* Build WAR file and deploy in Tomcat/GlassFish
* Access the system at:
```
http://localhost:8080/AuthentiTrack
```
---
## ๐ Usage
* **Manufacturer Workflow**
1. Login as manufacturer
2. Add product and create a new batch
3. Generate QR codes (system auto-generates unique codes)
4. Print and attach QR codes on product packaging
5. Monitor customer scans and feedback
* **Customer Workflow**
1. Scratch the QR sticker
2. Scan the QR code โ redirected to product verification page
3. View product details (authenticity, expiry, batch status)
4. If batch is recalled, warning message is displayed
5. Optionally, submit feedback/complaint (valid for 30 days)
---
## ๐ธ Screenshots
### ๐ Login Page

### ๐งพ Product Details Page

### ๐งพ Add Product Page

### โป๏ธ Generate Batch Page

### โป๏ธ Batch Details Page

### ๐ท๏ธ QR Codes Genrator Page

### ๐ฑ QR Code Scan Result

### ๐ฑ QR Code Scan Result (FAKE Product)

---
## ๐ง Development
* Use an IDE like Eclipse with Tomcat
* Configure **Oracle JDBC driver** in your server libraries
* For QR Code generation, include **qrious** in `qr_codes.jsp/`
---
## ๐ค Contribution
1. Fork the repo
2. Create a feature branch (`feature/my-new-feature`)
3. Commit changes (`git commit -m 'Add feature'`)
4. Push to branch
5. Open a Pull Request
---