Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java =================================================================== diff -u -r35598 -r35749 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 35598) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 35749) @@ -397,8 +397,9 @@ if (recyclingBasketItems != null) { Map tousseMap = getRecycleTousseItemMap(recyclingBasketItems); String errorMessage = ""; - for (Long tousseDefinitionID : tousseMap.keySet()) { - Integer amount = tousseMap.get(tousseDefinitionID); + for(Entry entry : tousseMap.entrySet()){ + Long tousseDefinitionID = entry.getKey(); + Integer amount = entry.getValue(); RecyclingItem recyclingItem = null; for (RecyclingItem ti : items) { @@ -817,8 +818,9 @@ } //一个包丢失多个标识牌要拆成单条 if(toSplitIdCardMap.size() > 0){ - for (RecyclingItem recyclingItem : toSplitIdCardMap.keySet()) { - MaterialErrorDamageDetail detail = toSplitIdCardMap.get(recyclingItem); + for(Entry entry : toSplitIdCardMap.entrySet()){ + RecyclingItem recyclingItem = entry.getKey(); + MaterialErrorDamageDetail detail = entry.getValue(); for(int i = 0 ; i < detail.getAmount() ; i++ ){ try { MaterialErrorDamageDetail cloneDetail = detail.clone(); @@ -1070,10 +1072,9 @@ } } List list = new ArrayList(); - for (String tousseDefinitionId : map.keySet()) { - Map> itemMap = map.get(tousseDefinitionId); - for (String basketBarcode : itemMap.keySet()) { - list.addAll(itemMap.get(basketBarcode)); + for(Map> itemMap : map.values()){ + for (List vos : itemMap.values()) { + list.addAll(vos); } } return list; @@ -1317,8 +1318,9 @@ classifyBasketRecyclingSequenceManager.save(record.getId(), classifyBasket.getId(), tousseDefinitionID, basketItemVo.getBasketSequence()); } //修改篮筐状态 - for (String basketBarcode : basketBarcodeMap.keySet()) { - ClassifyBasket basket = basketBarcodeMap.get(basketBarcode); + for(Entry entry : basketBarcodeMap.entrySet()){ + String basketBarcode = entry.getKey(); + ClassifyBasket basket = entry.getValue(); if (CollectionUtils.isEmpty(basket.getWashAndDisinfectRecords())) { containerManager.updateContainerStatus(basketBarcode, Container.CONTAINER_STATUS_WASHLOADING); @@ -1869,13 +1871,14 @@ //不是回收申请单,申请数量需要减掉归还数量,如果都已经归还了,那就终止掉。如果整张单都归还了,就把单终止掉 List terminateTousseItemIds = new ArrayList<>(); JSONArray modifiedDetails = new JSONArray(); - for(Long tousseDefinitionId : returnedTousseAmount.keySet()){ + for(Entry entry : returnedTousseAmount.entrySet()){ + Long tousseDefinitionId = entry.getKey(); JSONObject modifiedItem = new JSONObject(); TousseItem tousseItem = tousseItemManager.find(application.queryApplicationItems(objectDao), tousseDefinitionId); if(tousseItem != null){ JSONUtil.addLogProperty(modifiedItem, "包定义id", tousseDefinitionId); JSONUtil.addLogProperty(modifiedItem, "器械包名称", tousseItem.getTousseName()); - int restAmount = MathTools.sub(tousseItem.getAmount(), returnedTousseAmount.get(tousseDefinitionId)).intValue(); + int restAmount = MathTools.sub(tousseItem.getAmount(), entry.getValue()).intValue(); if(restAmount > 0){ JSONUtil.modifyPropertyLog(modifiedItem, "申请数量", tousseItem.getAmount(), restAmount); tousseItem.setAmount(restAmount); @@ -2529,13 +2532,14 @@ //不是回收申请单,申请数量需要减掉归还数量,如果都已经归还了,那就终止掉。如果整张单都归还了,就把单终止掉 List terminateTousseItemIds = new ArrayList<>(); JSONArray modifiedDetails = new JSONArray(); - for(Long tousseDefinitionId : returnedTousseAmount.keySet()){ + for(Entry entry : returnedTousseAmount.entrySet()){ + Long tousseDefinitionId = entry.getKey(); JSONObject modifiedItem = new JSONObject(); TousseItem tousseItem = tousseItemManager.find(application.getApplicationItems(), tousseDefinitionId); if(tousseItem != null){ JSONUtil.addLogProperty(modifiedItem, "包定义id", tousseDefinitionId); JSONUtil.addLogProperty(modifiedItem, "器械包名称", tousseItem.getTousseName()); - int restAmount = MathTools.sub(tousseItem.getAmount(), returnedTousseAmount.get(tousseDefinitionId)).intValue(); + int restAmount = MathTools.sub(tousseItem.getAmount(),entry.getValue()).intValue(); if(restAmount > 0){ JSONUtil.modifyPropertyLog(modifiedItem, "申请数量", tousseItem.getAmount(), restAmount); tousseItem.setAmount(restAmount); @@ -3365,8 +3369,7 @@ */ private void resetWashRecordWorkLoad(Map toReSetWorkloadMap){ if(toReSetWorkloadMap.size() > 0){ - for (Long key : toReSetWorkloadMap.keySet()) { - WashAndDisinfectRecord washRecord = toReSetWorkloadMap.get(key); + for(WashAndDisinfectRecord washRecord : toReSetWorkloadMap.values()){ if (washRecord != null) { washAndDisinfectRecordManager.setWashRecordWorkLoadInfo(washRecord); } @@ -4930,9 +4933,10 @@ if(MapUtils.isEmpty(errorDamageMap)){ return msg.toString(); } - for (Long tousseDefinitionID : errorDamageMap.keySet()) { + for(Entry> entry : errorDamageMap.entrySet()){ + Long tousseDefinitionID = entry.getKey(); TousseDefinition td = tousseDefinitionMap.get(tousseDefinitionID); - List errorDamageDetails = errorDamageMap.get(tousseDefinitionID); + List errorDamageDetails = entry.getValue(); if(CollectionUtils.isEmpty(errorDamageDetails) || td == null){ continue; } @@ -4946,10 +4950,11 @@ details.add(materialErrorDamageDetailVo); materialErrorDamageDetailMap.put(type, details); } - for (String type : materialErrorDamageDetailMap.keySet()) { + for(Entry> entry2 : materialErrorDamageDetailMap.entrySet()){ + String type = entry2.getKey(); if(StringUtils.equals(type, MaterialErrorDamageDetail.TYPE_ERROR)){ msg.append(td.getName() + "丢失:"); - List originalDetails = materialErrorDamageDetailMap.get(type); + List originalDetails = entry2.getValue(); List details = mergeMaterialErrorDamageDetailVoByMaterialDefinitionID(originalDetails); for (MaterialErrorDamageDetailVo materialErrorDamageDetail : details) { String materialName = materialErrorDamageDetail.getMaterialName(); @@ -5005,10 +5010,11 @@ */ private String getMaterialModifyMsg(Map> lastMaterialModifyRecordMap) { StringBuffer tousseMaterialModifyMsg = new StringBuffer(); - for (TousseDefinition tousseDefinition : lastMaterialModifyRecordMap.keySet()) { + for(Entry> entry : lastMaterialModifyRecordMap.entrySet()){ + TousseDefinition tousseDefinition = entry.getKey(); StringBuffer materialModifyMsg = new StringBuffer(); Map materialModifyRecordMap = new HashMap(); - List list = lastMaterialModifyRecordMap.get(tousseDefinition); + List list = entry.getValue(); if(CollectionUtils.isEmpty(list)){ continue; } @@ -5020,12 +5026,13 @@ for (MaterialModifyRecord materialModifyRecord : list) { materialModifyRecordMap.put(materialModifyRecord.getMaterialDefinitionID(), materialModifyRecord); } - for (Long materialDefinitionID : materialModifyRecordMap.keySet()) { + for(Entry entry2 : materialModifyRecordMap.entrySet()){ + Long materialDefinitionID = entry2.getKey(); MaterialDefinition materialDefinition = materialDefinitionMap.get(materialDefinitionID); if(materialDefinition == null){ materialDefinition = (MaterialDefinition) objectDao.getById(MaterialDefinition.class.getSimpleName(), materialDefinitionID); } - MaterialModifyRecord materialModifyRecord = materialModifyRecordMap.get(materialDefinitionID); + MaterialModifyRecord materialModifyRecord = entry2.getValue(); if(materialDefinition == null){ continue; } @@ -5067,10 +5074,10 @@ list.add(materialModifyRecord); materialModifyRecordMap.put(materialModifyRecord.getTousseDefinitionID(), list); } - - for (Long tousseDefinitionID : materialModifyRecordMap.keySet()) { + for(Entry> entry : materialModifyRecordMap.entrySet()){ + Long tousseDefinitionID = entry.getKey(); TousseDefinition td = tousseDefinitionMap.get(tousseDefinitionID); - result.put(td, materialModifyRecordMap.get(tousseDefinitionID)); + result.put(td, entry.getValue()); } return result; @@ -5829,6 +5836,7 @@ } } if(map.size() > 0){ + StringBuffer sbf = new StringBuffer(); for (RecyclingRecordVo vo : recordVos) { Long id = vo.getId(); if(!map.containsKey(id)){ @@ -5838,19 +5846,20 @@ if(MapUtils.isEmpty(tousseNameMap)){ continue; } - - String listOfItems = ""; + sbf.setLength(0); int i = 0; - for (String tousseName : tousseNameMap.keySet()) { - Set barcodes = tousseNameMap.get(tousseName); + for(Entry> entry : tousseNameMap.entrySet()){ + String tousseName = entry.getKey(); + Set barcodes = entry.getValue(); if(i > 0){ - listOfItems += ","; + sbf.append(","); } i++; - listOfItems += tousseName + CssdUtils.splitSetIntoString(barcodes, ",", "", "(", ")"); + sbf.append(tousseName); + sbf.append(CssdUtils.splitSetIntoString(barcodes, ",", "", "(", ")")); } - if(StringUtils.isNotBlank(listOfItems)){ - vo.setListOfItems(listOfItems); + if(sbf.length() > 0){ + vo.setListOfItems(sbf.toString()); } } } @@ -6834,8 +6843,8 @@ } } } - for(Long tdId : tdPrintDataMap.keySet()){ - List printDatas = tdPrintDataMap.get(tdId); + //奇怪的实现方式 优化的话可能需要前台配合 + for(List printDatas : tdPrintDataMap.values()){ for(RecyclingPrintData printData : printDatas){ printData.setSplitCount(printDatas.size()); } @@ -7140,12 +7149,13 @@ private JSONArray buildDepartToussJson(Map> map,JSONArray config){ JSONArray array = new JSONArray(); - for (String departCode : map.keySet()) { + for(Entry> entry : map.entrySet()){ + String departCode = entry.getKey(); JSONObject obj = new JSONObject(); obj.put("departCode", departCode); String showDepart = getShowDepart(config,departCode); if(StringUtils.isBlank(showDepart)){ - List list = map.get(departCode); + List list = entry.getValue(); if(CollectionUtils.isNotEmpty(list)){ showDepart = list.get(0).getDepart(); } @@ -8383,8 +8393,8 @@ } // 汇总 - for (String key : tdIdToJsonMap.keySet()) { - tousseArr.add(tdIdToJsonMap.get(key)); + for (JSONObject obj : tdIdToJsonMap.values()) { + tousseArr.add(obj); } return tousseArr; } @@ -8411,8 +8421,9 @@ // 根据科室分组 Map departToTousseMap = new HashMap(); departToTousseMap = splitTousseByDepart(splitJsonArray); - for (String depart : departToTousseMap.keySet()) { - JSONArray tousseArr = departToTousseMap.get(depart); + for(Entry entry : departToTousseMap.entrySet()){ + String depart = entry.getKey(); + JSONArray tousseArr = entry.getValue(); // 构建回收的jsonParam参数 String jsonParam = ""; jsonParam = bulidJsonParam(tousseArr, JSONObject.fromObject(jsonParamStr)); @@ -8458,9 +8469,10 @@ } List willTerminateItems = new ArrayList(); List splitTousseDefinitionIdList = getSplitTousseDefinitionId(splitJson); - for (Long tousseDefinitionId : tousseItemIdMap.keySet()) { + for(Entry entry : tousseItemIdMap.entrySet()){ + Long tousseDefinitionId = entry.getKey(); if(splitTousseDefinitionIdList.contains(tousseDefinitionId)){ - Long tousseItemId = tousseItemIdMap.get(tousseDefinitionId); + Long tousseItemId = entry.getValue(); if(tousseItemId != null){ willTerminateItems.add(tousseItemId); }