Index: ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/importbasedata/service/ImportBasedataManagerImpl.java =================================================================== diff -u -r15560 -r15665 --- ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/importbasedata/service/ImportBasedataManagerImpl.java (.../ImportBasedataManagerImpl.java) (revision 15560) +++ ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/importbasedata/service/ImportBasedataManagerImpl.java (.../ImportBasedataManagerImpl.java) (revision 15665) @@ -1396,6 +1396,7 @@ if (foreignTousseSheet == null) { return totalCount; } + int successCount = 0, failureCount = 0; StringBuffer sb = new StringBuffer(); try{ @@ -1408,6 +1409,7 @@ int materialDefinitionAmountIndex = ExcelUtils.getColumnIndex(nameToIndexMap, "数量"); int includeImplantIndex = ExcelUtils.getColumnIndex(nameToIndexMap, "工具/植入物"); int dismantleAmountIndex = ExcelUtils.getColumnIndex(nameToIndexMap, "可拆卸数量"); + int washClassifyTypeIndex = ExcelUtils.getColumnIndex(nameToIndexMap, "清洗分类类型"); TousseDefinition tousseDefinition = null; List materialInstanceList = null; @@ -1469,13 +1471,15 @@ String includePlant = ParerUtils.getCellFormatValue(row, includeImplantIndex); // 可拆卸数量 String dismantleAmount = ParerUtils.getCellFormatValue(row, dismantleAmountIndex); - + // 清洗分类类型 + String washClassifyType = ParerUtils.getCellFormatValue(row, washClassifyTypeIndex); + if (StringUtils.isNotBlank(materialDefinitionName)) { int errorCode = validateAndAddForeignMaterialInstance( materialInstanceList, materialDefinitionName, materialDefinitionNumStr, specification, - includePlant,dismantleAmount,tousseDefinitionMaterials); + includePlant,dismantleAmount,washClassifyType,tousseDefinitionMaterials); if (errorCode != 0) { // 若在数据库中找不到该材料,或录入的数量有误或该材料已经存在列表中,则此时该器械包插入失败 failureCount = appendFailureRowNumAndRecordFailureNum( @@ -1501,13 +1505,15 @@ String includePlant = ParerUtils.getCellFormatValue(row, includeImplantIndex); // 可拆卸数量 String dismantleAmount = ParerUtils.getCellFormatValue(row, dismantleAmountIndex); + // 清洗分类类型 + String washClassifyType = ParerUtils.getCellFormatValue(row, washClassifyTypeIndex); if (StringUtils.isNotBlank(materialDefinitionName)) { int errorCode = validateAndAddForeignMaterialInstance( materialInstanceList, materialDefinitionName, materialDefinitionNumStr, specification, - includePlant,dismantleAmount,tousseDefinitionMaterials); + includePlant,dismantleAmount,washClassifyType,tousseDefinitionMaterials); if (errorCode != 0) { // 若在数据库中找不到该材料,或录入的数量有误或该材料已经存在列表中,则此时该器械包插入失败 failureCount = appendFailureRowNumAndRecordFailureNum( @@ -2367,8 +2373,12 @@ private int validateAndAddForeignMaterialInstance( List existingMaterialInstanceList, String newMaterialDefinitionName, String newMaterialDefinitionNumStr, - String specification,String includePlant,String dismantleAmount,List tousseDefinitionMaterials) { + String specification,String includePlant,String dismantleAmount,String washClassifyType, + List tousseDefinitionMaterials) { int materialDefinitionNum = 0; + // 清洗分类类型列表 + List washTypeList = httpOptionManager + .getHttpOptionTextById(HttpOption.SYSTEMSETTING_MATERIAL_WASH_CLASSIFY); if (StringUtils.isNotBlank(newMaterialDefinitionNumStr)) { try { materialDefinitionNum = Integer @@ -2380,6 +2390,11 @@ materialDefinitionNum = 0; //return com.forgon.disinfectsystem.common.Constants.ERROR_TYPE_IS_BLANK; } + // 清洗分类可以为空,如果配了的话,就要是定义好的分类 + if ( StringUtils.isNotBlank(washClassifyType) && !washTypeList.contains(washClassifyType)) { + return com.forgon.disinfectsystem.common.Constants.ERROR_TYPE_NOT_DEFINED; + } + String isIncludePlant = includePlant; if(StringUtils.isNotBlank(includePlant) && includePlant.equals("植入物")){ isIncludePlant = "是"; @@ -2404,6 +2419,7 @@ materialInstance.setCount(materialDefinitionNum); materialInstance.setMaterialName(newMaterialDefinitionName); materialInstance.setMinDismantleAmount(dismantleAmount); + materialInstance.setWashClassifyType(washClassifyType); // materialInstance.setTousse(tousseDefinition); existingMaterialInstanceList.add(materialInstance); tousseDefinitionMaterials.add(materialInstance); Index: ssts-web/src/main/webapp/disinfectsystem/basedatamanager/importbasedata/basedataDemo.xls =================================================================== diff -u -r15560 -r15665 Binary files differ Index: ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/importbasedata/service/ExportBasedataManagerImpl.java =================================================================== diff -u -r15427 -r15665 --- ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/importbasedata/service/ExportBasedataManagerImpl.java (.../ExportBasedataManagerImpl.java) (revision 15427) +++ ssts-maintain/src/main/java/com/forgon/disinfectsystem/maintain/importbasedata/service/ExportBasedataManagerImpl.java (.../ExportBasedataManagerImpl.java) (revision 15665) @@ -530,6 +530,9 @@ // 6 可拆卸数量 inertStringValueToCell(row, 6, contentCellStyleArray[6], materialInstance.getMinDismantleAmount()); + // 7清洗分类类型 + inertStringValueToCell(row, 7, contentCellStyleArray[7], + materialInstance.getWashClassifyType()); } private String defaultFormatIfEmpty(SimpleDateFormat sdf, Date date,