Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/reportoption/GoodsOptionManager.java =================================================================== diff -u -r12331 -r16232 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/reportoption/GoodsOptionManager.java (.../GoodsOptionManager.java) (revision 12331) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/reportoption/GoodsOptionManager.java (.../GoodsOptionManager.java) (revision 16232) @@ -6,8 +6,19 @@ public interface GoodsOptionManager { + /** + * 保存GoodsOption + * @param goodsOption + */ public void save(GoodsOption goodsOption); + /** + * 根据"配置的模式"和"科室编码"获取GoodsOption + * + * @param model 配置的模式 + * @param code 科室编码 + * @return + */ public GoodsOption getGoodsOption(String model,String code); } Index: ssts-web/src/main/webapp/disinfectsystem/basedatamanager/materialDefinition/materialDefinitionForm.js =================================================================== diff -u -r16227 -r16232 --- ssts-web/src/main/webapp/disinfectsystem/basedatamanager/materialDefinition/materialDefinitionForm.js (.../materialDefinitionForm.js) (revision 16227) +++ ssts-web/src/main/webapp/disinfectsystem/basedatamanager/materialDefinition/materialDefinitionForm.js (.../materialDefinitionForm.js) (revision 16232) @@ -759,6 +759,7 @@ var materialName = top.Ext.getCmp("name").getValue(); if(materialName.indexOf("[") != -1 || materialName.indexOf("'") != -1){ showResult("物品名称不能包含特殊字符!"); + this.enable(); return false; } validateAndSubmit(); Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/reportoption/GoodsOptionManagerImpl.java =================================================================== diff -u -r12331 -r16232 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/reportoption/GoodsOptionManagerImpl.java (.../GoodsOptionManagerImpl.java) (revision 12331) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/reportoption/GoodsOptionManagerImpl.java (.../GoodsOptionManagerImpl.java) (revision 16232) @@ -13,13 +13,24 @@ this.objectDao = objectDao; } + /** + * 保存GoodsOption + * @param goodsOption + */ @Override public void save(GoodsOption goodsOption) { if(goodsOption != null){ objectDao.saveOrUpdate(goodsOption); } } + /** + * 根据"配置的模式"和"科室编码"获取GoodsOption + * + * @param model 配置的模式 + * @param code 科室编码 + * @return + */ @Override public GoodsOption getGoodsOption(String model, String code) { if(StringUtils.isNotBlank(model)){ Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/becleanitem/ClassifiedItem.java =================================================================== diff -u -r15717 -r16232 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/becleanitem/ClassifiedItem.java (.../ClassifiedItem.java) (revision 15717) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/becleanitem/ClassifiedItem.java (.../ClassifiedItem.java) (revision 16232) @@ -231,6 +231,10 @@ this.isSencondWashForForeignTousse = isSencondWashForForeignTousse; } + /** + * 判断是否为:外来器械二次清洗 + * @return + */ @Transient public boolean isSencondWashForForeignTousse(){ if(isSencondWashForForeignTousse != null){ Index: ssts-web/src/main/webapp/disinfectsystem/basedatamanager/tousse/tousseView.js =================================================================== diff -u -r16101 -r16232 --- ssts-web/src/main/webapp/disinfectsystem/basedatamanager/tousse/tousseView.js (.../tousseView.js) (revision 16101) +++ ssts-web/src/main/webapp/disinfectsystem/basedatamanager/tousse/tousseView.js (.../tousseView.js) (revision 16232) @@ -270,10 +270,8 @@ }]; var dwrCallParams = null; - Ext.ux.ForgonPageGrid.prototype.getGridParameterMap = function() { + Ext.ux.ForgonPageGrid.prototype.getGridParameterMap = function() {}; - }; - grid = new Ext.ux.ForgonPageGrid( { title : '器械包列表', tbar : tbar, Index: ssts-web/src/main/webapp/disinfectsystem/basedatamanager/tousse/tousseForm.js =================================================================== diff -u -r16214 -r16232 --- ssts-web/src/main/webapp/disinfectsystem/basedatamanager/tousse/tousseForm.js (.../tousseForm.js) (revision 16214) +++ ssts-web/src/main/webapp/disinfectsystem/basedatamanager/tousse/tousseForm.js (.../tousseForm.js) (revision 16232) @@ -401,8 +401,8 @@ listWidth : 250, store : new Ext.data.Store({ proxy : new Ext.data.HttpProxy({ -// url : WWWROOT + '/disinfectSystem/baseData/materialDefinitionAction!getMaterialDefinitionData.do', - url : WWWROOT + '/disinfectSystem/baseData/materialDefinitionAction!searchMaterialDefinitionOrDisposableGoodsBySpell2.do', + url : WWWROOT + '/disinfectSystem/baseData/materialDefinitionAction!getMaterialDefinitionData.do', //不包括外来器械材料的 +// url : WWWROOT + '/disinfectSystem/baseData/materialDefinitionAction!searchMaterialDefinitionOrDisposableGoodsBySpell2.do', //包括外来器械材料的 method : 'POST' }), reader : new Ext.data.JsonReader({ Index: ssts-wash/src/main/java/com/forgon/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/service/WashAndDisinfectRecordManagerImpl.java =================================================================== diff -u -r15991 -r16232 --- ssts-wash/src/main/java/com/forgon/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/service/WashAndDisinfectRecordManagerImpl.java (.../WashAndDisinfectRecordManagerImpl.java) (revision 15991) +++ ssts-wash/src/main/java/com/forgon/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/service/WashAndDisinfectRecordManagerImpl.java (.../WashAndDisinfectRecordManagerImpl.java) (revision 16232) @@ -441,6 +441,20 @@ classifyBasketInfoMap, materials); } + /** + * 计算一条清洗记录的清洗总工作量,包括了以下六种数量:
+ * 1、普通器械清洗总数
+ * 2、手术器械清洗总数
+ * 3、外来器械清洗总数
+ * 4、消毒物品器械清洗总数
+ * 5、外来器械第二次清洗总数(减去使用记录使用掉的植入物)
+ * 6、清洗总数量,前面五种之和 + * + * @param washAndDisinfectRecordId 清洗记录id + * @param classifyBaskets washAndDisinfectRecordId关联的回收篮筐实例的集合 + * @param secondWashCountWorkload 是否需要统计二次清洗的工作量 + * @return + */ public JSONObject countTotalWorkload(Long washAndDisinfectRecordId, Iterable classifyBaskets, boolean secondWashCountWorkload) { @@ -591,7 +605,12 @@ return 0; } - // 是否手术室器械 + /** + * 是否手术室器械 + * @param ci + * @param option + * @return + */ private boolean isSurgicalInstruments(ClassifiedItem ci, GoodsOption option) { if (ci != null && option != null) { if (StringUtils.isNotBlank(option.getValue()) && option.getValue().indexOf(ci.getOrgUnitName()) != -1) { @@ -614,6 +633,20 @@ return null; } + /** + * 计算一个回收篮筐实例总工作量,包括了以下六种数量:
+ * 1、普通器械清洗总数
+ * 2、手术器械清洗总数
+ * 3、外来器械清洗总数
+ * 4、消毒物品器械清洗总数
+ * 5、外来器械第二次清洗总数(减去使用记录使用掉的植入物)
+ * 6、清洗总数量,前面五种之和 + * + * @param classifyBasket 回收篮筐实例 + * @param workload 存放上面六种数量的JSONObject + * @param option + * @return + */ private void countWorkloadByClassifyBasket(ClassifyBasket classifyBasket,JSONObject workload,GoodsOption option) { int generalMaterialAmount = workload.optInt("generalMaterialAmount"); @@ -640,7 +673,7 @@ }else{ foreignMaterialAmount += amount; } - } else if (isSurgicalInstruments(ci, option)) { + } else if (isSurgicalInstruments(ci, option)) { //看到这里 operateMaterialAmount += amount; } else { generalMaterialAmount += amount; Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManagerImpl.java =================================================================== diff -u -r16225 -r16232 --- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManagerImpl.java (.../TousseDefinitionManagerImpl.java) (revision 16225) +++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManagerImpl.java (.../TousseDefinitionManagerImpl.java) (revision 16232) @@ -399,7 +399,10 @@ materialDefinitionManager.saveOrUpdate(materialDefinition); } }else{ - materialDefinition = materialDefinitionManager.getMaterialDefinitionByNameAndspecification(materialName,specification); + materialDefinition = materialDefinitionManager.getMaterialDefinitionByName(materialName,specification); + if(materialDefinition == null){ //1、怕并发问题 2、他在定义材料是的材料名字就带有规格如出现(一次性针头[4F])那么这里就有可能查不出来 + throw new RuntimeException(name + "已经不存在了!"); + } } if (Constants.STR_YES.equals(materialDefinition.getIsImplant())) { //包含植入物(cjr) Index: ssts-wash/src/main/java/com/forgon/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/service/WashAndDisinfectRecordManager.java =================================================================== diff -u -r15324 -r16232 --- ssts-wash/src/main/java/com/forgon/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/service/WashAndDisinfectRecordManager.java (.../WashAndDisinfectRecordManager.java) (revision 15324) +++ ssts-wash/src/main/java/com/forgon/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/service/WashAndDisinfectRecordManager.java (.../WashAndDisinfectRecordManager.java) (revision 16232) @@ -38,6 +38,20 @@ public void saveOrUpdateMaterials(List materials); + /** + * 计算一条清洗记录的清洗总工作量,包括了以下六种数量:
+ * 1、普通器械清洗总数
+ * 2、手术器械清洗总数
+ * 3、外来器械清洗总数
+ * 4、消毒物品器械清洗总数
+ * 5、外来器械第二次清洗总数(减去使用记录使用掉的植入物)
+ * 6、清洗总数量,前面五种之和 + * + * @param washAndDisinfectRecordId 清洗记录id + * @param classifyBaskets washAndDisinfectRecordId关联的回收篮筐实例的集合 + * @param secondWashCountWorkload 是否需要统计二次清洗的工作量 + * @return + */ public JSONObject countTotalWorkload(Long washAndDisinfectRecordId, Iterable classifyBaskets,boolean secondWashCountWorkload); public boolean validateWashIsEnd(String CleaningMachineName,Date startDate,Date endDate); Index: forgon-core/src/main/java/com/forgon/security/service/UserManagerImpl.java =================================================================== diff -u -r16216 -r16232 --- forgon-core/src/main/java/com/forgon/security/service/UserManagerImpl.java (.../UserManagerImpl.java) (revision 16216) +++ forgon-core/src/main/java/com/forgon/security/service/UserManagerImpl.java (.../UserManagerImpl.java) (revision 16232) @@ -89,14 +89,15 @@ user.setCurrentOrgUnitCode(currentOrgUnitCode); objectDao.saveOrUpdate(user); -// directOrgUnitCodesWhereUserBelong += OrgUnit.ORGUNIT_USER_SEPARATOR; -// // 当前的部门不是用户所拥有的部门 -// if (directOrgUnitCodesWhereUserBelong.indexOf(currentOrgUnitCode + OrgUnit.ORGUNIT_USER_SEPARATOR) == -1){ -// currentOrgUnitCode = directOrgUnitCodesWhereUserBelong.split(OrgUnit.ORGUNIT_USER_SEPARATOR)[0]; -// // 保存用户的当前部门 -// user.setCurrentOrgUnitCode(currentOrgUnitCode); -// objectDao.saveOrUpdate(user); -// } + //下面的代码bug,因此注释掉了(比如出现directOrgUnitCodesWhereUserBelong包含"E2602"currentOrgUnitCode为"2602"第一个编码完成包括了第二个cjr) + /*directOrgUnitCodesWhereUserBelong += OrgUnit.ORGUNIT_USER_SEPARATOR; + // 当前的部门不是用户所拥有的部门 + if (directOrgUnitCodesWhereUserBelong.indexOf(currentOrgUnitCode + OrgUnit.ORGUNIT_USER_SEPARATOR) == -1){ + currentOrgUnitCode = directOrgUnitCodesWhereUserBelong.split(OrgUnit.ORGUNIT_USER_SEPARATOR)[0]; + // 保存用户的当前部门 + user.setCurrentOrgUnitCode(currentOrgUnitCode); + objectDao.saveOrUpdate(user); + }*/ } }