From fcc1199f49b35e1b3a55d406c7b11e2990854698 Mon Sep 17 00:00:00 2001 From: litao Date: Wed, 7 Jun 2017 09:38:06 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E5=A4=8D~?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/service/impl/ReportServiceImpl.java | 72 ++++++++++------------ 1 file changed, 31 insertions(+), 41 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java index 8e72cd3..d32cdbd 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/ReportServiceImpl.java @@ -447,6 +447,8 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService List> couponReport = new ArrayList<>(); List hospitalId = (List) param.get("hospitalId"); + List xAxis = new ArrayList<>(); + if(CollectionUtils.isNotEmpty(hospitalId)) { List> hospitalNames = couponMapper.findHospitalNames(hospitalId); if(CollectionUtils.isNotEmpty(hospitalNames)) { @@ -456,7 +458,7 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService Map usedInfo = couponMapper.findHospitalUsedInfo(param); Map sendInfo = couponMapper.findHospitalSendInfo(param); - Map tempMap = packCouponMap(sendInfo, usedInfo, hNameMap, hid); + Map tempMap = packCouponMap(sendInfo, usedInfo, hNameMap, hid, xAxis, param); if(MapUtils.isNotEmpty(tempMap)) { couponReport.add(tempMap); } @@ -475,11 +477,18 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService } } } - - List xAxis = new ArrayList<>(); } - return RespBuilder.buildSuccess(couponReport); + ReportModel reportModel = new ReportModel(); + reportModel.setxAxis(xAxis); + reportModel.setData(Arrays.asList("发放券数", "使用券数")); + reportModel.setSeries(createSeries(couponReport)); + reportModel.doMerge(); + + Map titleMap = parseTitle(couponReport); + + return RespBuilder.buildSuccess("couponReport", couponReport, "couponReportMap", titleMap, "reportModel", reportModel); + // return RespBuilder.buildSuccess(couponReport); // if(org.apache.commons.collections.CollectionUtils.isNotEmpty(couponReport) && // org.apache.commons.collections.CollectionUtils.isNotEmpty(usedInfo)) { // if(CollectionUtils.putAll(couponReport, usedInfo, "used_hospital_id", "used_hospital_id")) { @@ -514,7 +523,7 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService // return RespBuilder.buildSuccess("couponReport", couponReport, "couponReportMap", titleMap, "reportModel", reportModel); } - private Map packCouponMap(Map sendInfo, Map usedInfo, Map hNameMap, String hid) { + private Map packCouponMap(Map sendInfo, Map usedInfo, Map hNameMap, String hid, List xAxis, Map param) { if(MapUtils.isEmpty(sendInfo) && MapUtils.isEmpty(usedInfo)) return null; boolean flag = false; /** 本条数据是否有效 sendInfo和usedInfo其中一个有id就有效 */ @@ -560,6 +569,14 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService tempMap.put("people_send_count", 0); tempMap.put("coupon_send_count", 0); } + + if("0".equals(tempMap.get("people_send_count").toString()) && + "0".equals(tempMap.get("coupon_send_count").toString())&& + "0".equals(tempMap.get("user_used_count").toString())&& + "0".equals(tempMap.get("coupon_used_count").toString())){ + return null; + } + tempMap.put("name", hNameMap.get(hid)); tempMap.put("hospitalId", hid); @@ -568,47 +585,20 @@ public class ReportServiceImpl extends BaseServiceImpl implements IReportService tempMap.put("province_id", provinceId); tempMap.put("province_name", findName(provinceId)); tempMap.put("city_name", findName(cityId)); - tempMap.put("area_name", findName(areaId)); + String areaName = findName(areaId); + tempMap.put("area_name", areaName); + + /** 没传区县 报表数据就为区域的 */ + if(param.get("area_id") == null) { + xAxis.add(areaName); + } else { /** 传了区县 报表数据就为医院 */ + xAxis.add((String) hNameMap.get(hid)); + } return tempMap; } return null; } - // 把发放人数/发放券数/使用人数/使用券数为null的设置为0 - private void transNullToZero(List> couponReport) { - if(org.apache.commons.collections.CollectionUtils.isNotEmpty(couponReport)) { - for (Map coupon : couponReport) { - if(coupon.get("coupon_send_count") == null) { - coupon.put("coupon_send_count", 0); - } - if(coupon.get("coupon_used_count") == null) { - coupon.put("coupon_used_count", 0); - } - if(coupon.get("people_send_count") == null) { - coupon.put("people_send_count", 0); - } - if(coupon.get("user_used_count") == null) { - coupon.put("user_used_count", 0); - } - } - } - } - - private void transNullToZero(List> couponReport, Map titleMap) { - if(org.apache.commons.collections.CollectionUtils.isNotEmpty(couponReport) - && org.apache.commons.collections.MapUtils.isNotEmpty(titleMap)) - for (Map coupon : couponReport) { - Set set = titleMap.keySet(); - for (String s : set) { - if(coupon.get(s) == null) { - coupon.put(s, 0); - } - } - } - } - - - /** * 根据省市区县过滤医院 * @param param -- 1.8.3.1