updates & fixes

updare-to-3.32.sultan
haroon amjad 4 months ago
parent 1aab92b50a
commit 4b5a3af4cd

@ -45,3 +45,4 @@ const IS_COVID_CONSENT_SHOWN = 'IS_COVID_CONSENT_SHOWN';
const REGISTER_INFO_DUBAI ='register-info-dubai';
const IS_LAST_APPOINTMENT_RATE_SHOWN ='is-last-appointment-rate-shown';
const PATIENT_OCCUPATION_LIST ='patient-occupation-list';
const HAS_ENABLED_QUICK_LOGIN ='has-enabled-quick-login';

@ -23,8 +23,7 @@ import 'package:hmg_patient_app/pages/login/welcome.dart';
import 'package:hmg_patient_app/pages/medical/medical_profile_page_new.dart';
import 'package:hmg_patient_app/services/authentication/auth_provider.dart';
import 'package:hmg_patient_app/services/clinic_services/get_clinic_service.dart';
import 'package:hmg_patient_app/services/family_files/family_files_provider.dart'
as family;
import 'package:hmg_patient_app/services/family_files/family_files_provider.dart' as family;
import 'package:hmg_patient_app/services/livecare_services/livecare_provider.dart';
import 'package:hmg_patient_app/services/payfort_services/payfort_view_model.dart';
import 'package:hmg_patient_app/services/robo_search/event_provider.dart';
@ -43,6 +42,7 @@ import 'package:hmg_patient_app/widgets/others/app_scaffold_widget.dart';
import 'package:hmg_patient_app/widgets/others/not_auh_page.dart';
import 'package:firebase_messaging/firebase_messaging.dart';
import 'package:flutter/material.dart';
// import 'package:flutter_app_icon_badge/flutter_app_icon_badge.dart';
import 'package:flutter_local_notifications/flutter_local_notifications.dart';
import 'package:flutter_svg/flutter_svg.dart';
@ -87,6 +87,7 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
var themeNotifier;
DateTime? currentBackPressTime;
bool authenticated = false;
// SignalRUtil signalRUtil;
// bool isDoneQuickLogin =false;
late ToDoCountProviderModel toDoProvider;
@ -109,6 +110,7 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
bool isTalking = false;
var sharedPref = new AppSharedPreferences();
//
// var data = {
// "AppointmentNo": "2016059247",
@ -383,8 +385,6 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
builder: (BuildContext context) => SavedLogin(savedData),
),
);
} else {
GifLoaderDialogUtils.showMyDialog(context);
authService.selectDeviceImei(DEVICE_TOKEN).then((value) async {
@ -481,7 +481,6 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
authService.getDashboard().then((value) => {
if (value != null)
{
setState(() {
notificationCount =
value['List_PatientDashboard'][0]['UnreadPatientNotificationCount'] > 99 ? '99+' : value['List_PatientDashboard'][0]['UnreadPatientNotificationCount'].toString();
@ -684,11 +683,9 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
authService.getDashboard().then((value) async {
setState(() {
if (value != null) {
notificationCount = value['List_PatientDashboard'][0]['UnreadPatientNotificationCount'] > 99 ? '99+' : value['List_PatientDashboard'][0]['UnreadPatientNotificationCount'].toString();
model.setState(model.count, model.ancillaryCount, true, notificationCount);
sharedPref.setString(NOTIFICATION_COUNT, notificationCount);
}
});
// if (await AppSharedPreferences().getBool(IS_LAST_APPOINTMENT_RATE_SHOWN) == null || !await AppSharedPreferences().getBool(IS_LAST_APPOINTMENT_RATE_SHOWN)) {
@ -735,13 +732,16 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
sharedPref.setString(IS_COVID_CONSENT_SHOWN, "true");
}
checkLastLoginStatus(AuthenticatedUser user, String deviceToken) async{
checkLastLoginStatus(AuthenticatedUser user, String deviceToken) async {
int lastLoginStatus = await sharedPref.getInt(LAST_LOGIN) != null ? await sharedPref.getInt(LAST_LOGIN) : 1;
if(lastLoginStatus == 1 || lastLoginStatus == 4){
showQuickLoginBottomSheet(context, user, deviceToken,false);
if (lastLoginStatus == 1 || lastLoginStatus == 4) {
if (await sharedPref.getBool(HAS_ENABLED_QUICK_LOGIN) == null || !await sharedPref.getBool(HAS_ENABLED_QUICK_LOGIN)) {
showQuickLoginBottomSheet(context, user, deviceToken, false);
}
// showQuickLoginBottomSheet(context, user, deviceToken, false);
}
}
void showQuickLoginBottomSheet(BuildContext context, AuthenticatedUser user, String deviceToken, bool isDone) {
@ -754,15 +754,20 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
child: Padding(
padding: EdgeInsets.only(bottom: MediaQuery.of(context).viewInsets.bottom),
child: QuickLoginBottomSheet(
isDone:isDone,
onPressed: (){
isDone: isDone,
onPressed: () {
sharedPref.setBool(HAS_ENABLED_QUICK_LOGIN, true);
loginWithFingerPrintFace(3, 1, user, deviceToken);
},),
},
),
),
);
),
).then((value) {
sharedPref.setBool(HAS_ENABLED_QUICK_LOGIN, value);
});
}
loginWithFingerPrintFace(type, int isActive, AuthenticatedUser user, String deviceToken ) async {
loginWithFingerPrintFace(type, int isActive, AuthenticatedUser user, String deviceToken) async {
try {
authenticated = await auth.authenticate(
localizedReason: 'Scan your fingerprint to authenticate',
@ -816,5 +821,4 @@ class _LandingPageState extends State<LandingPage> with WidgetsBindingObserver {
await sharedPref.setInt(LAST_LOGIN, lastLogin);
authService.registeredAuthenticatedUser(data, deviceToken, 0, 0).then((res) => {});
}
}
}

@ -762,6 +762,7 @@ class _RegisterNew extends State<RegisterNew> {
final isHijriDate = isHijri == 1;
final dobString = isHijriDate ? selectedDOB!.toString() : dateFormat.format(selectedDOB!);
var req;
GifLoaderDialogUtils.showMyDialog(context);
if (skipRegistration) {
req = getCommonRequest(type: type);
} else {

@ -217,7 +217,7 @@ class _SavedLogin extends State<SavedLogin> {
widget.savedLoginData.logInType != null && widget.savedLoginData.logInType != 1
? Column(
children: [
CustomButton(
widget.savedLoginData.logInType !=1 ? CustomButton(
text: TranslationBase.of(context).loginByOTP,
onPressed: () {
widget.savedLoginData.logInType = 1;
@ -230,11 +230,11 @@ class _SavedLogin extends State<SavedLogin> {
borderWidth: 2,
padding: EdgeInsets.fromLTRB(0, 14, 0, 14),
icon: "assets/images/svg/password-validation.svg",
),
) : Container(),
SizedBox(
height: 20,
),
CustomButton(
widget.savedLoginData.logInType !=4 ? CustomButton(
text: "${TranslationBase.of(context).loginBy} ${getType(4, context)}",
onPressed: () {
widget.savedLoginData.logInType = 4;
@ -247,7 +247,7 @@ class _SavedLogin extends State<SavedLogin> {
borderWidth: 2,
padding: EdgeInsets.fromLTRB(0, 14, 0, 14),
icon: "assets/images/svg/whatsapp.svg",
),
) : Container(),
],
)
: CustomButton(
@ -703,6 +703,7 @@ class _SavedLogin extends State<SavedLogin> {
phoneController!.text,
(code) {
checkActivationCode(code, type, loginToken, onWrongActivationCode: (String? message) {
smsOtp.clearOTPInput();
context.showBottomSheet(
child: ExceptionBottomSheet(
message: message.toString(),

@ -6,8 +6,6 @@ import 'package:hmg_patient_app/uitl/translations_delegate_base.dart';
import 'package:hmg_patient_app/uitl/utils.dart';
import 'package:hmg_patient_app/widgets/buttons/defaultButton.dart';
class QuickLoginBottomSheet extends StatefulWidget {
final VoidCallback onPressed;
final bool isDone;
@ -17,8 +15,8 @@ class QuickLoginBottomSheet extends StatefulWidget {
@override
_QuickLoginBottomSheet createState() => _QuickLoginBottomSheet();
}
class _QuickLoginBottomSheet extends State<QuickLoginBottomSheet> {
class _QuickLoginBottomSheet extends State<QuickLoginBottomSheet> {
@override
Widget build(BuildContext context) {
return Container(
@ -30,18 +28,23 @@ class _QuickLoginBottomSheet extends State<QuickLoginBottomSheet> {
),
),
padding: const EdgeInsets.all(24),
child: Column( mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.center,children: [
widget.isDone ? Column(children: [
child: Column(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
widget.isDone
? Column(
children: [
Row(
mainAxisAlignment: MainAxisAlignment.end,
children: [ InkWell(
children: [
InkWell(
onTap: () {
Navigator.of(context).pop();
Navigator.pop(context, true);
},
child: SvgPicture.asset("assets/images/svg/cross-circle.svg", width: 24, height: 24)),],),
child: SvgPicture.asset("assets/images/svg/cross-circle.svg", width: 24, height: 24)),
],
),
Utils.showLottie(context: context, assetPath: 'assets/animations/lottie/checkmark.json', width: 120, height: 120, repeat: true),
Text(
TranslationBase.of(context).allSet,
@ -50,16 +53,18 @@ class _QuickLoginBottomSheet extends State<QuickLoginBottomSheet> {
fontSize: 16,
fontWeight: FontWeight.bold,
color: Colors.black,
),
),
],) : Column(
],
)
: Column(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Image.asset("assets/images/lock-icon.png", height: 101,),
Image.asset(
"assets/images/lock-icon.png",
height: 101,
),
const SizedBox(height: 10),
Text(
TranslationBase.of(context).enableQuickLogin,
@ -69,9 +74,7 @@ class _QuickLoginBottomSheet extends State<QuickLoginBottomSheet> {
color: Colors.black,
),
),
const SizedBox(height: 5),
// Description
Text(
TranslationBase.of(context).enableMsg,
@ -81,46 +84,47 @@ class _QuickLoginBottomSheet extends State<QuickLoginBottomSheet> {
height: 1.5,
),
),
const SizedBox(height: 24),
// Buttons
Row(
mainAxisAlignment: MainAxisAlignment.end,
children: [
Expanded(child:
CustomButton(
text:TranslationBase.of(context).enableQuickLogin,
onPressed:widget.onPressed,
backgroundColor:Color(0xffED1C2B),
borderColor:Color(0xffED1C2B),
Expanded(
child: CustomButton(
text: TranslationBase.of(context).enableQuickLogin,
onPressed: () {
widget.onPressed();
},
backgroundColor: Color(0xffED1C2B),
borderColor: Color(0xffED1C2B),
textColor: Colors.white,
icon: "assets/images/svg/apple-finder.svg",
)),
],
),
SizedBox(height: 16,),
SizedBox(
height: 16,
),
Row(
mainAxisAlignment: MainAxisAlignment.end,
children: [
Expanded(child:
CustomButton(
text:TranslationBase.of(context).notNow,
onPressed: (){ Navigator.pop(context);},
backgroundColor:Color(0xffFEE9EA),
borderColor:Color(0xffFEE9EA),
Expanded(
child: CustomButton(
text: TranslationBase.of(context).notNow,
onPressed: () {
Navigator.pop(context, true);
},
backgroundColor: Color(0xffFEE9EA),
borderColor: Color(0xffFEE9EA),
textColor: Colors.red,
// icon: "assets/images/svg/apple-finder.svg",
)),
],
),
],
)],),
)
],
),
);
}
}
Loading…
Cancel
Save