Updates & fixes

merge-requests/581/merge
haroon amjad 4 years ago
parent 8e27cfba9b
commit eb3f5b5cb5

@ -6,6 +6,8 @@
-keep class com.ejada.** { *; } -keep class com.ejada.** { *; }
-keep class org.webrtc.** { *; } -keep class org.webrtc.** { *; }
-keep class com.builttoroam.devicecalendar.** { *; }
-ignorewarnings -ignorewarnings
-keepattributes *Annotation* -keepattributes *Annotation*
-keepattributes Exceptions -keepattributes Exceptions

@ -405,7 +405,7 @@ var UPDATE_COVID_QUESTIONNAIRE = 'Services/Doctors.svc/REST/COVID19_Questionnar
var CHANNEL = 3; var CHANNEL = 3;
var GENERAL_ID = 'Cs2020@2016\$2958'; var GENERAL_ID = 'Cs2020@2016\$2958';
var IP_ADDRESS = '10.20.10.20'; var IP_ADDRESS = '10.20.10.20';
var VERSION_ID = 8.4; var VERSION_ID = 8.5;
var SETUP_ID = '91877'; var SETUP_ID = '91877';
var LANGUAGE = 2; var LANGUAGE = 2;
var PATIENT_OUT_SA = 0; var PATIENT_OUT_SA = 0;

@ -25,6 +25,7 @@ class RequestSendRadReportEmail {
String to; String to;
String tokenID; String tokenID;
double versionID; double versionID;
int invoiceLineItemNo;
RequestSendRadReportEmail( RequestSendRadReportEmail(
{this.channel, {this.channel,
@ -81,6 +82,7 @@ class RequestSendRadReportEmail {
to = json['To']; to = json['To'];
tokenID = json['TokenID']; tokenID = json['TokenID'];
versionID = json['VersionID']; versionID = json['VersionID'];
invoiceLineItemNo = json['InvoiceLineItemNo'];
} }
Map<String, dynamic> toJson() { Map<String, dynamic> toJson() {
@ -111,6 +113,7 @@ class RequestSendRadReportEmail {
data['To'] = this.to; data['To'] = this.to;
data['TokenID'] = this.tokenID; data['TokenID'] = this.tokenID;
data['VersionID'] = this.versionID; data['VersionID'] = this.versionID;
data['InvoiceLineItemNo'] = this.invoiceLineItemNo;
return data; return data;
} }
} }

@ -58,6 +58,7 @@ class RadiologyService extends BaseService {
_requestSendRadReportEmail.projectID = finalRadiology.projectID; _requestSendRadReportEmail.projectID = finalRadiology.projectID;
_requestSendRadReportEmail.clinicName = finalRadiology.clinicDescription; _requestSendRadReportEmail.clinicName = finalRadiology.clinicDescription;
_requestSendRadReportEmail.invoiceNo = finalRadiology.invoiceNo; _requestSendRadReportEmail.invoiceNo = finalRadiology.invoiceNo;
_requestSendRadReportEmail.invoiceLineItemNo = finalRadiology.invoiceLineItemNo;
_requestSendRadReportEmail.setupID = finalRadiology.setupID; _requestSendRadReportEmail.setupID = finalRadiology.setupID;
_requestSendRadReportEmail.doctorName = finalRadiology.doctorName; _requestSendRadReportEmail.doctorName = finalRadiology.doctorName;
_requestSendRadReportEmail.orderDate = _requestSendRadReportEmail.orderDate =

@ -32,6 +32,7 @@ class ProjectViewModel extends BaseViewModel {
String error = ''; String error = '';
dynamic searchvalue; dynamic searchvalue;
bool isLogin = false; bool isLogin = false;
int laserSelectionDuration;
dynamic get searchValue => searchvalue; dynamic get searchValue => searchvalue;
@ -49,7 +50,6 @@ class ProjectViewModel extends BaseViewModel {
isLoginChild ? privilegeChildUser : privilegeChildUser; isLoginChild ? privilegeChildUser : privilegeChildUser;
List<LaserBodyPart> selectedBodyPartList = []; List<LaserBodyPart> selectedBodyPartList = [];
int laserSelectionDuration = 0;
StreamSubscription subscription; StreamSubscription subscription;

@ -213,17 +213,16 @@ class _NewCMCStepTowPageState extends State<NewCMCStepTowPage> {
longitude: longitude, longitude: longitude,
onPick: () { onPick: () {
isNeedToUpdate = true; isNeedToUpdate = true;
print("onPickonPick1");
}, },
); );
}, },
)); ));
if (isNeedToUpdate) { if (isNeedToUpdate) {
print("onPickonPick2");
_selectedAddress = new AddressInfo(); _selectedAddress = new AddressInfo();
_selectedAddress.address1 = widget.model.addressesList.last.address1; _selectedAddress.address1 = widget.model.addressesList.last.address1;
showCurrentLocation = false; showCurrentLocation = false;
setLatitudeAndLongitude(); setLatitudeAndLongitude();
setState(() {});
} }
}, },
child: Padding( child: Padding(

@ -197,9 +197,10 @@ class _NewHomeHealthCareStepTowPageState extends State<NewHomeHealthCareStepTowP
longitude: longitude, longitude: longitude,
), ),
), ),
).then((value) { ).then((value) async {
print(value); print(value);
widget.model.getCustomerAddresses(); await widget.model.getCustomerAddresses();
setState(() {});
}); });
}, },
child: Padding( child: Padding(

@ -481,7 +481,7 @@ class _AnicllaryOrdersState extends State<AnicllaryOrdersDetails> with SingleTic
onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) { onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) {
print("onBrowserExit Called!!!!"); print("onBrowserExit Called!!!!");
if (isPaymentMade) checkPaymentStatus(appo); checkPaymentStatus(appo);
} }
checkPaymentStatus(AppoitmentAllHistoryResultList appo) { checkPaymentStatus(AppoitmentAllHistoryResultList appo) {

@ -221,7 +221,7 @@ class ConfirmPaymentPage extends StatelessWidget {
onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) { onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) {
print("onBrowserExit Called!!!!"); print("onBrowserExit Called!!!!");
if (isPaymentMade) checkPaymentStatus(appo); checkPaymentStatus(appo);
} }
checkPaymentStatus(AppoitmentAllHistoryResultList appo) { checkPaymentStatus(AppoitmentAllHistoryResultList appo) {

@ -65,7 +65,7 @@ class _BookConfirmState extends State<BookConfirm> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
toDoProvider = Provider.of<ToDoCountProviderModel>(context); toDoProvider = Provider.of<ToDoCountProviderModel>(context);
projectViewModel = Provider.of<ProjectViewModel>(context); projectViewModel = Provider.of(context);
return AppScaffold( return AppScaffold(
appBarTitle: widget.doctor.doctorTitle + " " + widget.doctor.name, appBarTitle: widget.doctor.doctorTitle + " " + widget.doctor.name,
isShowDecPage: false, isShowDecPage: false,
@ -376,12 +376,16 @@ class _BookConfirmState extends State<BookConfirm> {
getPatientShare(context, String appointmentNo, int clinicID, int projectID, DoctorList docObject) { getPatientShare(context, String appointmentNo, int clinicID, int projectID, DoctorList docObject) {
widget.service.getPatientShare(appointmentNo, clinicID, projectID, context).then((res) { widget.service.getPatientShare(appointmentNo, clinicID, projectID, context).then((res) {
projectViewModel.selectedBodyPartList.clear();
projectViewModel.laserSelectionDuration = 0;
print(res); print(res);
widget.patientShareResponse = new PatientShareResponse.fromJson(res); widget.patientShareResponse = new PatientShareResponse.fromJson(res);
navigateToBookSuccess(context, docObject, widget.patientShareResponse); navigateToBookSuccess(context, docObject, widget.patientShareResponse);
}).catchError((err) { }).catchError((err) {
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);
// AppToast.showErrorToast(message: err); // AppToast.showErrorToast(message: err);
projectViewModel.selectedBodyPartList.clear();
projectViewModel.laserSelectionDuration = 0;
navigateToHome(context); navigateToHome(context);
print(err); print(err);
}); });

@ -592,12 +592,12 @@ class _BookSuccessState extends State<BookSuccess> {
} }
onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) { onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) {
if (isPaymentMade) checkPaymentStatus(appo); checkPaymentStatus(appo);
} }
checkPaymentStatus(AppoitmentAllHistoryResultList appo) { checkPaymentStatus(AppoitmentAllHistoryResultList appo) {
String txn_ref; String txn_ref;
String amount; num amount;
String payment_method; String payment_method;
final currency = projectViewModel.user.outSA == 0 ? "sar" : 'aed'; final currency = projectViewModel.user.outSA == 0 ? "sar" : 'aed';
GifLoaderDialogUtils.showMyDialog(context); GifLoaderDialogUtils.showMyDialog(context);
@ -625,7 +625,7 @@ class _BookSuccessState extends State<BookSuccess> {
} }
}).catchError((err) { }).catchError((err) {
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);
AppToast.showErrorToast(message: err); AppToast.showErrorToast(message: err.toString());
print(err); print(err);
}); });
} }

@ -495,7 +495,7 @@ class _DoctorProfileState extends State<DoctorProfile> with TickerProviderStateM
void goToBookConfirm() async { void goToBookConfirm() async {
if (DocAvailableAppointments.areSlotsAvailable) { if (DocAvailableAppointments.areSlotsAvailable) {
if (await sharedPref.getObject(USER_PROFILE) != null) { if (projectViewModel.isLogin) {
final timeSlot = DocAvailableAppointments.selectedAppoDateTime; final timeSlot = DocAvailableAppointments.selectedAppoDateTime;
navigateToBookConfirm(context); navigateToBookConfirm(context);
projectViewModel.analytics.appointment.book_appointment_review(appointment_type: 'regular', dateTime: timeSlot, doctor: widget.doctor); projectViewModel.analytics.appointment.book_appointment_review(appointment_type: 'regular', dateTime: timeSlot, doctor: widget.doctor);

@ -239,6 +239,7 @@ class _LaserClinicState extends State<LaserClinic> with SingleTickerProviderStat
result = LinkedHashSet<String>.from(arr).toList(); result = LinkedHashSet<String>.from(arr).toList();
numAll = result.length; numAll = result.length;
projectViewModel.laserSelectionDuration = _duration;
navigateToSearchResults(context, doctorsList, _patientDoctorAppointmentListHospital); navigateToSearchResults(context, doctorsList, _patientDoctorAppointmentListHospital);
} else { } else {
AppToast.showErrorToast(message: res['ErrorEndUserMessage']); AppToast.showErrorToast(message: res['ErrorEndUserMessage']);
@ -264,6 +265,7 @@ class _LaserClinicState extends State<LaserClinic> with SingleTickerProviderStat
int duration = 0; int duration = 0;
if (_isFullBody) { if (_isFullBody) {
_duration = int.parse(fullBody.timeDuration); _duration = int.parse(fullBody.timeDuration);
projectViewModel.laserSelectionDuration = duration;
return _duration; return _duration;
} }

@ -14,13 +14,11 @@ import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/uitl/utils.dart'; import 'package:diplomaticquarterapp/uitl/utils.dart';
import 'package:diplomaticquarterapp/uitl/utils_new.dart'; import 'package:diplomaticquarterapp/uitl/utils_new.dart';
import 'package:diplomaticquarterapp/widgets/buttons/defaultButton.dart'; import 'package:diplomaticquarterapp/widgets/buttons/defaultButton.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/dragable_sheet.dart'; import 'package:diplomaticquarterapp/widgets/dragable_sheet.dart';
import 'package:diplomaticquarterapp/widgets/in_app_browser/InAppBrowser.dart'; import 'package:diplomaticquarterapp/widgets/in_app_browser/InAppBrowser.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
class CovidPaymentSummary extends StatefulWidget { class CovidPaymentSummary extends StatefulWidget {
@ -229,8 +227,7 @@ class _CovidPaymentSummaryState extends State<CovidPaymentSummary> {
widget.patientShareResponse.appointmentNo, widget.patientShareResponse.appointmentNo,
widget.patientShareResponse.clinicID, widget.patientShareResponse.clinicID,
widget.patientShareResponse.doctorID, widget.patientShareResponse.doctorID,
widget.selectedInstallmentPlan widget.selectedInstallmentPlan);
);
} }
onBrowserLoadStart(String url) { onBrowserLoadStart(String url) {
@ -256,16 +253,7 @@ class _CovidPaymentSummaryState extends State<CovidPaymentSummary> {
onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) { onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) {
print("onBrowserExit Called!!!!"); print("onBrowserExit Called!!!!");
if (isPaymentMade) { checkPaymentStatus(appo);
checkPaymentStatus(appo);
} else {
print("onBrowserExit Payment Not made");
Navigator.pushAndRemoveUntil(
context,
MaterialPageRoute(builder: (context) => LandingPage()),
(Route<dynamic> route) => false,
);
}
} }
checkPaymentStatus(AppoitmentAllHistoryResultList appo) { checkPaymentStatus(AppoitmentAllHistoryResultList appo) {
@ -280,6 +268,11 @@ class _CovidPaymentSummaryState extends State<CovidPaymentSummary> {
} else { } else {
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);
AppToast.showErrorToast(message: res['Response_Message']); AppToast.showErrorToast(message: res['Response_Message']);
Navigator.pushAndRemoveUntil(
context,
MaterialPageRoute(builder: (context) => LandingPage()),
(Route<dynamic> route) => false,
);
} }
}).catchError((err) { }).catchError((err) {
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);

@ -4,12 +4,32 @@ import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/progress_indicator/app_circular_progress_Indeicator.dart'; import 'package:diplomaticquarterapp/widgets/progress_indicator/app_circular_progress_Indeicator.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:youtube_player_flutter/youtube_player_flutter.dart';
class NotificationsDetailsPage extends StatelessWidget { class NotificationsDetailsPage extends StatefulWidget {
final GetNotificationsResponseModel notification; final GetNotificationsResponseModel notification;
NotificationsDetailsPage({this.notification}); NotificationsDetailsPage({this.notification});
@override
State<NotificationsDetailsPage> createState() => _NotificationsDetailsPageState();
}
class _NotificationsDetailsPageState extends State<NotificationsDetailsPage> {
YoutubePlayerController _controller;
@override
void initState() {
_controller = YoutubePlayerController(
initialVideoId: getVideoURL(),
flags: YoutubePlayerFlags(
autoPlay: true,
mute: true,
),
);
super.initState();
}
getDateForm(String date) { getDateForm(String date) {
DateTime d = DateUtil.convertStringToDate(date); DateTime d = DateUtil.convertStringToDate(date);
String monthName = DateUtil.getMonth(d.month).toString(); String monthName = DateUtil.getMonth(d.month).toString();
@ -27,6 +47,13 @@ class NotificationsDetailsPage extends StatelessWidget {
return monthName + ',${d.day},${d.year}, $hour'; return monthName + ',${d.day},${d.year}, $hour';
} }
String getVideoURL() {
String videoId;
videoId = YoutubePlayer.convertUrlToId(widget.notification.videoURL);
print(videoId); // BBAyRBTfsOU
return videoId;
}
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return AppScaffold( return AppScaffold(
@ -40,9 +67,9 @@ class NotificationsDetailsPage extends StatelessWidget {
padding: EdgeInsets.all(21), padding: EdgeInsets.all(21),
children: [ children: [
Text( Text(
DateUtil.getDayMonthYearDateFormatted(DateUtil.convertStringToDate(notification.createdOn)) + DateUtil.getDayMonthYearDateFormatted(DateUtil.convertStringToDate(widget.notification.createdOn)) +
" " + " " +
DateUtil.formatDateToTimeLang(DateUtil.convertStringToDate(notification.createdOn), false), DateUtil.formatDateToTimeLang(DateUtil.convertStringToDate(widget.notification.createdOn), false),
style: TextStyle( style: TextStyle(
fontSize: 16, fontSize: 16,
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
@ -50,10 +77,18 @@ class NotificationsDetailsPage extends StatelessWidget {
letterSpacing: -0.64, letterSpacing: -0.64,
), ),
), ),
if (notification.messageTypeData.length != 0) if (widget.notification.notificationType == "2")
Padding(
padding: const EdgeInsets.only(top: 18),
child: YoutubePlayer(
controller: _controller,
showVideoProgressIndicator: true,
),
),
if (widget.notification.messageTypeData.length != 0 && widget.notification.notificationType != "2")
Padding( Padding(
padding: const EdgeInsets.only(top: 18), padding: const EdgeInsets.only(top: 18),
child: Image.network(notification.messageTypeData, loadingBuilder: (BuildContext context, Widget child, ImageChunkEvent loadingProgress) { child: Image.network(widget.notification.messageTypeData, loadingBuilder: (BuildContext context, Widget child, ImageChunkEvent loadingProgress) {
if (loadingProgress == null) return child; if (loadingProgress == null) return child;
return Center( return Center(
child: SizedBox( child: SizedBox(
@ -66,7 +101,7 @@ class NotificationsDetailsPage extends StatelessWidget {
), ),
SizedBox(height: 18), SizedBox(height: 18),
Text( Text(
notification.message.trim(), widget.notification.message.trim(),
style: TextStyle( style: TextStyle(
fontSize: 12, fontSize: 12,
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,

@ -195,7 +195,7 @@ class _EdPaymentInformationPageState extends State<EdPaymentInformationPage> {
onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) { onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) {
print("onBrowserExit Called!!!!"); print("onBrowserExit Called!!!!");
if (isPaymentMade) checkPaymentStatus(appo); checkPaymentStatus(appo);
} }
checkPaymentStatus(AppoitmentAllHistoryResultList appo) { checkPaymentStatus(AppoitmentAllHistoryResultList appo) {

@ -153,6 +153,7 @@ class _AppointmentDetailsState extends State<AppointmentDetails> with SingleTick
if (widget.appo.clinicID == 17 || if (widget.appo.clinicID == 17 ||
widget.appo.clinicID == 47 || widget.appo.clinicID == 47 ||
widget.appo.clinicID == 23 || widget.appo.clinicID == 23 ||
widget.appo.clinicID == 253 ||
widget.appo.clinicID == 265 || widget.appo.clinicID == 265 ||
widget.appo.isExecludeDoctor || widget.appo.isExecludeDoctor ||
widget.appo.isLiveCareAppointment) { widget.appo.isLiveCareAppointment) {
@ -170,6 +171,7 @@ class _AppointmentDetailsState extends State<AppointmentDetails> with SingleTick
widget.appo.clinicID == 23 || widget.appo.clinicID == 23 ||
widget.appo.clinicID == 47 || widget.appo.clinicID == 47 ||
widget.appo.clinicID == 265 || widget.appo.clinicID == 265 ||
widget.appo.clinicID == 253 ||
widget.appo.isExecludeDoctor || widget.appo.isExecludeDoctor ||
widget.appo.isLiveCareAppointment widget.appo.isLiveCareAppointment
? Tab( ? Tab(

@ -891,12 +891,12 @@ class _ToDoState extends State<ToDo> with SingleTickerProviderStateMixin {
onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) { onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) {
print("onBrowserExit Called!!!!"); print("onBrowserExit Called!!!!");
if (isPaymentMade) checkPaymentStatus(appo); checkPaymentStatus(appo);
} }
checkPaymentStatus(AppoitmentAllHistoryResultList appo) { checkPaymentStatus(AppoitmentAllHistoryResultList appo) {
String txn_ref; String txn_ref;
String amount; num amount;
String payment_method; String payment_method;
final currency = projectViewModel.user.outSA == 0 ? "sar" : 'aed'; final currency = projectViewModel.user.outSA == 0 ? "sar" : 'aed';
GifLoaderDialogUtils.showMyDialog(context); GifLoaderDialogUtils.showMyDialog(context);

@ -7,7 +7,7 @@ import 'package:flutter_svg/flutter_svg.dart';
import 'package:url_launcher/url_launcher.dart'; import 'package:url_launcher/url_launcher.dart';
class AppUpdatePage extends StatefulWidget { class AppUpdatePage extends StatefulWidget {
String appUpdateText; final String appUpdateText;
AppUpdatePage({@required this.appUpdateText}); AppUpdatePage({@required this.appUpdateText});
@ -59,9 +59,9 @@ class _AppUpdatePageState extends State<AppUpdatePage> {
textAlign: TextAlign.center, textAlign: TextAlign.center,
style: TextStyle( style: TextStyle(
color: Colors.grey[600], color: Colors.grey[600],
fontSize: 16.0, fontSize: 14.0,
height: 1.5, height: 1.5,
fontWeight: FontWeight.bold))), fontWeight: FontWeight.w600))),
Container( Container(
margin: EdgeInsets.only(left: 20.0, right: 20.0, top: 20.0), margin: EdgeInsets.only(left: 20.0, right: 20.0, top: 20.0),
child: ButtonTheme( child: ButtonTheme(

@ -109,7 +109,6 @@ class _clinic_listState extends State<ClinicList> {
} }
void startLiveCare() { void startLiveCare() {
bool isError = false; bool isError = false;
LiveCareService service = new LiveCareService(); LiveCareService service = new LiveCareService();
GifLoaderDialogUtils.showMyDialog(context); GifLoaderDialogUtils.showMyDialog(context);
@ -332,7 +331,7 @@ class _clinic_listState extends State<ClinicList> {
onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) { onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) {
print("onBrowserExit Called!!!!"); print("onBrowserExit Called!!!!");
if (isPaymentMade) checkPaymentStatus(appo); checkPaymentStatus(appo);
} }
checkPaymentStatus(AppoitmentAllHistoryResultList appo) { checkPaymentStatus(AppoitmentAllHistoryResultList appo) {
@ -397,7 +396,7 @@ class _clinic_listState extends State<ClinicList> {
liveCareOfflineClinicsListResponse.add(clinic); liveCareOfflineClinicsListResponse.add(clinic);
} }
}); });
if(liveCareClinicIDs != null) { if (liveCareClinicIDs != null) {
selectedClinicID = int.parse(liveCareClinicIDs.split("-")[2]); selectedClinicID = int.parse(liveCareClinicIDs.split("-")[2]);
selectedClinicName = liveCareClinicIDs.split("-")[0]; selectedClinicName = liveCareClinicIDs.split("-")[0];
} else { } else {
@ -616,7 +615,6 @@ class _clinic_listState extends State<ClinicList> {
} }
void startScheduleLiveCare() { void startScheduleLiveCare() {
List<DoctorList> doctorsList = []; List<DoctorList> doctorsList = [];
LiveCareService service = new LiveCareService(); LiveCareService service = new LiveCareService();
GifLoaderDialogUtils.showMyDialog(context); GifLoaderDialogUtils.showMyDialog(context);

@ -397,7 +397,6 @@ class _ConfirmPaymentPageState extends State<ConfirmPaymentPage> {
onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) { onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) {
print("onBrowserExit Called!!!!"); print("onBrowserExit Called!!!!");
// if (isPaymentMade)
checkPaymentStatus(appo); checkPaymentStatus(appo);
} }

@ -163,14 +163,13 @@ class PaymentBottomWidget extends StatelessWidget {
onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) { onBrowserExit(AppoitmentAllHistoryResultList appo, bool isPaymentMade) {
print("onBrowserExit Called!!!!"); print("onBrowserExit Called!!!!");
if (isPaymentMade) {
AppToast.showSuccessToast(message: "شكراً\nPayment status for your order is Paid"); AppToast.showSuccessToast(message: "شكراً\nPayment status for your order is Paid");
// Navigator.pop(context); // Navigator.pop(context);
// Navigator.pop(context); // Navigator.pop(context);
} else { // } else {
AppToast.showErrorToast(message: "Transaction Failed!\Your transaction is field to some reason please try again or contact to the administration"); // AppToast.showErrorToast(message: "Transaction Failed!\Your transaction is field to some reason please try again or contact to the administration");
// Navigator.pop(context); // // Navigator.pop(context);
// Navigator.pop(context); // // Navigator.pop(context);
} // }
} }
} }

@ -404,7 +404,7 @@ class Signaling {
'to': session.remote_user?.id, 'to': session.remote_user?.id,
'from': session.local_user.id, 'from': session.local_user.id,
'candidate': { 'candidate': {
'sdpMLineIndex': candidate.sdpMlineIndex, 'sdpMLineIndex': candidate.sdpMLineIndex,
'sdpMid': candidate.sdpMid, 'sdpMid': candidate.sdpMid,
'candidate': candidate.candidate, 'candidate': candidate.candidate,
}, },

@ -367,15 +367,17 @@ class DoctorsListService extends BaseService {
if (clinicID == 253) { if (clinicID == 253) {
List<String> procedureID = projectViewModel.selectedBodyPartList.map((element) => element.id.toString()).toList(); List<String> procedureID = projectViewModel.selectedBodyPartList.map((element) => element.id.toString()).toList();
request["GeneralProcedureList"] = procedureID; request["GeneralProcedureList"] = procedureID;
request["InitialSlotDuration"] = projectViewModel.laserSelectionDuration; if (procedureID.length == 1 && procedureID[0] == "1") {
request["InitialSlotDuration"] = 90;
} else {
request["InitialSlotDuration"] = projectViewModel.laserSelectionDuration;
}
} }
dynamic localRes; dynamic localRes;
await baseAppClient.post(INSERT_SPECIFIC_APPOINTMENT, onSuccess: (response, statusCode) async { await baseAppClient.post(INSERT_SPECIFIC_APPOINTMENT, onSuccess: (response, statusCode) async {
localRes = response; localRes = response;
projectViewModel.selectedBodyPartList.clear();
projectViewModel.laserSelectionDuration = 0;
}, onFailure: (String error, int statusCode) { }, onFailure: (String error, int statusCode) {
throw error; throw error;
}, body: request); }, body: request);
@ -1415,7 +1417,8 @@ class DoctorsListService extends BaseService {
return Future.value(localRes); return Future.value(localRes);
} }
Future<Map> ER_InsertEROnlinePaymentDetails(AppoitmentAllHistoryResultList appo, String projectID, double payedAmount, String paymentReference, String paymentMethodName, BuildContext context) async { Future<Map> ER_InsertEROnlinePaymentDetails(
AppoitmentAllHistoryResultList appo, String projectID, double payedAmount, String paymentReference, String paymentMethodName, BuildContext context) async {
Map<String, dynamic> request; Map<String, dynamic> request;
if (await this.sharedPref.getObject(USER_PROFILE) != null) { if (await this.sharedPref.getObject(USER_PROFILE) != null) {
var data = AuthenticatedUser.fromJson(await this.sharedPref.getObject(USER_PROFILE)); var data = AuthenticatedUser.fromJson(await this.sharedPref.getObject(USER_PROFILE));

@ -93,10 +93,10 @@ class _SplashScreenState extends State<SplashScreen> {
SizedBox( SizedBox(
height: 7, height: 7,
), ),
Text( // Text(
"Version 1.1.0", // "Version 1.1.0",
style: TextStyle(fontSize: 10, fontWeight: FontWeight.w400, color: Color(0xff3989898), letterSpacing: 0, height: 12 / 10), // style: TextStyle(fontSize: 10, fontWeight: FontWeight.w400, color: Color(0xff3989898), letterSpacing: 0, height: 12 / 10),
), // ),
SizedBox( SizedBox(
height: 18, height: 18,
) )

@ -62,7 +62,10 @@ class CalendarUtils {
TZDateTime scheduleDateTimeUTZ = TZDateTime.from(scheduleDateTime, _currentLocation); TZDateTime scheduleDateTimeUTZ = TZDateTime.from(scheduleDateTime, _currentLocation);
print("eventId " + eventId); print("eventId: " + eventId);
print("writableCalendars-name: " + writableCalendars.name);
print("writableCalendars-Id: " + writableCalendars.id);
print("writableCalendarsToString: " + writableCalendars.toString());
Event event = Event(writableCalendars.id, start: scheduleDateTimeUTZ, end: scheduleDateTimeUTZ.add(Duration(minutes: 30)), title: title, description: description); Event event = Event(writableCalendars.id, start: scheduleDateTimeUTZ, end: scheduleDateTimeUTZ.add(Duration(minutes: 30)), title: title, description: description);
deviceCalendarPlugin.createOrUpdateEvent(event).catchError((e) { deviceCalendarPlugin.createOrUpdateEvent(event).catchError((e) {
print("catchError " + e.toString()); print("catchError " + e.toString());

@ -284,7 +284,7 @@ class PushNotificationHandler {
onToken(fcm_token); onToken(fcm_token);
}); });
FirebaseMessaging.instance.getToken(vapidKey: 'BHRJG8sIzcysWxPw3B6xQjz_85nUuCfU6EAmpH18kyUTmB2cj35IdFwCyWSab80SA1v6oBSWVh-p6PcHPw_y00Y').then((String token){ FirebaseMessaging.instance.getToken(vapidKey: 'BHRJG8sIzcysWxPw3B6xQjz_85nUuCfU6EAmpH18kyUTmB2cj35IdFwCyWSab80SA1v6oBSWVh-p6PcHPw_y00Y').then((String token) {
print("Push Notification getToken: " + token); print("Push Notification getToken: " + token);
onToken(token); onToken(token);
}); });
@ -310,6 +310,10 @@ class PushNotificationHandler {
notification.createdOn = DateUtil.convertDateToString(DateTime.now()); notification.createdOn = DateUtil.convertDateToString(DateTime.now());
notification.messageTypeData = remoteMessage.data['picture']; notification.messageTypeData = remoteMessage.data['picture'];
notification.message = remoteMessage.data['message']; notification.message = remoteMessage.data['message'];
notification.notificationType = remoteMessage.data["NotificationType"].toString();
if (remoteMessage.data["NotificationType"] == "2") {
notification.videoURL = remoteMessage.data["VideoUrl"];
}
await NavigationService.navigateToPage(NotificationsDetailsPage( await NavigationService.navigateToPage(NotificationsDetailsPage(
notification: notification, notification: notification,

@ -1,7 +1,7 @@
name: diplomaticquarterapp name: diplomaticquarterapp
description: A new Flutter application. description: A new Flutter application.
version: 4.4.95+404095 version: 4.4.97+404097
environment: environment:
sdk: ">=2.7.0 <3.0.0" sdk: ">=2.7.0 <3.0.0"
@ -135,7 +135,7 @@ dependencies:
flutter_local_notifications: ^9.1.4 flutter_local_notifications: ^9.1.4
#device_calendar #device_calendar
device_calendar: ^4.0.1 device_calendar: ^4.2.0
#Handle Geolocation #Handle Geolocation
geolocator: ^7.7.1 geolocator: ^7.7.1
@ -183,6 +183,7 @@ dependencies:
syncfusion_flutter_sliders: ^19.3.55 syncfusion_flutter_sliders: ^19.3.55
searchable_dropdown: ^1.1.3 searchable_dropdown: ^1.1.3
dropdown_search: 0.4.9 dropdown_search: 0.4.9
youtube_player_flutter: ^8.0.0
# Dep by Zohaib # Dep by Zohaib
shimmer: ^2.0.0 shimmer: ^2.0.0

Loading…
Cancel
Save