@ -110,8 +110,7 @@ class _AppointmentDetailsPageState extends State<AppointmentDetailsPage> {
WidgetsBinding . instance . addPostFrameCallback ( ( _ ) async {
WidgetsBinding . instance . addPostFrameCallback ( ( _ ) async {
if ( mounted ) {
if ( mounted ) {
_startCountdownTimer ( ) ;
_startCountdownTimer ( ) ;
await _checkAndUpdateReminderStatus ( ) ;
/ / await _checkAndUpdateReminderStatus ( ) ;
}
}
} ) ;
} ) ;
}
}
@ -414,6 +413,145 @@ class _AppointmentDetailsPageState extends State<AppointmentDetailsPage> {
] ,
] ,
) ,
) ,
) ,
) ,
SizedBox ( height: 16. h ) ,
Row (
mainAxisSize: MainAxisSize . max ,
children: [
Utils . buildSvgWithAssets ( icon: AppAssets . prescription_reminder_icon , width: 40. w , height: 40. h , applyThemeColor: false ) ,
SizedBox ( width: 8. w ) ,
Column (
crossAxisAlignment: CrossAxisAlignment . start ,
spacing: 4. h ,
children: [
LocaleKeys . setReminder . tr ( context: context ) . toText13 ( isBold: true ) ,
LocaleKeys . notifyMeBeforeAppointment . tr ( context: context ) . toText11 ( color: AppColors . textColorLight , isBold: true ) ,
] ,
) ,
const Spacer ( ) ,
BellAnimatedSwitch (
key: _bellSwitchKey ,
width: 48. w ,
height: 30. h ,
initialValue: widget . patientAppointmentHistoryResponseModel . hasReminder ? ? false ,
activeColor: AppColors . successColor . withOpacity ( 0.2 ) ,
inactiveColor: AppColors . lightGrayBGColor ,
activeCircleColor: AppColors . successColor ,
inactiveCircleColor: AppColors . greyTextColor ,
activeIconColor: AppColors . bgGreenColor ,
inactiveIconColor: AppColors . greyTextColor ,
activeIcon: Utils . buildSvgWithAssets ( icon: AppAssets . bell , iconColor: AppColors . whiteColor , width: 12. w , height: 12. h ) ,
inactiveIcon: Utils . buildSvgWithAssets ( icon: AppAssets . bell , iconColor: AppColors . whiteColor , width: 12. w , height: 12. h ) ,
onChanged: ( newValue ) async {
CalenderUtilsNew calender = CalenderUtilsNew . instance ;
bool isEventAddedOrRemoved = false ;
if ( newValue = = true ) {
DateTime startDate = DateTime . now ( ) ;
DateTime endDate = DateUtil . convertStringToDate ( widget . patientAppointmentHistoryResponseModel . appointmentDate ) ;
/ / Show reminder bottom sheet and check if permission was granted
bool permissionGranted = await BottomSheetUtils ( ) . showReminderBottomSheet (
context ,
endDate ,
widget . patientAppointmentHistoryResponseModel . doctorNameObj ? ? " " ,
" ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ? ? " " ,
" " ,
" " ,
title: " Appointment with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } " ,
description:
" ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } will be having an appointment on ${ widget . patientAppointmentHistoryResponseModel . appointmentDate } " ,
onSuccess: ( ) {
setState ( ( ) {
myAppointmentsViewModel . setAppointmentReminder ( newValue , widget . patientAppointmentHistoryResponseModel ) ;
} ) ;
} ,
isMultiAllowed: true ,
onMultiDateSuccess: ( int selectedIndex ) async {
isEventAddedOrRemoved = await calender . createOrUpdateEvent (
title:
" Appointment Reminder with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } on ${ DateUtil . convertStringToDate ( widget . patientAppointmentHistoryResponseModel . appointmentDate ) } , Appointment # ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
description:
" Appointment Reminder with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } in ${ widget . patientAppointmentHistoryResponseModel . projectName } " ,
scheduleDateTime: DateUtil . convertStringToDate ( widget . patientAppointmentHistoryResponseModel . appointmentDate ) ,
eventId: " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
location: ' ' ,
reminderMinutes: selectedIndex ) ;
setState ( ( ) {
myAppointmentsViewModel . setAppointmentReminder ( isEventAddedOrRemoved , widget . patientAppointmentHistoryResponseModel ) ;
} ) ;
} ,
) ;
/ / If permission was not granted , revert the switch back to OFF
if ( ! permissionGranted ) {
_bellSwitchKey . currentState ? . setSwitchValue ( false ) ;
}
} else {
isEventAddedOrRemoved = await calender . checkAndRemove (
id: " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
) ;
setState ( ( ) {
myAppointmentsViewModel . setAppointmentReminder ( ! isEventAddedOrRemoved , widget . patientAppointmentHistoryResponseModel ) ;
} ) ;
}
} ,
)
/ / Switch (
/ / activeThumbColor: AppColors . successColor ,
/ / / / activeTrackColor: AppColors . successColor . withValues ( alpha: . 15 ) ,
/ / value: widget . patientAppointmentHistoryResponseModel . hasReminder ! ,
/ / onChanged: ( newValue ) async {
/ / CalenderUtilsNew calender = CalenderUtilsNew . instance ;
/ / bool isEventAddedOrRemoved = false ;
/ / if ( newValue = = true ) {
/ / DateTime startDate = DateTime . now ( ) ;
/ / DateTime endDate = DateUtil . convertStringToDate ( widget
/ / . patientAppointmentHistoryResponseModel . appointmentDate ) ;
/ / BottomSheetUtils ( ) . showReminderBottomSheet (
/ / context ,
/ / endDate ,
/ / widget . patientAppointmentHistoryResponseModel . doctorNameObj ? ? " " ,
/ / " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ? ? " " ,
/ / " " ,
/ / " " ,
/ / title: " Appointment with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } " ,
/ / description:
/ / " ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } will be having an appointment on ${ widget . patientAppointmentHistoryResponseModel . appointmentDate } " ,
/ / onSuccess: ( ) {
/ / setState ( ( ) {
/ / myAppointmentsViewModel . setAppointmentReminder ( newValue , widget . patientAppointmentHistoryResponseModel ) ;
/ / } ) ;
/ / } ,
/ / isMultiAllowed: true ,
/ / onMultiDateSuccess: ( int selectedIndex ) async {
/ / isEventAddedOrRemoved = await calender . createOrUpdateEvent (
/ / title:
/ / " Appointment Reminder with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } on ${ DateUtil . convertStringToDate ( widget . patientAppointmentHistoryResponseModel . appointmentDate ) } , Appointment # ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
/ / description:
/ / " Appointment Reminder with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } in ${ widget . patientAppointmentHistoryResponseModel . projectName } " ,
/ / scheduleDateTime: DateUtil . convertStringToDate ( widget
/ / . patientAppointmentHistoryResponseModel . appointmentDate ) ,
/ / eventId: " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
/ / location: ' ' ,
/ / reminderMinutes: selectedIndex
/ / ) ;
/ / setState ( ( ) {
/ / myAppointmentsViewModel . setAppointmentReminder ( isEventAddedOrRemoved , widget . patientAppointmentHistoryResponseModel ) ;
/ / } ) ;
/ / } ,
/ / ) ;
/ / } else {
/ / isEventAddedOrRemoved = await calender . checkAndRemove ( id: " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " , ) ;
/ / setState ( ( ) {
/ / myAppointmentsViewModel . setAppointmentReminder ( ! isEventAddedOrRemoved , widget . patientAppointmentHistoryResponseModel ) ;
/ / } ) ;
/ / }
/ /
/ /
/ / } ,
/ / ) ,
] ,
) . paddingSymmetrical ( 16. w , 0 )
] ,
] ,
) ,
) ,
) ,
) ,
@ -585,148 +723,148 @@ class _AppointmentDetailsPageState extends State<AppointmentDetailsPage> {
) ;
) ;
} ) ,
} ) ,
SizedBox ( height: 16. h ) ,
SizedBox ( height: 16. h ) ,
Container (
/ / Container (
decoration: RoundedRectangleBorder ( ) . toSmoothCornerDecoration (
/ / decoration: RoundedRectangleBorder ( ) . toSmoothCornerDecoration (
color: AppColors . whiteColor ,
/ / color: AppColors . whiteColor ,
borderRadius: 20. r ,
/ / borderRadius: 20. r ,
hasShadow: false ,
/ / hasShadow: false ,
) ,
/ / ) ,
child: Row (
/ / child: Row (
mainAxisSize: MainAxisSize . max ,
/ / mainAxisSize: MainAxisSize . max ,
children: [
/ / children: [
Utils . buildSvgWithAssets ( icon: AppAssets . prescription_reminder_icon , width: 35. h , height: 35. h , applyThemeColor: false ) ,
/ / Utils . buildSvgWithAssets ( icon: AppAssets . prescription_reminder_icon , width: 35. h , height: 35. h , applyThemeColor: false ) ,
SizedBox ( width: 8. h ) ,
/ / SizedBox ( width: 8. h ) ,
Column (
/ / Column (
crossAxisAlignment: CrossAxisAlignment . start ,
/ / crossAxisAlignment: CrossAxisAlignment . start ,
children: [
/ / children: [
LocaleKeys . setReminder . tr ( context: context ) . toText13 ( isBold: true ) ,
/ / LocaleKeys . setReminder . tr ( context: context ) . toText13 ( isBold: true ) ,
LocaleKeys . notifyMeBeforeAppointment . tr ( context: context ) . toText11 ( color: AppColors . textColorLight , isBold: true ) ,
/ / LocaleKeys . notifyMeBeforeAppointment . tr ( context: context ) . toText11 ( color: AppColors . textColorLight , isBold: true ) ,
] ,
/ / ] ,
) ,
/ / ) ,
const Spacer ( ) ,
/ / const Spacer ( ) ,
BellAnimatedSwitch (
/ / BellAnimatedSwitch (
key: _bellSwitchKey ,
/ / key: _bellSwitchKey ,
initialValue: widget . patientAppointmentHistoryResponseModel . hasReminder ? ? false ,
/ / initialValue: widget . patientAppointmentHistoryResponseModel . hasReminder ? ? false ,
activeColor: AppColors . successColor . withOpacity ( 0.2 ) ,
/ / activeColor: AppColors . successColor . withOpacity ( 0.2 ) ,
inactiveColor: AppColors . lightGrayBGColor ,
/ / inactiveColor: AppColors . lightGrayBGColor ,
activeCircleColor: AppColors . successColor ,
/ / activeCircleColor: AppColors . successColor ,
inactiveCircleColor: AppColors . greyTextColor ,
/ / inactiveCircleColor: AppColors . greyTextColor ,
activeIconColor: AppColors . bgGreenColor ,
/ / activeIconColor: AppColors . bgGreenColor ,
inactiveIconColor: AppColors . greyTextColor ,
/ / inactiveIconColor: AppColors . greyTextColor ,
activeIcon: Utils . buildSvgWithAssets ( icon: AppAssets . bell , iconColor: AppColors . whiteColor , width: 15. w , height: 15. h ) ,
/ / activeIcon: Utils . buildSvgWithAssets ( icon: AppAssets . bell , iconColor: AppColors . whiteColor , width: 15. w , height: 15. h ) ,
inactiveIcon: Utils . buildSvgWithAssets ( icon: AppAssets . bell , iconColor: AppColors . whiteColor , width: 15. w , height: 15. h ) ,
/ / inactiveIcon: Utils . buildSvgWithAssets ( icon: AppAssets . bell , iconColor: AppColors . whiteColor , width: 15. w , height: 15. h ) ,
onChanged: ( newValue ) async {
/ / onChanged: ( newValue ) async {
CalenderUtilsNew calender = CalenderUtilsNew . instance ;
/ / CalenderUtilsNew calender = CalenderUtilsNew . instance ;
bool isEventAddedOrRemoved = false ;
/ / bool isEventAddedOrRemoved = false ;
if ( newValue = = true ) {
/ / if ( newValue = = true ) {
DateTime startDate = DateTime . now ( ) ;
/ / DateTime startDate = DateTime . now ( ) ;
DateTime endDate = DateUtil . convertStringToDate ( widget . patientAppointmentHistoryResponseModel . appointmentDate ) ;
/ / DateTime endDate = DateUtil . convertStringToDate ( widget . patientAppointmentHistoryResponseModel . appointmentDate ) ;
/ /
/ / Show reminder bottom sheet and check if permission was granted
/ / / / Show reminder bottom sheet and check if permission was granted
bool permissionGranted = await BottomSheetUtils ( ) . showReminderBottomSheet (
/ / bool permissionGranted = await BottomSheetUtils ( ) . showReminderBottomSheet (
context ,
/ / context ,
endDate ,
/ / endDate ,
widget . patientAppointmentHistoryResponseModel . doctorNameObj ? ? " " ,
/ / widget . patientAppointmentHistoryResponseModel . doctorNameObj ? ? " " ,
" ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ? ? " " ,
/ / " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ? ? " " ,
" " ,
/ / " " ,
" " ,
/ / " " ,
title: " Appointment with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } " ,
/ / title: " Appointment with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } " ,
description:
/ / description:
" ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } will be having an appointment on ${ widget . patientAppointmentHistoryResponseModel . appointmentDate } " ,
/ / " ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } will be having an appointment on ${ widget . patientAppointmentHistoryResponseModel . appointmentDate } " ,
onSuccess: ( ) {
/ / onSuccess: ( ) {
setState ( ( ) {
/ / setState ( ( ) {
myAppointmentsViewModel . setAppointmentReminder ( newValue , widget . patientAppointmentHistoryResponseModel ) ;
/ / myAppointmentsViewModel . setAppointmentReminder ( newValue , widget . patientAppointmentHistoryResponseModel ) ;
} ) ;
/ / } ) ;
} ,
/ / } ,
isMultiAllowed: true ,
/ / isMultiAllowed: true ,
onMultiDateSuccess: ( int selectedIndex ) async {
/ / onMultiDateSuccess: ( int selectedIndex ) async {
isEventAddedOrRemoved = await calender . createOrUpdateEvent (
/ / isEventAddedOrRemoved = await calender . createOrUpdateEvent (
title:
/ / title:
" Appointment Reminder with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } on ${ DateUtil . convertStringToDate ( widget . patientAppointmentHistoryResponseModel . appointmentDate ) } , Appointment # ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
/ / " Appointment Reminder with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } on ${ DateUtil . convertStringToDate ( widget . patientAppointmentHistoryResponseModel . appointmentDate ) } , Appointment # ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
description:
/ / description:
" Appointment Reminder with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } in ${ widget . patientAppointmentHistoryResponseModel . projectName } " ,
/ / " Appointment Reminder with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } in ${ widget . patientAppointmentHistoryResponseModel . projectName } " ,
scheduleDateTime: DateUtil . convertStringToDate ( widget . patientAppointmentHistoryResponseModel . appointmentDate ) ,
/ / scheduleDateTime: DateUtil . convertStringToDate ( widget . patientAppointmentHistoryResponseModel . appointmentDate ) ,
eventId: " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
/ / eventId: " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
location: ' ' ,
/ / location: ' ' ,
reminderMinutes: selectedIndex ) ;
/ / reminderMinutes: selectedIndex ) ;
setState ( ( ) {
/ / setState ( ( ) {
myAppointmentsViewModel . setAppointmentReminder ( isEventAddedOrRemoved , widget . patientAppointmentHistoryResponseModel ) ;
/ / myAppointmentsViewModel . setAppointmentReminder ( isEventAddedOrRemoved , widget . patientAppointmentHistoryResponseModel ) ;
} ) ;
/ / } ) ;
} ,
/ / } ,
) ;
/ / ) ;
/ /
/ / If permission was not granted , revert the switch back to OFF
/ / / / If permission was not granted , revert the switch back to OFF
if ( ! permissionGranted ) {
/ / if ( ! permissionGranted ) {
_bellSwitchKey . currentState ? . setSwitchValue ( false ) ;
/ / _bellSwitchKey . currentState ? . setSwitchValue ( false ) ;
}
/ / }
} else {
/ / } else {
isEventAddedOrRemoved = await calender . checkAndRemove (
/ / isEventAddedOrRemoved = await calender . checkAndRemove (
id: " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
/ / id: " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
) ;
/ / ) ;
setState ( ( ) {
/ / setState ( ( ) {
myAppointmentsViewModel . setAppointmentReminder ( ! isEventAddedOrRemoved , widget . patientAppointmentHistoryResponseModel ) ;
/ / myAppointmentsViewModel . setAppointmentReminder ( ! isEventAddedOrRemoved , widget . patientAppointmentHistoryResponseModel ) ;
} ) ;
/ / } ) ;
}
/ / }
} ,
/ / } ,
)
/ / )
/ /
/ / Switch (
/ / / / Switch (
/ / activeThumbColor: AppColors . successColor ,
/ / / / activeThumbColor: AppColors . successColor ,
/ / / / activeTrackColor: AppColors . successColor . withValues ( alpha: . 15 ) ,
/ / / / / / activeTrackColor: AppColors . successColor . withValues ( alpha: . 15 ) ,
/ / value: widget . patientAppointmentHistoryResponseModel . hasReminder ! ,
/ / / / value: widget . patientAppointmentHistoryResponseModel . hasReminder ! ,
/ / onChanged: ( newValue ) async {
/ / / / onChanged: ( newValue ) async {
/ / CalenderUtilsNew calender = CalenderUtilsNew . instance ;
/ / / / CalenderUtilsNew calender = CalenderUtilsNew . instance ;
/ / bool isEventAddedOrRemoved = false ;
/ / / / bool isEventAddedOrRemoved = false ;
/ / if ( newValue = = true ) {
/ / / / if ( newValue = = true ) {
/ / DateTime startDate = DateTime . now ( ) ;
/ / / / DateTime startDate = DateTime . now ( ) ;
/ / DateTime endDate = DateUtil . convertStringToDate ( widget
/ / / / DateTime endDate = DateUtil . convertStringToDate ( widget
/ / . patientAppointmentHistoryResponseModel . appointmentDate ) ;
/ / / / . patientAppointmentHistoryResponseModel . appointmentDate ) ;
/ / BottomSheetUtils ( ) . showReminderBottomSheet (
/ / / / BottomSheetUtils ( ) . showReminderBottomSheet (
/ / context ,
/ / / / context ,
/ / endDate ,
/ / / / endDate ,
/ / widget . patientAppointmentHistoryResponseModel . doctorNameObj ? ? " " ,
/ / / / widget . patientAppointmentHistoryResponseModel . doctorNameObj ? ? " " ,
/ / " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ? ? " " ,
/ / / / " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ? ? " " ,
/ / " " ,
/ / / / " " ,
/ / " " ,
/ / / / " " ,
/ / title: " Appointment with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } " ,
/ / / / title: " Appointment with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } " ,
/ / description:
/ / / / description:
/ / " ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } will be having an appointment on ${ widget . patientAppointmentHistoryResponseModel . appointmentDate } " ,
/ / / / " ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } will be having an appointment on ${ widget . patientAppointmentHistoryResponseModel . appointmentDate } " ,
/ / onSuccess: ( ) {
/ / / / onSuccess: ( ) {
/ / setState ( ( ) {
/ / / / setState ( ( ) {
/ / myAppointmentsViewModel . setAppointmentReminder ( newValue , widget . patientAppointmentHistoryResponseModel ) ;
/ / / / myAppointmentsViewModel . setAppointmentReminder ( newValue , widget . patientAppointmentHistoryResponseModel ) ;
/ / } ) ;
/ / / / } ) ;
/ / } ,
/ / / / } ,
/ / isMultiAllowed: true ,
/ / / / isMultiAllowed: true ,
/ / onMultiDateSuccess: ( int selectedIndex ) async {
/ / / / onMultiDateSuccess: ( int selectedIndex ) async {
/ / isEventAddedOrRemoved = await calender . createOrUpdateEvent (
/ / / / isEventAddedOrRemoved = await calender . createOrUpdateEvent (
/ / title:
/ / / / title:
/ / " Appointment Reminder with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } on ${ DateUtil . convertStringToDate ( widget . patientAppointmentHistoryResponseModel . appointmentDate ) } , Appointment # ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
/ / / / " Appointment Reminder with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } on ${ DateUtil . convertStringToDate ( widget . patientAppointmentHistoryResponseModel . appointmentDate ) } , Appointment # ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
/ / description:
/ / / / description:
/ / " Appointment Reminder with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } in ${ widget . patientAppointmentHistoryResponseModel . projectName } " ,
/ / / / " Appointment Reminder with ${ widget . patientAppointmentHistoryResponseModel . doctorNameObj } in ${ widget . patientAppointmentHistoryResponseModel . projectName } " ,
/ / scheduleDateTime: DateUtil . convertStringToDate ( widget
/ / / / scheduleDateTime: DateUtil . convertStringToDate ( widget
/ / . patientAppointmentHistoryResponseModel . appointmentDate ) ,
/ / / / . patientAppointmentHistoryResponseModel . appointmentDate ) ,
/ / eventId: " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
/ / / / eventId: " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " ,
/ / location: ' ' ,
/ / / / location: ' ' ,
/ / reminderMinutes: selectedIndex
/ / / / reminderMinutes: selectedIndex
/ / ) ;
/ / / / ) ;
/ / setState ( ( ) {
/ / / / setState ( ( ) {
/ / myAppointmentsViewModel . setAppointmentReminder ( isEventAddedOrRemoved , widget . patientAppointmentHistoryResponseModel ) ;
/ / / / myAppointmentsViewModel . setAppointmentReminder ( isEventAddedOrRemoved , widget . patientAppointmentHistoryResponseModel ) ;
/ / } ) ;
/ / / / } ) ;
/ / } ,
/ / / / } ,
/ / ) ;
/ / / / ) ;
/ / } else {
/ / / / } else {
/ / isEventAddedOrRemoved = await calender . checkAndRemove ( id: " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " , ) ;
/ / / / isEventAddedOrRemoved = await calender . checkAndRemove ( id: " ${ widget . patientAppointmentHistoryResponseModel . appointmentNo } " , ) ;
/ / setState ( ( ) {
/ / / / setState ( ( ) {
/ / myAppointmentsViewModel . setAppointmentReminder ( ! isEventAddedOrRemoved , widget . patientAppointmentHistoryResponseModel ) ;
/ / / / myAppointmentsViewModel . setAppointmentReminder ( ! isEventAddedOrRemoved , widget . patientAppointmentHistoryResponseModel ) ;
/ / } ) ;
/ / / / } ) ;
/ / }
/ / / / }
/ /
/ / / /
/ /
/ / / /
/ / } ,
/ / / / } ,
/ / ) ,
/ / / / ) ,
] ,
/ / ] ,
) . paddingSymmetrical ( 16. h , 16. h ) ,
/ / ) . paddingSymmetrical ( 16. h , 16. h ) ,
) ,
/ / ) ,
SizedBox ( height: 16. h ) ,
SizedBox ( height: 16. h ) ,
] ,
] ,
)
)