Index: ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServiceManagerImpl.java =================================================================== diff -u -r24293 -r24761 --- ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServiceManagerImpl.java (.../ServiceManagerImpl.java) (revision 24293) +++ ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServiceManagerImpl.java (.../ServiceManagerImpl.java) (revision 24761) @@ -3305,8 +3305,9 @@ if (barcodeDevice instanceof TousseInstance) { // 器械包 final TousseInstance tousseInstance = (TousseInstance) barcodeDevice; - if(!TousseDefinition.PACKAGE_TYPE_INSIDE.equals(tousseInstance.getTousseDefinition().getTousseType())) - return JSONUtil.buildErrorMsgJsonResult("只能退货普通器械包"); + if(!tousseInstance.getTousseDefinition().isInsideTousse() && !tousseInstance.getTousseDefinition().isDressing()){ + return JSONUtil.buildErrorMsgJsonResult("只能退货普通器械包及敷料包"); + } String[] acceptStatus = {TousseInstance.STATUS_SHIPPED,TousseInstance.STATUS_SIGNED}; if(!ArrayUtils.contains(acceptStatus, tousseInstance.getStatus())) return JSONUtil.buildErrorMsgJsonResult(String.format("此器械包状态为[%s],不可退货", tousseInstance.getStatus())); @@ -3370,6 +3371,13 @@ result.addProperty("type", "user"); result.add("data", userToJson((User)barcodeDevice)); return result.toString(); + } else { + //即不为器械包、一次性物品及用户时,按科室的方法进行查询 + JSONObject json = orgUnitManager.loadInfo(barcode); + if (json != null){ + // 科室 + return json.toString(); + } } return JSONUtil.buildErrorMsgJsonResult("查无此物品"); }