From 9437c74510c25be9d2413821c65fcf6ca4e6d21a Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Fri, 31 Aug 2018 08:35:26 +0800
Subject: [PATCH] 获取优良天数
---
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