|
|
@ -16,7 +16,7 @@ import 'package:flutter/material.dart';
|
|
|
|
import 'package:intl/intl.dart';
|
|
|
|
import 'package:intl/intl.dart';
|
|
|
|
import 'package:provider/provider.dart';
|
|
|
|
import 'package:provider/provider.dart';
|
|
|
|
import 'package:syncfusion_flutter_calendar/calendar.dart';
|
|
|
|
import 'package:syncfusion_flutter_calendar/calendar.dart';
|
|
|
|
|
|
|
|
import 'dart:convert';
|
|
|
|
import '../../../uitl/date_uitl.dart';
|
|
|
|
import '../../../uitl/date_uitl.dart';
|
|
|
|
|
|
|
|
|
|
|
|
class DocAvailableAppointments extends StatefulWidget {
|
|
|
|
class DocAvailableAppointments extends StatefulWidget {
|
|
|
@ -58,6 +58,7 @@ class _DocAvailableAppointmentsState extends State<DocAvailableAppointments> wit
|
|
|
|
|
|
|
|
|
|
|
|
var language;
|
|
|
|
var language;
|
|
|
|
bool isLiveCareSchedule;
|
|
|
|
bool isLiveCareSchedule;
|
|
|
|
|
|
|
|
// String selectedLogSlots ='';
|
|
|
|
|
|
|
|
|
|
|
|
@override
|
|
|
|
@override
|
|
|
|
void didUpdateWidget(covariant DocAvailableAppointments oldWidget) {
|
|
|
|
void didUpdateWidget(covariant DocAvailableAppointments oldWidget) {
|
|
|
@ -212,6 +213,22 @@ class _DocAvailableAppointmentsState extends State<DocAvailableAppointments> wit
|
|
|
|
if (dayEvents.length != 0) {
|
|
|
|
if (dayEvents.length != 0) {
|
|
|
|
DocAvailableAppointments.areSlotsAvailable = true;
|
|
|
|
DocAvailableAppointments.areSlotsAvailable = true;
|
|
|
|
selectedButtonIndex = 0;
|
|
|
|
selectedButtonIndex = 0;
|
|
|
|
|
|
|
|
// selectedLogSlots = dayEvents[selectedButtonIndex].toString();
|
|
|
|
|
|
|
|
List<Map<String,dynamic>> timeList =[];
|
|
|
|
|
|
|
|
for(var i =0; i<dayEvents.length;i++){
|
|
|
|
|
|
|
|
Map<String,dynamic> timeSlot={
|
|
|
|
|
|
|
|
"isoTime":dayEvents[i].isoTime,
|
|
|
|
|
|
|
|
"start":dayEvents[i].start.toString(),
|
|
|
|
|
|
|
|
"end":dayEvents[i].end.toString(),
|
|
|
|
|
|
|
|
"vidaDate":dayEvents[i].vidaDate
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
timeList.add(timeSlot);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AppSharedPreferences sharedPref = new AppSharedPreferences();
|
|
|
|
|
|
|
|
sharedPref.setString('selectedLogSlots', json.encode(timeList));
|
|
|
|
DocAvailableAppointments.selectedTime = dayEvents[selectedButtonIndex].isoTime;
|
|
|
|
DocAvailableAppointments.selectedTime = dayEvents[selectedButtonIndex].isoTime;
|
|
|
|
} else
|
|
|
|
} else
|
|
|
|
DocAvailableAppointments.areSlotsAvailable = false;
|
|
|
|
DocAvailableAppointments.areSlotsAvailable = false;
|
|
|
@ -229,7 +246,7 @@ class _DocAvailableAppointmentsState extends State<DocAvailableAppointments> wit
|
|
|
|
? DateUtil.convertStringToDate(freeSlotsResponse[i])
|
|
|
|
? DateUtil.convertStringToDate(freeSlotsResponse[i])
|
|
|
|
: DateUtil.convertStringToDateSaudiTimezone(freeSlotsResponse[i], widget.doctor.projectID);
|
|
|
|
: DateUtil.convertStringToDateSaudiTimezone(freeSlotsResponse[i], widget.doctor.projectID);
|
|
|
|
slotsList.add(FreeSlot(date, ['slot']));
|
|
|
|
slotsList.add(FreeSlot(date, ['slot']));
|
|
|
|
docFreeSlots.add(TimeSlot(isoTime: formatter.format(date), start: new DateTime(date.year, date.month, date.day, 0, 0, 0, 0), end: date));
|
|
|
|
docFreeSlots.add(TimeSlot(isoTime: formatter.format(date), start: new DateTime(date.year, date.month, date.day, 0, 0, 0, 0), end: date, vidaDate: freeSlotsResponse[i]));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_eventsParsed = Map.fromIterable(slotsList, key: (e) => e.slot, value: (e) => e.event);
|
|
|
|
_eventsParsed = Map.fromIterable(slotsList, key: (e) => e.slot, value: (e) => e.event);
|
|
|
|
setState(() {
|
|
|
|
setState(() {
|
|
|
|