import 'package:doctor_app_flutter/config/config.dart'; import 'package:doctor_app_flutter/core/enum/master_lookup_key.dart'; import 'package:doctor_app_flutter/core/service/base/base_service.dart'; import 'package:doctor_app_flutter/models/SOAP/get_Allergies_request_model.dart'; import 'package:doctor_app_flutter/models/SOAP/master_key_model.dart'; class SOAPService extends BaseService { List get listOfAllergies => _listOfAllergies; List get allergySeverityList => _allergySeverityList; List _listOfAllergies = []; List _allergySeverityList = []; Future getAllergies(GetAllergiesRequestModel getAllergiesRequestModel) async { await baseAppClient.post( GET_ALLERGIES, onSuccess: (dynamic response, int statusCode) { _listOfAllergies.clear(); response['List_Allergies']['entityList'].forEach((v) { _listOfAllergies.add(MasterKeyModel.fromJson(v)); }); }, onFailure: (String error, int statusCode) { hasError = true; super.error = error; }, body: getAllergiesRequestModel.toJson(), ); } Future getMasterLookup(MasterKeysService masterKeys) async { Map body = { "MasterInput": masterKeys.getMasterKeyService() }; await baseAppClient.post(GET_MASTER_LOOKUP_LIST, onSuccess: (dynamic response, int statusCode) { setMasterLookupInCorrectArray( response['MasterLookUpList']['entityList'], masterKeys); }, onFailure: (String error, int statusCode) { hasError = true; super.error = error; }, body: body); } setMasterLookupInCorrectArray(entryList, MasterKeysService masterKeys) { switch (masterKeys) { case MasterKeysService.Allergies: _listOfAllergies.clear(); entryList.forEach((v) { _listOfAllergies .add(MasterKeyModel.fromJson(v)); }); break; case MasterKeysService.HistoryFamily: return 36; break; case MasterKeysService.HistoryMedical: return 37; break; case MasterKeysService.HistorySocial: return 38; break; case MasterKeysService.HistorySports: return 39; break; case MasterKeysService.HistorySurgical: return 66; break; case MasterKeysService.PhysicalExamination: return 59; break; case MasterKeysService.AllergySeverity: _allergySeverityList.clear(); entryList.forEach((v) { _allergySeverityList .add(MasterKeyModel.fromJson(v)); }); break; } } }