Perbarui model dan tampilan untuk mendukung penyaluran baru
- Hapus properti tanggalPenjadwalan dari model PenyaluranBantuanModel - Ganti referensi tanggalPenjadwalan dengan createdAt di tampilan PermintaanPenjadwalanWidget dan PermintaanPenjadwalanView - Tambahkan fungsi baru untuk menambahkan penyaluran di JadwalPenyaluranController - Tambahkan rute dan tampilan untuk menambah penyaluran di aplikasi - Perbarui SupabaseService untuk menyimpan data penyaluran baru ke database
This commit is contained in:
60
lib/app/data/models/pengajuan_kelayakan_bantuan_model.dart
Normal file
60
lib/app/data/models/pengajuan_kelayakan_bantuan_model.dart
Normal file
@ -0,0 +1,60 @@
|
||||
import 'dart:convert';
|
||||
|
||||
enum StatusKelayakan { pending, disetujui, ditolak }
|
||||
|
||||
class PengajuanKelayakanBantuanModel {
|
||||
final String? id;
|
||||
final String? buktiKelayakan;
|
||||
final String? alasanVerifikasi;
|
||||
final DateTime? createdAt;
|
||||
final DateTime? updatedAt;
|
||||
final String? skemaBantuanId;
|
||||
final String? wargaId;
|
||||
final StatusKelayakan? status;
|
||||
|
||||
PengajuanKelayakanBantuanModel({
|
||||
this.id,
|
||||
this.buktiKelayakan,
|
||||
this.alasanVerifikasi,
|
||||
this.createdAt,
|
||||
this.updatedAt,
|
||||
this.skemaBantuanId,
|
||||
this.wargaId,
|
||||
this.status,
|
||||
});
|
||||
|
||||
factory PengajuanKelayakanBantuanModel.fromRawJson(String str) =>
|
||||
PengajuanKelayakanBantuanModel.fromJson(json.decode(str));
|
||||
|
||||
String toRawJson() => json.encode(toJson());
|
||||
|
||||
factory PengajuanKelayakanBantuanModel.fromJson(Map<String, dynamic> json) =>
|
||||
PengajuanKelayakanBantuanModel(
|
||||
id: json["id"],
|
||||
buktiKelayakan: json["bukti_kelayakan"],
|
||||
alasanVerifikasi: json["alasan_verifikasi"],
|
||||
createdAt: json["created_at"] != null
|
||||
? DateTime.parse(json["created_at"])
|
||||
: null,
|
||||
updatedAt: json["updated_at"] != null
|
||||
? DateTime.parse(json["updated_at"])
|
||||
: null,
|
||||
skemaBantuanId: json["skema_bantuan_id"],
|
||||
wargaId: json["warga_id"],
|
||||
status: json["status"] != null
|
||||
? StatusKelayakan.values.firstWhere(
|
||||
(e) => e.toString() == 'StatusKelayakan.${json["status"]}')
|
||||
: null,
|
||||
);
|
||||
|
||||
Map<String, dynamic> toJson() => {
|
||||
"id": id,
|
||||
"bukti_kelayakan": buktiKelayakan,
|
||||
"alasan_verifikasi": alasanVerifikasi,
|
||||
"created_at": createdAt?.toIso8601String(),
|
||||
"updated_at": updatedAt?.toIso8601String(),
|
||||
"skema_bantuan_id": skemaBantuanId,
|
||||
"warga_id": wargaId,
|
||||
"status": status?.toString().split('.').last,
|
||||
};
|
||||
}
|
@ -8,7 +8,6 @@ class PenyaluranBantuanModel {
|
||||
final String? petugasId;
|
||||
final String? status;
|
||||
final String? alasanPenolakan;
|
||||
final DateTime? tanggalPenjadwalan;
|
||||
final DateTime? tanggalPenyaluran;
|
||||
final String? kategoriBantuanId;
|
||||
final DateTime? tanggalPermintaan;
|
||||
@ -25,7 +24,6 @@ class PenyaluranBantuanModel {
|
||||
this.petugasId,
|
||||
this.status,
|
||||
this.alasanPenolakan,
|
||||
this.tanggalPenjadwalan,
|
||||
this.tanggalPenyaluran,
|
||||
this.kategoriBantuanId,
|
||||
this.tanggalPermintaan,
|
||||
@ -49,9 +47,6 @@ class PenyaluranBantuanModel {
|
||||
petugasId: json["petugas_id"],
|
||||
status: json["status"],
|
||||
alasanPenolakan: json["alasan_penolakan"],
|
||||
tanggalPenjadwalan: json["tanggal_penjadwalan"] != null
|
||||
? DateTime.parse(json["tanggal_penjadwalan"]).toUtc()
|
||||
: null,
|
||||
tanggalPenyaluran: json["tanggal_penyaluran"] != null
|
||||
? DateTime.parse(json["tanggal_penyaluran"]).toUtc()
|
||||
: null,
|
||||
@ -77,7 +72,6 @@ class PenyaluranBantuanModel {
|
||||
"petugas_id": petugasId,
|
||||
"status": status,
|
||||
"alasan_penolakan": alasanPenolakan,
|
||||
"tanggal_penjadwalan": tanggalPenjadwalan?.toUtc().toIso8601String(),
|
||||
"tanggal_penyaluran": tanggalPenyaluran?.toUtc().toIso8601String(),
|
||||
"kategori_bantuan_id": kategoriBantuanId,
|
||||
"tanggal_permintaan": tanggalPermintaan?.toUtc().toIso8601String(),
|
||||
|
63
lib/app/data/models/skema_bantuan_model.dart
Normal file
63
lib/app/data/models/skema_bantuan_model.dart
Normal file
@ -0,0 +1,63 @@
|
||||
import 'dart:convert';
|
||||
|
||||
class SkemaBantuanModel {
|
||||
final String? id;
|
||||
final int? petugasVerifikasiId;
|
||||
final String? nama;
|
||||
final String? deskripsi;
|
||||
final int? kuota;
|
||||
final String? kriteria;
|
||||
final DateTime? createdAt;
|
||||
final DateTime? updatedAt;
|
||||
final String? stokBantuanId;
|
||||
final String? kategoriBantuanId;
|
||||
|
||||
SkemaBantuanModel({
|
||||
this.id,
|
||||
this.petugasVerifikasiId,
|
||||
this.nama,
|
||||
this.deskripsi,
|
||||
this.kuota,
|
||||
this.kriteria,
|
||||
this.createdAt,
|
||||
this.updatedAt,
|
||||
this.stokBantuanId,
|
||||
this.kategoriBantuanId,
|
||||
});
|
||||
|
||||
factory SkemaBantuanModel.fromRawJson(String str) =>
|
||||
SkemaBantuanModel.fromJson(json.decode(str));
|
||||
|
||||
String toRawJson() => json.encode(toJson());
|
||||
|
||||
factory SkemaBantuanModel.fromJson(Map<String, dynamic> json) =>
|
||||
SkemaBantuanModel(
|
||||
id: json["id"],
|
||||
petugasVerifikasiId: json["petugas_verifikasi_id"],
|
||||
nama: json["nama"],
|
||||
deskripsi: json["deskripsi"],
|
||||
kuota: json["kuota"],
|
||||
kriteria: json["kriteria"],
|
||||
createdAt: json["created_at"] != null
|
||||
? DateTime.parse(json["created_at"])
|
||||
: null,
|
||||
updatedAt: json["updated_at"] != null
|
||||
? DateTime.parse(json["updated_at"])
|
||||
: null,
|
||||
stokBantuanId: json["stok_bantuan_id"],
|
||||
kategoriBantuanId: json["kategori_bantuan_id"],
|
||||
);
|
||||
|
||||
Map<String, dynamic> toJson() => {
|
||||
"id": id,
|
||||
"petugas_verifikasi_id": petugasVerifikasiId,
|
||||
"nama": nama,
|
||||
"deskripsi": deskripsi,
|
||||
"kuota": kuota,
|
||||
"kriteria": kriteria,
|
||||
"created_at": createdAt?.toIso8601String(),
|
||||
"updated_at": updatedAt?.toIso8601String(),
|
||||
"stok_bantuan_id": stokBantuanId,
|
||||
"kategori_bantuan_id": kategoriBantuanId,
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user