Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/action/TousseDefinitionAction.java =================================================================== diff -u -r16898 -r16923 --- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/action/TousseDefinitionAction.java (.../TousseDefinitionAction.java) (revision 16898) +++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/action/TousseDefinitionAction.java (.../TousseDefinitionAction.java) (revision 16923) @@ -393,15 +393,18 @@ comboTousseManagerImpl.saveOrUpdateComboTousses(comboTousseArray, tousseDefinition, newTousse); //添加相应的供应室处理器械包配置 - CssdHandleTousses cssdHandleTousses = new CssdHandleTousses(); - cssdHandleTousses.setOrgUnitCode(cssdCode); - cssdHandleTousses.setOrgUnitName(cssdName); - cssdHandleTousses.setSpelling(GB2Alpha.string2Alpha(tousseDefinition.getName())); - cssdHandleTousses.setWbCode(GB2WB.getWBCode(tousseDefinition.getName())); - cssdHandleTousses.setTaskGroup(taskGroup); - cssdHandleTousses.setTousseDefinitionId(tousseDefinition.getId()); - cssdHandleTousses.setTousseName(tousseDefinition.getName()); - cssdHandleTousseManager.save(cssdHandleTousses); + Long id = tousseDefinition.getId(); + List cssdHandleTousses = cssdHandleTousseManager.getByHql("tousseDefinitionId=" + id); + CssdHandleTousses cssdHandleTousse = CollectionUtils.isEmpty(cssdHandleTousses) ? new CssdHandleTousses() : cssdHandleTousses.get(0); + cssdHandleTousse.setOrgUnitCode(cssdCode); + cssdHandleTousse.setOrgUnitName(cssdName); + cssdHandleTousse.setSpelling(GB2Alpha.string2Alpha(tousseDefinition.getName())); + cssdHandleTousse.setWbCode(GB2WB.getWBCode(tousseDefinition.getName())); + cssdHandleTousse.setTaskGroup(taskGroup); + cssdHandleTousse.setTousseDefinitionId(id); + cssdHandleTousse.setTousseName(tousseDefinition.getName()); + cssdHandleTousseManager.save(cssdHandleTousse); + // } } @@ -430,8 +433,10 @@ objectDao.saveOrUpdate(cssdHandleTousses); } }else{ - //修改保存时,如果不为器械包、消毒物品或敷料包则删除该包的供应室处理器械包配置 - objectDao.excuteSQL("delete from CssdHandleTousses where tousseDefinitionId=" + tousseDefinition.getAncestorID()); + if (!TousseDefinition.PACKAGE_TYPE_COMBO.equals(tousseDefinition.getTousseType())){ + //修改保存时,如果不为器械包、消毒物品或敷料包或聚合包则删除该包的供应室处理器械包配置 + objectDao.excuteSQL("delete from CssdHandleTousses where tousseDefinitionId=" + tousseDefinition.getAncestorID()); + } } } } catch (Exception e) {