Merge branch 'master' into development_aamir

development_aamir
Aamir Muhammad 2 years ago
commit 64efe12784

@ -2,4 +2,7 @@
<resources> <resources>
<root-path name="root" path="."/> <root-path name="root" path="."/>
<external-path name="external_storage_directory" path="." /> <external-path name="external_storage_directory" path="." />
<paths xmlns:android="http://schemas.android.com/apk/res/android">
<files-path name="files-path" path="../" />
</paths>
</resources> </resources>

@ -17,8 +17,10 @@ import 'package:mohem_flutter_app/models/mowadhafhi/get_ticket_transactions.dart
import 'package:mohem_flutter_app/models/mowadhafhi/get_transaction_attachment_model.dart'; import 'package:mohem_flutter_app/models/mowadhafhi/get_transaction_attachment_model.dart';
import 'package:mohem_flutter_app/ui/screens/mowadhafhi/view_transaction_attachment.dart'; import 'package:mohem_flutter_app/ui/screens/mowadhafhi/view_transaction_attachment.dart';
import 'package:mohem_flutter_app/widgets/app_bar_widget.dart'; import 'package:mohem_flutter_app/widgets/app_bar_widget.dart';
import 'package:mohem_flutter_app/widgets/dialogs/confirm_dialog.dart';
import 'package:open_file/open_file.dart'; import 'package:open_file/open_file.dart';
import 'package:path_provider/path_provider.dart'; import 'package:path_provider/path_provider.dart';
import 'package:permission_handler/permission_handler.dart';
class MowadhafhiRequestDetails extends StatefulWidget { class MowadhafhiRequestDetails extends StatefulWidget {
const MowadhafhiRequestDetails({Key? key}) : super(key: key); const MowadhafhiRequestDetails({Key? key}) : super(key: key);
@ -263,20 +265,36 @@ class _RequestDetailsState extends State<MowadhafhiRequestDetails> {
} }
void handleTransactionAttachment() async { void handleTransactionAttachment() async {
String ext = ''; Permission.storage.isGranted.then((isGranted) {
String? rFile = getTransactionAttachmentModel!.base64String; if (!isGranted) {
String? rFileExt = getTransactionAttachmentModel!.fileName; Permission.manageExternalStorage.request().then((granted) async {
if (granted == PermissionStatus.granted) {
String ext = '';
String? rFile = getTransactionAttachmentModel!.base64String;
String? rFileExt = getTransactionAttachmentModel!.fileName;
ext = rFileExt!.split(".").last.toLowerCase(); ext = rFileExt!.split(".").last.toLowerCase();
try {
try { String path = await _createFileFromString(rFile!.split("base64,").last ?? "", ext ?? "");
String path = await _createFileFromString(rFile!.split("base64,").last ?? "", ext ?? ""); await OpenFile.open(path).catchError((err) {
debugPrint(path); print(err);
});
print(" file here: ${File(path).existsSync()}"); } catch (ex) {
await OpenFile.open(path); Utils.showToast("Cannot open file.");
} catch (ex) { }
Utils.showToast("Cannot open file."); } else {
} showDialog(
context: context,
builder: (BuildContext cxt) => ConfirmDialog(
message: "You need to give storage permission to view files.",
onTap: () {
Navigator.pop(context);
},
),
);
}
});
}
});
} }
} }

@ -79,7 +79,7 @@ class _MyDocumentsFragmentState extends State<MyDocumentsFragment> {
Navigator.pushNamed( Navigator.pushNamed(
context, context,
AppRoutes.addDynamicInput, AppRoutes.addDynamicInput,
arguments: DynamicListViewParams(documentfilteredList[index].dOCUMENTTYPE!, documentfilteredList[index].fUNCTIONNAME!, arguments: DynamicListViewParams(documentfilteredList[index].dOCUMENTTYPENAME!, documentfilteredList[index].fUNCTIONNAME!,
selectedEmp: AppState().getUserName, isAttachmentMandatory: true), selectedEmp: AppState().getUserName, isAttachmentMandatory: true),
); );
}); });

Loading…
Cancel
Save