From 0aed1c0e6a91207c15fa34f49a7dfa9b6e2b64c5 Mon Sep 17 00:00:00 2001 From: kaiyu <404897439@qq.com> Date: Tue, 14 Sep 2021 10:24:06 +0800 Subject: [PATCH] screen-api 实时界面对数据进行保留小数位并且取整 --- screen-manage/src/main/java/com/moral/api/controller/TestController.java | 113 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 108 insertions(+), 5 deletions(-) diff --git a/screen-manage/src/main/java/com/moral/api/controller/TestController.java b/screen-manage/src/main/java/com/moral/api/controller/TestController.java index 12d9db2..ae87dd1 100644 --- a/screen-manage/src/main/java/com/moral/api/controller/TestController.java +++ b/screen-manage/src/main/java/com/moral/api/controller/TestController.java @@ -1,8 +1,21 @@ package com.moral.api.controller; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.moral.api.entity.Sensor; +import com.moral.api.entity.SysDictData; import com.moral.api.entity.Test; +import com.moral.api.entity.UnitConversion; +import com.moral.api.mapper.SysDictDataMapper; +import com.moral.api.service.SensorService; +import com.moral.api.service.SysDictDataService; import com.moral.api.service.TestService; +import com.moral.api.service.impl.SensorServiceImpl; +import com.moral.api.util.CacheUtils; +import com.moral.constant.Constants; +import com.moral.constant.KafkaConstants; +import com.moral.constant.RedisConstants; import com.moral.constant.ResultMessage; import com.moral.redis.RedisUtil; import com.moral.util.PageResult; @@ -15,12 +28,21 @@ import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.ComponentScan; +import org.springframework.data.redis.core.RedisTemplate; import org.springframework.kafka.core.KafkaTemplate; +import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.io.*; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Set; @Slf4j @@ -34,6 +56,10 @@ @Resource private TestService testService; + + @Autowired + RedisTemplate redisTemplate; + /** * name ������ @@ -65,7 +91,7 @@ @RequestMapping(value = "search/{page}/{size}", method = RequestMethod.GET) public ResultMessage findBypage(@PathVariable("page") Integer page, @PathVariable("size") Integer size) { - log.info("page is:" + page + " size is:" + size); + //log.info("page is:" + page + " size is:" + size); //������������������������ Page<Test> userPage = testService.selectByPage(null, page, size); //������������������������ @@ -100,15 +126,31 @@ } /** - * kafka������ + * ������������kafka������ */ @ApiOperation(value = "kafka������", notes = "kafka������") @ApiImplicitParams({ + @ApiImplicitParam(name = "data", value = "data", required = true, paramType = "query", dataType = "String"), @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String") }) - @RequestMapping(value = "kafkaTest", method = RequestMethod.GET) - public void kafkaTest() { - kafkaTemplate.send("test_topic", "{'mac': 'p5dnd1234567','DataTime':1623058244104,'e1':10,'e2':20,'ver':2}"); + @RequestMapping(value = "minuteKafkaTest", method = RequestMethod.GET) + public void minuteKafkaTest(String data) { + System.out.println(data); + kafkaTemplate.send(KafkaConstants.TOPIC_MINUTE, data); + } + + /** + * ������������kafka������ + */ + @ApiOperation(value = "kafka������", notes = "kafka������") + @ApiImplicitParams({ + @ApiImplicitParam(name = "data", value = "data", required = true, paramType = "query", dataType = "String"), + @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String") + }) + @RequestMapping(value = "hourKafkaTest", method = RequestMethod.GET) + public void hourKafkaTest(String data) { + System.out.println(data); + kafkaTemplate.send(KafkaConstants.TOPIC_HOUR, data); } @GetMapping("testToken") @@ -164,4 +206,65 @@ writer.close(); fis.close(); } + + @Autowired + private SensorService sensorService; + @Autowired + SysDictDataMapper sysDictDataMapper; + + @ApiOperation(value = "������������", notes = "������������") + @ApiImplicitParams({ + @ApiImplicitParam(name = "token", value = "token", required = true, paramType = "header", dataType = "String") + }) + @RequestMapping(value = "getSensor", method = RequestMethod.GET) + public void getSensor() { + QueryWrapper<Sensor> queryWrapper = new QueryWrapper<>(); + queryWrapper.select("code").eq("is_delete", Constants.NOT_DELETE); + List<Object> list = sensorService.listObjs(queryWrapper); + for (Object o : list) { + System.out.println(o); + } + } + + @GetMapping("test") + public void test() throws IOException { + BufferedReader br = new BufferedReader(new FileReader(new File("C:\\Users\\cdl\\Desktop\\alarmLevels.json"))); + StringBuilder sb = new StringBuilder(); + String line = br.readLine(); + while (line != null) { + sb.append(line + "\r\n"); + line = br.readLine(); + } + + Map map = JSON.parseObject(sb.toString(), Map.class); + System.out.println(map); + + Map<String,Object> sensorMap = (Map<String, Object>) map.get("alarmLevels"); + + Set<String> sets = sensorMap.keySet(); + + Map<String,String> alarmLevels = new HashMap<>(); + for (String set : sets) { + Map<String,Object> map2 = (Map<String, Object>) sensorMap.get(set); + String increment = map2.get("increment").toString(); + alarmLevels.put(set,increment); + } + alarmLevels.remove("AQI"); + Map<String,Object> resultMap = new HashMap<>(); + Map<String, String> ecodeMap = testService.getMap(); + + alarmLevels.forEach((key,value)->{ + resultMap.put(ecodeMap.get(key),value); + }); + + resultMap.forEach((key,value)->{ + SysDictData sysDictData = new SysDictData(); + sysDictData.setDataKey(key); + sysDictData.setDataValue(value.toString()); + sysDictData.setDictTypeId(25); + sysDictDataMapper.insert(sysDictData); + }); + + } + } -- Gitblit v1.8.0