Files
penyaluran_app/lib/app/modules/petugas_desa/controllers/counter_service.dart
Khafidh Fuadi 8a3b23d4ea Tambahkan CounterService untuk manajemen counter di seluruh modul
- Buat CounterService untuk mengelola counter di berbagai controller
- Refaktor PetugasDesaController dan PenitipanBantuanController untuk menggunakan CounterService
- Perbarui binding untuk mendaftarkan CounterService
- Tambahkan metode update untuk berbagai jenis counter
- Sederhanakan manajemen state dengan menggunakan layanan pusat
2025-03-12 07:32:33 +07:00

47 lines
1.3 KiB
Dart

import 'package:get/get.dart';
/// Service untuk berbagi data counter antar controller
class CounterService extends GetxService {
static CounterService get to => Get.find<CounterService>();
// Counter untuk penitipan
final RxInt jumlahMenunggu = 0.obs;
final RxInt jumlahTerverifikasi = 0.obs;
final RxInt jumlahDitolak = 0.obs;
// Counter untuk pengaduan
final RxInt jumlahDiproses = 0.obs;
// Counter untuk notifikasi
final RxInt jumlahNotifikasiBelumDibaca = 0.obs;
// Counter untuk jadwal
final RxInt jumlahJadwalHariIni = 0.obs;
// Metode untuk memperbarui counter penitipan
void updatePenitipanCounters({
required int menunggu,
required int terverifikasi,
required int ditolak,
}) {
jumlahMenunggu.value = menunggu;
jumlahTerverifikasi.value = terverifikasi;
jumlahDitolak.value = ditolak;
}
// Metode untuk memperbarui counter pengaduan
void updatePengaduanCounter(int diproses) {
jumlahDiproses.value = diproses;
}
// Metode untuk memperbarui counter notifikasi
void updateNotifikasiCounter(int belumDibaca) {
jumlahNotifikasiBelumDibaca.value = belumDibaca;
}
// Metode untuk memperbarui counter jadwal
void updateJadwalCounter(int hariIni) {
jumlahJadwalHariIni.value = hariIni;
}
}