How jaicode25/delivery-verification-system works
This backend supports delivery/order verification from uploaded evidence: users can register orders and reference images, submit barcode or media evidence, inspect matching and condition/quantity analyses, and generate verification reports. Its distinct stages include barcode/order checks, shipping-label parsing and comparison, product matching, quantity and condition assessment, and report generation. The graph includes the persistence layer and evidence-processing services. No README was provided; relationships to unsampled modules rely on the SOURCE INDEX, so only documented or indexed links are shown.
Main entry points: main.py FastAPI app · connection.py Database sessions · verification.py Verification API · analysis_service.py Media analysis
Components 26
API workflows
- FastAPI app
backend/app/main.py - Media analysis API
backend/app/api/analysis.py - Orders API
backend/app/api/orders.py - Verification API
backend/app/api/verification.py - Product matching API
backend/app/api/product_matching.py - Quantity API
backend/app/api/quantity_verification.py - Condition API
backend/app/api/condition_analysis.py - Reports API
backend/app/api/reports.py
Order verification
- Order management
backend/app/services/order_service.py - Reference images
backend/app/services/reference_service.py - Media analysis
backend/app/services/analysis_service.py - Barcode verification
backend/app/services/verification_engine.py - Label extraction
backend/app/services/label_parser.py - Label comparison
backend/app/services/label_verification_service.py
Evidence analysis
- Product matching
backend/app/services/product_matching_service.py - Quantity verification
backend/app/services/quantity_verification_service.py - Condition assessment
backend/app/services/condition_analysis_service.py - Evidence selection
backend/app/services/evidence_service.py - Frame extraction
backend/app/services/frame_extractor.py - Upload handling
backend/app/services/file_handler.py - OCR processing
backend/app/services/ocr_service.py - Image similarity
backend/app/services/image_similarity.py
Persistence and reports
- Persistent records
backend/app/database/models.py - Database sessions
backend/app/database/connection.py - Report generation
backend/app/services/report_service.py
Other components
- Client
Connections 41
- Client → FastAPI app: uses API
- FastAPI app → Media analysis API: registers routes
backend/app/main.py - FastAPI app → Orders API: registers routes
backend/app/main.py - FastAPI app → Verification API: registers routes
backend/app/main.py - FastAPI app → Product matching API: registers routes
backend/app/main.py - FastAPI app → Quantity API: registers routes
backend/app/main.py - FastAPI app → Condition API: registers routes
backend/app/main.py - FastAPI app → Reports API: registers routes
backend/app/main.py - Orders API → Order management: manages orders
backend/app/api/orders.py - Orders API → Reference images: manages references
backend/app/api/orders.py - Media analysis API → Upload handling: handles uploads
backend/app/api/analysis.py - Media analysis API → Media analysis: starts analysis
backend/app/api/analysis.py - Media analysis → Barcode verification: verifies codes
backend/app/services/analysis_service.py - Media analysis → Label extraction: parses labels
backend/app/services/analysis_service.py - Media analysis → Label comparison: checks labels
backend/app/services/analysis_service.py - Media analysis → Order management: looks up orders
backend/app/services/analysis_service.py - Verification API → Barcode verification: verifies evidence
backend/app/api/verification.py - Verification API → Label extraction: parses label
backend/app/api/verification.py - Verification API → Label comparison: compares label
backend/app/api/verification.py - Verification API → Order management: retrieves order
backend/app/api/verification.py - Barcode verification → Order management: finds order
backend/app/services/verification_engine.py - Product matching API → Product matching: matches product
backend/app/api/product_matching.py - Product matching API → Reference images: manages references
backend/app/api/product_matching.py - Product matching → Image similarity: scores images
backend/app/services/product_matching_service.py - Product matching → OCR processing: extracts text
backend/app/services/product_matching_service.py - Product matching → Reference images: loads references
backend/app/services/product_matching_service.py - Quantity API → Quantity verification: checks quantity
backend/app/api/quantity_verification.py - Quantity API → Evidence selection: selects evidence
backend/app/api/quantity_verification.py - Condition API → Condition assessment: assesses condition
backend/app/api/condition_analysis.py - Condition API → Evidence selection: selects evidence
backend/app/api/condition_analysis.py - Evidence selection → Frame extraction: extracts frames
backend/app/services/evidence_service.py - Reports API → Report generation: generates reports
backend/app/api/reports.py - Media analysis API → Database sessions: opens session
backend/app/api/analysis.py - Orders API → Database sessions: opens session
backend/app/api/orders.py - Verification API → Database sessions: opens session
backend/app/api/verification.py - Product matching API → Database sessions: opens session
backend/app/api/product_matching.py - Quantity API → Database sessions: opens session
backend/app/api/quantity_verification.py - Condition API → Database sessions: opens session
backend/app/api/condition_analysis.py - Reports API → Database sessions: opens session
backend/app/api/reports.py - Database sessions → Persistent records: maps records
backend/app/database/models.py - Report generation → Persistent records: reads records
backend/app/services/report_service.py