|
|
|
|
@ -28,6 +28,7 @@ import 'package:hmg_patient_app_new/features/immediate_livecare/immediate_liveca
|
|
|
|
|
import 'package:hmg_patient_app_new/features/insurance/insurance_view_model.dart';
|
|
|
|
|
import 'package:hmg_patient_app_new/features/my_appointments/appointment_rating_view_model.dart';
|
|
|
|
|
import 'package:hmg_patient_app_new/features/my_appointments/models/resp_models/patient_appointment_history_response_model.dart';
|
|
|
|
|
import 'package:hmg_patient_app_new/features/my_appointments/models/resp_models/patient_queue_details_response_model.dart';
|
|
|
|
|
import 'package:hmg_patient_app_new/features/my_appointments/my_appointments_view_model.dart';
|
|
|
|
|
import 'package:hmg_patient_app_new/features/notifications/notifications_view_model.dart';
|
|
|
|
|
import 'package:hmg_patient_app_new/features/profile_settings/profile_settings_view_model.dart';
|
|
|
|
|
@ -1110,7 +1111,7 @@ class _LandingPageState extends State<LandingPage> {
|
|
|
|
|
child: Column(
|
|
|
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
|
|
children: [
|
|
|
|
|
_buildQueueHeader(currentStatus),
|
|
|
|
|
_buildQueueHeader(currentQueue, currentStatus),
|
|
|
|
|
SizedBox(height: 8.h),
|
|
|
|
|
_buildQueueGreeting(),
|
|
|
|
|
SizedBox(height: 2.h),
|
|
|
|
|
@ -1119,11 +1120,11 @@ class _LandingPageState extends State<LandingPage> {
|
|
|
|
|
color: AppColors.textColorLight,
|
|
|
|
|
),
|
|
|
|
|
SizedBox(height: 8.h),
|
|
|
|
|
(currentQueue.queueNo ?? "IM-123").toText28(isBold: true).toShimmer2(isShow: myAppointmentsViewModel.patientQueueDetailsList.isEmpty),
|
|
|
|
|
(currentQueue.queueNo ?? "IM-123").toText28(isBold: true).toShimmer2(isShow: (currentQueue.queueNo == null || currentQueue.queueNo!.isEmpty)),
|
|
|
|
|
SizedBox(height: 6.h),
|
|
|
|
|
_buildServingNowSection(),
|
|
|
|
|
SizedBox(height: 5.h),
|
|
|
|
|
_buildQueueActionButton(currentStatus, currentQueue.roomNo ?? "").toShimmer2(isShow: myAppointmentsViewModel.patientQueueDetailsList.isEmpty),
|
|
|
|
|
_buildQueueActionButton(currentStatus, currentQueue.roomNo ?? "").toShimmer2(isShow: (currentQueue.queueNo == null || currentQueue.queueNo!.isEmpty)),
|
|
|
|
|
],
|
|
|
|
|
),
|
|
|
|
|
),
|
|
|
|
|
@ -1135,7 +1136,7 @@ class _LandingPageState extends State<LandingPage> {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Queue Card: Header with status chip and icon
|
|
|
|
|
Widget _buildQueueHeader(int currentStatus) {
|
|
|
|
|
Widget _buildQueueHeader(PatientInQueueList currentQueue, int currentStatus) {
|
|
|
|
|
return Row(
|
|
|
|
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
|
|
|
|
crossAxisAlignment: CrossAxisAlignment.start,
|
|
|
|
|
@ -1144,7 +1145,7 @@ class _LandingPageState extends State<LandingPage> {
|
|
|
|
|
labelText: currentStatus == 0 ? LocaleKeys.inQueue.tr() : LocaleKeys.yourTurn.tr(),
|
|
|
|
|
backgroundColor: Utils.getCardBorderColor(currentStatus).withValues(alpha: 0.20),
|
|
|
|
|
textColor: Utils.getCardBorderColor(currentStatus),
|
|
|
|
|
).toShimmer2(isShow: myAppointmentsViewModel.patientQueueDetailsList.isEmpty),
|
|
|
|
|
).toShimmer2(isShow: (currentQueue.queueNo == null || currentQueue.queueNo!.isEmpty)),
|
|
|
|
|
Container(
|
|
|
|
|
decoration: RoundedRectangleBorder().toSmoothCornerDecoration(
|
|
|
|
|
color: AppColors.greyColor,
|
|
|
|
|
|