Commit Graph
17 Commits
Author SHA1 Message Date
efrilmandClaude Opus 5 1b4caf45d5 fix: cetak semua station tanpa saling membatalkan
printStruckOrder berhenti di kegagalan pertama, jadi satu station gagal membuat semua station sesudahnya tidak pernah dicoba. Karena checker (Bluetooth) berada sebelum kitchen dan bar (Network) dalam rantai, satu kegagalan koneksi Bluetooth menghilangkan tiga tiket sekaligus, dua di antaranya di jaringan yang sehat.

Jalur printer Network juga mengembalikan right(false) saat gagal, yang lolos sebagai sukses ke pemanggil, sehingga kasir melihat 'berhasil dicetak' padahal tidak ada kertas keluar.

Perubahan: repository kini mengembalikan Stream<List<PrintStationResult>> dan tetap mencoba semua station; kegagalan Network jadi left; station Network berjalan paralel dengan rantai Bluetooth; station Bluetooth dikelompokkan per alamat agar perpindahan koneksi seminimal mungkin; CapabilityProfile di-cache.

Bluetooth: retry connect dengan backoff dan disconnect di tiap percobaan ulang (socket RFCOMM setengah terbuka membuat connect berulang gagal identik), jeda settle dikembalikan setelah dipangkas ke 300ms, satu lock untuk seluruh radio (bukan per MAC), izin runtime dipastikan di jalur cetak, dan repository jadi LazySingleton agar state koneksi benar-benar dibagi.

UI: dialog progres per-station menggantikan toast tunggal, lengkap dengan durasi tiap station dan tombol cetak ulang khusus yang gagal. Enam listener duplikat di halaman diganti satu listener terpusat di AppWidget. Menu Print di detail transaksi dapat item Print All.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-02 20:44:14 +07:00
efrilm b2b2e2b111 logout 2025-11-10 17:23:26 +07:00
efrilm 0a8f8d93bb Sync Page 2025-11-10 16:56:12 +07:00
efrilm 93560b85cb print order 2025-11-07 16:29:26 +07:00
efrilm 1b24bae23a printer receipt 2025-11-04 22:13:15 +07:00
efrilm a87b62ca9f printer form, bluetooth 2025-11-04 14:58:51 +07:00
efrilm 8d9e622121 void 2025-10-31 14:33:02 +07:00
efrilm 8bd61eb58e order page 2025-10-27 21:55:19 +07:00
efrilm b8eefcbac0 checkout page 2025-10-27 15:27:21 +07:00
efrilm 9e5a6cc7ae payment method 2025-10-27 14:24:29 +07:00
efrilm d5ed3f62ff create table 2025-10-26 18:47:51 +07:00
efrilm 0e83d213fc update total price 2025-10-25 03:03:44 +07:00
efrilm 754048b565 product and category loader 2025-10-25 00:13:43 +07:00
efrilm 71fa4823fc category repo 2025-10-24 20:06:42 +07:00
efrilm 683fff6eeb outlet dialog 2025-10-24 14:28:04 +07:00
efrilm 05609d592d main page 2025-10-24 02:02:21 +07:00
efrilm 4fee7c4bb7 base project 2025-10-23 22:16:53 +07:00