Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/YearWorkloadBean.java =================================================================== diff -u -r37618 -r41091 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/YearWorkloadBean.java (.../YearWorkloadBean.java) (revision 37618) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/YearWorkloadBean.java (.../YearWorkloadBean.java) (revision 41091) @@ -17,9 +17,13 @@ private String columnName;//列名称 - private Integer amount;//数量 + private Integer amount = 0;//数量 private Double price;//价格 + /** + * 是否显示Double的值 + */ + private boolean showDoubleValue = false; public YearWorkloadBean(){} public YearWorkloadBean(Integer rowSequence,String month,Integer sequence,String columnName,Integer amount){ this.rowSequence = rowSequence; @@ -34,6 +38,7 @@ this.columnSequence = sequence; this.columnName = columnName; this.price = price; + this.showDoubleValue = true; } public Integer getRowSequence() { return rowSequence; @@ -86,7 +91,16 @@ */ public YearWorkloadShowBean getShowBean(){ YearWorkloadShowBean bean = new YearWorkloadShowBean(); - bean.setAmount(Integer.toString(amount)); + if(this.showDoubleValue){ + bean.setShowDoubleValue(showDoubleValue); + if(price == null){ + bean.setDoubleValue("0.00"); + }else{ + bean.setDoubleValue(String.format("%.2f", price)); + } + }else{ + bean.setAmount(amount == null? "0":Integer.toString(amount)); + } bean.setColumnName(columnName); bean.setColumnSequence(columnSequence); bean.setMonth(month); Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/YearWorkloadShowBean.java =================================================================== diff -u -r37618 -r41091 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/YearWorkloadShowBean.java (.../YearWorkloadShowBean.java) (revision 37618) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/YearWorkloadShowBean.java (.../YearWorkloadShowBean.java) (revision 41091) @@ -29,6 +29,16 @@ * 数量 */ private String amount; + /** + * double类型的值 + */ + private String doubleValue; + + /** + * 是否显示价格在amount中 + * 主要用于数据是double类型的 + */ + private boolean showDoubleValue = false; public Integer getRowSequence() { return rowSequence; } @@ -66,4 +76,22 @@ public void setAmount(String amount) { this.amount = amount; } + + public String getDoubleValue() { + return doubleValue; + } + + public void setDoubleValue(String doubleValue) { + this.doubleValue = doubleValue; + } + + public boolean isShowDoubleValue() { + return showDoubleValue; + } + + public void setShowDoubleValue(boolean showDoubleValue) { + this.showDoubleValue = showDoubleValue; + } + + } Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/util/YearWorkloadReportHelper.java =================================================================== diff -u -r38754 -r41091 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/util/YearWorkloadReportHelper.java (.../YearWorkloadReportHelper.java) (revision 38754) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/util/YearWorkloadReportHelper.java (.../YearWorkloadReportHelper.java) (revision 41091) @@ -32,6 +32,8 @@ import com.forgon.disinfectsystem.common.CssdUtils; import com.forgon.disinfectsystem.entity.adverseeventrecord.AdverseEventRecord; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition; +import com.forgon.disinfectsystem.entity.invoicemanager.Invoice; +import com.forgon.disinfectsystem.entity.invoicemanager.InvoiceItem; import com.forgon.disinfectsystem.entity.invoicemanager.InvoicePlan; import com.forgon.disinfectsystem.entity.sterilizationmanager.sterilizationrecord.SterilizationRecord; import com.forgon.disinfectsystem.entity.washanddisinfectmanager.washanddisinfectrecord.WashAndDisinfectRecord; @@ -79,24 +81,24 @@ startDay = year + "-01-01 00:00:00"; endDay = DataIndex.getNextYear(year) + " 00:00:00"; } - List yearWorkloadBeans = getYearWorkloadReport(null,mmOrdd, startDay, endDay, year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + List yearWorkloadBeans = getYearWorkloadReport(null,mmOrdd, startDay, endDay, year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); List showBeans = new ArrayList(); for (YearWorkloadBean bean : yearWorkloadBeans) { showBeans.add(bean.getShowBean()); } return showBeans; } else if("环比".equals(queryType)){ - return monthOrYearComparison(year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + return monthOrYearComparison(year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); }else if("同比".equals(queryType)){ String comparisonType = requestParameters.get("comparisonType"); if("上半年对比".equals(comparisonType)){ - return comparisonInTheFirstHalfOfTheYear(year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + return comparisonInTheFirstHalfOfTheYear(year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); }else if("季度对比".equals(comparisonType)){ - return quarterlyComparison(year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + return quarterlyComparison(year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); }else if("月度对比".equals(comparisonType)){ - return monthlyComparison(year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + return monthlyComparison(year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); }else if("年度对比".equals(comparisonType)){ - return yearComparison(year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + return yearComparison(year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); }else{ throw new SystemException("对比类型参数异常:" + comparisonType); } @@ -113,7 +115,7 @@ * @param parametMap 报表参数 * @return */ - private List yearComparison(String year, String queryMonth, String querySupplyRoom,boolean isAddEndoscopic,boolean isStatisticDisposableGoodsSendAmount, Map parametMap){ + private List yearComparison(String year, String queryMonth, String querySupplyRoom,boolean isAddEndoscopic,boolean isStatisticDisposableGoodsSendAmount, Map parametMap, String queryType){ int lastYear = Integer.parseInt(year) - 1; parametMap.put("title", year + "年消毒供应中心年度工作量统计报表同比对比"); Set dateStrSet = new HashSet(); @@ -135,7 +137,7 @@ dateStrSet.add(lastYear + "-11"); dateStrSet.add(lastYear + "-12"); - List lastBeans = getYearWorkloadReport(dateStrSet, "mm",lastStartDate,lastEndDate,lastYear+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + List lastBeans = getYearWorkloadReport(dateStrSet, "mm",lastStartDate,lastEndDate,lastYear+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); dateStrSet.clear(); @@ -152,7 +154,7 @@ dateStrSet.add(year + "-11"); dateStrSet.add(year + "-12"); - List beans = getYearWorkloadReport(dateStrSet, "mm",startDate,endDate,year+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + List beans = getYearWorkloadReport(dateStrSet, "mm",startDate,endDate,year+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); fillingInVacantBeans(beans, lastBeans, lastYear+"年", year+"年"); List beanSum = getSumBeans(beans, year+"年"); List lastBeanSum = getSumBeans(lastBeans, lastYear+"年"); @@ -167,7 +169,7 @@ * @param parametMap 报表参数 * @return */ - private List monthlyComparison(String year, String queryMonth, String querySupplyRoom,boolean isAddEndoscopic,boolean isStatisticDisposableGoodsSendAmount, Map parametMap){ + private List monthlyComparison(String year, String queryMonth, String querySupplyRoom,boolean isAddEndoscopic,boolean isStatisticDisposableGoodsSendAmount, Map parametMap, String queryType){ String month = queryMonth; int lastYear = Integer.parseInt(year) - 1; parametMap.put("title", year + "年"+ month +"月消毒供应中心年度工作量统计报表同比对比"); @@ -190,12 +192,12 @@ } } dateStrSet.add(lastYear + "-" + month); - List lastBeans = getYearWorkloadReport(dateStrSet, "mm",lastStartDate,lastEndDate,lastYear+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + List lastBeans = getYearWorkloadReport(dateStrSet, "mm",lastStartDate,lastEndDate,lastYear+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); dateStrSet.clear(); dateStrSet.add(year + "-" + month); - List beans = getYearWorkloadReport(dateStrSet, "mm",startDate,endDate,year+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + List beans = getYearWorkloadReport(dateStrSet, "mm",startDate,endDate,year+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); fillingInVacantBeans(beans, lastBeans, lastYear+"年"+ month +"月", year+"年"+ month +"月"); List lastBeanSum = getSumBeans(lastBeans, lastYear+"年"+ month +"月"); List beanSum = getSumBeans(beans, year+"年"+ month +"月"); @@ -213,7 +215,7 @@ * @param parametMap 报表参数 * @return */ - private List quarterlyComparison(String year, String queryMonth, String querySupplyRoom,boolean isAddEndoscopic,boolean isStatisticDisposableGoodsSendAmount, Map parametMap){ + private List quarterlyComparison(String year, String queryMonth, String querySupplyRoom,boolean isAddEndoscopic,boolean isStatisticDisposableGoodsSendAmount, Map parametMap, String queryType){ String month = queryMonth; int lastYear = Integer.parseInt(year) - 1; String quarterlyName = null; @@ -283,9 +285,9 @@ endDate = lastYear + 2 + "-01-01 00:00:00"; } - List lastBeans = getYearWorkloadReport(lastDateStrSet, "mm",lastStartDate,lastEndDate,lastYear+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + List lastBeans = getYearWorkloadReport(lastDateStrSet, "mm",lastStartDate,lastEndDate,lastYear+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); - List beans = getYearWorkloadReport(dateStrSet, "mm",startDate,endDate,year+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + List beans = getYearWorkloadReport(dateStrSet, "mm",startDate,endDate,year+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); fillingInVacantBeans(beans, lastBeans, lastYear+quarterlyName, year+quarterlyName); List lastBeanSum = getSumBeans(lastBeans, lastYear+quarterlyName); List beanSum = getSumBeans(beans, year+quarterlyName); @@ -301,7 +303,7 @@ * @param parametMap 报表参数 * @return */ - private List comparisonInTheFirstHalfOfTheYear(String year, String queryMonth, String querySupplyRoom,boolean isAddEndoscopic,boolean isStatisticDisposableGoodsSendAmount, Map parametMap){ + private List comparisonInTheFirstHalfOfTheYear(String year, String queryMonth, String querySupplyRoom,boolean isAddEndoscopic,boolean isStatisticDisposableGoodsSendAmount, Map parametMap, String queryType){ parametMap.put("title", year + "年上半年消毒供应中心工作量及收入统计报表同比对比"); int lastYear = Integer.parseInt(year) - 1; String lastStartDate = lastYear + "-01-01 00:00:00"; @@ -313,7 +315,7 @@ dateStrSet.add(lastYear + "-04"); dateStrSet.add(lastYear + "-05"); dateStrSet.add(lastYear + "-06"); - List lastBeans = getYearWorkloadReport(dateStrSet, "mm",lastStartDate,lastEndDate,lastYear+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + List lastBeans = getYearWorkloadReport(dateStrSet, "mm",lastStartDate,lastEndDate,lastYear+"", queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); String startDate = year + "-01-01 00:00:00"; @@ -325,7 +327,7 @@ dateStrSet.add(year + "-04"); dateStrSet.add(year + "-05"); dateStrSet.add(year + "-06"); - List beans = getYearWorkloadReport(dateStrSet, "mm",startDate,endDate,year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + List beans = getYearWorkloadReport(dateStrSet, "mm",startDate,endDate,year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); fillingInVacantBeans(beans, lastBeans, lastYear + "上半年", year + "上半年"); List beanSum = getSumBeans(beans,year + "上半年"); List lastSums = getSumBeans(lastBeans,lastYear + "上半年"); @@ -394,7 +396,7 @@ * @param parametMap 报表参数 * @return */ - private List monthOrYearComparison(String year, String queryMonth, String querySupplyRoom,boolean isAddEndoscopic,boolean isStatisticDisposableGoodsSendAmount, Map parametMap){ + private List monthOrYearComparison(String year, String queryMonth, String querySupplyRoom,boolean isAddEndoscopic,boolean isStatisticDisposableGoodsSendAmount, Map parametMap, String queryType){ String startTime = null; String endTime = null; Set dateStrSet = new HashSet(); @@ -409,14 +411,14 @@ dateStrSet.add(lastMonth); parametMap.put("title", year + "年"+ (StringUtils.isBlank(queryMonth)?"":queryMonth+"月份") +"消毒供应中心工作量及收入统计报表"); - List beans = getYearWorkloadReport(dateStrSet, "mm",startTime,endTime,lastYear, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + List beans = getYearWorkloadReport(dateStrSet, "mm",startTime,endTime,lastYear, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); startTime = yearMonth + "-01 00:00:00"; endTime = nextMonth+ "-01 00:00:00"; queryMonth = lastMonth.substring(lastMonth.indexOf("-")+1); dateStrSet.clear(); dateStrSet.add(yearMonth); - List lastBeans = getYearWorkloadReport(dateStrSet, "mm",startTime,endTime,year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + List lastBeans = getYearWorkloadReport(dateStrSet, "mm",startTime,endTime,year, queryMonth, querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); fillingInVacantBeans(beans, lastBeans, lastMonth, yearMonth); List thisYearWorkloadBeans = getSumBeans(beans, lastMonth); List lastYearWorkloadBeans = getSumBeans(lastBeans, yearMonth); @@ -462,7 +464,7 @@ dateStrSet.add(year + "-11"); dateStrSet.add(year + "-12"); parametMap.put("title", year + "年消毒供应中心工作量及收入统计报表"); - List beans = getYearWorkloadReport(dateStrSet, "mm",startTime,endTime,year, "", querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + List beans = getYearWorkloadReport(dateStrSet, "mm",startTime,endTime,year, "", querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); dateStrSet.clear(); dateStrSet.add(lastYear + "-01"); @@ -479,7 +481,7 @@ dateStrSet.add(lastYear + "-12"); startTime = lastYear + "-01-01 00:00:00"; endTime = year + "-01-01 00:00:00"; - List beans2 = getYearWorkloadReport(dateStrSet, "mm",startTime,endTime,lastYearStr, "", querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap); + List beans2 = getYearWorkloadReport(dateStrSet, "mm",startTime,endTime,lastYearStr, "", querySupplyRoom, isAddEndoscopic, isStatisticDisposableGoodsSendAmount, parametMap, queryType); List thisYearWorkloadBeans = getSumBeans(beans, year); List lastYearWorkloadBeans = getSumBeans(beans2, lastYearStr); fillingInVacantBeans(thisYearWorkloadBeans, lastYearWorkloadBeans, year, lastYearStr); @@ -617,10 +619,11 @@ * @param isAddEndoscopic 是否添加腔镜器械,下收下送次数统计 * @param isStatisticDisposableGoodsSendAmount 是否统计一次性物品发放数量 */ - public List getYearWorkloadReport(Set dateStrSet,String mmOrdd ,String startDay, String endDay, String year, String queryMonth, String querySupplyRoom,boolean isAddEndoscopic,boolean isStatisticDisposableGoodsSendAmount, Map parametMap) { + public List getYearWorkloadReport(Set dateStrSet,String mmOrdd ,String startDay, String endDay, String year, String queryMonth, String querySupplyRoom,boolean isAddEndoscopic,boolean isStatisticDisposableGoodsSendAmount, Map parametMap, String queryType) { //读取配置的数据 String dataConfigStr = CssdUtils.getSystemSetConfigByName("dataIndexConfigurationOfYearWorkloadReport"); JSONArray dataConfigArr = null; + boolean enableIntegralOfTousseDefinition = CssdUtils.getSystemSetConfigByNameBool("enableIntegralOfTousseDefinition", false); if(StringUtils.isBlank(dataConfigStr)){ dataConfigStr = "[{ \"dataIndexNameForDisplay\": \"处理器械总件数\", \"dataIndexSource\": \"处理器械总件数\" }" + ",{ \"dataIndexNameForDisplay\": \"处理外来手术器械总件数\", \"dataIndexSource\": \"处理外来手术器械总件数\" }" @@ -644,6 +647,12 @@ JSONObject dataConfig = (JSONObject)dataConfigArr.get(i); String dataIndexSource = dataConfig.optString("dataIndexSource"); dataIndexSources.add(dataIndexSource); + if("积分".equals(dataIndexSource)){ + if(!"汇总".equals(queryType) || !enableIntegralOfTousseDefinition || "dd".equals(mmOrdd)){ + continue; + } + } + if("灭菌器使用炉次".equals(dataIndexSource)){ sterilizerUseCountCn = dataConfig.optString("dataIndexNameForDisplay"); } @@ -712,6 +721,7 @@ Map packAmountMap = new HashMap();//装配数量map Map disinfectionPackAmountMap = new HashMap();//消毒物品装配数量map Map dressingPackAmountMap = new HashMap();//敷料包装配数量map + Map integralMap = new HashMap();//积分map SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); Map amountTotalMap = new HashMap(); @@ -1275,7 +1285,33 @@ DatabaseUtil.closeResultSetAndStatement(adverseEventRecordRs); } } - + if("汇总".equals(queryType) && enableIntegralOfTousseDefinition && !"dd".equals(mmOrdd) && dataIndexSources.contains("积分")){ + monthlyStr = dateQueryAdapter.dateConverAdapter3("i.sendTime",mmOrdd); + String integralSql = " select sum(td.integral) integral," + + monthlyStr + + " monthStr from "+ Invoice.class.getSimpleName() +" i join " + + InvoiceItem.class.getSimpleName() + + " ii on i.id = ii.invoice_id join " + + TousseDefinition.class.getSimpleName() + + " td on td.id=ii.tousseDefinitionId where i.orgUnitCoding='" + querySupplyRoom + "' " + + " and i.settleaccountsdepart is not null and i.sendTime between " + startDay + " and " + endDay + + " group by " + + monthlyStr; + ResultSet rs = null; + try { + logger.debug("消毒供应中心年度工作量统计报表积分查询:"+integralSql); + rs = objectDao.executeSql(integralSql); + while (rs.next()) { + Double integral = rs.getDouble("integral"); + String month = DateTools.getSpliceZeroString(rs.getString("monthStr")); + integralMap.put(month, integral); + } + } catch (SQLException e) { + e.printStackTrace(); + }finally { + DatabaseUtil.closeResultSetAndStatement(rs); + } + } //构建list,主要是没数据的月份也需要有YearWorkloadBean对象返回,所以没有在resultset里添加 Set removeTitles = new HashSet(); Date nowDate = new Date(); @@ -1366,6 +1402,16 @@ }else{ removeTitles.add(dataIndexSource); } + }else if("汇总".equals(queryType) && enableIntegralOfTousseDefinition && !"dd".equals(mmOrdd) && "积分".equals(dataIndexSource)){ + if(MapUtils.isNotEmpty(integralMap)){ + if(integralMap.containsKey(month)){ + priceTotalMap.put(dataIndexNameForDisplay, MathTools.add(integralMap.get(month) + , priceTotalMap.get(dataIndexNameForDisplay)).doubleValue()); + } + addYearWorkLoadBeanPrice(i, month, integralMap, num, dataIndexNameForDisplay, list, yearMonth); + }else{ + removeTitles.add(dataIndexSource); + } }else if("复用性灭菌物品总件数".equals(dataIndexSource)){ if(MapUtils.isNotEmpty(sterileMap)){ if(sterileMap.containsKey(month)){ @@ -1551,6 +1597,11 @@ if(removeTitles.contains(dataIndexSource)){ continue; } + if(dataIndexSource.contains("积分")){ + if(!"汇总".equals(queryType) || !"mm".equals(mmOrdd) || !enableIntegralOfTousseDefinition){ + continue; + } + } if("灭菌器使用炉次".equals(dataIndexSource)){ for (String ownGroup : sterilizerUseAmountMap.keySet()) { JSONObject obj = new JSONObject(); @@ -1614,6 +1665,20 @@ obj.put("title", key); titleArr.add(obj); } + } else if("汇总".equals(queryType) && enableIntegralOfTousseDefinition && !"dd".equals(mmOrdd) && "积分".equals(dataIndexSource)){ + if(integralMap.size() == 0){ + continue; + } + JSONObject obj = new JSONObject(); + String key = dataConfig.optString("dataIndexNameForDisplay"); + if(sum){ + obj.put("title", key); + obj.put("sumPrice", priceTotalMap.get(dataConfig.optString("dataIndexNameForDisplay"))); + titleArr.add(obj); + }else if(!findTitle(titleArr, key)){ + obj.put("title", key); + titleArr.add(obj); + } } else { JSONObject obj = new JSONObject(); String key = dataConfig.optString("dataIndexNameForDisplay");