import 'package:diplomaticquarterapp/models/Appointments/DoctorListResponse.dart'; import 'package:diplomaticquarterapp/pages/BookAppointment/widgets/DoctorView.dart'; import 'package:diplomaticquarterapp/services/appointment_services/GetDoctorsList.dart'; import 'package:diplomaticquarterapp/uitl/app_toast.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/progress_indicator/app_circular_progress_Indeicator.dart'; import 'package:flutter/material.dart'; import 'package:smart_progress_bar/smart_progress_bar.dart'; class VisitTicket extends StatefulWidget { List appoList = []; @override _VisitTicketState createState() => _VisitTicketState(); } class _VisitTicketState extends State { bool isLoading = false; @override void initState() { getPatientAppointmentCurfewHistory(context); super.initState(); } @override Widget build(BuildContext context) { return AppScaffold( appBarTitle: TranslationBase.of(context).todoList, body: isLoading == false ? SingleChildScrollView( child: ListView.builder( scrollDirection: Axis.vertical, shrinkWrap: true, physics: ScrollPhysics(), padding: EdgeInsets.all(0.0), itemCount: widget.appoList.length, itemBuilder: (context, index) { return DoctorView( doctor: widget.appoList[index], ); }, ), ) : AppCircularProgressIndicator(), ); } getPatientAppointmentCurfewHistory(BuildContext context) { loading(true); DoctorsListService service = new DoctorsListService(); service.getPatientAppointmentHistory(true, context).then((res) { print(res['AppoimentAllHistoryResultList']); if (res['MessageStatus'] == 1) { setState(() { if (res['AppoimentAllHistoryResultList'].length != 0) { widget.appoList.clear(); res['AppoimentAllHistoryResultList'].forEach((v) { widget.appoList.add(new DoctorList.fromJson(v)); }); } else {} }); loading(false); } else { AppToast.showErrorToast(message: res['ErrorEndUserMessage']); loading(false); } }).catchError((err) { print(err); loading(false); }).showProgressBar(text: "Loading", backgroundColor: Colors.blue.withOpacity(0.6)); } loading(bool flag) { setState(() { isLoading = flag; }); } }