initial: bootstrap from BukidBountyApp base
This commit is contained in:
25
.agents/phase3_todo.md
Normal file
25
.agents/phase3_todo.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# Phase 3: Advanced POS (Offline Focused)
|
||||
|
||||
## Technical Architecture
|
||||
- **Local Database**: IndexedDB (via Dexie.js)
|
||||
- **Sync Strategy**: Background Workers + Manual Sync Dashboard
|
||||
- **Data Scope**: Products, Customers, POS Sessions (Transactions)
|
||||
|
||||
## Todo List
|
||||
- [ ] **Infrastructure Setup**
|
||||
- [ ] Install `dexie` package
|
||||
- [ ] Create `resources/js/db.js` for IndexedDB schema
|
||||
- [ ] Create `resources/js/composables/useOfflineStore.js`
|
||||
- [ ] **Data Splicing & Local Storage**
|
||||
- [ ] Implement `syncProducts` to pull from server and save to IndexedDB
|
||||
- [ ] Implement `syncCustomers` to save frequently used customer data
|
||||
- [ ] Implement `syncSettings` (tax, discounts, etc.)
|
||||
- [ ] **Offline Transaction Entry**
|
||||
- [ ] Update `PosMain.vue` to fallback to local DB when offline
|
||||
- [ ] implement `storePendingTransaction` in IndexedDB
|
||||
- [ ] **Background Sync Logic**
|
||||
- [ ] Implement periodic background push for local transactions
|
||||
- [ ] Create Conflict Resolution handler
|
||||
- [ ] **UI Features**
|
||||
- [ ] Offline status indicator in POS
|
||||
- [ ] Sync Dashboard component
|
||||
Reference in New Issue
Block a user