diff --git a/ios/Podfile b/ios/Podfile
deleted file mode 100644
index 62207805..00000000
--- a/ios/Podfile
+++ /dev/null
@@ -1,91 +0,0 @@
-# Uncomment this line to define a global platform for your project
- platform :ios, '11.0'
-
-# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
-ENV['COCOAPODS_DISABLE_STATS'] = 'true'
-
-project 'Runner', {
- 'Debug' => :debug,
- 'Profile' => :release,
- 'Release' => :release,
-}
-
-def parse_KV_file(file, separator='=')
- file_abs_path = File.expand_path(file)
- if !File.exists? file_abs_path
- return [];
- end
- generated_key_values = {}
- skip_line_start_symbols = ["#", "/"]
- File.foreach(file_abs_path) do |line|
- next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ }
- plugin = line.split(pattern=separator)
- if plugin.length == 2
- podname = plugin[0].strip()
- path = plugin[1].strip()
- podpath = File.expand_path("#{path}", file_abs_path)
- generated_key_values[podname] = podpath
- else
- puts "Invalid plugin specification: #{line}"
- end
- end
- generated_key_values
-end
-
-target 'Runner' do
- use_frameworks!
- use_modular_headers!
-
- # Flutter Pod
-
- copied_flutter_dir = File.join(__dir__, 'Flutter')
- copied_framework_path = File.join(copied_flutter_dir, 'Flutter.framework')
- copied_podspec_path = File.join(copied_flutter_dir, 'Flutter.podspec')
- unless File.exist?(copied_framework_path) && File.exist?(copied_podspec_path)
- # Copy Flutter.framework and Flutter.podspec to Flutter/ to have something to link against if the xcode backend script has not run yet.
- # That script will copy the correct debug/profile/release version of the framework based on the currently selected Xcode configuration.
- # CocoaPods will not embed the framework on pod install (before any build phases can generate) if the dylib does not exist.
-
- generated_xcode_build_settings_path = File.join(copied_flutter_dir, 'Generated.xcconfig')
- unless File.exist?(generated_xcode_build_settings_path)
- raise "Generated.xcconfig must exist. If you're running pod install manually, make sure flutter pub get is executed first"
- end
- generated_xcode_build_settings = parse_KV_file(generated_xcode_build_settings_path)
- cached_framework_dir = generated_xcode_build_settings['FLUTTER_FRAMEWORK_DIR'];
-
- unless File.exist?(copied_framework_path)
- FileUtils.cp_r(File.join(cached_framework_dir, 'Flutter.framework'), copied_flutter_dir)
- end
- unless File.exist?(copied_podspec_path)
- FileUtils.cp(File.join(cached_framework_dir, 'Flutter.podspec'), copied_flutter_dir)
- end
- end
-
- # Keep pod path relative so it can be checked into Podfile.lock.
- pod 'Flutter', :path => 'Flutter'
- pod 'OpenTok'
- pod 'Alamofire', '~> 5.2'
- # Plugin Pods
-
- # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock
- # referring to absolute paths on developers' machines.
- system('rm -rf .symlinks')
- system('mkdir -p .symlinks/plugins')
- plugin_pods = parse_KV_file('../.flutter-plugins')
- plugin_pods.each do |name, path|
- symlink = File.join('.symlinks', 'plugins', name)
- File.symlink(path, symlink)
- pod name, :path => File.join(symlink, 'ios')
- end
-end
-
-# Prevent Cocoapods from embedding a second Flutter framework and causing an error with the new Xcode build system.
-install! 'cocoapods', :disable_input_output_paths => true
-
-post_install do |installer|
- installer.pods_project.targets.each do |target|
- target.build_configurations.each do |config|
- config.build_settings['ENABLE_BITCODE'] = 'NO'
- end
- end
-end
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
deleted file mode 100644
index 44151727..00000000
--- a/ios/Podfile.lock
+++ /dev/null
@@ -1,327 +0,0 @@
-PODS:
- - Alamofire (5.4.3)
- - barcode_scan_fix (0.0.1):
- - Flutter
- - MTBBarcodeScanner
- - connectivity (0.0.1):
- - Flutter
- - Reachability
- - connectivity_for_web (0.1.0):
- - Flutter
- - connectivity_macos (0.0.1):
- - Flutter
- - device_info (0.0.1):
- - Flutter
- - Firebase/CoreOnly (6.33.0):
- - FirebaseCore (= 6.10.3)
- - Firebase/Messaging (6.33.0):
- - Firebase/CoreOnly
- - FirebaseMessaging (~> 4.7.0)
- - firebase_core (0.5.3):
- - Firebase/CoreOnly (~> 6.33.0)
- - Flutter
- - firebase_core_web (0.1.0):
- - Flutter
- - firebase_messaging (7.0.3):
- - Firebase/CoreOnly (~> 6.33.0)
- - Firebase/Messaging (~> 6.33.0)
- - firebase_core
- - Flutter
- - FirebaseCore (6.10.3):
- - FirebaseCoreDiagnostics (~> 1.6)
- - GoogleUtilities/Environment (~> 6.7)
- - GoogleUtilities/Logger (~> 6.7)
- - FirebaseCoreDiagnostics (1.7.0):
- - GoogleDataTransport (~> 7.4)
- - GoogleUtilities/Environment (~> 6.7)
- - GoogleUtilities/Logger (~> 6.7)
- - nanopb (~> 1.30906.0)
- - FirebaseInstallations (1.7.0):
- - FirebaseCore (~> 6.10)
- - GoogleUtilities/Environment (~> 6.7)
- - GoogleUtilities/UserDefaults (~> 6.7)
- - PromisesObjC (~> 1.2)
- - FirebaseInstanceID (4.8.0):
- - FirebaseCore (~> 6.10)
- - FirebaseInstallations (~> 1.6)
- - GoogleUtilities/Environment (~> 6.7)
- - GoogleUtilities/UserDefaults (~> 6.7)
- - FirebaseMessaging (4.7.1):
- - FirebaseCore (~> 6.10)
- - FirebaseInstanceID (~> 4.7)
- - GoogleUtilities/AppDelegateSwizzler (~> 6.7)
- - GoogleUtilities/Environment (~> 6.7)
- - GoogleUtilities/Reachability (~> 6.7)
- - GoogleUtilities/UserDefaults (~> 6.7)
- - Protobuf (>= 3.9.2, ~> 3.9)
- - Flutter (1.0.0)
- - flutter_flexible_toast (0.0.1):
- - Flutter
- - flutter_inappwebview (0.0.1):
- - Flutter
- - flutter_plugin_android_lifecycle (0.0.1):
- - Flutter
- - GoogleDataTransport (7.5.1):
- - nanopb (~> 1.30906.0)
- - GoogleUtilities/AppDelegateSwizzler (6.7.2):
- - GoogleUtilities/Environment
- - GoogleUtilities/Logger
- - GoogleUtilities/Network
- - GoogleUtilities/Environment (6.7.2):
- - PromisesObjC (~> 1.2)
- - GoogleUtilities/Logger (6.7.2):
- - GoogleUtilities/Environment
- - GoogleUtilities/Network (6.7.2):
- - GoogleUtilities/Logger
- - "GoogleUtilities/NSData+zlib"
- - GoogleUtilities/Reachability
- - "GoogleUtilities/NSData+zlib (6.7.2)"
- - GoogleUtilities/Reachability (6.7.2):
- - GoogleUtilities/Logger
- - GoogleUtilities/UserDefaults (6.7.2):
- - GoogleUtilities/Logger
- - hexcolor (0.0.1):
- - Flutter
- - imei_plugin (0.0.1):
- - Flutter
- - local_auth (0.0.1):
- - Flutter
- - maps_launcher (0.0.1):
- - Flutter
- - MTBBarcodeScanner (5.0.11)
- - nanopb (1.30906.0):
- - nanopb/decode (= 1.30906.0)
- - nanopb/encode (= 1.30906.0)
- - nanopb/decode (1.30906.0)
- - nanopb/encode (1.30906.0)
- - OpenTok (2.15.3)
- - path_provider_linux (0.0.1):
- - Flutter
- - path_provider_windows (0.0.1):
- - Flutter
- - "permission_handler (5.1.0+2)":
- - Flutter
- - PromisesObjC (1.2.12)
- - Protobuf (3.17.0)
- - Reachability (3.2)
- - screen (0.0.1):
- - Flutter
- - shared_preferences (0.0.1):
- - Flutter
- - shared_preferences_linux (0.0.1):
- - Flutter
- - shared_preferences_macos (0.0.1):
- - Flutter
- - shared_preferences_web (0.0.1):
- - Flutter
- - shared_preferences_windows (0.0.1):
- - Flutter
- - speech_to_text (0.0.1):
- - Flutter
- - Try
- - Try (2.1.1)
- - url_launcher (0.0.1):
- - Flutter
- - url_launcher_linux (0.0.1):
- - Flutter
- - url_launcher_macos (0.0.1):
- - Flutter
- - url_launcher_web (0.0.1):
- - Flutter
- - url_launcher_windows (0.0.1):
- - Flutter
- - video_player (0.0.1):
- - Flutter
- - video_player_web (0.0.1):
- - Flutter
- - wakelock (0.0.1):
- - Flutter
- - webview_flutter (0.0.1):
- - Flutter
-
-DEPENDENCIES:
- - Alamofire (~> 5.2)
- - barcode_scan_fix (from `.symlinks/plugins/barcode_scan_fix/ios`)
- - connectivity (from `.symlinks/plugins/connectivity/ios`)
- - connectivity_for_web (from `.symlinks/plugins/connectivity_for_web/ios`)
- - connectivity_macos (from `.symlinks/plugins/connectivity_macos/ios`)
- - device_info (from `.symlinks/plugins/device_info/ios`)
- - firebase_core (from `.symlinks/plugins/firebase_core/ios`)
- - firebase_core_web (from `.symlinks/plugins/firebase_core_web/ios`)
- - firebase_messaging (from `.symlinks/plugins/firebase_messaging/ios`)
- - Flutter (from `Flutter`)
- - flutter_flexible_toast (from `.symlinks/plugins/flutter_flexible_toast/ios`)
- - flutter_inappwebview (from `.symlinks/plugins/flutter_inappwebview/ios`)
- - flutter_plugin_android_lifecycle (from `.symlinks/plugins/flutter_plugin_android_lifecycle/ios`)
- - hexcolor (from `.symlinks/plugins/hexcolor/ios`)
- - imei_plugin (from `.symlinks/plugins/imei_plugin/ios`)
- - local_auth (from `.symlinks/plugins/local_auth/ios`)
- - maps_launcher (from `.symlinks/plugins/maps_launcher/ios`)
- - OpenTok
- - path_provider_linux (from `.symlinks/plugins/path_provider_linux/ios`)
- - path_provider_windows (from `.symlinks/plugins/path_provider_windows/ios`)
- - permission_handler (from `.symlinks/plugins/permission_handler/ios`)
- - screen (from `.symlinks/plugins/screen/ios`)
- - shared_preferences (from `.symlinks/plugins/shared_preferences/ios`)
- - shared_preferences_linux (from `.symlinks/plugins/shared_preferences_linux/ios`)
- - shared_preferences_macos (from `.symlinks/plugins/shared_preferences_macos/ios`)
- - shared_preferences_web (from `.symlinks/plugins/shared_preferences_web/ios`)
- - shared_preferences_windows (from `.symlinks/plugins/shared_preferences_windows/ios`)
- - speech_to_text (from `.symlinks/plugins/speech_to_text/ios`)
- - url_launcher (from `.symlinks/plugins/url_launcher/ios`)
- - url_launcher_linux (from `.symlinks/plugins/url_launcher_linux/ios`)
- - url_launcher_macos (from `.symlinks/plugins/url_launcher_macos/ios`)
- - url_launcher_web (from `.symlinks/plugins/url_launcher_web/ios`)
- - url_launcher_windows (from `.symlinks/plugins/url_launcher_windows/ios`)
- - video_player (from `.symlinks/plugins/video_player/ios`)
- - video_player_web (from `.symlinks/plugins/video_player_web/ios`)
- - wakelock (from `.symlinks/plugins/wakelock/ios`)
- - webview_flutter (from `.symlinks/plugins/webview_flutter/ios`)
-
-SPEC REPOS:
- trunk:
- - Alamofire
- - Firebase
- - FirebaseCore
- - FirebaseCoreDiagnostics
- - FirebaseInstallations
- - FirebaseInstanceID
- - FirebaseMessaging
- - GoogleDataTransport
- - GoogleUtilities
- - MTBBarcodeScanner
- - nanopb
- - OpenTok
- - PromisesObjC
- - Protobuf
- - Reachability
- - Try
-
-EXTERNAL SOURCES:
- barcode_scan_fix:
- :path: ".symlinks/plugins/barcode_scan_fix/ios"
- connectivity:
- :path: ".symlinks/plugins/connectivity/ios"
- connectivity_for_web:
- :path: ".symlinks/plugins/connectivity_for_web/ios"
- connectivity_macos:
- :path: ".symlinks/plugins/connectivity_macos/ios"
- device_info:
- :path: ".symlinks/plugins/device_info/ios"
- firebase_core:
- :path: ".symlinks/plugins/firebase_core/ios"
- firebase_core_web:
- :path: ".symlinks/plugins/firebase_core_web/ios"
- firebase_messaging:
- :path: ".symlinks/plugins/firebase_messaging/ios"
- Flutter:
- :path: Flutter
- flutter_flexible_toast:
- :path: ".symlinks/plugins/flutter_flexible_toast/ios"
- flutter_inappwebview:
- :path: ".symlinks/plugins/flutter_inappwebview/ios"
- flutter_plugin_android_lifecycle:
- :path: ".symlinks/plugins/flutter_plugin_android_lifecycle/ios"
- hexcolor:
- :path: ".symlinks/plugins/hexcolor/ios"
- imei_plugin:
- :path: ".symlinks/plugins/imei_plugin/ios"
- local_auth:
- :path: ".symlinks/plugins/local_auth/ios"
- maps_launcher:
- :path: ".symlinks/plugins/maps_launcher/ios"
- path_provider_linux:
- :path: ".symlinks/plugins/path_provider_linux/ios"
- path_provider_windows:
- :path: ".symlinks/plugins/path_provider_windows/ios"
- permission_handler:
- :path: ".symlinks/plugins/permission_handler/ios"
- screen:
- :path: ".symlinks/plugins/screen/ios"
- shared_preferences:
- :path: ".symlinks/plugins/shared_preferences/ios"
- shared_preferences_linux:
- :path: ".symlinks/plugins/shared_preferences_linux/ios"
- shared_preferences_macos:
- :path: ".symlinks/plugins/shared_preferences_macos/ios"
- shared_preferences_web:
- :path: ".symlinks/plugins/shared_preferences_web/ios"
- shared_preferences_windows:
- :path: ".symlinks/plugins/shared_preferences_windows/ios"
- speech_to_text:
- :path: ".symlinks/plugins/speech_to_text/ios"
- url_launcher:
- :path: ".symlinks/plugins/url_launcher/ios"
- url_launcher_linux:
- :path: ".symlinks/plugins/url_launcher_linux/ios"
- url_launcher_macos:
- :path: ".symlinks/plugins/url_launcher_macos/ios"
- url_launcher_web:
- :path: ".symlinks/plugins/url_launcher_web/ios"
- url_launcher_windows:
- :path: ".symlinks/plugins/url_launcher_windows/ios"
- video_player:
- :path: ".symlinks/plugins/video_player/ios"
- video_player_web:
- :path: ".symlinks/plugins/video_player_web/ios"
- wakelock:
- :path: ".symlinks/plugins/wakelock/ios"
- webview_flutter:
- :path: ".symlinks/plugins/webview_flutter/ios"
-
-SPEC CHECKSUMS:
- Alamofire: e447a2774a40c996748296fa2c55112fdbbc42f9
- barcode_scan_fix: 80dd65de55f27eec6591dd077c8b85f2b79e31f1
- connectivity: c4130b2985d4ef6fd26f9702e886bd5260681467
- connectivity_for_web: 2b8584556930d4bd490d82b836bcf45067ce345b
- connectivity_macos: e2e9731b6b22dda39eb1b128f6969d574460e191
- device_info: d7d233b645a32c40dfdc212de5cf646ca482f175
- Firebase: 8db6f2d1b2c5e2984efba4949a145875a8f65fe5
- firebase_core: 5d6a02f3d85acd5f8321c2d6d62877626a670659
- firebase_core_web: d501d8b946b60c8af265428ce483b0fff5ad52d1
- firebase_messaging: 0aea2cd5885b65e19ede58ee3507f485c992cc75
- FirebaseCore: d889d9e12535b7f36ac8bfbf1713a0836a3012cd
- FirebaseCoreDiagnostics: 770ac5958e1372ce67959ae4b4f31d8e127c3ac1
- FirebaseInstallations: 466c7b4d1f58fe16707693091da253726a731ed2
- FirebaseInstanceID: bd3ffc24367f901a43c063b36c640b345a4a5dd1
- FirebaseMessaging: 5eca4ef173de76253352511aafef774caa1cba2a
- Flutter: 0e3d915762c693b495b44d77113d4970485de6ec
- flutter_flexible_toast: 0547e740cae0c33bb7c51bcd931233f4584e1143
- flutter_inappwebview: 69dfbac46157b336ffbec19ca6dfd4638c7bf189
- flutter_plugin_android_lifecycle: dc0b544e129eebb77a6bfb1239d4d1c673a60a35
- GoogleDataTransport: f56af7caa4ed338dc8e138a5d7c5973e66440833
- GoogleUtilities: 7f2f5a07f888cdb145101d6042bc4422f57e70b3
- hexcolor: fdfb9c4258ad96e949c2dbcdf790a62194b8aa89
- imei_plugin: cb1af7c223ac2d82dcd1457a7137d93d65d2a3cd
- local_auth: 25938960984c3a7f6e3253e3f8d962fdd16852bd
- maps_launcher: eae38ee13a9c3f210fa04e04bb4c073fa4c6ed92
- MTBBarcodeScanner: f453b33c4b7dfe545d8c6484ed744d55671788cb
- nanopb: 59317e09cf1f1a0af72f12af412d54edf52603fc
- OpenTok: fde03ecc5ea31fe0a453242847c4ee1f47e1d735
- path_provider_linux: 4d630dc393e1f20364f3e3b4a2ff41d9674a84e4
- path_provider_windows: a2b81600c677ac1959367280991971cb9a1edb3b
- permission_handler: ccb20a9fad0ee9b1314a52b70b76b473c5f8dab0
- PromisesObjC: 3113f7f76903778cf4a0586bd1ab89329a0b7b97
- Protobuf: 7327d4444215b5f18e560a97f879ff5503c4581c
- Reachability: 33e18b67625424e47b6cde6d202dce689ad7af96
- screen: abd91ca7bf3426e1cc3646d27e9b2358d6bf07b0
- shared_preferences: af6bfa751691cdc24be3045c43ec037377ada40d
- shared_preferences_linux: afefbfe8d921e207f01ede8b60373d9e3b566b78
- shared_preferences_macos: f3f29b71ccbb56bf40c9dd6396c9acf15e214087
- shared_preferences_web: 141cce0c3ed1a1c5bf2a0e44f52d31eeb66e5ea9
- shared_preferences_windows: 36b76d6f54e76ead957e60b49e2f124b4cd3e6ae
- speech_to_text: b43a7d99aef037bd758ed8e45d79bbac035d2dfe
- Try: 5ef669ae832617b3cee58cb2c6f99fb767a4ff96
- url_launcher: 6fef411d543ceb26efce54b05a0a40bfd74cbbef
- url_launcher_linux: ac237cb7a8058736e4aae38bdbcc748a4b394cc0
- url_launcher_macos: fd7894421cd39320dce5f292fc99ea9270b2a313
- url_launcher_web: e5527357f037c87560776e36436bf2b0288b965c
- url_launcher_windows: 683d7c283894db8d1914d3ab2223b20cc1ad95d5
- video_player: 9cc823b1d9da7e8427ee591e8438bfbcde500e6e
- video_player_web: da8cadb8274ed4f8dbee8d7171b420dedd437ce7
- wakelock: 0d4a70faf8950410735e3f61fb15d517c8a6efc4
- webview_flutter: d2b4d6c66968ad042ad94cbb791f5b72b4678a96
-
-PODFILE CHECKSUM: d0a3789a37635365b4345e456835ed9d30398217
-
-COCOAPODS: 1.10.1
diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj
index f0784432..9efb7e0d 100644
--- a/ios/Runner.xcodeproj/project.pbxproj
+++ b/ios/Runner.xcodeproj/project.pbxproj
@@ -224,9 +224,78 @@
files = (
);
inputPaths = (
+ "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh",
+ "${BUILT_PRODUCTS_DIR}/Alamofire/Alamofire.framework",
+ "${BUILT_PRODUCTS_DIR}/DKImagePickerController/DKImagePickerController.framework",
+ "${BUILT_PRODUCTS_DIR}/DKPhotoGallery/DKPhotoGallery.framework",
+ "${BUILT_PRODUCTS_DIR}/FirebaseCore/FirebaseCore.framework",
+ "${BUILT_PRODUCTS_DIR}/FirebaseCoreDiagnostics/FirebaseCoreDiagnostics.framework",
+ "${BUILT_PRODUCTS_DIR}/FirebaseInstallations/FirebaseInstallations.framework",
+ "${BUILT_PRODUCTS_DIR}/FirebaseMessaging/FirebaseMessaging.framework",
+ "${BUILT_PRODUCTS_DIR}/GoogleDataTransport/GoogleDataTransport.framework",
+ "${BUILT_PRODUCTS_DIR}/GoogleUtilities/GoogleUtilities.framework",
+ "${BUILT_PRODUCTS_DIR}/MTBBarcodeScanner/MTBBarcodeScanner.framework",
+ "${BUILT_PRODUCTS_DIR}/OrderedSet/OrderedSet.framework",
+ "${BUILT_PRODUCTS_DIR}/PromisesObjC/FBLPromises.framework",
+ "${BUILT_PRODUCTS_DIR}/Reachability/Reachability.framework",
+ "${BUILT_PRODUCTS_DIR}/SDWebImage/SDWebImage.framework",
+ "${BUILT_PRODUCTS_DIR}/SwiftyGif/SwiftyGif.framework",
+ "${BUILT_PRODUCTS_DIR}/Try/Try.framework",
+ "${BUILT_PRODUCTS_DIR}/barcode_scan_fix/barcode_scan_fix.framework",
+ "${BUILT_PRODUCTS_DIR}/connectivity/connectivity.framework",
+ "${BUILT_PRODUCTS_DIR}/device_info/device_info.framework",
+ "${BUILT_PRODUCTS_DIR}/file_picker/file_picker.framework",
+ "${BUILT_PRODUCTS_DIR}/flutter_flexible_toast/flutter_flexible_toast.framework",
+ "${BUILT_PRODUCTS_DIR}/flutter_inappwebview/flutter_inappwebview.framework",
+ "${BUILT_PRODUCTS_DIR}/flutter_keyboard_visibility/flutter_keyboard_visibility.framework",
+ "${BUILT_PRODUCTS_DIR}/hexcolor/hexcolor.framework",
+ "${BUILT_PRODUCTS_DIR}/imei_plugin/imei_plugin.framework",
+ "${BUILT_PRODUCTS_DIR}/local_auth/local_auth.framework",
+ "${BUILT_PRODUCTS_DIR}/maps_launcher/maps_launcher.framework",
+ "${BUILT_PRODUCTS_DIR}/nanopb/nanopb.framework",
+ "${BUILT_PRODUCTS_DIR}/shared_preferences/shared_preferences.framework",
+ "${BUILT_PRODUCTS_DIR}/speech_to_text/speech_to_text.framework",
+ "${BUILT_PRODUCTS_DIR}/url_launcher/url_launcher.framework",
+ "${BUILT_PRODUCTS_DIR}/video_player/video_player.framework",
+ "${BUILT_PRODUCTS_DIR}/wakelock/wakelock.framework",
+ "${BUILT_PRODUCTS_DIR}/webview_flutter/webview_flutter.framework",
);
name = "[CP] Embed Pods Frameworks";
outputPaths = (
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Alamofire.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DKImagePickerController.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DKPhotoGallery.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseCore.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseCoreDiagnostics.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseInstallations.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FirebaseMessaging.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GoogleDataTransport.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/GoogleUtilities.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MTBBarcodeScanner.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/OrderedSet.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/FBLPromises.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Reachability.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SDWebImage.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SwiftyGif.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Try.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/barcode_scan_fix.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/connectivity.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/device_info.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/file_picker.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_flexible_toast.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_inappwebview.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_keyboard_visibility.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hexcolor.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/imei_plugin.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/local_auth.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/maps_launcher.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/nanopb.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/shared_preferences.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/speech_to_text.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/url_launcher.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/video_player.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/wakelock.framework",
+ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/webview_flutter.framework",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
diff --git a/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
index 1d526a16..919434a6 100644
--- a/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
+++ b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -2,6 +2,6 @@
+ location = "self:">
diff --git a/lib/core/service/patient_medical_file/sick_leave/sickleave_service.dart b/lib/core/service/patient_medical_file/sick_leave/sickleave_service.dart
index bbddbde2..0294c3e7 100644
--- a/lib/core/service/patient_medical_file/sick_leave/sickleave_service.dart
+++ b/lib/core/service/patient_medical_file/sick_leave/sickleave_service.dart
@@ -61,9 +61,8 @@ class SickLeaveService extends BaseService {
return Future.value(response);
},
onFailure: (String error, int statusCode) {
- DrAppToastMsg.showErrorToast(error);
- // hasError = true;
- // super.error = error;
+ hasError = true;
+ super.error = error;
},
body: addSickLeaveRequest.toJson(),
);
diff --git a/lib/core/viewModel/patient-referral-viewmodel.dart b/lib/core/viewModel/patient-referral-viewmodel.dart
index 6e67aea3..c1ae248a 100644
--- a/lib/core/viewModel/patient-referral-viewmodel.dart
+++ b/lib/core/viewModel/patient-referral-viewmodel.dart
@@ -200,7 +200,7 @@ class PatientReferralViewModel extends BaseViewModel {
patientID: patient.patientId,
roomID: patient.roomId,
referralClinic: clinicID,
- admissionNo: patient.appointmentNo,
+ admissionNo: int.parse(patient.admissionNo!), /// TODO Elham* something in case inpateint since we send send appointmentNo for admissionNo which all time null
referralDoctor: doctorID,
patientTypeID: patient.patientType,
referringDoctorRemarks: remarks,
diff --git a/lib/core/viewModel/sick_leave_view_model.dart b/lib/core/viewModel/sick_leave_view_model.dart
index c5a0bc73..60eebe88 100644
--- a/lib/core/viewModel/sick_leave_view_model.dart
+++ b/lib/core/viewModel/sick_leave_view_model.dart
@@ -17,12 +17,13 @@ class SickLeaveViewModel extends BaseViewModel {
get getReschduleLeave => _sickLeaveService.getAllRescheduleLeave;
get postSechedule => _sickLeaveService.postReschedule;
get sickleaveResponse => _sickLeaveService.sickLeaveResponse;
+
Future addSickLeave(AddSickLeaveRequest addSickLeaveRequest) async {
- setState(ViewState.Busy);
+ setState(ViewState.BusyLocal);
await _sickLeaveService.addSickLeave(addSickLeaveRequest);
if (_sickLeaveService.hasError) {
error = _sickLeaveService.error!;
- setState(ViewState.Error);
+ setState(ViewState.ErrorLocal);
} else
setState(ViewState.Idle);
}
diff --git a/lib/models/patient/patiant_info_model.dart b/lib/models/patient/patiant_info_model.dart
index 16377e7a..06936a59 100644
--- a/lib/models/patient/patiant_info_model.dart
+++ b/lib/models/patient/patiant_info_model.dart
@@ -1,7 +1,7 @@
// TODO : it have to be changed.
class PatiantInformtion {
- final PatiantInformtion? patientDetails;
+ PatiantInformtion? patientDetails;
int? genderInt;
dynamic age;
String? appointmentDate;
@@ -75,7 +75,8 @@ class PatiantInformtion {
int? vcId;
String? voipToken;
- PatiantInformtion(
+
+ PatiantInformtion(
{this.patientDetails,
this.projectId,
this.clinicId,
@@ -149,93 +150,111 @@ class PatiantInformtion {
this.status,
this.vcId,
this.voipToken});
+ PatiantInformtion.fromJson(Map json) {
+ try {
+ patientDetails =
+ json['patientDetails'] != null ? new PatiantInformtion.fromJson(
+ json['patientDetails']) : null;
+ projectId = json["ProjectID"] ?? json["projectID"];
+ clinicId = json["ClinicID"] ?? json["clinicID"];
+ doctorId = json["DoctorID"] ?? json["doctorID"];
+ patientId = json["PatientID"] != null
+ ? json["PatientID"] is String
+ ? int?.parse(json["PatientID"])
+ : json["PatientID"]
+ : json["patientID"] ?? json['patientMRN'] ?? json['PatientMRN'];
+ doctorName = json["DoctorName"] ?? json["doctorName"];
+ doctorNameN = json["DoctorNameN"] ?? json["doctorNameN"];
+ firstName = json["FirstName"] ?? json["firstName"];
+ middleName = json["MiddleName"] ?? json["middleName"];
+ lastName = json["LastName"] ?? json["lastName"];
+ firstNameN = json["FirstNameN"] ?? json["firstNameN"];
+ middleNameN = json["MiddleNameN"] ?? json["middleNameN"];
+ lastNameN = json["LastNameN"] ?? json["lastNameN"];
+ gender = json["Gender"] != null
+ ? json["Gender"] is String
+ ? int?.parse(json["Gender"])
+ : json["Gender"]
+ : json["gender"];
+ fullName = json["fullName"] ?? json["fullName"] ?? json["PatientName"];
+ fullNameN =
+ json["fullNameN"] ?? json["fullNameN"] ?? json["PatientName"];
+ dateofBirth = json["DateofBirth"] ?? json["dob"] ?? json['DateOfBirth'];
+ nationalityId = json["NationalityID"] ?? json["nationalityID"];
+ mobileNumber = json["MobileNumber"] ?? json["mobileNumber"];
+ emailAddress = json["EmailAddress"] ?? json["emailAddress"];
+ patientIdentificationNo =
+ json["PatientIdentificationNo"] ?? json["patientIdentificationNo"];
+ //TODO make 7 dynamic when the backend retrun it in patient arrival
+ patientType = json["PatientType"] ?? json["patientType"] ?? 1;
+ admissionNo = json["AdmissionNo"] ?? json["admissionNo"];
+ admissionDate = json["AdmissionDate"] ?? json["admissionDate"];
+ createdOn = json["CreatedOn"] ?? json["CreatedOn"];
+ roomId = json["RoomID"] ?? json["roomID"];
+ bedId = json["BedID"] ?? json["bedID"];
+ nursingStationId = json["NursingStationID"] ?? json["nursingStationID"];
+ description = json["Description"] ?? json["description"];
+ clinicDescription =
+ json["ClinicDescription"] ?? json["clinicDescription"];
+ clinicDescriptionN =
+ json["ClinicDescriptionN"] ?? json["clinicDescriptionN"];
+ nationalityName = json["NationalityName"] ?? json["nationalityName"] ??
+ json['NationalityName'];
+ nationalityNameN =
+ json["NationalityNameN"] ?? json["nationalityNameN"] ??
+ json['NationalityNameN'];
+ age = json["Age"] ?? json["age"];
+ genderDescription = json["GenderDescription"];
+ nursingStationName = json["NursingStationName"];
+ appointmentDate = json["AppointmentDate"] ?? '';
+ startTime = json["startTime"] ?? json['StartTime'];
+ appointmentNo = json['appointmentNo'] ?? json['AppointmentNo'];
+ appointmentType = json['appointmentType'];
+ appointmentTypeId =
+ json['appointmentTypeId'] ?? json['appointmentTypeid'];
+ arrivedOn = json['ArrivedOn'] ?? json['arrivedOn'] ?? json['ArrivedOn'];
+ clinicGroupId = json['clinicGroupId'];
+ companyName = json['companyName'];
+ dischargeStatus = json['dischargeStatus'];
+ doctorDetails = json['doctorDetails'];
+ endTime = json['endTime'];
+ episodeNo = json['episodeNo'] ?? json['EpisodeID'] ?? json['EpisodeNo'];
+ fallRiskScore = json['fallRiskScore'];
+ isSigned = json['isSigned'];
+ medicationOrders = json['medicationOrders'];
+ nationality = json['nationality'] ?? json['NationalityNameN'];
+ patientMRN = json['patientMRN'] ??
+ json['PatientMRN'] ??
+ (json["PatientID"] != null
+ ? int?.parse(json["PatientID"].toString())
+ : json["patientID"] != null ? int?.parse(
+ json["patientID"].toString()) : json["patientId"] != null ? int
+ ?.parse(json["patientId"].toString()) : '');
+ visitType = json['visitType'] ?? json['visitType'] ?? json['visitType'];
+ nationalityFlagURL =
+ json['NationalityFlagURL'] ?? json['NationalityFlagURL'];
+ patientStatusType =
+ json['patientStatusType'] ?? json['PatientStatusType'];
+ visitTypeId =
+ json['visitTypeId'] ?? json['visitTypeId'] ?? json['visitTypeid'];
+ startTimes = json['StartTime'] ?? json['StartTime'];
+ dischargeDate = json['DischargeDate'];
+ status = json['Status'];
+ vcId = json['VC_ID'];
- factory PatiantInformtion.fromJson(Map json) => PatiantInformtion(
- patientDetails: json['patientDetails'] != null ? new PatiantInformtion.fromJson(json['patientDetails']) : null,
- projectId: json["ProjectID"] ?? json["projectID"],
- clinicId: json["ClinicID"] ?? json["clinicID"],
- doctorId: json["DoctorID"] ?? json["doctorID"],
- patientId: json["PatientID"] != null
- ? json["PatientID"] is String
- ? int?.parse(json["PatientID"])
- : json["PatientID"]
- : json["patientID"] ?? json['patientMRN'] ?? json['PatientMRN'],
- doctorName: json["DoctorName"] ?? json["doctorName"],
- doctorNameN: json["DoctorNameN"] ?? json["doctorNameN"],
- firstName: json["FirstName"] ?? json["firstName"],
- middleName: json["MiddleName"] ?? json["middleName"],
- lastName: json["LastName"] ?? json["lastName"],
- firstNameN: json["FirstNameN"] ?? json["firstNameN"],
- middleNameN: json["MiddleNameN"] ?? json["middleNameN"],
- lastNameN: json["LastNameN"] ?? json["lastNameN"],
- gender: json["Gender"] != null
- ? json["Gender"] is String
- ? int?.parse(json["Gender"])
- : json["Gender"]
- : json["gender"],
- fullName: json["fullName"] ?? json["fullName"] ?? json["PatientName"],
- fullNameN: json["fullNameN"] ?? json["fullNameN"] ?? json["PatientName"],
- dateofBirth: json["DateofBirth"] ?? json["dob"] ?? json['DateOfBirth'],
- nationalityId: json["NationalityID"] ?? json["nationalityID"],
- mobileNumber: json["MobileNumber"] ?? json["mobileNumber"],
- emailAddress: json["EmailAddress"] ?? json["emailAddress"],
- patientIdentificationNo: json["PatientIdentificationNo"] ?? json["patientIdentificationNo"],
- //TODO make 7 dynamic when the backend retrun it in patient arrival
- patientType: json["PatientType"] ?? json["patientType"] ?? 1,
- admissionNo: json["AdmissionNo"] ?? json["admissionNo"],
- admissionDate: json["AdmissionDate"] ?? json["admissionDate"],
- createdOn: json["CreatedOn"] ?? json["CreatedOn"],
- roomId: json["RoomID"] ?? json["roomID"],
- bedId: json["BedID"] ?? json["bedID"],
- nursingStationId: json["NursingStationID"] ?? json["nursingStationID"],
- description: json["Description"] ?? json["description"],
- clinicDescription: json["ClinicDescription"] ?? json["clinicDescription"],
- clinicDescriptionN: json["ClinicDescriptionN"] ?? json["clinicDescriptionN"],
- nationalityName: json["NationalityName"] ?? json["nationalityName"] ?? json['NationalityName'],
- nationalityNameN: json["NationalityNameN"] ?? json["nationalityNameN"] ?? json['NationalityNameN'],
- age: json["Age"] ?? json["age"],
- genderDescription: json["GenderDescription"],
- nursingStationName: json["NursingStationName"],
- appointmentDate: json["AppointmentDate"] ?? '',
- startTime: json["startTime"] ?? json['StartTime'],
- appointmentNo: json['appointmentNo'] ?? json['AppointmentNo'],
- appointmentType: json['appointmentType'],
- appointmentTypeId: json['appointmentTypeId'] ?? json['appointmentTypeid'],
- arrivedOn: json['ArrivedOn'] ?? json['arrivedOn'] ?? json['ArrivedOn'],
- clinicGroupId: json['clinicGroupId'],
- companyName: json['companyName'],
- dischargeStatus: json['dischargeStatus'],
- doctorDetails: json['doctorDetails'],
- endTime: json['endTime'],
- episodeNo: json['episodeNo'] ?? json['EpisodeID'] ?? json['EpisodeNo'],
- fallRiskScore: json['fallRiskScore'],
- isSigned: json['isSigned'],
- medicationOrders: json['medicationOrders'],
- nationality: json['nationality'] ?? json['NationalityNameN'],
- patientMRN: json['patientMRN'] ??
- json['PatientMRN'] ??
- (json["PatientID"] != null
- ? int?.parse(json["PatientID"].toString())
- : int?.parse(json["patientID"].toString())),
- visitType: json['visitType'] ?? json['visitType'] ?? json['visitType'],
- nationalityFlagURL: json['NationalityFlagURL'] ?? json['NationalityFlagURL'],
- patientStatusType: json['patientStatusType'] ?? json['PatientStatusType'],
- visitTypeId: json['visitTypeId'] ?? json['visitTypeId'] ?? json['visitTypeid'],
- startTimes: json['StartTime'] ?? json['StartTime'],
- dischargeDate: json['DischargeDate'],
- status: json['Status'],
- vcId: json['VC_ID'],
-
- arrivalTime: json['ArrivalTime'],
- arrivalTimeD: json['ArrivalTimeD'],
- callStatus: json['CallStatus'],
- callStatusDisc: json['CallStatusDisc'],
- callTypeID: json['CallTypeID'],
- clientRequestID: json['ClientRequestID'],
- clinicName: json['ClinicName'],
- consoltationEnd: json['ConsoltationEnd'],
- consultationNotes: json['ConsultationNotes'],
- patientStatus: json['PatientStatus'],
- voipToken: json['VoipToken'],
- );
+ arrivalTime = json['ArrivalTime'];
+ arrivalTimeD = json['ArrivalTimeD'];
+ callStatus = json['CallStatus'];
+ callStatusDisc = json['CallStatusDisc'];
+ callTypeID = json['CallTypeID'];
+ clientRequestID = json['ClientRequestID'];
+ clinicName = json['ClinicName'];
+ consoltationEnd = json['ConsoltationEnd'];
+ consultationNotes = json['ConsultationNotes'];
+ patientStatus = json['PatientStatus'];
+ voipToken = json['VoipToken'];
+ } catch (e) {
+ print(e);
+ }
+ }
}
diff --git a/lib/screens/patients/profile/medical_report/AddVerifyMedicalReport.dart b/lib/screens/patients/profile/medical_report/AddVerifyMedicalReport.dart
index 3d9411a0..428ddf4a 100644
--- a/lib/screens/patients/profile/medical_report/AddVerifyMedicalReport.dart
+++ b/lib/screens/patients/profile/medical_report/AddVerifyMedicalReport.dart
@@ -86,7 +86,7 @@ class _AddVerifyMedicalReportState extends State {
if (txtOfMedicalReport.isNotEmpty) {
GifLoaderDialogUtils.showMyDialog(context);
- model.insertMedicalReport(patient, txtOfMedicalReport);
+ await model.insertMedicalReport(patient, txtOfMedicalReport);
GifLoaderDialogUtils.hideDialog(context);
if (model.state == ViewState.ErrorLocal) {
DrAppToastMsg.showErrorToast(model.error);
diff --git a/lib/screens/patients/profile/referral/refer-patient-screen-in-patient.dart b/lib/screens/patients/profile/referral/refer-patient-screen-in-patient.dart
index 348c611a..8b066cbe 100644
--- a/lib/screens/patients/profile/referral/refer-patient-screen-in-patient.dart
+++ b/lib/screens/patients/profile/referral/refer-patient-screen-in-patient.dart
@@ -476,27 +476,27 @@ class _PatientMakeInPatientReferralScreenState extends State {
patientGender:
model.patientReferral[model.patientReferral.length - 1].patientDetails!.gender,
referredDate:
- model.patientReferral[model.patientReferral.length - 1].referredOn!.split(" ")[0],
+ model.patientReferral[model.patientReferral.length - 1].referredOn?.split(" ")[0],
referredTime:
- model.patientReferral[model.patientReferral.length - 1].referredOn!.split(" ")[1],
+ model.patientReferral[model.patientReferral.length - 1].referredOn?.split(" ")[1],
patientID: "${model.patientReferral[model.patientReferral.length - 1].patientID}",
isSameBranch:
model.patientReferral[model.patientReferral.length - 1].isReferralDoctorSameBranch,
@@ -136,22 +136,22 @@ class _PatientMakeReferralScreenState extends State {
if (_referTo == null) {
branchError = TranslationBase.of(context).fieldRequired!;
} else {
- branchError = null!;
+ branchError = null;
}
if (_selectedBranch == null) {
hospitalError = TranslationBase.of(context).fieldRequired!;
} else {
- hospitalError = null!;
+ hospitalError = null;
}
if (_selectedClinic == null) {
clinicError = TranslationBase.of(context).fieldRequired!;
} else {
- clinicError = null!;
+ clinicError = null;
}
if (_selectedDoctor == null) {
doctorError = TranslationBase.of(context).fieldRequired!;
} else {
- doctorError = null!;
+ doctorError = null;
}
});
if (appointmentDate == null ||
diff --git a/lib/screens/sick-leave/add-sickleave.dart b/lib/screens/sick-leave/add-sickleave.dart
index 421eacd2..0fdef251 100644
--- a/lib/screens/sick-leave/add-sickleave.dart
+++ b/lib/screens/sick-leave/add-sickleave.dart
@@ -26,7 +26,7 @@ class AddSickLeavScreen extends StatelessWidget {
final routeArgs = ModalRoute.of(context)!.settings.arguments as Map;
patient = routeArgs['patient'];
- bool isInpatient = routeArgs['isInpatient'];
+ bool isInpatient = routeArgs['isInpatient']??false;
return BaseView(
onModelReady: (model) => model.getSickLeavePatient(patient.patientMRN ?? patient.patientId),
builder: (_, model, w) => AppScaffold(
@@ -246,11 +246,6 @@ class AddSickLeavScreen extends StatelessWidget {
}
openSickLeave(BuildContext context, isExtend, {GetAllSickLeaveResponse? extendedData}) {
- // showModalBottomSheet(
- // context: context,
- // builder: (context) {
- // return new Container(
- // child:
Navigator.push(
context,
FadePage(
@@ -260,7 +255,7 @@ class AddSickLeavScreen extends StatelessWidget {
: patient.appointmentNo, //extendedData.appointmentNo,
patientMRN: isExtend == true ? extendedData!.patientMRN : patient.patientMRN,
isExtended: isExtend,
- extendedData: extendedData!,
+ extendedData: extendedData??GetAllSickLeaveResponse(),
patient: patient)));
}
}
diff --git a/lib/screens/sick-leave/sick_leave.dart b/lib/screens/sick-leave/sick_leave.dart
index f305caf8..a5ced00b 100644
--- a/lib/screens/sick-leave/sick_leave.dart
+++ b/lib/screens/sick-leave/sick_leave.dart
@@ -1,6 +1,7 @@
import 'package:doctor_app_flutter/config/config.dart';
import 'package:doctor_app_flutter/config/shared_pref_kay.dart';
import 'package:doctor_app_flutter/config/size_config.dart';
+import 'package:doctor_app_flutter/core/enum/viewstate.dart';
import 'package:doctor_app_flutter/core/viewModel/patient_view_model.dart';
import 'package:doctor_app_flutter/core/viewModel/sick_leave_view_model.dart';
import 'package:doctor_app_flutter/models/sickleave/add_sickleave_request.dart';
@@ -14,6 +15,7 @@ import 'package:doctor_app_flutter/util/translations_delegate_base.dart';
import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/app_texts_widget.dart';
import 'package:doctor_app_flutter/widgets/shared/buttons/app_buttons_widget.dart';
+import 'package:doctor_app_flutter/widgets/shared/loader/gif_loader_dialog_utils.dart';
import 'package:doctor_app_flutter/widgets/shared/text_fields/app_text_form_field.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
@@ -29,7 +31,7 @@ class SickLeaveScreen extends StatefulWidget {
final patientMRN;
final patient;
SickLeaveScreen(
- {this.appointmentNo, this.patientMRN, this.isExtended = false, required this.extendedData, this.patient});
+ {this.appointmentNo, this.patientMRN, this.isExtended = false, required this.extendedData, this.patient});
@override
_SickLeaveScreenState createState() => _SickLeaveScreenState();
}
@@ -69,7 +71,7 @@ class _SickLeaveScreenState extends State {
@override
Widget build(BuildContext context) {
- return BaseView(
+ return BaseView(
onModelReady: (model) => model.getClinicsList(),
builder: (_, model, w) => BaseView(
onModelReady: (model2) => model2.preSickLeaveStatistics(widget.appointmentNo, widget.patientMRN),
@@ -120,12 +122,12 @@ class _SickLeaveScreenState extends State {
borderColor: Colors.white,
onChanged: (value) {
addSickLeave.noOfDays = value;
- if (widget.extendedData != null) {
+ if (widget.extendedData.noOfDays != null) {
widget.extendedData.noOfDays = int.parse(value);
}
},
hintText:
- widget.extendedData != null ? widget.extendedData.noOfDays.toString() : '',
+ widget.extendedData.noOfDays != null ? widget.extendedData.noOfDays.toString() : '',
// validator: (value) {
// return TextValidator().validateName(value);
// },
@@ -371,13 +373,21 @@ class _SickLeaveScreenState extends State {
} else {
addSickLeave.patientMRN = widget.patient.patientMRN.toString();
addSickLeave.appointmentNo = widget.patient.appointmentNo.toString();
- await model2.addSickLeave(addSickLeave).then((value) => print(value));
+ GifLoaderDialogUtils.showMyDialog(context);
+ await model2.addSickLeave(addSickLeave);
+ if(model2.state == ViewState.ErrorLocal){
+ GifLoaderDialogUtils.hideDialog(context);
+ DrAppToastMsg.showErrorToast(model2.error);
+ } else {
+ GifLoaderDialogUtils.hideDialog(context);
+ DrAppToastMsg.showSuccesToast("Sick leave created successfully");
+ Navigator.of(context).popUntil((route) {
+ return route.settings.name == PATIENTS_PROFILE;
+ });
+ Navigator.of(context).pushNamed(ADD_SICKLEAVE, arguments: {'patient': widget.patient});
+ }
+
- DrAppToastMsg.showSuccesToast(model2.sickleaveResponse['ListSickLeavesToExtent']['success']);
- Navigator.of(context).popUntil((route) {
- return route.settings.name == PATIENTS_PROFILE;
- });
- Navigator.of(context).pushNamed(ADD_SICKLEAVE, arguments: {'patient': widget.patient});
}
} catch (err) {
print(err);
diff --git a/lib/widgets/patients/patient-referral-item-widget.dart b/lib/widgets/patients/patient-referral-item-widget.dart
index de4d821c..6209e1fc 100644
--- a/lib/widgets/patients/patient-referral-item-widget.dart
+++ b/lib/widgets/patients/patient-referral-item-widget.dart
@@ -85,7 +85,7 @@ class PatientReferralItemWidget extends StatelessWidget {
: Colors.red[700],
),
AppText(
- referredDate!,
+ referredDate??'',
fontFamily: 'Poppins',
fontWeight: FontWeight.w600,
fontSize: 2.0 * SizeConfig.textMultiplier!,
@@ -98,7 +98,7 @@ class PatientReferralItemWidget extends StatelessWidget {
children: [
Expanded(
child: AppText(
- patientName!,
+ patientName??'',
fontSize: SizeConfig.textMultiplier! * 2.2,
fontWeight: FontWeight.bold,
color: Colors.black,
@@ -121,7 +121,7 @@ class PatientReferralItemWidget extends StatelessWidget {
width: 4,
),
AppText(
- referredTime!,
+ referredTime??'',
fontFamily: 'Poppins',
fontWeight: FontWeight.w600,
fontSize: 1.8 * SizeConfig.textMultiplier!,
@@ -278,7 +278,7 @@ class PatientReferralItemWidget extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.start,
children: [
AppText(
- referralDoctorName!,
+ referralDoctorName??'',
fontFamily: 'Poppins',
fontWeight: FontWeight.w800,
fontSize: 1.7 * SizeConfig.textMultiplier!,