Index: ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServiceManagerImpl.java =================================================================== diff -u -r16392 -r16397 --- ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServiceManagerImpl.java (.../ServiceManagerImpl.java) (revision 16392) +++ ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServiceManagerImpl.java (.../ServiceManagerImpl.java) (revision 16397) @@ -1185,15 +1185,20 @@ JsonObject dataJSON = json.getAsJsonObject("data"); if(dataJSON != null){ String barcode = dataJSON.get("barcode").getAsString(); - JSONObject jroutine = invoiceManager.getBiologicalMonitoringInfo(barcode); - String noBiologicalMonitoring = jroutine.optString("noBiologicalMonitoring"); -// String biologicalMonitoringNoResult = jroutine.getString("biologicalMonitoringNoResult"); - String biologicalMonitoringFail = jroutine.optString("biologicalMonitoringFail"); - String urgentDelivery = jroutine.optString("urgentDelivery"); - - dataJSON.addProperty("noBiologicalMonitoring",StringTools.isNotBlank(noBiologicalMonitoring)); - dataJSON.addProperty("unconventional", StringTools.isNotBlank(urgentDelivery)); - dataJSON.addProperty("isUnqualified", StringTools.isNotBlank(biologicalMonitoringFail)); + JSONObject jbarcodeObject = invoiceManager.getBiologicalMonitoringInfo(barcode); + if(jbarcodeObject != null){ + JSONObject jroutine = jbarcodeObject.optJSONObject(barcode); + if(jroutine != null){ + String noBiologicalMonitoring = jroutine.optString("noBiologicalMonitoring"); +// String biologicalMonitoringNoResult = jroutine.getString("biologicalMonitoringNoResult"); + String biologicalMonitoringFail = jroutine.optString("biologicalMonitoringFail"); + String urgentDelivery = jroutine.optString("urgentDelivery"); + + dataJSON.addProperty("noBiologicalMonitoring",StringTools.isNotBlank(noBiologicalMonitoring)); + dataJSON.addProperty("unconventional", StringTools.isNotBlank(urgentDelivery)); + dataJSON.addProperty("isUnqualified", StringTools.isNotBlank(biologicalMonitoringFail)); + } + } } }else if("tousseInstancesInContainer".equals(itemType)){ JsonArray dataJArray = json.getAsJsonArray("data"); @@ -1206,20 +1211,26 @@ barcodes.add(jobj.get("barcode").getAsString()); } } - JSONObject jroutine = invoiceManager.getBiologicalMonitoringInfo(StringTools.join(barcodes, ";")); - String noBiologicalMonitoring = jroutine.optString("noBiologicalMonitoring"); -// String biologicalMonitoringNoResult = jroutine.getString("biologicalMonitoringNoResult"); - String biologicalMonitoringFail = jroutine.optString("biologicalMonitoringFail"); - String urgentDelivery = jroutine.optString("urgentDelivery"); + JSONObject jbarcodeObject = invoiceManager.getBiologicalMonitoringInfo(StringTools.join(barcodes, ";")); for(int i = 0;i < dataJArray.size();++i){ JsonElement je = dataJArray.get(i); if(je != null){ JsonObject jobj = je.getAsJsonObject(); String barcode = jobj.get("barcode").getAsString(); - jobj.addProperty("noBiologicalMonitoring",StringTools.contains(noBiologicalMonitoring, barcode)); - jobj.addProperty("unconventional", StringTools.contains(urgentDelivery, barcode)); - jobj.addProperty("isUnqualified", StringTools.contains(biologicalMonitoringFail, barcode)); + if(jbarcodeObject != null){ + JSONObject jroutine = jbarcodeObject.optJSONObject(barcode); + if(jroutine != null){ + String noBiologicalMonitoring = jroutine.optString("noBiologicalMonitoring"); +// String biologicalMonitoringNoResult = jroutine.getString("biologicalMonitoringNoResult"); + String biologicalMonitoringFail = jroutine.optString("biologicalMonitoringFail"); + String urgentDelivery = jroutine.optString("urgentDelivery"); + + jobj.addProperty("noBiologicalMonitoring",StringTools.isNotBlank(noBiologicalMonitoring)); + jobj.addProperty("unconventional", StringTools.isNotBlank(urgentDelivery)); + jobj.addProperty("isUnqualified", StringTools.isNotBlank(biologicalMonitoringFail)); + } + } } } }