Index: ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingForm.js =================================================================== diff -u -r15027 -r15119 --- ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingForm.js (.../sterilizationLoadingForm.js) (revision 15027) +++ ssts-web/src/main/webapp/disinfectsystem/sterilizationmanager/sterilizationrecord/sterilizationLoadingForm.js (.../sterilizationLoadingForm.js) (revision 15119) @@ -645,12 +645,22 @@ baseParams : {basketBarcode : ''}, reader: new Ext.data.JsonReader({ fields : [ + {name : 'depart'}, {name : 'tousseDefinitionName'}, {name : 'count'} ] }) }); + //篮筐物品统计信息列头数组 + var stasticsGridColumnArray = []; + if(sstsConfig.showDepartOfTousseInstanceSterile == true){ + stasticsGridColumnArray.push({header: "科室", width: 250, sortable: true, dataIndex: 'depart'}); + } + stasticsGridColumnArray.push({header: "器械包名称", width: 250, sortable: true, dataIndex: 'tousseDefinitionName'}); + stasticsGridColumnArray.push({header: "数量", width: 250, sortable: true, dataIndex: 'count'}); + + //篮筐物品统计信息grid var stasticsGrid = new Ext.grid.GridPanel({ id : 'stasticsGrid', title : '篮筐物品统计信息', @@ -661,10 +671,7 @@ viewConfig: { forceFit:true }, - columns: [ - {header: "器械包名称", width: 250, sortable: true, dataIndex: 'tousseDefinitionName'}, - {header: "数量", width: 250, sortable: true, dataIndex: 'count'} - ], + columns: stasticsGridColumnArray, sm : new Ext.grid.RowSelectionModel({singleSelect:true}) }); Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/action/TousseInstanceAction.java =================================================================== diff -u -r15038 -r15119 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/action/TousseInstanceAction.java (.../TousseInstanceAction.java) (revision 15038) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/action/TousseInstanceAction.java (.../TousseInstanceAction.java) (revision 15119) @@ -686,45 +686,48 @@ } } + /** + * 灭菌篮筐物品明细统计 + */ public void getBasketStatics() { try { String basketBarcode = StrutsParamUtils.getPraramValue( "basketBarcode", ""); - StringBuffer jsonStr = new StringBuffer(); + JSONArray jsonArray = new JSONArray(); logger.debug("篮筐内器械包统计:"); Set tousses = tousseInstanceManager .getReviewedTousseInstanceByBasket(basketBarcode); Map staticsMap = new HashMap(); for (TousseInstance tousseInstance : tousses) { String tousseName = tousseInstance.getShowTousseName(); - int count = 0; - if (staticsMap.containsKey(tousseName)) { - count = staticsMap.get(tousseName); + String depart = StringUtils.isBlank(tousseInstance.getDepart()) ? "" : tousseInstance.getDepart(); + Integer count = 0; + if (staticsMap.containsKey(depart + ";" + tousseName)) { + count = staticsMap.get(depart + ";" + tousseName); } count++; - staticsMap.put(tousseName, count); + staticsMap.put(depart + ";" + tousseName, count); } - jsonStr.append("["); for (Entry item : staticsMap.entrySet()) { - if (!jsonStr.toString().equals("[")) { - jsonStr.append(","); - } - jsonStr.append("{tousseDefinitionName:'" + item.getKey() - + "',count:" + item.getValue() + "}"); + JSONObject jsonObject = new JSONObject(); + String departAndName = item.getKey(); + jsonObject.put("depart", departAndName.split(";")[0]); + jsonObject.put("tousseDefinitionName", departAndName.split(";")[1]); + jsonObject.put("count", item.getValue()); + jsonArray.add(jsonObject); } - jsonStr.append("]"); HttpServletResponse response = StrutsParamUtils.getResponse(); response.setCharacterEncoding("UTF-8"); PrintWriter out; try { out = response.getWriter(); - out.print(jsonStr.toString()); + out.print(jsonArray); out.close(); } catch (IOException e) { e.printStackTrace(); } } catch (Exception e) { - + e.printStackTrace(); } }