This Flutter application serves as a store inventory management system using a local SQLite database, developed for the Mobile Programming I course.
The application utilizes sqflite for local data persistence. Key features include:
- Search: Query products by Barcode ID.
- Create: Add new products if the barcode is not found.
- Manage: Edit or Delete existing inventory items.
lib/main.dart: UI components, search logic, and input forms.lib/product_model.dart:Productclass definition matching the database schema.lib/database_helper.dart: SQLite connection handling and CRUD operations.
A single table, ProductTable, is used:
- BarcodeNo: Primary Key (String).
- Stockinfo: Optional (Nullable).
- Price: Automatically calculated (
UnitPrice+TaxRate).
- Search Flow: A dialog prompts creation if a searched barcode is missing.
- Validation: Required fields must be populated. Numeric values (Price, Tax, Stock) are validated to be non-negative. Duplicate barcodes are prevented.
- Persistence: Data is retagitined locally across application restarts.
- Clone the repository.
- Install dependencies:
flutter pub get
- Run the application:
flutter run
- Bahar Demirkan
- Emine Nur Güçlü
- Emirhan Temiz