Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/vo/ExpressRecyclingVo.java =================================================================== diff -u -r12876 -r15695 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/vo/ExpressRecyclingVo.java (.../ExpressRecyclingVo.java) (revision 12876) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/vo/ExpressRecyclingVo.java (.../ExpressRecyclingVo.java) (revision 15695) @@ -13,6 +13,13 @@ private String depart; + private String departCoding; + + /** + * 科室分组Id + */ + private String departGroupId; + private Date applicationTime; private String tousseName; @@ -115,5 +122,21 @@ public void setTousseDefinitionID(Long tousseDefinitionID) { this.tousseDefinitionID = tousseDefinitionID; } - + + public String getDepartCoding() { + return departCoding; + } + + public void setDepartCoding(String departCoding) { + this.departCoding = departCoding; + } + + public String getDepartGroupId() { + return departGroupId; + } + + public void setDepartGroupId(String departGroupId) { + this.departGroupId = departGroupId; + } + } Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/action/RecyclingRecordAction.java =================================================================== diff -u -r15623 -r15695 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/action/RecyclingRecordAction.java (.../RecyclingRecordAction.java) (revision 15623) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/action/RecyclingRecordAction.java (.../RecyclingRecordAction.java) (revision 15695) @@ -1037,6 +1037,9 @@ List quickRecyclingList = new ArrayList(); String ids = ""; if(tousseItems != null){ + + List groups = departmentGroupManager.getAllGroups(); + Map departCodingToGroupIdMap = new HashedMap(); for (TousseItem item : tousseItems) { Integer recyclingAmount = item.getRecyclingAmount(); if(recyclingAmount == null){ @@ -1058,12 +1061,14 @@ vo.setIsCleanedEntirely(StringUtils.isBlank(item.getIsCleanedEntirely())?"是":item.getIsCleanedEntirely()); vo.setIsApplyEntireTousse(StringUtils.isBlank(item.getIsApplyEntireTousse())?"是":item.getIsApplyEntireTousse()); vo.setTousseType(item.getTousseType()); + vo.setDepartCoding(invoicePlan.getDepartCoding()); + vo.setDepartGroupId(getDepartGroupId(vo.getDepartCoding(),groups,departCodingToGroupIdMap)); quickRecyclingList.add(vo); } } } JSONArray jsonArray = JSONArray.fromObject(quickRecyclingList); - +// System.out.println(jsonArray.toString()); StrutsResponseUtils.output(jsonArray); if(StringUtils.isNotBlank(ids)){ @@ -1073,6 +1078,44 @@ return null; } + /** + * 获取科室所属回收分组 + * @param departCoding + * @param groups + * @param departCodingToGroupIdMap + * @return + */ + private String getDepartGroupId(String departCoding, + List groups, + Map departCodingToGroupIdMap) { + String groupId = ""; + String departGroupId = departCodingToGroupIdMap.get(departCoding); + if (departGroupId != null) { + groupId = departGroupId; + } else { + if (StringUtils.isNotBlank(departCoding) && groups != null) { + for (DepartmentGroup departmentGroup : groups) { + String codings = departmentGroup.getDepartCodes(); + if (StringUtils.isNotBlank(codings)) { + String[] codingArray = codings.split(";"); + for (String coding : codingArray) { + //一个科室有可能属于多个分组的情况 + if (departCoding.equals(coding)) { + if(StringUtils.isNotBlank(groupId)){ + groupId += ";"; + } + groupId += departmentGroup.getId().toString(); + + departCodingToGroupIdMap.put(departCoding,groupId); + } + } + } + } + } + } + return groupId; + } + public void loadPoItems(){ //String id = StrutsParamUtils.getPraramValue("id", null); String idArray = StrutsParamUtils.getPraramValue("ids", null);