Merge remote-tracking branch 'origin/master'
4 files added
1 files modified
| | |
| | | @Resource
|
| | | private WeatherService weatherService;
|
| | |
|
| | | @Resource |
| | | private QualityDailyService qualityDailyService;
|
| | |
|
| | | /**
|
| | | * Screen login. 大屏登录
|
| | | *
|
| | |
| | | @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 {
|
| | |
| | | Map<String, Object> map = historyService.getActualDataByRegion(parameters);
|
| | | return new ResultBean<Map<String, Object>>(map);
|
| | | }
|
| | |
|
| | | @GetMapping("quality")
|
| | | @ApiOperation(value = "获取优良天数", notes = "获取优良天数")
|
| | | @ApiImplicitParams(value = {
|
| | | @ApiImplicitParam(name = "organizationId",defaultValue = "5", value = "登录账号的组织id", required = true, paramType = "query", dataType = "String")
|
| | | })
|
| | | public ResultBean<Map<String, Object>> getQualityCountDayByRegion(HttpServletRequest request) throws Exception {
|
| | | Map<String, Object> parameters = getParametersStartingWith(request, null);
|
| | | Map<String, Object> map = qualityDailyService.getQualityCountDayByRegion(parameters);
|
| | | return new ResultBean<Map<String, Object>>(map);
|
| | | }
|
| | | }
|
New file |
| | |
| | | package com.moral.mapper;
|
| | |
|
| | | import java.util.Map;
|
| | |
|
| | | public interface QualityDailyMapper {
|
| | |
|
| | | Map<String, Object> getQualityCountDayByRegion(Map<String, Object> parameters);
|
| | |
|
| | | } |
New file |
| | |
| | | package com.moral.service;
|
| | |
|
| | | import java.util.Map;
|
| | |
|
| | | public interface QualityDailyService {
|
| | |
|
| | | Map<String, Object> getQualityCountDayByRegion(Map<String, Object> parameters);
|
| | |
|
| | | }
|
New file |
| | |
| | | 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;
|
| | | }
|
| | |
|
| | | }
|
New file |
| | |
| | | <?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> |