Index: ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/service/UseRecordManagerImpl.java =================================================================== diff -u -r33959 -r34022 --- ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/service/UseRecordManagerImpl.java (.../UseRecordManagerImpl.java) (revision 33959) +++ ssts-userecord/src/main/java/com/forgon/disinfectsystem/useRecord/service/UseRecordManagerImpl.java (.../UseRecordManagerImpl.java) (revision 34022) @@ -7997,6 +7997,7 @@ { //包的加急信息 UrgentLevel urgentLevelOfTi = ti.getUrgentLevel(); + UrgentLevel urgentLevelForUseRecordOfTi = ti.getUrgentLevelForUseRecord(); List acceptStatus = new ArrayList<>(); //已发货未签收的包是否可以录使用记录 //boolean notSignedItemsCanRegistUseRecord = CssdUtils.getSystemSetConfigByNameBool("notSignedItemsCanRegistUseRecord"); @@ -8070,6 +8071,9 @@ if(urgentLevelOfTi != null){ obj.put("urgentLevel", JSONObject.fromObject(urgentLevelOfTi)); } + if(urgentLevelForUseRecordOfTi != null){ + obj.put("urgentLevelIdForUseRecord", urgentLevelForUseRecordOfTi.getId()); + } }else{ obj.put(JSONUtil.JSON_KEY_MESSAGE, ti.getTousseDefinitionName() + ti.getBarcode() + "所属科室为" + lastLocationForDisplayOfTi + ",未配置与当前科室共用,不能录入使用记录!"); return obj; @@ -8125,6 +8129,9 @@ if(urgentLevelOfTi != null){ obj.put("urgentLevel", JSONObject.fromObject(urgentLevelOfTi)); } + if(urgentLevelForUseRecordOfTi != null){ + obj.put("urgentLevelIdForUseRecord", urgentLevelForUseRecordOfTi.getId()); + } }else{ obj.put(JSONUtil.JSON_KEY_MESSAGE, ti.getTousseDefinitionName() + ti.getBarcode() + "所属科室为" + lastLocationForDisplayOfTi + ",不能录入使用记录!"); return obj; @@ -8168,6 +8175,9 @@ if(urgentLevelOfTi != null){ dataJson.put("urgentLevel", JSONObject.fromObject(urgentLevelOfTi)); } + if(urgentLevelForUseRecordOfTi != null){ + dataJson.put("urgentLevelIdForUseRecord", urgentLevelForUseRecordOfTi.getId()); + } obj.put("data", dataJson); // 判断包实例是否为聚合包 Index: ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServerInterfaceImpl.java =================================================================== diff -u -r30312 -r34022 --- ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServerInterfaceImpl.java (.../ServerInterfaceImpl.java) (revision 30312) +++ ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServerInterfaceImpl.java (.../ServerInterfaceImpl.java) (revision 34022) @@ -21,6 +21,7 @@ import com.forgon.directory.model.LoginInfo; import com.forgon.disinfectsystem.common.CssdUtils; import com.forgon.exception.BorrowUnRecturnException; +import com.forgon.exception.CleanMethodNotTheSameException; import com.forgon.exception.SterilingModeNotTheSameException; import com.forgon.exception.SystemException; import com.forgon.exception.UnScanSterilizationMonitoringPackageException; @@ -88,6 +89,14 @@ e.printStackTrace(); logger.debug(e.getMessage()); result = obj.toString(); + } catch(CleanMethodNotTheSameException e){ + //清洗程序不一致的异常 + String msg = e.getMessage(); + JSONObject obj = JSONUtil.buildJsonObject(false, msg); + obj.put(JSONUtil.JSON_KEY_NOTICEMODE, Constants.NOTICE_MODE_CONFIRM); + e.printStackTrace(); + logger.debug(e.getMessage()); + result = obj.toString(); } catch (SystemException e) { // e.printStackTrace(); result = buildErrorMsgJsonResult(e.getMessage()); Index: forgon-core/src/main/java/com/forgon/systemsetting/model/HttpOption.java =================================================================== diff -u -r28131 -r34022 --- forgon-core/src/main/java/com/forgon/systemsetting/model/HttpOption.java (.../HttpOption.java) (revision 28131) +++ forgon-core/src/main/java/com/forgon/systemsetting/model/HttpOption.java (.../HttpOption.java) (revision 34022) @@ -211,6 +211,11 @@ */ public final static String SYSTEMSETTING_QUESTION_FEEDBACK = "question_feedback"; + /** + * 特殊感染类型 + */ + public final static String SYSTEMSETTING_SPECIALINFECTION = "specialInfection"; + private Long id; private String optionText; Index: ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServiceManagerImpl.java =================================================================== diff -u -r34007 -r34022 --- ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServiceManagerImpl.java (.../ServiceManagerImpl.java) (revision 34007) +++ ssts-webservice/src/main/java/com/forgon/disinfectsystem/webservice/service/ServiceManagerImpl.java (.../ServiceManagerImpl.java) (revision 34022) @@ -182,6 +182,7 @@ import com.forgon.disinfectsystem.washanddisinfectmanager.washanddisinfectrecord.action.WashAndDisinfectRecordAction; import com.forgon.disinfectsystem.washanddisinfectmanager.washanddisinfectrecord.service.WashAndDisinfectRecordManager; import com.forgon.exception.BorrowUnRecturnException; +import com.forgon.exception.CleanMethodNotTheSameException; import com.forgon.exception.OperationException; import com.forgon.exception.SterilingModeNotTheSameException; import com.forgon.exception.SystemException; @@ -450,6 +451,8 @@ retException = new UnScanSterilizationMonitoringPackageException(targetException.getMessage()); }else if(targetException instanceof BorrowUnRecturnException){ retException = new BorrowUnRecturnException(targetException.getMessage()); + }else if(targetException instanceof CleanMethodNotTheSameException){ + retException = new CleanMethodNotTheSameException(targetException.getMessage()); }else{ retException = new RuntimeException(targetException.getMessage()); } @@ -1615,7 +1618,7 @@ _defaultDateJsonValueProcessor3); final String[] retainPropertys = { "id", "tousseDefinition","itemDefinition", "tousseName", "barcode", "validUntil", "sterilingType","sterilingMode", - "orgUnitCoding", "orgUnitName","sterilizerPosition","actualUsed","operator","status","hasReceived","depart","departCoding" }; + "orgUnitCoding", "orgUnitName","sterilizerPosition","actualUsed","operator","status","hasReceived","depart","departCoding","urgentLevelIdForUseRecord" }; PropertyFilter filter = new PropertyFilter() { @Override public boolean apply(Object source, String name, Object value) { @@ -2164,7 +2167,8 @@ if (containerStatusIdJsonArray == null) { return JSONUtil.buildErrorMsgJsonResult("缺失参数washContainerBarcodeList"); } - + Map paramMap = new HashMap(); + paramMap.put("validateDisinfectProgram", params.optString("validateDisinfectProgram")); Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss") .create(); WashAndDisinfectRecord washRecordParam = gson.fromJson( @@ -2200,10 +2204,10 @@ if(classifyBasketInfoMap.isEmpty()){ washAndDisinfectRecordManager .saveOrUpdateWashAndDisinfectRecordAndMaterials(washRecord, - classifyBasketIds, null, null); + classifyBasketIds, null, paramMap); }else{ washAndDisinfectRecordManager - .saveOrUpdateWashAndDisinfectRecordAndMaterials(washRecord, classifyBasketInfoMap, null, null); + .saveOrUpdateWashAndDisinfectRecordAndMaterials(washRecord, classifyBasketInfoMap, null, paramMap); } return new JSONStringer().object().key("success").value(true) .endObject().toString(); @@ -5092,7 +5096,17 @@ } return JSONUtil.buildJsonObject(true, JSONArray.fromObject(urgents)).toString(); } - + + /** + * 加载加急等级数据源 + * @param params + * @return + */ + public String loadUrgentLevelDatas(JSONObject params){ + List list = urgentLevelManager.getAllExceptDisabled(); + return JSONUtil.buildJsonObject(true, JSONArray.fromObject(list)).toString(); + } + public String quickRecycle(JSONObject params){ String useRecordID = params.optString("id", ""); String barcodes = params.optString("barcodes", ""); @@ -7016,12 +7030,27 @@ resultObj = JSONUtil.buildJsonObject(true, jsonArr); } catch (Exception e) { e.printStackTrace(); - resultObj = JSONUtil.buildJsonObject(false, "查询用户出错"); + resultObj = JSONUtil.buildJsonObject(false, "查询手术间出错"); } return resultObj.toString(); } /** + * 查询特殊感染类型 + */ + public String getSpecialInfectionList(JSONObject params){ + JSONObject resultObj = null; + try { + List specialInfectionList = httpOptionManager.getHttpOptionTextById(HttpOption.SYSTEMSETTING_SPECIALINFECTION); + resultObj = JSONUtil.buildJsonObject(true, JSONArray.fromObject(specialInfectionList)); + } catch (Exception e) { + e.printStackTrace(); + resultObj = JSONUtil.buildJsonObject(false, "查询特殊感染类型出错"); + } + return resultObj.toString(); + } + + /** * 获取图片和视频信息 */ public String getImageAndVideoInfo (JSONObject params){ Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/basedatamanager/toussedefinition/TousseInstance.java =================================================================== diff -u -r33904 -r34022 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/basedatamanager/toussedefinition/TousseInstance.java (.../TousseInstance.java) (revision 33904) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/basedatamanager/toussedefinition/TousseInstance.java (.../TousseInstance.java) (revision 34022) @@ -833,6 +833,15 @@ return urgentLevelForUseRecord; } + @Transient + public Long getUrgentLevelIdForUseRecord() { + if(urgentLevelForUseRecord != null){ + return urgentLevelForUseRecord.getId(); + } + return null; + } + + public void setUrgentLevelForUseRecord(UrgentLevel urgentLevelForUseRecord) { this.urgentLevelForUseRecord = urgentLevelForUseRecord; }