Perbarui model dan tampilan untuk mendukung fungsionalitas QR code dalam proses verifikasi penerima. Tambahkan properti qrCodeHash pada PenerimaPenyaluranModel dan implementasikan metode verifikasi QR code di DetailPenyaluranController. Modifikasi tampilan di WargaDetailPenerimaanView dan DetailPenyaluranPage untuk menampilkan QR code dan menambahkan fungsionalitas pemindaian QR code. Perbarui rute aplikasi untuk mendukung navigasi ke halaman pemindaian QR code dan konfirmasi penerima.
This commit is contained in:
@ -85,8 +85,11 @@ class WargaDashboardController extends GetxController {
|
||||
}
|
||||
|
||||
// Fungsi untuk mengambil data penerima penyaluran
|
||||
Future<void> fetchPenerimaPenyaluran() async {
|
||||
Future<List<PenerimaPenyaluranModel>> fetchPenerimaPenyaluran() async {
|
||||
try {
|
||||
// Reset data terlebih dahulu untuk memastikan tidak ada data lama yang tersimpan
|
||||
penerimaPenyaluran.clear();
|
||||
|
||||
// Pertama, cari warga_id berdasarkan user_id
|
||||
final wargaResponse = await _supabaseService.client
|
||||
.from('warga')
|
||||
@ -175,13 +178,21 @@ class WargaDashboardController extends GetxController {
|
||||
penerima.add(model);
|
||||
}
|
||||
|
||||
// Update nilai observable
|
||||
penerimaPenyaluran.assignAll(penerima);
|
||||
|
||||
var diterima =
|
||||
penerima.where((p) => p.statusPenerimaan == 'DITERIMA').length;
|
||||
totalPenyaluranDiterima.value = diterima;
|
||||
|
||||
// Log untuk debugging
|
||||
print(
|
||||
'Berhasil memuat ${penerima.length} data penerimaan untuk warga ID: $wargaId');
|
||||
|
||||
return penerima;
|
||||
} catch (e) {
|
||||
print('Error fetchPenerimaPenyaluran: $e');
|
||||
return [];
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user