Commit Graph

6 Commits

Author SHA1 Message Date
a2nr 4140af7ba0 feat: multi-grup sumber, batch send, & perbaikan tip
Multi-Grup Sumber & UI:
     - Model ReceiptGroup: satu struk bisa punya banyak grup sumber (
     revenue)
     - Tombol "Tambah Sumber" dengan dashed border (max 10 grup)
     - Hapus label "Dari:" di SourceAccountSelector (chip saja)
     - Default 1 grup kosong di ReceiptProvider constructor &
     _resetState

     Akun Tujuan ke Config:
     - Pindah DestinationAccountSelector dari receipt body ke Config
     screen
     - Persist & load via SharedPreferences (permanen, tidak di-reset)
     - Dropdown auto-load dari cache/mirror saat buka Config
     - Tombol "Sinkronisasi Manual" sekarang simpan ke mirror &
     refresh dropdown

     Batch Send via SubmissionTask:
     - Model SubmissionTask: konteks per-grup (group/tip +
     destination + date)
     - TransactionSubmissionDialog refactor: terima
     List<SubmissionTask>
     - Helper buildTasksFromReceipt &
     buildTasksFromAllUnsubmittedReceipts
     - LocalReceiptsScreen: tombol "Kirim Semua Nota" + post-process
     status

     Bug Fix:
     - copyWith sentinel pattern: field nullable (tipSourceAccount,
       destinationAccount, fireflyUrl, accessToken) kini bisa di-set
     ke null
     - Tip dapat dibersihkan dengan "Batal Tip" & reset antar
     transaksi
     - Hapus tombol "Muat Akun" (redundan dgn Sinkronisasi Manual)

     Lainnya:
     - Date picker untuk tanggal transaksi
     - Font courier prime caching via CourierStyles
     - Perf: compute() untuk decode image, cancel stream bluetooth,
     fix rebuild loop
     - External link: <queries> AndroidManifest + skip canLaunchUrl
     - Layout cetak: hapus Ke:, sederhanakan separator grup, hapus
     TIP: TIDAK
     - Hapus TransactionLinksScreen, ganti inline copy/open di popup
2026-06-27 20:18:51 +07:00
a2nr f1ca6db22c cleaning dan menambahkan pembayaran, kembalian, dan tip di struk cetak 2025-12-28 10:51:15 +07:00
a2nr 631066024c update fitur pembayaran dan tip. 2025-12-27 15:45:41 +07:00
a2nr 4dbf31db3c feat: remove default account mapping and implement offline-first account mirroring
This commit removes the confusing default account mapping feature and implements a more reliable offline-first account mirroring system. The changes include:

BREAKING CHANGES:
- Remove all default account mapping functionality (saveDefaultAccount, getDefaultAccount, etc.)
- Simplify account selection to use direct account choice instead of default mapping

FEATURES:
- Implement account mirroring system that stores all FireFly III accounts locally
- Add offline-first approach: server accounts > mirrored accounts > fallback
- Automatic account sync when connection is available
- Manual sync capability in config screen
- Enhanced offline reliability - app works completely without server connection

IMPROVEMENTS:
- Faster startup times using local account cache
- More predictable account selection behavior
- Reduced confusion about which accounts are being used
- Better error handling for offline scenarios
- Simplified architecture without complex default mapping logic
2025-11-17 12:04:46 +07:00
a2nr eece292526 tambah fitur cache nota dan submit ketika server sudah aktif 2025-11-08 12:15:38 +07:00
a2nr 28e99e4e2f feat: Implement ReceiptScreen with provider pattern and clean architecture
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

Mengimplementasikan ReceiptScreen dengan pola provider untuk manajemen state yang lebih baik. Memisahkan logika bisnis ke service terpisah dan membuat widget komponen yang reusable untuk struk. Menambahkan fitur konfigurasi informasi toko dan teks kustom (disclaimer, thank you note, pantun).
2025-08-24 11:16:40 +07:00