From aa9eeecfa949d2cb7d1fb72f19693b2975be803f Mon Sep 17 00:00:00 2001 From: fengxiang <110431245@qq.com> Date: Wed, 29 Aug 2018 15:25:48 +0800 Subject: [PATCH] 再次最近24小时aqi接口完善 --- src/main/java/com/moral/service/impl/HangzhouAqiServiceImpl.java | 31 ++++++++++++++++++------------- 1 files changed, 18 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/moral/service/impl/HangzhouAqiServiceImpl.java b/src/main/java/com/moral/service/impl/HangzhouAqiServiceImpl.java index 0403039..7e01d91 100644 --- a/src/main/java/com/moral/service/impl/HangzhouAqiServiceImpl.java +++ b/src/main/java/com/moral/service/impl/HangzhouAqiServiceImpl.java @@ -8,6 +8,7 @@ import com.moral.mapper.HangzhouAqiMapper; import com.moral.mapper.OrganizationMapper; import com.moral.service.HangzhouAqiService; +import org.apache.commons.collections.CollectionUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -24,29 +25,28 @@ private OrganizationMapper organizationMapper; @Resource private HangzhouAqiMapper hangzhouAqiMapper; + + public List<Map> queryAqiOfTimePeriod(String code,TimePeriod timePeriod) { + return hangzhouAqiMapper.selectAqisByCodeAndTimePeriod(code,timePeriod); + } /** * ������������id������������24������������aqi������ * @param orgId * @return ���������������24���������������������������������������0 */ @Override - public List<Map> queryAqi24Hours(Integer orgId){ - return queryAqi24Hours(orgId,false); - } - private List<Map> queryAqi24Hours(Integer orgId,boolean isGetCity) { + public List<Map> queryAqi24Hours(Integer orgId) { List<Map> aqi24HoursValues = new ArrayList<>(24); Date now = ReportTimeFormat.getFormatDate(ReportTimeFormat.HOUR_FORMAT); Date start = ReportTimeFormat.dateCalc(now, TimeUnits.HOUR,-24); Date end = ReportTimeFormat.dateCalc(now, TimeUnits.MILLISECOND,-1);; TimePeriod timePeriod = new TimePeriod(start,end,TimeUnits.HOUR); - Integer code = getCode(orgId,isGetCity); - if(code == null) { - throw new BusinessException("citeCode or areaCode is null;"); - } - List<Map> aqis = hangzhouAqiMapper.selectAqisByCodeAndTimePeriod(code.toString(),timePeriod); + Integer code = getCode(orgId,false); + List<Map> aqis = queryAqiOfTimePeriod(code.toString(),timePeriod); List<String> timeList = ReportTimeFormat.makeTimeList(timePeriod); - if(aqis!=null && aqis.size()==0 && !isGetCity) { - return queryAqi24Hours(orgId,true); + if(CollectionUtils.isEmpty(aqis)) { + code = getCode(orgId,true); + aqis = queryAqiOfTimePeriod(code.toString(),timePeriod); } int mTemp = 0; for(int n =0;n<timeList.size();n++) { @@ -71,10 +71,15 @@ private Integer getCode(Integer orgId,boolean isGetCityCode) { Organization org = organizationMapper.selectByPrimaryKey(orgId); + Integer code = null; if(isGetCityCode) { - return org.getCityCode(); + code = org.getCityCode(); }else{ - return org.getAreaCode()!=null? org.getAreaCode() : org.getCityCode(); + code = org.getAreaCode(); } + if(code == null) { + throw new BusinessException("citeCode or areaCode is null;"); + } + return code; } } -- Gitblit v1.8.0