From 86a0feaf0f3277a78e68e4ebfda4ee1b92959b49 Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Tue, 04 Sep 2018 09:55:13 +0800
Subject: [PATCH] 优良天数
---
src/main/java/com/moral/service/QualityDailyService.java | 9 ++++
src/main/java/com/moral/mapper/QualityDailyMapper.java | 9 ++++
src/main/resources/mapper/QualityDailyMapper.xml | 16 ++++++++
src/main/java/com/moral/controller/ScreenController.java | 9 ++--
src/main/java/com/moral/service/impl/QualityDailyServiceImpl.java | 45 ++++++++++++++++++++++
5 files changed, 84 insertions(+), 4 deletions(-)
diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java
index 91f21b1..87ca7e3 100644
--- a/src/main/java/com/moral/controller/ScreenController.java
+++ b/src/main/java/com/moral/controller/ScreenController.java
@@ -110,6 +110,9 @@
@Resource
private WeatherService weatherService;
+ @Resource
+ private QualityDailyService qualityDailyService;
+
/**
* Screen login. ������������
*
@@ -720,7 +723,7 @@
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "accountId",defaultValue = "1", value = "���������������id", required = true, paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "sensorKey",defaultValue = "e1,e2,e3", value = "���������key,���������������������������", required = true, paramType = "query", dataType = "String"),
- @ApiImplicitParam(name = "time",defaultValue = "", value = "������(long���������������)", required = false, paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "time",defaultValue = "", value = "������(long������������)", required = false, paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "interval",defaultValue = "30", value = "���������������������", required = true, paramType = "query", dataType = "Integer"),
})
public ResultBean<Map<String, Object>> getActualDataByRegion(HttpServletRequest request) throws Exception {
@@ -736,9 +739,7 @@
})
public ResultBean<Map<String, Object>> getQualityCountDayByRegion(HttpServletRequest request) throws Exception {
Map<String, Object> parameters = getParametersStartingWith(request, null);
- //Map<String, Object> map = hangzhouAqiService.getQualityCountDayByRegion(parameters);
- Map<String, Object> map = new HashMap<String, Object>();
- map.put("count", 136);
+ Map<String, Object> map = qualityDailyService.getQualityCountDayByRegion(parameters);
return new ResultBean<Map<String, Object>>(map);
}
}
diff --git a/src/main/java/com/moral/mapper/QualityDailyMapper.java b/src/main/java/com/moral/mapper/QualityDailyMapper.java
new file mode 100644
index 0000000..db38038
--- /dev/null
+++ b/src/main/java/com/moral/mapper/QualityDailyMapper.java
@@ -0,0 +1,9 @@
+package com.moral.mapper;
+
+import java.util.Map;
+
+public interface QualityDailyMapper {
+
+ Map<String, Object> getQualityCountDayByRegion(Map<String, Object> parameters);
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/moral/service/QualityDailyService.java b/src/main/java/com/moral/service/QualityDailyService.java
new file mode 100644
index 0000000..ce4b3b1
--- /dev/null
+++ b/src/main/java/com/moral/service/QualityDailyService.java
@@ -0,0 +1,9 @@
+package com.moral.service;
+
+import java.util.Map;
+
+public interface QualityDailyService {
+
+ Map<String, Object> getQualityCountDayByRegion(Map<String, Object> parameters);
+
+}
diff --git a/src/main/java/com/moral/service/impl/QualityDailyServiceImpl.java b/src/main/java/com/moral/service/impl/QualityDailyServiceImpl.java
new file mode 100644
index 0000000..bf94642
--- /dev/null
+++ b/src/main/java/com/moral/service/impl/QualityDailyServiceImpl.java
@@ -0,0 +1,45 @@
+package com.moral.service.impl;
+
+import java.time.LocalDateTime;
+import java.time.temporal.ChronoUnit;
+import java.time.temporal.TemporalAdjusters;
+import java.util.Map;
+
+import javax.annotation.Resource;
+
+import org.springframework.stereotype.Service;
+import org.springframework.util.ObjectUtils;
+
+import com.moral.entity.Organization;
+import com.moral.mapper.OrganizationMapper;
+import com.moral.mapper.QualityDailyMapper;
+import com.moral.service.QualityDailyService;
+
+@Service
+public class QualityDailyServiceImpl implements QualityDailyService {
+
+ @Resource
+ private QualityDailyMapper qualityDailyMapper;
+
+ @Resource
+ private OrganizationMapper organizationMapper;
+
+ @Override
+ public Map<String, Object> getQualityCountDayByRegion(Map<String, Object> parameters) {
+ LocalDateTime localDateTime = LocalDateTime.now().truncatedTo(ChronoUnit.DAYS);
+ parameters.put("start", localDateTime.with(TemporalAdjusters.firstDayOfYear()));
+ parameters.put("end", localDateTime.with(TemporalAdjusters.firstDayOfNextYear()));
+ Organization organization = organizationMapper.selectByPrimaryKey(Integer.valueOf(parameters.get("organizationId").toString()));
+ Map<String, Object> resultMap = null;
+ if (!ObjectUtils.isEmpty(organization.getAreaCode())) {
+ parameters.put("cityCode", organization.getAreaCode());
+ resultMap = qualityDailyMapper.getQualityCountDayByRegion(parameters);
+ }
+ if (ObjectUtils.isEmpty(resultMap) || "0".equals(resultMap.get("count").toString())) {
+ parameters.put("cityCode", organization.getCityCode());
+ resultMap = qualityDailyMapper.getQualityCountDayByRegion(parameters);
+ }
+ return resultMap;
+ }
+
+}
diff --git a/src/main/resources/mapper/QualityDailyMapper.xml b/src/main/resources/mapper/QualityDailyMapper.xml
new file mode 100644
index 0000000..0e17f92
--- /dev/null
+++ b/src/main/resources/mapper/QualityDailyMapper.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.moral.mapper.QualityDailyMapper">
+ <select id="getQualityCountDayByRegion" resultType="map">
+ SELECT
+ COUNT( * ) count
+ FROM
+ quality_daily
+ <where>
+ time >= #{start}
+ AND time < #{end}
+ AND city_code = #{cityCode}
+ AND quality < 3
+ </where>
+ </select>
+</mapper>
\ No newline at end of file
--
Gitblit v1.8.0