Updates & fixes

Dev_3.3_MedicalReportCR
haroon amjad 3 years ago
parent 5ddf8d4b7a
commit 0f863cd259

@ -20,8 +20,8 @@ var PACKAGES_ORDERS = '/api/orders';
var PACKAGES_ORDER_HISTORY = '/api/orders/items'; var PACKAGES_ORDER_HISTORY = '/api/orders/items';
var PACKAGES_TAMARA_OPT = '/api/orders/paymentoptions/tamara'; var PACKAGES_TAMARA_OPT = '/api/orders/paymentoptions/tamara';
// var BASE_URL = 'http://10.50.100.198:2018/'; // var BASE_URL = 'http://10.50.100.198:2018/';
// var BASE_URL = 'https://uat.hmgwebservices.com/'; var BASE_URL = 'https://uat.hmgwebservices.com/';
var BASE_URL = 'https://hmgwebservices.com/'; // var BASE_URL = 'https://hmgwebservices.com/';
// var BASE_URL = 'https://orash.cloudsolutions.com.sa/'; // var BASE_URL = 'https://orash.cloudsolutions.com.sa/';
// var BASE_URL = 'https://vidauat.cloudsolutions.com.sa/'; // var BASE_URL = 'https://vidauat.cloudsolutions.com.sa/';

@ -12,6 +12,7 @@ class InsuranceManualUpdateRequest {
String policyNo; String policyNo;
String schemeClass; String schemeClass;
int requestType; int requestType;
int patientID;
InsuranceManualUpdateRequest( InsuranceManualUpdateRequest(
{this.setupID, {this.setupID,
@ -26,7 +27,8 @@ class InsuranceManualUpdateRequest {
this.memberShipNo, this.memberShipNo,
this.policyNo, this.policyNo,
this.schemeClass, this.schemeClass,
this.requestType}); this.requestType,
this.patientID});
InsuranceManualUpdateRequest.fromJson(Map<String, dynamic> json) { InsuranceManualUpdateRequest.fromJson(Map<String, dynamic> json) {
setupID = json['SetupID']; setupID = json['SetupID'];
@ -42,6 +44,7 @@ class InsuranceManualUpdateRequest {
policyNo = json['PolicyNo']; policyNo = json['PolicyNo'];
schemeClass = json['SchemeClass']; schemeClass = json['SchemeClass'];
requestType = json['RequestType']; requestType = json['RequestType'];
patientID = json['PatientID'];
} }
Map<String, dynamic> toJson() { Map<String, dynamic> toJson() {
@ -59,6 +62,7 @@ class InsuranceManualUpdateRequest {
data['PolicyNo'] = this.policyNo; data['PolicyNo'] = this.policyNo;
data['SchemeClass'] = this.schemeClass; data['SchemeClass'] = this.schemeClass;
data['RequestType'] = this.requestType; data['RequestType'] = this.requestType;
data['PatientID'] = this.patientID;
return data; return data;
} }
} }

@ -149,7 +149,7 @@ class BaseAppClient {
// body['IdentificationNo'] = 1023854217; // body['IdentificationNo'] = 1023854217;
// body['MobileNo'] = "531940021"; // body['MobileNo'] = "531940021";
// body['PatientID'] = 2001273; //3844083 // body['PatientID'] = 4767370; //3844083
// body['TokenID'] = "@dm!n"; // body['TokenID'] = "@dm!n";
// Patient ID: 3027574 // Patient ID: 3027574

@ -13,9 +13,11 @@ import 'package:flutter/material.dart';
class AttachInsuranceCardImageDialog extends StatefulWidget { class AttachInsuranceCardImageDialog extends StatefulWidget {
final String name; final String name;
final String fileNo; final String fileNo;
final String identificationNo;
final String mobileNo;
final Function(File file, String image) image; final Function(File file, String image) image;
const AttachInsuranceCardImageDialog({Key key, this.name, this.fileNo, this.image}) : super(key: key); const AttachInsuranceCardImageDialog({Key key, this.name, this.fileNo, this.identificationNo, this.mobileNo, this.image}) : super(key: key);
@override @override
_AttachInsuranceCardImageDialogState createState() => _AttachInsuranceCardImageDialogState(); _AttachInsuranceCardImageDialogState createState() => _AttachInsuranceCardImageDialogState();
@ -134,7 +136,16 @@ class _AttachInsuranceCardImageDialogState extends State<AttachInsuranceCardImag
TranslationBase.of(context).updateInsuranceManually, TranslationBase.of(context).updateInsuranceManually,
() { () {
Navigator.pop(context); Navigator.pop(context);
Navigator.push(context, FadePage(page: UpdateInsuranceManually())); Navigator.push(
context,
FadePage(
page: UpdateInsuranceManually(
patientIdentificationNo: widget.identificationNo,
patientMobileNumber: widget.mobileNo,
patientID: num.parse(widget.fileNo),
),
),
);
}, },
textColor: Colors.white, textColor: Colors.white,
color: CustomColors.accentColor, color: CustomColors.accentColor,

@ -16,7 +16,11 @@ import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
class UpdateInsuranceManually extends StatefulWidget { class UpdateInsuranceManually extends StatefulWidget {
const UpdateInsuranceManually({Key key}) : super(key: key); String patientIdentificationNo;
String patientMobileNumber;
int patientID;
UpdateInsuranceManually({@required this.patientIdentificationNo, @required this.patientMobileNumber, @required this.patientID});
@override @override
State<UpdateInsuranceManually> createState() => _UpdateInsuranceManuallyState(); State<UpdateInsuranceManually> createState() => _UpdateInsuranceManuallyState();
@ -51,7 +55,7 @@ class _UpdateInsuranceManuallyState extends State<UpdateInsuranceManually> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
projectViewModel = Provider.of(context); projectViewModel = Provider.of(context);
_nationalIDTextController.text = projectViewModel.user.patientIdentificationNo; _nationalIDTextController.text = widget.patientIdentificationNo;
return AppScaffold( return AppScaffold(
isShowAppBar: true, isShowAppBar: true,
isShowDecPage: false, isShowDecPage: false,
@ -160,7 +164,7 @@ class _UpdateInsuranceManuallyState extends State<UpdateInsuranceManually> {
child: DefaultButton( child: DefaultButton(
TranslationBase.of(context).submit, TranslationBase.of(context).submit,
() { () {
if(isFormValid()) if (isFormValid())
submitManualInsuranceUpdateRequest(); submitManualInsuranceUpdateRequest();
else else
AppToast.showErrorToast(message: TranslationBase.of(context).enterInsuranceDetails); AppToast.showErrorToast(message: TranslationBase.of(context).enterInsuranceDetails);
@ -240,16 +244,18 @@ class _UpdateInsuranceManuallyState extends State<UpdateInsuranceManually> {
insuranceManualUpdateRequest.projectID = selectedInsuranceCompanyObj.projectID; insuranceManualUpdateRequest.projectID = selectedInsuranceCompanyObj.projectID;
insuranceManualUpdateRequest.requestType = 2; insuranceManualUpdateRequest.requestType = 2;
insuranceManualUpdateRequest.mobileNo = projectViewModel.user.mobileNumber; insuranceManualUpdateRequest.mobileNo = widget.patientMobileNumber;
insuranceManualUpdateRequest.cardHolderName = _cardHolderNameTextController.text; insuranceManualUpdateRequest.cardHolderName = _cardHolderNameTextController.text;
insuranceManualUpdateRequest.insuranceCompanyName = selectedInsuranceCompanyObj.companyName; insuranceManualUpdateRequest.insuranceCompanyName = selectedInsuranceCompanyObj.companyName;
insuranceManualUpdateRequest.memberShipNo = _membershipNoTextController.text; insuranceManualUpdateRequest.memberShipNo = _membershipNoTextController.text;
insuranceManualUpdateRequest.policyNo = _policyNoTextController.text; insuranceManualUpdateRequest.policyNo = _policyNoTextController.text;
insuranceManualUpdateRequest.patientIdentificationID = projectViewModel.user.patientIdentificationNo; insuranceManualUpdateRequest.patientIdentificationID = widget.patientIdentificationNo;
insuranceManualUpdateRequest.schemeClass = selectedInsuranceCompaniesSchemesObj.subCategoryDesc; insuranceManualUpdateRequest.schemeClass = selectedInsuranceCompaniesSchemesObj.subCategoryDesc;
insuranceManualUpdateRequest.setupID = selectedInsuranceCompanyObj.setupID; insuranceManualUpdateRequest.setupID = selectedInsuranceCompanyObj.setupID;
insuranceManualUpdateRequest.patientID = widget.patientID;
_insuranceCardService.submitManualInsuranceUpdateRequest(insuranceManualUpdateRequest).then((value) { _insuranceCardService.submitManualInsuranceUpdateRequest(insuranceManualUpdateRequest).then((value) {
print(value);
AppToast.showSuccessToast(message: TranslationBase.of(context).insuranceRequestSubmit); AppToast.showSuccessToast(message: TranslationBase.of(context).insuranceRequestSubmit);
Navigator.pop(context); Navigator.pop(context);
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);

@ -22,8 +22,9 @@ class InsuranceCardUpdateDetails extends StatelessWidget {
final String patientIdentificationID; final String patientIdentificationID;
final int patientID; final int patientID;
final String name; final String name;
final String mobileNo;
const InsuranceCardUpdateDetails({Key key, this.insuranceCardDetailsModel, this.patientIdentificationID, this.patientID, this.name}) : super(key: key); const InsuranceCardUpdateDetails({Key key, this.insuranceCardDetailsModel, this.patientIdentificationID, this.patientID, this.name, this.mobileNo}) : super(key: key);
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
@ -304,7 +305,8 @@ class InsuranceCardUpdateDetails extends StatelessWidget {
color: CustomColors.accentColor, color: CustomColors.accentColor,
small: true, small: true,
onTap: () async { onTap: () async {
confirmAttachInsuranceCardImageDialogDialog(context: context, name: name, fileNo: patientID.toString(), model: model); confirmAttachInsuranceCardImageDialogDialog(
context: context, name: name, fileNo: patientID.toString(), identificationNo: patientIdentificationID, mobileNo: mobileNo, model: model);
}, },
), ),
if (insuranceCardDetailsModel.isNotEmpty) if (insuranceCardDetailsModel.isNotEmpty)
@ -334,7 +336,8 @@ class InsuranceCardUpdateDetails extends StatelessWidget {
label: TranslationBase.of(context).disagree.toUpperCase(), label: TranslationBase.of(context).disagree.toUpperCase(),
color: Colors.grey[800], color: Colors.grey[800],
onTap: () async { onTap: () async {
confirmAttachInsuranceCardImageDialogDialog(context: context, name: name, fileNo: patientID.toString(), model: model); confirmAttachInsuranceCardImageDialogDialog(
context: context, name: name, fileNo: patientID.toString(), identificationNo: patientIdentificationID, mobileNo: mobileNo, model: model);
}, },
) )
], ],
@ -346,12 +349,14 @@ class InsuranceCardUpdateDetails extends StatelessWidget {
); );
} }
void confirmAttachInsuranceCardImageDialogDialog({BuildContext context, String name, String fileNo, InsuranceViewModel model}) { void confirmAttachInsuranceCardImageDialogDialog({BuildContext context, String name, String fileNo, String identificationNo, String mobileNo, InsuranceViewModel model}) {
showDialog( showDialog(
context: context, context: context,
builder: (cxt) => AttachInsuranceCardImageDialog( builder: (cxt) => AttachInsuranceCardImageDialog(
fileNo: fileNo, fileNo: fileNo,
name: name, name: name,
identificationNo: identificationNo,
mobileNo: mobileNo,
image: (file, image) async { image: (file, image) async {
GifLoaderDialogUtils.showMyDialog(context); GifLoaderDialogUtils.showMyDialog(context);
await model.uploadInsuranceCard(context, patientIdentificationID: patientIdentificationID, patientID: patientID, image: image); await model.uploadInsuranceCard(context, patientIdentificationID: patientIdentificationID, patientID: patientID, image: image);

@ -1,5 +1,6 @@
import 'package:diplomaticquarterapp/core/service/insurance_service.dart'; import 'package:diplomaticquarterapp/core/service/insurance_service.dart';
import 'package:diplomaticquarterapp/core/viewModels/insurance_card_View_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/insurance_card_View_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/pages/insurance/UpdateInsuranceManually.dart'; import 'package:diplomaticquarterapp/pages/insurance/UpdateInsuranceManually.dart';
import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart'; import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
@ -7,6 +8,7 @@ import 'package:diplomaticquarterapp/uitl/utils_new.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart'; import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import '../../locator.dart'; import '../../locator.dart';
import '../../widgets/dialogs/confirm_dialog.dart'; import '../../widgets/dialogs/confirm_dialog.dart';
@ -18,8 +20,11 @@ class InsurancePage extends StatelessWidget {
InsurancePage({Key key, this.model}) : super(key: key); InsurancePage({Key key, this.model}) : super(key: key);
ProjectViewModel projectViewModel;
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
projectViewModel = Provider.of(context);
return SingleChildScrollView( return SingleChildScrollView(
child: Padding( child: Padding(
padding: const EdgeInsets.all(12.0), padding: const EdgeInsets.all(12.0),
@ -36,11 +41,16 @@ class InsurancePage extends StatelessWidget {
getDetails( getDetails(
setupID: '010266', setupID: '010266',
projectID: 15, projectID: 15,
patientIdentificationID: model.user.patientIdentificationNo, patientIdentificationID: projectViewModel.user.patientIdentificationNo,
patientID: model.user.patientID, //model.user.patientIdentificationNo,
patientID: projectViewModel.user.patientID,
//model.user.patientID,
parentID: 0, parentID: 0,
isFamily: false, isFamily: projectViewModel.isLoginChild,
name: model.user.firstName + " " + model.user.lastName, //false,
name: projectViewModel.user.firstName + " " + projectViewModel.user.lastName,
mobileNumber: projectViewModel.user.mobileNumber,
//model.user.firstName + " " + model.user.lastName,
context: context, context: context,
); );
}, },
@ -54,7 +64,7 @@ class InsurancePage extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
Text( Text(
model.user.firstName + " " + model.user.lastName, projectViewModel.user.firstName + " " + projectViewModel.user.lastName,
style: TextStyle( style: TextStyle(
fontSize: 14, fontSize: 14,
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
@ -62,7 +72,7 @@ class InsurancePage extends StatelessWidget {
), ),
), ),
Text( Text(
TranslationBase.of(context).fileno + ": " + model.user.patientID.toString(), TranslationBase.of(context).fileno + ": " + projectViewModel.user.patientID.toString(), //model.user.patientID.toString(),
style: TextStyle( style: TextStyle(
fontSize: 12, fontSize: 12,
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
@ -79,6 +89,7 @@ class InsurancePage extends StatelessWidget {
), ),
), ),
), ),
if (!projectViewModel.isLoginChild)
if (model.getAllSharedRecordsByStatusResponse.getAllSharedRecordsByStatusList != null ?? false) if (model.getAllSharedRecordsByStatusResponse.getAllSharedRecordsByStatusList != null ?? false)
ListView.separated( ListView.separated(
physics: NeverScrollableScrollPhysics(), physics: NeverScrollableScrollPhysics(),
@ -95,6 +106,7 @@ class InsurancePage extends StatelessWidget {
name: model.getAllSharedRecordsByStatusResponse.getAllSharedRecordsByStatusList[index].patientName, name: model.getAllSharedRecordsByStatusResponse.getAllSharedRecordsByStatusList[index].patientName,
parentID: model.user.patientID, parentID: model.user.patientID,
isFamily: true, isFamily: true,
mobileNumber: model.getAllSharedRecordsByStatusResponse.getAllSharedRecordsByStatusList[index].mobileNumber,
context: context); context: context);
}, },
child: Container( child: Container(
@ -143,7 +155,7 @@ class InsurancePage extends StatelessWidget {
); );
} }
getDetails({String setupID, int projectID, String patientIdentificationID, int patientID, String name, bool isFamily, int parentID = 0, BuildContext context}) { getDetails({String setupID, int projectID, String patientIdentificationID, int patientID, String name, String mobileNumber, bool isFamily, int parentID = 0, BuildContext context}) {
GifLoaderDialogUtils.showMyDialog(context); GifLoaderDialogUtils.showMyDialog(context);
_insuranceCardService _insuranceCardService
.getPatientInsuranceDetails(setupID: setupID, projectID: projectID, patientID: patientID, patientIdentificationID: patientIdentificationID, isFamily: isFamily, parentID: parentID) .getPatientInsuranceDetails(setupID: setupID, projectID: projectID, patientID: patientID, patientIdentificationID: patientIdentificationID, isFamily: isFamily, parentID: parentID)
@ -158,23 +170,34 @@ class InsurancePage extends StatelessWidget {
patientID: patientID, patientID: patientID,
patientIdentificationID: patientIdentificationID, patientIdentificationID: patientIdentificationID,
name: name, name: name,
mobileNo: mobileNumber,
))).then((value) { ))).then((value) {
model.getInsuranceUpdated(); model.getInsuranceUpdated();
}); });
} else { } else {
// AppToast.showErrorToast(message: _insuranceCardService.error); // AppToast.showErrorToast(message: _insuranceCardService.error);
updateManually(context, _insuranceCardService.error); updateManually(context, _insuranceCardService.error, patientIdentificationID, patientID, mobileNumber);
} }
}); });
} }
void updateManually(BuildContext context, String errorMsg) { void updateManually(BuildContext context, String errorMsg, String patientIdentificationID, int patientID, String mobileNumber) {
ConfirmDialog dialog = new ConfirmDialog( ConfirmDialog dialog = new ConfirmDialog(
context: context, context: context,
confirmMessage: errorMsg + ". " + TranslationBase.of(context).updateInsuranceManuallyDialog, confirmMessage: errorMsg + ". " + TranslationBase.of(context).updateInsuranceManuallyDialog,
okText: TranslationBase.of(context).yes, okText: TranslationBase.of(context).yes,
cancelText: TranslationBase.of(context).no, cancelText: TranslationBase.of(context).no,
okFunction: () => {Navigator.pop(context), Navigator.push(context, FadePage(page: UpdateInsuranceManually()))}, okFunction: () => {
Navigator.pop(context),
Navigator.push(
context,
FadePage(
page: UpdateInsuranceManually(
patientIdentificationNo: patientIdentificationID,
patientID: patientID,
patientMobileNumber: mobileNumber,
)))
},
cancelFunction: () => {}); cancelFunction: () => {});
dialog.showAlertDialog(context); dialog.showAlertDialog(context);
} }

@ -1,10 +1,12 @@
import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart'; import 'package:diplomaticquarterapp/core/model/ImagesInfo.dart';
import 'package:diplomaticquarterapp/core/viewModels/insurance_card_View_model.dart'; import 'package:diplomaticquarterapp/core/viewModels/insurance_card_View_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
import 'package:diplomaticquarterapp/theme/colors.dart'; import 'package:diplomaticquarterapp/theme/colors.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; 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:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import '../base/base_view.dart'; import '../base/base_view.dart';
import 'insurance_page.dart'; import 'insurance_page.dart';
@ -17,6 +19,7 @@ class InsuranceUpdate extends StatefulWidget {
class _InsuranceUpdateState extends State<InsuranceUpdate> with SingleTickerProviderStateMixin { class _InsuranceUpdateState extends State<InsuranceUpdate> with SingleTickerProviderStateMixin {
TabController _tabController; TabController _tabController;
List<ImagesInfo> imagesInfo = List(); List<ImagesInfo> imagesInfo = List();
ProjectViewModel projectViewModel;
@override @override
void initState() { void initState() {
@ -33,6 +36,7 @@ class _InsuranceUpdateState extends State<InsuranceUpdate> with SingleTickerProv
} }
Widget build(BuildContext context) { Widget build(BuildContext context) {
projectViewModel = Provider.of(context);
return BaseView<InsuranceViewModel>( return BaseView<InsuranceViewModel>(
onModelReady: (model) => model.getInsuranceUpdated(), onModelReady: (model) => model.getInsuranceUpdated(),
builder: (BuildContext context, InsuranceViewModel model, Widget child) => AppScaffold( builder: (BuildContext context, InsuranceViewModel model, Widget child) => AppScaffold(
@ -123,7 +127,7 @@ class _InsuranceUpdateState extends State<InsuranceUpdate> with SingleTickerProv
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
Text( Text(
model.user.firstName + " " + model.user.lastName, projectViewModel.user.firstName + " " + projectViewModel.user.lastName,
style: TextStyle( style: TextStyle(
fontSize: 14, fontSize: 14,
fontWeight: FontWeight.w600, fontWeight: FontWeight.w600,
@ -141,7 +145,6 @@ class _InsuranceUpdateState extends State<InsuranceUpdate> with SingleTickerProv
letterSpacing: -0.46, letterSpacing: -0.46,
), ),
), ),
Text( Text(
model.insuranceUpdate[index].createdOn, model.insuranceUpdate[index].createdOn,
style: TextStyle( style: TextStyle(

@ -110,7 +110,7 @@ class _RequestTypePageState extends State<RequestTypePage> {
TranslationBase.of(context).submit, TranslationBase.of(context).submit,
() => { () => {
model.sendRequestLOV(doctorList: widget.doctorList, requestType: parameterCode.toString(), remark: question).then((value) { model.sendRequestLOV(doctorList: widget.doctorList, requestType: parameterCode.toString(), remark: question).then((value) {
if (model.state != ViewState.ErrorLocal || model.state != ViewState.Error) { if (model.state != ViewState.ErrorLocal && model.state != ViewState.Error) {
Navigator.pop(context); Navigator.pop(context);
AppToast.showSuccessToast(message: TranslationBase.of(context).RRTRequestSuccess); AppToast.showSuccessToast(message: TranslationBase.of(context).RRTRequestSuccess);
} }

@ -18,7 +18,7 @@ import 'package:diplomaticquarterapp/widgets/dialogs/confirm_send_email_dialog.d
import 'package:diplomaticquarterapp/widgets/my_rich_text.dart'; import 'package:diplomaticquarterapp/widgets/my_rich_text.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:open_file/open_file.dart'; import 'package:open_filex/open_filex.dart';
import 'package:path_provider/path_provider.dart'; import 'package:path_provider/path_provider.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:rating_bar/rating_bar.dart'; import 'package:rating_bar/rating_bar.dart';
@ -183,7 +183,7 @@ class ReportListWidget extends StatelessWidget {
GifLoaderDialogUtils.hideDialog(AppGlobal.context); GifLoaderDialogUtils.hideDialog(AppGlobal.context);
try { try {
String path = await _createFileFromString(value["MedicalReportBase64"], "pdf"); String path = await _createFileFromString(value["MedicalReportBase64"], "pdf");
OpenFile.open(path); OpenFilex.open(path);
} catch (ex) { } catch (ex) {
AppToast.showErrorToast(message: "Cannot open file."); AppToast.showErrorToast(message: "Cannot open file.");
} }

@ -207,7 +207,8 @@ dependencies:
sms_otp_auto_verify: ^2.1.0 sms_otp_auto_verify: ^2.1.0
flutter_ios_voip_kit: ^0.0.5 flutter_ios_voip_kit: ^0.0.5
google_api_availability: ^3.0.1 google_api_availability: ^3.0.1
open_file: ^3.2.1 # open_file: ^3.2.1
open_filex: ^4.3.2
path_provider: ^2.0.8 path_provider: ^2.0.8
# flutter_callkit_incoming: ^1.0.3+3 # flutter_callkit_incoming: ^1.0.3+3
# firebase_core: 1.12.0 # firebase_core: 1.12.0

Loading…
Cancel
Save