Files
penyaluran_app/lib/app/data/models/donatur_model.dart
Khafidh Fuadi d97c324ac9 Tambahkan fitur manajemen donatur dan penitipan bantuan
- Perbarui model DonaturModel dengan tambahan properti no_hp
- Tambahkan metode pencarian dan tambah donatur di SupabaseService
- Kembangkan fitur pencarian donatur di PenitipanBantuanController
- Tambahkan dialog untuk menambah donatur baru di PenitipanView
- Implementasikan metode tambah penitipan bantuan dengan foto
- Tambahkan validasi dan UI untuk proses tambah penitipan bantuan
2025-03-12 09:23:53 +07:00

67 lines
1.7 KiB
Dart

import 'dart:convert';
class DonaturModel {
final String? id;
final String? nama;
final String? alamat;
final String? telepon;
final String? noHp;
final String? email;
final String? jenis;
final String? deskripsi;
final String? status;
final DateTime? createdAt;
final DateTime? updatedAt;
DonaturModel({
this.id,
this.nama,
this.alamat,
this.telepon,
this.noHp,
this.email,
this.jenis,
this.deskripsi,
this.status,
this.createdAt,
this.updatedAt,
});
factory DonaturModel.fromRawJson(String str) =>
DonaturModel.fromJson(json.decode(str));
String toRawJson() => json.encode(toJson());
factory DonaturModel.fromJson(Map<String, dynamic> json) => DonaturModel(
id: json["id"],
nama: json["nama"],
alamat: json["alamat"],
telepon: json["telepon"],
noHp: json["no_hp"] ?? json["telepon"],
email: json["email"],
jenis: json["jenis"],
deskripsi: json["deskripsi"],
status: json["status"] ?? 'AKTIF',
createdAt: json["created_at"] != null
? DateTime.parse(json["created_at"])
: null,
updatedAt: json["updated_at"] != null
? DateTime.parse(json["updated_at"])
: null,
);
Map<String, dynamic> toJson() => {
"id": id,
"nama": nama,
"alamat": alamat,
"telepon": telepon,
"no_hp": noHp ?? telepon,
"email": email,
"jenis": jenis,
"deskripsi": deskripsi,
"status": status ?? 'AKTIF',
"created_at": createdAt?.toIso8601String(),
"updated_at": updatedAt?.toIso8601String(),
};
}