enable business calendar mode
This commit is contained in:
@@ -9,26 +9,28 @@ import 'package:Mzansi_Innovation_Hub/mih_components/mih_package/mih-app_tool_bo
|
|||||||
import 'package:Mzansi_Innovation_Hub/mih_components/mih_pop_up_messages/mih_error_message.dart';
|
import 'package:Mzansi_Innovation_Hub/mih_components/mih_pop_up_messages/mih_error_message.dart';
|
||||||
import 'package:Mzansi_Innovation_Hub/mih_objects/appointment.dart';
|
import 'package:Mzansi_Innovation_Hub/mih_objects/appointment.dart';
|
||||||
import 'package:Mzansi_Innovation_Hub/mih_objects/arguments.dart';
|
import 'package:Mzansi_Innovation_Hub/mih_objects/arguments.dart';
|
||||||
|
import 'package:Mzansi_Innovation_Hub/mih_objects/business.dart';
|
||||||
import 'package:Mzansi_Innovation_Hub/mih_packages/calendar/builder/build_appointment_list.dart';
|
import 'package:Mzansi_Innovation_Hub/mih_packages/calendar/builder/build_appointment_list.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import '../../main.dart';
|
import '../../main.dart';
|
||||||
|
|
||||||
import '../../mih_apis/mih_api_calls.dart';
|
|
||||||
import '../../mih_components/mih_calendar.dart';
|
import '../../mih_components/mih_calendar.dart';
|
||||||
import '../../mih_components/mih_layout/mih_action.dart';
|
import '../../mih_components/mih_layout/mih_action.dart';
|
||||||
import '../../mih_components/mih_layout/mih_header.dart';
|
import '../../mih_components/mih_layout/mih_header.dart';
|
||||||
import '../../mih_components/mih_pop_up_messages/mih_loading_circle.dart';
|
import '../../mih_components/mih_pop_up_messages/mih_loading_circle.dart';
|
||||||
import '../../mih_env/env.dart';
|
import '../../mih_env/env.dart';
|
||||||
import '../../mih_objects/access_request.dart';
|
|
||||||
import '../../mih_objects/app_user.dart';
|
import '../../mih_objects/app_user.dart';
|
||||||
import '../../mih_objects/patient_queue.dart';
|
|
||||||
|
|
||||||
class Appointments extends StatefulWidget {
|
class Appointments extends StatefulWidget {
|
||||||
final AppUser signedInUser;
|
final AppUser signedInUser;
|
||||||
|
final Business? business;
|
||||||
|
final bool personalSelected;
|
||||||
|
|
||||||
const Appointments({
|
const Appointments({
|
||||||
super.key,
|
super.key,
|
||||||
required this.signedInUser,
|
required this.signedInUser,
|
||||||
|
required this.business,
|
||||||
|
required this.personalSelected,
|
||||||
});
|
});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@@ -56,9 +58,9 @@ class _PatientAccessRequestState extends State<Appointments> {
|
|||||||
late String selectedDropdown;
|
late String selectedDropdown;
|
||||||
String selectedDay = DateTime.now().toString().split(" ")[0];
|
String selectedDay = DateTime.now().toString().split(" ")[0];
|
||||||
|
|
||||||
late Future<List<AccessRequest>> accessRequestResults;
|
|
||||||
late Future<List<PatientQueue>> personalQueueResults;
|
|
||||||
late Future<List<Appointment>> personalAppointmentResults;
|
late Future<List<Appointment>> personalAppointmentResults;
|
||||||
|
late Future<List<Appointment>> businessAppointmentResults;
|
||||||
|
late Future<List<Appointment>> appointmentResults;
|
||||||
|
|
||||||
Widget displayAppointmentList(List<Appointment> appointmentList) {
|
Widget displayAppointmentList(List<Appointment> appointmentList) {
|
||||||
if (appointmentList.isNotEmpty) {
|
if (appointmentList.isNotEmpty) {
|
||||||
@@ -181,15 +183,26 @@ class _PatientAccessRequestState extends State<Appointments> {
|
|||||||
|
|
||||||
void addAppointmentCall() {
|
void addAppointmentCall() {
|
||||||
if (isAppointmentInputValid()) {
|
if (isAppointmentInputValid()) {
|
||||||
MihMzansiCalendarApis.addPersonalAppointment(
|
if (widget.personalSelected == false) {
|
||||||
widget.signedInUser,
|
MihMzansiCalendarApis.addBusinessAppointment(
|
||||||
widget.signedInUser.app_id,
|
widget.signedInUser,
|
||||||
_appointmentTitleController.text,
|
widget.business!,
|
||||||
_appointmentDescriptionIDController.text,
|
_appointmentTitleController.text,
|
||||||
_appointmentDateController.text,
|
_appointmentDescriptionIDController.text,
|
||||||
_appointmentTimeController.text,
|
_appointmentDateController.text,
|
||||||
context,
|
_appointmentTimeController.text,
|
||||||
);
|
context,
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
MihMzansiCalendarApis.addPersonalAppointment(
|
||||||
|
widget.signedInUser,
|
||||||
|
_appointmentTitleController.text,
|
||||||
|
_appointmentDescriptionIDController.text,
|
||||||
|
_appointmentDateController.text,
|
||||||
|
_appointmentTimeController.text,
|
||||||
|
context,
|
||||||
|
);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
showDialog(
|
showDialog(
|
||||||
context: context,
|
context: context,
|
||||||
@@ -203,15 +216,17 @@ class _PatientAccessRequestState extends State<Appointments> {
|
|||||||
|
|
||||||
void checkforchange() {
|
void checkforchange() {
|
||||||
setState(() {
|
setState(() {
|
||||||
personalAppointmentResults =
|
if (widget.personalSelected == false) {
|
||||||
MihMzansiCalendarApis.getPersonalAppointments(
|
appointmentResults = MihMzansiCalendarApis.getBusinessAppointments(
|
||||||
widget.signedInUser.app_id,
|
widget.business!.business_id,
|
||||||
selectedDay,
|
selectedDay,
|
||||||
);
|
);
|
||||||
personalQueueResults = MIHApiCalls.fetchPersonalAppointmentsAPICall(
|
} else {
|
||||||
selectedDay,
|
appointmentResults = MihMzansiCalendarApis.getPersonalAppointments(
|
||||||
widget.signedInUser.app_id,
|
widget.signedInUser.app_id,
|
||||||
);
|
selectedDay,
|
||||||
|
);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -273,7 +288,7 @@ class _PatientAccessRequestState extends State<Appointments> {
|
|||||||
mainAxisSize: MainAxisSize.max,
|
mainAxisSize: MainAxisSize.max,
|
||||||
children: [
|
children: [
|
||||||
FutureBuilder(
|
FutureBuilder(
|
||||||
future: personalAppointmentResults,
|
future: appointmentResults,
|
||||||
builder: (context, snapshot) {
|
builder: (context, snapshot) {
|
||||||
if (snapshot.connectionState == ConnectionState.waiting) {
|
if (snapshot.connectionState == ConnectionState.waiting) {
|
||||||
return const Expanded(
|
return const Expanded(
|
||||||
@@ -338,15 +353,17 @@ class _PatientAccessRequestState extends State<Appointments> {
|
|||||||
void initState() {
|
void initState() {
|
||||||
appointmentDateController.addListener(checkforchange);
|
appointmentDateController.addListener(checkforchange);
|
||||||
setState(() {
|
setState(() {
|
||||||
personalAppointmentResults =
|
if (widget.personalSelected == false) {
|
||||||
MihMzansiCalendarApis.getPersonalAppointments(
|
appointmentResults = MihMzansiCalendarApis.getBusinessAppointments(
|
||||||
widget.signedInUser.app_id,
|
widget.business!.business_id,
|
||||||
selectedDay,
|
selectedDay,
|
||||||
);
|
);
|
||||||
personalQueueResults = MIHApiCalls.fetchPersonalAppointmentsAPICall(
|
} else {
|
||||||
selectedDay,
|
appointmentResults = MihMzansiCalendarApis.getPersonalAppointments(
|
||||||
widget.signedInUser.app_id,
|
widget.signedInUser.app_id,
|
||||||
);
|
selectedDay,
|
||||||
|
);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
super.initState();
|
super.initState();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user