added user page, pimpinan page, e signature
This commit is contained in:
@ -58,18 +58,68 @@ class TambahDanaSosialView extends StatelessWidget {
|
||||
),
|
||||
const SizedBox(height: 20),
|
||||
Text(
|
||||
"Jumlah (Rp. )",
|
||||
"Jenis Donasi",
|
||||
style: regularTextStyle.copyWith(color: mainColor),
|
||||
),
|
||||
MyTextFormField(
|
||||
hintText: "Jumlah (Rp. )",
|
||||
keyboardType: TextInputType.number,
|
||||
controller: model.jumlahController,
|
||||
validator: Validatorless.multiple(
|
||||
[
|
||||
Validatorless.required('Jumlah tidak boleh kosong'),
|
||||
Validatorless.number('Jumlah harus angka'),
|
||||
],
|
||||
Container(
|
||||
width: double.infinity,
|
||||
height: 60,
|
||||
padding: const EdgeInsets.symmetric(horizontal: 10),
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(25),
|
||||
border: Border.all(
|
||||
color: mainColor,
|
||||
),
|
||||
),
|
||||
child: DropdownButtonHideUnderline(
|
||||
child: DropdownButton<String>(
|
||||
value: model.jenisDonasi,
|
||||
onChanged: (String? newValue) {
|
||||
// model.setSelectedjenisDonasi(newValue!);
|
||||
model.log.i(newValue);
|
||||
model.jenisDonasi = newValue!;
|
||||
model.notifyListeners();
|
||||
},
|
||||
items: model.jenisDonasiList.map((String value) {
|
||||
return DropdownMenuItem<String>(
|
||||
value: value,
|
||||
child: Text(
|
||||
value,
|
||||
style: regularTextStyle.copyWith(
|
||||
fontSize: 16,
|
||||
),
|
||||
),
|
||||
);
|
||||
}).toList(),
|
||||
),
|
||||
),
|
||||
),
|
||||
Visibility(
|
||||
visible: model.jenisDonasi == 'Uang',
|
||||
child: const SizedBox(height: 20),
|
||||
),
|
||||
Visibility(
|
||||
visible: model.jenisDonasi == 'Uang',
|
||||
child: Text(
|
||||
"Jumlah (Rp. )",
|
||||
style: regularTextStyle.copyWith(color: mainColor),
|
||||
),
|
||||
),
|
||||
Visibility(
|
||||
visible: model.jenisDonasi == 'Uang',
|
||||
child: MyTextFormField(
|
||||
hintText: "Jumlah (Rp. ) Donasi",
|
||||
keyboardType: TextInputType.number,
|
||||
controller: model.jumlahController,
|
||||
validator: model.jenisDonasi == 'Uang'
|
||||
? Validatorless.multiple(
|
||||
[
|
||||
Validatorless.required(
|
||||
'Jumlah tidak boleh kosong'),
|
||||
Validatorless.number('Jumlah harus angka'),
|
||||
],
|
||||
)
|
||||
: null,
|
||||
),
|
||||
),
|
||||
const SizedBox(height: 20),
|
||||
@ -78,7 +128,7 @@ class TambahDanaSosialView extends StatelessWidget {
|
||||
style: regularTextStyle.copyWith(color: mainColor),
|
||||
),
|
||||
MyTextFormField(
|
||||
hintText: 'Tanggal',
|
||||
hintText: ' Pilih Tanggal',
|
||||
readOnly: true,
|
||||
controller: model.tanggalController,
|
||||
validator: Validatorless.required(
|
||||
@ -88,6 +138,30 @@ class TambahDanaSosialView extends StatelessWidget {
|
||||
},
|
||||
),
|
||||
const SizedBox(height: 20),
|
||||
Visibility(
|
||||
visible: model.jenisDonasi == 'Barang',
|
||||
child: Text(
|
||||
"Keterangan",
|
||||
style: regularTextStyle.copyWith(color: mainColor),
|
||||
),
|
||||
),
|
||||
Visibility(
|
||||
visible: model.jenisDonasi == 'Barang',
|
||||
child: MyTextFormField(
|
||||
hintText: 'Masukkan Keterangan',
|
||||
maxLines: 3,
|
||||
controller: model.keteranganController,
|
||||
validator: model.jenisDonasi == 'Barang'
|
||||
? Validatorless.multiple(
|
||||
[
|
||||
Validatorless.required(
|
||||
'Keterangan tidak boleh kosong'),
|
||||
],
|
||||
)
|
||||
: null,
|
||||
),
|
||||
),
|
||||
const SizedBox(height: 20),
|
||||
MyButton(
|
||||
text: "Simpan Data",
|
||||
onPressed: () {
|
||||
|
||||
@ -13,14 +13,15 @@ class TambahDanaSosialViewModel extends CustomBaseViewModel {
|
||||
final _httpService = locator<MyHttpServices>();
|
||||
final easyLoading = locator<MyEasyLoading>();
|
||||
|
||||
String jenisDana = 'Pemasukan';
|
||||
List<String> jenisDanaList = ['Pemasukan', 'Pengeluaran'];
|
||||
String jenisDonasi = 'Uang';
|
||||
List<String> jenisDonasiList = ['Uang', 'Barang'];
|
||||
|
||||
final formKey = GlobalKey<FormState>();
|
||||
|
||||
TextEditingController namaController = TextEditingController();
|
||||
TextEditingController jumlahController = TextEditingController();
|
||||
TextEditingController tanggalController = TextEditingController();
|
||||
TextEditingController keteranganController = TextEditingController();
|
||||
|
||||
Future<void> init() async {}
|
||||
|
||||
@ -47,6 +48,8 @@ class TambahDanaSosialViewModel extends CustomBaseViewModel {
|
||||
'nama': namaController.text,
|
||||
'jumlah': jumlahController.text,
|
||||
'tanggal': tanggalController.text,
|
||||
'ket': keteranganController.text,
|
||||
'jenis': jenisDonasi,
|
||||
});
|
||||
var response =
|
||||
await _httpService.postWithFormData('dana_sosial', formData);
|
||||
|
||||
Reference in New Issue
Block a user