diff --git a/Frontend/android/app/build.gradle b/Frontend/android/app/build.gradle index 166b2b2b..c25077fc 100644 --- a/Frontend/android/app/build.gradle +++ b/Frontend/android/app/build.gradle @@ -22,8 +22,14 @@ if (flutterVersionName == null) { flutterVersionName = '1.0' } +def keystoreProperties = new Properties() +def keystorePropertiesFile = rootProject.file('key.properties') +if (keystorePropertiesFile.exists()) { + keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) +} + android { - namespace "com.example.patient_manager" + namespace "za.co.mzansiinnovationhub.mih" compileSdkVersion flutter.compileSdkVersion ndkVersion flutter.ndkVersion compileSdkVersion 34 @@ -43,20 +49,30 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). - applicationId "com.example.patient_manager" + applicationId "za.co.mzansiinnovationhub.mih" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. - minSdkVersion flutter.minSdkVersion - targetSdkVersion flutter.targetSdkVersion + minSdkVersion 24 //flutter.minSdkVersion + targetSdkVersion 34 //flutter.targetSdkVersion versionCode flutterVersionCode.toInteger() versionName flutterVersionName } + signingConfigs { + release { + keyAlias = keystoreProperties['keyAlias'] + keyPassword = keystoreProperties['keyPassword'] + storeFile = keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null + storePassword = keystoreProperties['storePassword'] + } + } + buildTypes { release { // TODO: Add your own signing config for the release build. // Signing with the debug keys for now, so `flutter run --release` works. - signingConfig signingConfigs.debug + // signingConfig signingConfigs.debug + signingConfig = signingConfigs.release } } } @@ -65,4 +81,6 @@ flutter { source '../..' } -dependencies {} +dependencies { + implementation("com.google.android.material:material:") +} diff --git a/Frontend/android/app/src/main/kotlin/com/example/patient_manager/MainActivity.kt b/Frontend/android/app/src/main/kotlin/com/example/patient_manager/MainActivity.kt index 2f864a1d..92177449 100644 --- a/Frontend/android/app/src/main/kotlin/com/example/patient_manager/MainActivity.kt +++ b/Frontend/android/app/src/main/kotlin/com/example/patient_manager/MainActivity.kt @@ -1,4 +1,4 @@ -package com.example.patient_manager +package za.co.mzansiinnovationhub.mih import io.flutter.embedding.android.FlutterActivity diff --git a/Frontend/android/app/src/main/res/mipmap-hdpi/launcher_icon.png b/Frontend/android/app/src/main/res/mipmap-hdpi/launcher_icon.png index bf3a4727..c61cf9a4 100644 Binary files a/Frontend/android/app/src/main/res/mipmap-hdpi/launcher_icon.png and b/Frontend/android/app/src/main/res/mipmap-hdpi/launcher_icon.png differ diff --git a/Frontend/android/app/src/main/res/mipmap-mdpi/launcher_icon.png b/Frontend/android/app/src/main/res/mipmap-mdpi/launcher_icon.png index 109055d5..ac7c9607 100644 Binary files a/Frontend/android/app/src/main/res/mipmap-mdpi/launcher_icon.png and b/Frontend/android/app/src/main/res/mipmap-mdpi/launcher_icon.png differ diff --git a/Frontend/android/app/src/main/res/mipmap-xhdpi/launcher_icon.png b/Frontend/android/app/src/main/res/mipmap-xhdpi/launcher_icon.png index 54c4318f..485b38a9 100644 Binary files a/Frontend/android/app/src/main/res/mipmap-xhdpi/launcher_icon.png and b/Frontend/android/app/src/main/res/mipmap-xhdpi/launcher_icon.png differ diff --git a/Frontend/android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png b/Frontend/android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png index d5b01f24..4f234519 100644 Binary files a/Frontend/android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png and b/Frontend/android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png differ diff --git a/Frontend/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png b/Frontend/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png index 6132cffe..3eb15925 100644 Binary files a/Frontend/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png and b/Frontend/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png differ diff --git a/Frontend/android/settings.gradle b/Frontend/android/settings.gradle index 7cd71285..fd066b7e 100644 --- a/Frontend/android/settings.gradle +++ b/Frontend/android/settings.gradle @@ -23,7 +23,7 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version "7.3.0" apply false + id "com.android.application" version "7.4.2" apply false } include ":app" diff --git a/Frontend/flutter_launcher_icons.yaml b/Frontend/flutter_launcher_icons.yaml index 6eb2fa11..028e2360 100644 --- a/Frontend/flutter_launcher_icons.yaml +++ b/Frontend/flutter_launcher_icons.yaml @@ -1,11 +1,11 @@ # flutter pub run flutter_launcher_icons flutter_launcher_icons: - image_path: "images/app_icon/mih_app_icon.png" + image_path: "images/app_icon/App_Icon_2.png" android: "launcher_icon" # image_path_android: "assets/icon/icon.png" min_sdk_android: 21 # android min sdk min:16, default 21 - # adaptive_icon_background: "assets/icon/background.png" + adaptive_icon_background: "#3A4454" # adaptive_icon_foreground: "assets/icon/foreground.png" # adaptive_icon_monochrome: "assets/icon/monochrome.png" diff --git a/Frontend/images/app_icon/App_Icon.png b/Frontend/images/app_icon/App_Icon.png new file mode 100644 index 00000000..9d5dbe08 Binary files /dev/null and b/Frontend/images/app_icon/App_Icon.png differ diff --git a/Frontend/images/app_icon/App_Icon_2.png b/Frontend/images/app_icon/App_Icon_2.png new file mode 100644 index 00000000..eb134a33 Binary files /dev/null and b/Frontend/images/app_icon/App_Icon_2.png differ diff --git a/Frontend/images/app_icon/circle_logo.png b/Frontend/images/app_icon/circle_logo.png new file mode 100644 index 00000000..1041552c Binary files /dev/null and b/Frontend/images/app_icon/circle_logo.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png index 2ba4b695..2269fb50 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png index 992fcd53..17f2e317 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png index 2065fd9b..6c3728ef 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png index 6961bd50..e1dd70d9 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png index 8cf59ee9..8d509c9a 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png index e070e432..dd062169 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png index 062fde51..816082e6 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png index 2065fd9b..6c3728ef 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png index c9ea1730..1aed5c26 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png index 47150dbd..6220e9ae 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png index 26dcef9b..fe202716 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png index fbcbff5d..7a205a76 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png index 3067a572..adaae346 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png index 299eebc6..bfa667c0 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png index 47150dbd..6220e9ae 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png index df9094b9..5e262e9b 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png index bf3a4727..c61cf9a4 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png index d5b01f24..4f234519 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png index 9af533bc..12d768fe 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png index 511913fd..44c570eb 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png differ diff --git a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png index 48f03b18..827b8d0b 100644 Binary files a/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png and b/Frontend/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png differ diff --git a/Frontend/lib/mih_env/env.dart b/Frontend/lib/mih_env/env.dart index da9d7979..ceb8c81e 100644 --- a/Frontend/lib/mih_env/env.dart +++ b/Frontend/lib/mih_env/env.dart @@ -13,8 +13,8 @@ abstract class AppEnviroment { switch (env) { case Enviroment.dev: { - baseApiUrl = "http://localhost:8080"; //"http://10.0.2.2:8080"; - baseFileUrl = "http://localhost:9000"; //"http://10.0.2.2:9000"; + baseApiUrl = "http://10.0.2.2:8080"; //"http://localhost:8080"; + baseFileUrl = "http://10.0.2.2:9000"; //"http://localhost:9000"; whatsappAccessToken = "EAAPINXuNFdYBOzBjTcvZA2iPXEHbHRF9uNXyP3ihkPRUcBqKNru5g9NKRRKkFaiaITEzO3BMo6CjdUmlDH4qYTW2mzDrZB4Q21ZCEZBgECZCu27vfaOXJZCYQLNxwoXkrZBRYv8ZAP37f69r3z9JxLQxdxn9gwqA3oNZAlBBRapJQzxOr6pZBTdI3bbjbu17ZBIwRcF4JCqPDCNLEZCI3bmHwEd2i2niNMYZD"; //fingerPrintPluginKey = 'h5X7a5j14iUZCobI1ZeX'; diff --git a/Frontend/lib/mih_packages/mih_home/mih_home.dart b/Frontend/lib/mih_packages/mih_home/mih_home.dart index 44311963..95cdf976 100644 --- a/Frontend/lib/mih_packages/mih_home/mih_home.dart +++ b/Frontend/lib/mih_packages/mih_home/mih_home.dart @@ -1,4 +1,5 @@ import 'dart:async'; +import 'dart:convert'; // import 'dart:convert'; import 'package:flutter/material.dart'; @@ -10,7 +11,7 @@ import 'package:mobile_scanner/mobile_scanner.dart'; // import 'package:simple_barcode_scanner/screens/web.dart'; // import 'package:simple_barcode_scanner/simple_barcode_scanner.dart'; import '../../main.dart'; -// import 'package:supertokens_flutter/http.dart' as http; +import 'package:supertokens_flutter/http.dart' as http; import "package:universal_html/html.dart" as html; import '../../mih_apis/mih_location_api.dart'; @@ -949,27 +950,30 @@ class _MIHHomeState extends State { } Future refreshNotifications() async { - html.window.location.reload(); - // var responseNotification = await http.get(Uri.parse( - // "$baseAPI/notifications/${widget.signedInUser.app_id}?amount=$amount")); - // List notifi; - // if (responseNotification.statusCode == 200) { - // String body = responseNotification.body; - // // var decodedData = jsonDecode(body); - // // MIHNotification notifications = MIHNotification.fromJson(decodedData); + if (MzanziInnovationHub.of(context)!.theme.getPlatform() == "Web") { + html.window.location.reload(); + } else { + var responseNotification = await http.get(Uri.parse( + "$baseAPI/notifications/${widget.signedInUser.app_id}?amount=$amount")); + List notifi; + if (responseNotification.statusCode == 200) { + String body = responseNotification.body; + // var decodedData = jsonDecode(body); + // MIHNotification notifications = MIHNotification.fromJson(decodedData); - // Iterable l = jsonDecode(body); - // //print("Here2"); - // List notifications = List.from( - // l.map((model) => MIHNotification.fromJson(model))); - // notifi = notifications; - // } else { - // notifi = []; - // } - // setState(() { - // notifiList = notifi; - // }); - // notificationPopUp(); + Iterable l = jsonDecode(body); + //print("Here2"); + List notifications = List.from( + l.map((model) => MIHNotification.fromJson(model))); + notifi = notifications; + } else { + notifi = []; + } + setState(() { + notifiList = notifi; + }); + notificationPopUp(); + } } void notificationPopUp() { diff --git a/Frontend/pubspec.lock b/Frontend/pubspec.lock index f1fa20a7..2bfd1e96 100644 --- a/Frontend/pubspec.lock +++ b/Frontend/pubspec.lock @@ -387,14 +387,6 @@ packages: description: flutter source: sdk version: "0.0.0" - flutter_barcode_scanner: - dependency: "direct main" - description: - name: flutter_barcode_scanner - sha256: a4ba37daf9933f451a5e812c753ddd045d6354e4a3280342d895b07fecaab3fa - url: "https://pub.dev" - source: hosted - version: "2.0.0" flutter_launcher_icons: dependency: "direct main" description: diff --git a/Frontend/pubspec.yaml b/Frontend/pubspec.yaml index 2d3ac2ad..ab731d26 100644 --- a/Frontend/pubspec.yaml +++ b/Frontend/pubspec.yaml @@ -63,7 +63,7 @@ dependencies: simple_barcode_scanner: ^0.2.5 mobile_scanner: ^6.0.2 flutter_launcher_icons: ^0.13.1 - flutter_barcode_scanner: ^2.0.0 + # flutter_barcode_scanner: ^2.0.0 barcode_widget: ^2.0.4 dev_dependencies: diff --git a/backend/routers/fileStorage.py b/backend/routers/fileStorage.py index adda5a9d..e4e7e42e 100644 --- a/backend/routers/fileStorage.py +++ b/backend/routers/fileStorage.py @@ -123,7 +123,7 @@ async def pull_File_from_user(app_id: str, folder: str, file_name: str, env: str if(env == "Dev"): return { # 10.0.2.2 - "minioURL": f"http://localhost:9000/mih/{app_id}/{folder}/{file_name}", + "minioURL": f"http://10.0.2.2:9000/mih/{app_id}/{folder}/{file_name}",#"http://localhost:9000/mih/{app_id}/{folder}/{file_name}", } else: return {