From 2dee01ae6f13a72b1d2ba9ca3d1ffbea72ab513b Mon Sep 17 00:00:00 2001 From: kaiyu <404897439@qq.com> Date: Sat, 09 Oct 2021 08:59:28 +0800 Subject: [PATCH] screen-aqi 增加监测因子对比图接口 --- screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 55 insertions(+), 4 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java index 4ff6a07..0a0e66c 100644 --- a/screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java +++ b/screen-api/src/main/java/com/moral/api/service/impl/SpecialDeviceServiceImpl.java @@ -2,24 +2,34 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; + +import com.moral.api.entity.Organization; import com.moral.api.entity.SpecialDevice; import com.moral.api.entity.SpecialDeviceHistory; +import com.moral.api.mapper.HistorySecondCruiserMapper; import com.moral.api.mapper.HistorySecondSpecialMapper; import com.moral.api.mapper.SpecialDeviceMapper; +import com.moral.api.service.OrganizationService; import com.moral.api.service.SpecialDeviceHistoryService; import com.moral.api.service.SpecialDeviceService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.moral.constant.Constants; + +import com.moral.util.DateUtils; import com.moral.util.GeodesyUtils; import com.moral.util.TokenUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; import org.springframework.util.ObjectUtils; import java.util.ArrayList; +import java.util.Date; +import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * <p> @@ -38,19 +48,35 @@ @Autowired private SpecialDeviceHistoryService specialDeviceHistoryService; + @Autowired + OrganizationService organizationService; + + @Autowired + SpecialDeviceMapper specialDeviceMapper; + + @Autowired + private HistorySecondCruiserMapper historySecondCruiserMapper; + + @Autowired + RedisTemplate redisTemplate; + private final static Double dis = 50d; @Override - public List<Map<String, Object>> getCarsInfo() { + public List<Map<String, Object>> selectCruisers() { //������������������������ Map<String, Object> userInfo = (Map<String, Object>) TokenUtils.getUserInfo(); Map<String, Object> orgInfo = (Map<String, Object>) userInfo.get("organization"); Integer orgId = (Integer) orgInfo.get("id"); + //��������������������� + List<Organization> organizations = organizationService.getChildrenOrganizationsById(orgId); + List<Integer> orgIds = organizations.stream().map(Organization::getId).collect(Collectors.toList()); + orgIds.add(orgId); QueryWrapper<SpecialDeviceHistory> queryWrapper = new QueryWrapper<>(); queryWrapper.select("mac", "name") - .eq("organization_id", orgId) - .eq("special_type", Constants.SPECIAL_DEVICE_CAR) - .eq("is_delete", Constants.NOT_DELETE); + .eq("special_type", Constants.SPECIAL_DEVICE_CRUISER) + .eq("is_delete", Constants.NOT_DELETE) + .in("organization_id", orgIds); return specialDeviceHistoryService.listMaps(queryWrapper); } @@ -84,6 +110,31 @@ return filterData(data); } + @Override + public SpecialDevice getSpecialDeviceMapByMac(String mac) { + QueryWrapper<SpecialDevice> queryWrapper = new QueryWrapper(); + queryWrapper.eq("mac", mac); + queryWrapper.eq("is_delete", Constants.NOT_DELETE); + SpecialDevice specialDevice = specialDeviceMapper.selectOne(queryWrapper); + return specialDevice; + } + + + @Override + public List<String> getDatesByMac(String mac) { + Map<String, Object> userInfo = (Map) TokenUtils.getUserInfo(); + Map<String, Object> orgInfo = (Map) userInfo.get("organization"); + Integer orgId = (Integer) orgInfo.get("id"); + + Map<String, Object> params = new HashMap<>(); + params.put("orgId", orgId); + params.put("mac", mac); + Date start = DateUtils.addMonths(new Date(), -6); + params.put("start", DateUtils.dateToDateString(start)); + return historySecondCruiserMapper.getDates(params); + } + + //������������������������ private List<Map<String, Object>> filterData(List<Map<String, Object>> data) { List<Map<String, Object>> result = new ArrayList<>(); -- Gitblit v1.8.0