TIF_E41202429/Mobile/patrolin/skripsi/lib/view/data_testing_page.dart

98 lines
3.1 KiB
Dart

import 'package:d_view/d_view.dart';
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:skripsi/config/theme.dart';
import 'package:skripsi/controller/cKasusTesting.dart';
import 'package:skripsi/model/kasus_testing.dart';
import 'package:skripsi/view/detail_training_page.dart';
import 'package:skripsi/view/tambah_data_testing.dart';
import 'package:skripsi/widget/card_kasus_testing.dart';
class TestingPage extends StatefulWidget {
const TestingPage({super.key});
@override
State<TestingPage> createState() => TestingPageState();
}
class TestingPageState extends State<TestingPage> {
final cKasusTesting = Get.put(CKasusTesting());
refresh() {
cKasusTesting.getListKasusTesting();
}
@override
void initState() {
refresh();
cKasusTesting.listKasusTesting;
super.initState();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
elevation: 0,
backgroundColor: whiteColor,
leadingWidth: 70.w,
centerTitle: true,
title: Text(
'Data Testing',
style: robotoSedangHitam,
),
leading: TextButton(
onPressed: () {},
child: Text('', style: robotoSedangHitam.copyWith(color: whiteColor)),
),
actions: [
TextButton(
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => const TmbhDataTesting()));
},
child: const Icon(Icons.add)),
],
),
body: Padding(
padding: EdgeInsets.fromLTRB(10.w, 10.w, 10.w, 60.w),
child: Column(
children: [
Expanded(
child: GetBuilder<CKasusTesting>(
builder: (_) {
if (_.loading) return DView.loadingCircle();
if (_.listKasusTesting.isEmpty) return DView.empty('Kosong');
return RefreshIndicator(
onRefresh: () async => refresh(),
child: ListView.builder(
itemCount: _.listKasusTesting.length,
itemBuilder: (BuildContext context, int index) {
KasusTesting kasusTesting = _.listKasusTesting[index];
return CardKasusTesting(
kasusTesting: kasusTesting,
ontap: () {
Get.to(DetailPage(
tkp: kasusTesting.tkp ?? "Kosong",
jk: kasusTesting.jumlahKejahatan ?? "Kosong",
jtp: kasusTesting.jarakTkpPolres ?? "Kosong",
status: kasusTesting.status ?? "Kosong",
name: kasusTesting.name ?? "Kosong"));
},
);
},
),
);
},
),
),
],
),
),
);
}
}