10 Commits
Author SHA1 Message Date
efrilmandClaude Opus 5 1505a83dd3 feat: dukung penjualan produk per timbangan
Produk kini punya cara jual `unit` (cacah) atau `weight` (timbangan),
mengikuti kontrak backend di docs/integration-weight-based-products.md.

- tipe SellBy, domain/infrastructure unit baru, dan endpoint /api/v1/units
- dialog input berat saat produk timbangan ditambahkan ke keranjang
- tiap penimbangan jadi baris keranjang sendiri; total baris dihitung
  berat x harga satuan, sedangkan produk cacah tetap digabung
- request ke backend mengirim quantity 1 dan membawa berat
- migrasi DB v3: kolom sell_by, unit_id, unit_name, unit_abbreviation
  di tabel products supaya satuan tetap tampil saat offline
- tampilan keranjang, struk, split bill, void, dan refund memakai berat
- test/weight_based_products_test.dart menutup perilaku di atas (9 test)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-06 23:03:31 +07:00
Efril b228538725 feat: implement idempotency key for critical API endpoints 2026-06-04 00:48:50 +07:00
efrilm b335102677 payment 2025-10-30 16:35:47 +07:00
efrilm adc90a90a0 add items order 2025-10-28 20:55:10 +07:00
efrilm a514a8abdb save order pay later page 2025-10-28 16:26:35 +07:00
efrilm 59d4d4c0e5 success order page 2025-10-28 15:43:51 +07:00
efrilm 137f3d9636 create order with payment 2025-10-28 00:58:39 +07:00
efrilm 37f0008ec8 create order 2025-10-28 00:08:12 +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