From fd4dacee831c28f6de152f8e51bf159c12e9d65c Mon Sep 17 00:00:00 2001 From: "taha.alam" Date: Mon, 16 Dec 2024 10:57:46 +0300 Subject: [PATCH] WD: error handling and request changes --- lib/client/base_app_client.dart | 542 +++++++++++------- .../soap/SOAP_service.dart | 7 +- 2 files changed, 326 insertions(+), 223 deletions(-) diff --git a/lib/client/base_app_client.dart b/lib/client/base_app_client.dart index cdf2db2d..5747ccb4 100644 --- a/lib/client/base_app_client.dart +++ b/lib/client/base_app_client.dart @@ -25,11 +25,11 @@ class BaseAppClient { //TODO change the post fun to nun static when you change all service post(String endPoint, {Map? body, - required Function(dynamic response, int statusCode) onSuccess, - required Function(String error, int statusCode) onFailure, - bool isAllowAny = false, - bool isLiveCare = false, - bool isFallLanguage = false}) async { + required Function(dynamic response, int statusCode) onSuccess, + required Function(String error, int statusCode) onFailure, + bool isAllowAny = false, + bool isLiveCare = false, + bool isFallLanguage = false}) async { String url; if (isLiveCare) url = BASE_URL_LIVE_CARE + endPoint; @@ -46,7 +46,9 @@ class BaseAppClient { if (body == null || body['DoctorID'] == null) { body!['DoctorID'] = doctorProfile.doctorID; } - if (body['DoctorID'] == "") body['DoctorID'] = doctorProfile.doctorID; // changed from null; because create update episode not working + if (body['DoctorID'] == "") + body['DoctorID'] = doctorProfile + .doctorID; // changed from null; because create update episode not working if (body['EditedBy'] == null) body['EditedBy'] = doctorProfile.doctorID; if (body['ProjectID'] == null) { body['ProjectID'] = doctorProfile.projectID; @@ -62,8 +64,8 @@ class BaseAppClient { body['SetupID'] = body.containsKey('SetupID') ? body['SetupID'] != null - ? body['SetupID'] - : await sharedPref.getString(DOCTOR_SETUP_ID) + ? body['SetupID'] + : await sharedPref.getString(DOCTOR_SETUP_ID) : await sharedPref.getString(DOCTOR_SETUP_ID); if (body['EditedBy'] == '') { @@ -92,16 +94,21 @@ class BaseAppClient { body['IsLoginForDoctorApp'] = IS_LOGIN_FOR_DOCTOR_APP; body['PatientOutSA'] = body['PatientOutSA'] ?? 0; // PATIENT_OUT_SA; if (body['VidaAuthTokenID'] == null) { - body['VidaAuthTokenID'] = await sharedPref.getString(VIDA_AUTH_TOKEN_ID); + body['VidaAuthTokenID'] = + await sharedPref.getString(VIDA_AUTH_TOKEN_ID); } if (body['VidaRefreshTokenID'] == null) { - body['VidaRefreshTokenID'] = await sharedPref.getString(VIDA_REFRESH_TOKEN_ID); + body['VidaRefreshTokenID'] = + await sharedPref.getString(VIDA_REFRESH_TOKEN_ID); } int? projectID = await sharedPref.getInt(PROJECT_ID); if (projectID == 2 || projectID == 3) body['PatientOutSA'] = true; - else if ((body.containsKey('facilityId') && body['facilityId'] == 2 || body['facilityId'] == 3) || body['ProjectID'] == 2 || body['ProjectID'] == 3) + else if ((body.containsKey('facilityId') && body['facilityId'] == 2 || + body['facilityId'] == 3) || + body['ProjectID'] == 2 || + body['ProjectID'] == 3) body['PatientOutSA'] = true; else body['PatientOutSA'] = false; @@ -128,29 +135,47 @@ class BaseAppClient { var asd = json.encode(body); var asd2; if (await Utils.checkConnection()) { - final response = await http.post(Uri.parse(url), body: json.encode(body), headers: {'Content-Type': 'application/json', 'Accept': 'application/json'}); + final response = await http.post(Uri.parse(url), + body: json.encode(body), + headers: { + 'Content-Type': 'application/json', + 'Accept': 'application/json' + }); final int statusCode = response.statusCode; if (statusCode < 200 || statusCode >= 400) { onFailure(Utils.generateContactAdminMsg(), statusCode); - if(body['DoctorID'] !=null ) - postFailureResponse(doctorId:body['DoctorID'], url:url , request: json.encode(body), response: response.body, exception: "$statusCode"); + if (body['DoctorID'] != null) + postFailureResponse( + doctorId: body['DoctorID'], + url: url, + request: json.encode(body), + response: response.body, + exception: "$statusCode"); } else { var parsed = json.decode(response.body.toString()); if (parsed['ErrorType'] == 4) { - helpers.navigateToUpdatePage(parsed['ErrorEndUserMessage'], parsed['AndroidLink'], parsed['IOSLink']); + helpers.navigateToUpdatePage(parsed['ErrorEndUserMessage'], + parsed['AndroidLink'], parsed['IOSLink']); } if (parsed['IsAuthenticated'] != null && !parsed['IsAuthenticated']) { if (body['OTP_SendType'] != null) { - if(parsed['ErrorCode'] =='699'){ - onSuccess(parsed, statusCode); - }else { - if(body['DoctorID'] !=null ) - postFailureResponse(doctorId:body['DoctorID'], url:url , request: json.encode(body), response: response.body, exception: getError(parsed)); - onFailure(getError(parsed), statusCode); - } + if (parsed['ErrorCode'] == '699') { + onSuccess(parsed, statusCode); + } else { + if (body['DoctorID'] != null) + postFailureResponse( + doctorId: body['DoctorID'], + url: url, + request: json.encode(body), + response: response.body, + exception: getError(parsed)); + onFailure(getError(parsed), statusCode); + } } else if (!isAllowAny) { - await Provider.of(AppGlobal.CONTEX, listen: false).logout(); + await Provider.of(AppGlobal.CONTEX, + listen: false) + .logout(); //todo nofailure is placed here and but have to handle the response here as well Utils.showErrorToast('Your session expired Please login again'); locator().pushNamedAndRemoveUntil(ROOT); @@ -160,25 +185,38 @@ class BaseAppClient { } } else if (parsed['MessageStatus'] == 1) { if (!parsed['IsAuthenticated']) { - if(body['DoctorID'] !=null ) - postFailureResponse(doctorId:body['DoctorID'], url:url , request: json.encode(body), response: response.body, exception: getError(parsed)); + if (body['DoctorID'] != null) + postFailureResponse( + doctorId: body['DoctorID'], + url: url, + request: json.encode(body), + response: response.body, + exception: getError(parsed)); onFailure(getError(parsed), statusCode); } else onSuccess(parsed, statusCode); } else { - if(body['DoctorID'] !=null ) { - - postFailureResponse( - doctorId: body['DoctorID'], - url: url, - request: json.encode(body), - response: response.body, - exception: getError(parsed)); + final validations = parsed['ValidationErrorsCSI']?['errors']?['Validations']; + + if (validations is List && validations.isNotEmpty) { + final error = validations.first['Error']; + if (error != null) { + onFailure(error, statusCode); + return; + } + } + if (body['DoctorID'] != null) { + postFailureResponse( + doctorId: body['DoctorID'], + url: url, + request: json.encode(body), + response: response.body, + exception: getError(parsed)); + } + onFailure(getError(parsed), statusCode); } - onFailure(getError(parsed), statusCode); } - } - } else { + } else { onFailure('Please Check The Internet Connection', -1); } } catch (e) { @@ -187,202 +225,264 @@ class BaseAppClient { } } - postPatient(String endPoint, - {Map? body, - required Function(dynamic response, int statusCode) onSuccess, - required Function(String error, int statusCode) onFailure, - PatiantInformtion? patient, - bool isExternal = false}) async { + postPatient(String endPoint, + {Map? body, + required Function(dynamic response, int statusCode) onSuccess, + required Function(String error, int statusCode) onFailure, + PatiantInformtion? patient, + bool isExternal = false}) async { String url = BASE_URL + endPoint; try { - Map headers = {'Content-Type': 'application/json', 'Accept': 'application/json'}; - - String? token = await sharedPref.getString(TOKEN); - Map? profile = await sharedPref.getObj(DOCTOR_PROFILE); - - if (profile != null) { - DoctorProfileModel doctorProfile = DoctorProfileModel.fromJson(profile); - if (body!['DoctorID'] == null) { - body['DoctorID'] = doctorProfile.doctorID; - } - } - if (body!['DoctorID'] == 0) { - body['DoctorID'] = null; - } - var languageID = await sharedPref.getStringWithDefaultValue(APP_Language, 'en'); - body['SetupID'] = body!.containsKey('SetupID') - ? body['SetupID'] != null - ? body['SetupID'] - : await sharedPref.getString(DOCTOR_SETUP_ID) - : await sharedPref.getString(DOCTOR_SETUP_ID); - - body['VersionID'] = VERSION_ID; - body['Channel'] = CHANNEL; - body['LanguageID'] = languageID == 'ar' ? 1 : 2; - - body['IPAdress'] = "10.20.10.20"; - body['generalid'] = GENERAL_ID; - body['PatientOutSA'] = body.containsKey('PatientOutSA') - ? body['PatientOutSA'] != null - ? body['PatientOutSA'] - : PATIENT_OUT_SA_PATIENT_REQ - : PATIENT_OUT_SA_PATIENT_REQ; - - if (body.containsKey('isDentalAllowedBackend')) { - body['isDentalAllowedBackend'] = body.containsKey('isDentalAllowedBackend') - ? body['isDentalAllowedBackend'] != null - ? body['isDentalAllowedBackend'] - : IS_DENTAL_ALLOWED_BACKEND - : IS_DENTAL_ALLOWED_BACKEND; - } - - body['DeviceTypeID'] = Platform.isAndroid ? 1 : 2; - - body['PatientType'] = body.containsKey('PatientType') - ? body['PatientType'] != null - ? body['PatientType'] - : patient!.patientType != null - ? patient.patientType - : PATIENT_TYPE - : PATIENT_TYPE; - - body['PatientTypeID'] = body.containsKey('PatientTypeID') - ? body['PatientTypeID'] != null - ? body['PatientTypeID'] - : patient!.patientType != null - ? patient.patientType - : PATIENT_TYPE_ID - : PATIENT_TYPE_ID; - - body['TokenID'] = body.containsKey('TokenID') ? body['TokenID'] ?? token : token; - body['PatientID'] = body['PatientID'] != null ? body['PatientID'] : patient!.patientId ?? patient.patientMRN; - - body['PatientOutSA'] = 0; //user['OutSA']; //TODO change it - body['SessionID'] = SESSION_ID; //getSe - - int? projectID = await sharedPref.getInt(PROJECT_ID); - if (projectID == 2 || projectID == 3) - body['PatientOutSA'] = true; - else - body['PatientOutSA'] = false; - - // if(!body.containsKey('ProjectID')) { - // if (projectID != null) { - // body['ProjectID'] = 313; - // } else { - // body['ProjectID'] = 0; - // } - // } - - // body['DoctorID'] = 24; //3844083 - // body['TokenID'] = "@dm!n"; - - print("URL : $url"); - print("Body : ${json.encode(body)}"); - var asd = json.encode(body); - var asd2; - if (await Utils.checkConnection()) { - final response = await http.post(Uri.parse(url.trim()), body: json.encode(body), headers: headers); - final int statusCode = response.statusCode; - print("statusCode :$statusCode"); - if (statusCode < 200 || statusCode >= 400 || json == null) { - onFailure('Error While Fetching data', statusCode); - } else { - // var parsed = json.decode(response.body.toString()); - var parsed = json.decode(utf8.decode(response.bodyBytes)); - if (parsed['Response_Message'] != null) { - onSuccess(parsed, statusCode); - } else { - if (parsed['ErrorType'] == 4) { - helpers.navigateToUpdatePage(parsed['ErrorEndUserMessage'], parsed['AndroidLink'], parsed['IOSLink']); - } - if (parsed['IsAuthenticated'] == null) { - if (parsed['isSMSSent'] == true) { - onSuccess(parsed, statusCode); - } else if (parsed['MessageStatus'] == 1) { - onSuccess(parsed, statusCode); - } else if (parsed['Result'] == 'OK') { - onSuccess(parsed, statusCode); - } else { - if (parsed != null) { - onSuccess(parsed, statusCode); - } else { - if(body['DoctorID'] !=null ) - postFailureResponse(doctorId:body['DoctorID'], url:url , request: json.encode(body), response: response.body, exception: getError(parsed)); - onFailure(getError(parsed), statusCode); - } - } - } else if (parsed['MessageStatus'] == 1 || parsed['SMSLoginRequired'] == true) { - onSuccess(parsed, statusCode); - } else if (parsed['MessageStatus'] == 2 && parsed['IsAuthenticated']) { - if (parsed['SameClinicApptList'] != null) { - onSuccess(parsed, statusCode); - } else { - if (parsed['message'] == null && parsed['ErrorEndUserMessage'] == null) { - if (parsed['ErrorSearchMsg'] == null) { - if(body['DoctorID'] !=null ) - postFailureResponse(doctorId:body['DoctorID'], url:url , request: json.encode(body), response: response.body, exception: "Server Error found with no available message"); - - onFailure("Server Error found with no available message", statusCode); - } else { - if(body['DoctorID'] !=null ) - postFailureResponse(doctorId:body['DoctorID'], url:url , request: json.encode(body), response: response.body, exception: parsed['ErrorSearchMsg']); - onFailure(parsed['ErrorSearchMsg'], statusCode); - } - } else { - if(body['DoctorID'] !=null ) - postFailureResponse(doctorId:body['DoctorID'], url:url , request: json.encode(body), response: response.body, exception: parsed['message'] ?? parsed['ErrorEndUserMessage'] ?? parsed['ErrorMessage']); - onFailure(parsed['message'] ?? parsed['ErrorEndUserMessage'] ?? parsed['ErrorMessage'], statusCode); - } - } - } else { - if (parsed['SameClinicApptList'] != null) { - onSuccess(parsed, statusCode); - } else { - if (parsed['message'] != null) { - if(body['DoctorID'] !=null ) - postFailureResponse(doctorId:body['DoctorID'], url:url , request: json.encode(body), response: response.body, exception: parsed['message'] ); - - onFailure(parsed['message'] ?? parsed['message'], statusCode); - } else { - if(body['DoctorID'] !=null ) - postFailureResponse(doctorId:body['DoctorID'], url:url , request: json.encode(body), response: response.body, exception: parsed['ErrorEndUserMessage'] ?? parsed['ErrorMessage']); + Map headers = { + 'Content-Type': 'application/json', + 'Accept': 'application/json' + }; + + String? token = await sharedPref.getString(TOKEN); + Map? profile = await sharedPref.getObj(DOCTOR_PROFILE); + + if (profile != null) { + DoctorProfileModel doctorProfile = DoctorProfileModel.fromJson(profile); + if (body!['DoctorID'] == null) { + body['DoctorID'] = doctorProfile.doctorID; + } + } + if (body!['DoctorID'] == 0) { + body['DoctorID'] = null; + } + var languageID = + await sharedPref.getStringWithDefaultValue(APP_Language, 'en'); + body['SetupID'] = body!.containsKey('SetupID') + ? body['SetupID'] != null + ? body['SetupID'] + : await sharedPref.getString(DOCTOR_SETUP_ID) + : await sharedPref.getString(DOCTOR_SETUP_ID); + + body['VersionID'] = VERSION_ID; + body['Channel'] = CHANNEL; + body['LanguageID'] = languageID == 'ar' ? 1 : 2; + + body['IPAdress'] = "10.20.10.20"; + body['generalid'] = GENERAL_ID; + body['PatientOutSA'] = body.containsKey('PatientOutSA') + ? body['PatientOutSA'] != null + ? body['PatientOutSA'] + : PATIENT_OUT_SA_PATIENT_REQ + : PATIENT_OUT_SA_PATIENT_REQ; + + if (body.containsKey('isDentalAllowedBackend')) { + body['isDentalAllowedBackend'] = + body.containsKey('isDentalAllowedBackend') + ? body['isDentalAllowedBackend'] != null + ? body['isDentalAllowedBackend'] + : IS_DENTAL_ALLOWED_BACKEND + : IS_DENTAL_ALLOWED_BACKEND; + } - onFailure(parsed['ErrorEndUserMessage'] ?? parsed['ErrorMessage'], statusCode); - } - } - } - } - } - } else { - onFailure('Please Check The Internet Connection', -1); - } + body['DeviceTypeID'] = Platform.isAndroid ? 1 : 2; + + body['PatientType'] = body.containsKey('PatientType') + ? body['PatientType'] != null + ? body['PatientType'] + : patient!.patientType != null + ? patient.patientType + : PATIENT_TYPE + : PATIENT_TYPE; + + body['PatientTypeID'] = body.containsKey('PatientTypeID') + ? body['PatientTypeID'] != null + ? body['PatientTypeID'] + : patient!.patientType != null + ? patient.patientType + : PATIENT_TYPE_ID + : PATIENT_TYPE_ID; + + body['TokenID'] = + body.containsKey('TokenID') ? body['TokenID'] ?? token : token; + body['PatientID'] = body['PatientID'] != null + ? body['PatientID'] + : patient!.patientId ?? patient.patientMRN; + + body['PatientOutSA'] = 0; //user['OutSA']; //TODO change it + body['SessionID'] = SESSION_ID; //getSe + + int? projectID = await sharedPref.getInt(PROJECT_ID); + if (projectID == 2 || projectID == 3) + body['PatientOutSA'] = true; + else + body['PatientOutSA'] = false; + + // if(!body.containsKey('ProjectID')) { + // if (projectID != null) { + // body['ProjectID'] = 313; + // } else { + // body['ProjectID'] = 0; + // } + // } + + // body['DoctorID'] = 24; //3844083 + // body['TokenID'] = "@dm!n"; + + print("URL : $url"); + print("Body : ${json.encode(body)}"); + var asd = json.encode(body); + var asd2; + if (await Utils.checkConnection()) { + final response = await http.post(Uri.parse(url.trim()), + body: json.encode(body), headers: headers); + final int statusCode = response.statusCode; + print("statusCode :$statusCode"); + if (statusCode < 200 || statusCode >= 400 || json == null) { + onFailure('Error While Fetching data', statusCode); + } else { + // var parsed = json.decode(response.body.toString()); + var parsed = json.decode(utf8.decode(response.bodyBytes)); + if (parsed['Response_Message'] != null) { + onSuccess(parsed, statusCode); + } else { + if (parsed['ErrorType'] == 4) { + helpers.navigateToUpdatePage(parsed['ErrorEndUserMessage'], + parsed['AndroidLink'], parsed['IOSLink']); + } + if (parsed['IsAuthenticated'] == null) { + if (parsed['isSMSSent'] == true) { + onSuccess(parsed, statusCode); + } else if (parsed['MessageStatus'] == 1) { + onSuccess(parsed, statusCode); + } else if (parsed['Result'] == 'OK') { + onSuccess(parsed, statusCode); + } else { + if (parsed != null) { + onSuccess(parsed, statusCode); + } else { + if (body['DoctorID'] != null) + postFailureResponse( + doctorId: body['DoctorID'], + url: url, + request: json.encode(body), + response: response.body, + exception: getError(parsed)); + onFailure(getError(parsed), statusCode); + } + } + } else if (parsed['MessageStatus'] == 1 || + parsed['SMSLoginRequired'] == true) { + onSuccess(parsed, statusCode); + } else if (parsed['MessageStatus'] == 2 && + parsed['IsAuthenticated']) { + if (parsed['SameClinicApptList'] != null) { + onSuccess(parsed, statusCode); + } else { + if (parsed['message'] == null && + parsed['ErrorEndUserMessage'] == null) { + if (parsed['ErrorSearchMsg'] == null) { + if (body['DoctorID'] != null) + postFailureResponse( + doctorId: body['DoctorID'], + url: url, + request: json.encode(body), + response: response.body, + exception: + "Server Error found with no available message"); + + onFailure("Server Error found with no available message", + statusCode); + } else { + if (body['DoctorID'] != null) + postFailureResponse( + doctorId: body['DoctorID'], + url: url, + request: json.encode(body), + response: response.body, + exception: parsed['ErrorSearchMsg']); + onFailure(parsed['ErrorSearchMsg'], statusCode); + } + } else { + if (body['DoctorID'] != null) + postFailureResponse( + doctorId: body['DoctorID'], + url: url, + request: json.encode(body), + response: response.body, + exception: parsed['message'] ?? + parsed['ErrorEndUserMessage'] ?? + parsed['ErrorMessage']); + onFailure( + parsed['message'] ?? + parsed['ErrorEndUserMessage'] ?? + parsed['ErrorMessage'], + statusCode); + } + } + } else { + if (parsed['SameClinicApptList'] != null) { + onSuccess(parsed, statusCode); + } else { + if (parsed['message'] != null) { + if (body['DoctorID'] != null) + postFailureResponse( + doctorId: body['DoctorID'], + url: url, + request: json.encode(body), + response: response.body, + exception: parsed['message']); + + onFailure(parsed['message'] ?? parsed['message'], statusCode); + } else { + if (body['DoctorID'] != null) + postFailureResponse( + doctorId: body['DoctorID'], + url: url, + request: json.encode(body), + response: response.body, + exception: parsed['ErrorEndUserMessage'] ?? + parsed['ErrorMessage']); + + onFailure( + parsed['ErrorEndUserMessage'] ?? parsed['ErrorMessage'], + statusCode); + } + } + } + } + } + } else { + onFailure('Please Check The Internet Connection', -1); + } } catch (e) { - print(e); - onFailure(e.toString(), -1); + print(e); + onFailure(e.toString(), -1); + } } - } - String getError(parsed) { + String getError(parsed) { //TODO change this fun String? error = parsed['ErrorEndUserMessage'] ?? parsed['ErrorMessage']; if (parsed["ValidationErrors"] != null) { - error = parsed["ValidationErrors"]["StatusMessage"].toString() + "\n"; - - if (parsed["ValidationErrors"]["ValidationErrors"] != null && parsed["ValidationErrors"]["ValidationErrors"].length != 0) { - for (var i = 0; i < parsed["ValidationErrors"]["ValidationErrors"].length; i++) { - error = error! + parsed["ValidationErrors"]["ValidationErrors"][i]["Messages"][0] + "\n"; - } - } + error = parsed["ValidationErrors"]["StatusMessage"].toString() + "\n"; + + if (parsed["ValidationErrors"]["ValidationErrors"] != null && + parsed["ValidationErrors"]["ValidationErrors"].length != 0) { + for (var i = 0; + i < parsed["ValidationErrors"]["ValidationErrors"].length; + i++) { + error = error! + + parsed["ValidationErrors"]["ValidationErrors"][i]["Messages"][0] + + "\n"; + } + } } if (error == null || error == "null" || error == "null\n") { - return Utils.generateContactAdminMsg(); + return Utils.generateContactAdminMsg(); } return error; - } + } - get({required String endPoint, required Function(dynamic response, int statusCode) onSuccess, required Function(String error, int statusCode) onFailure}) async { + get( + {required String endPoint, + required Function(dynamic response, int statusCode) onSuccess, + required Function(String error, int statusCode) onFailure}) async { String token = await sharedPref.getString(TOKEN); String url = DOCTOR_ROTATION + endPoint + '&token=' + token; print(url); @@ -390,10 +490,10 @@ class BaseAppClient { final int statusCode = response.statusCode; if (statusCode < 200 || statusCode >= 400) { - onFailure(Utils.generateContactAdminMsg(), statusCode); + onFailure(Utils.generateContactAdminMsg(), statusCode); } else { - var parsed = json.decode(response.body.toString()); - onSuccess(parsed, statusCode); + var parsed = json.decode(response.body.toString()); + onSuccess(parsed, statusCode); + } } } -} diff --git a/lib/core/service/patient_medical_file/soap/SOAP_service.dart b/lib/core/service/patient_medical_file/soap/SOAP_service.dart index bd51681b..a18fe7d1 100644 --- a/lib/core/service/patient_medical_file/soap/SOAP_service.dart +++ b/lib/core/service/patient_medical_file/soap/SOAP_service.dart @@ -1122,10 +1122,10 @@ class SOAPService extends LookupService { "ProjectID": patientInformation.projectId }; hasError = false; + patientProgressNoteListVidaPlus.clear(); await baseAppClient.post(GET_PROGRESS_NOTE, onSuccess: (dynamic response, int statusCode) { print("Success"); - patientProgressNoteListVidaPlus.clear(); response['ListProgressNote']['resultData'].forEach((v) { v['data'].forEach((progressNote) { patientProgressNoteListVidaPlus @@ -1237,6 +1237,7 @@ class SOAPService extends LookupService { "condition": conditionType, "remarks": remarks, "icdType": searchDiagnosis!.icdType, + "selectedIcdCode": searchDiagnosis.diseasesCode, // "icdVersion": searchDiagnosis.icdVersion, "icdSubVersion": searchDiagnosis.icdSubVersion, "isNew": isNew, @@ -1244,7 +1245,7 @@ class SOAPService extends LookupService { "selectedDisease": searchDiagnosis.diseases, "diseasesCode": searchDiagnosis.diseasesCode, "diseasesId": searchDiagnosis.diseasesId, - "selectedIcdCode": searchDiagnosis.icdId, + // "selectedIcdCode": searchDiagnosis.icdId, "selectedCategoryCode": searchDiagnosis.categoryCode, "selectedSectionCode": searchDiagnosis.sectionCode, "selectedChapterCode": searchDiagnosis.chapterCode, @@ -1357,6 +1358,8 @@ class SOAPService extends LookupService { success = false; }, onFailure: (String error, int statusCode) { success = false; + DrAppToastMsg.showErrorToast(error); + hasError = true; super.error = error; }, body: request);