From f28149d8183a62f87fa9c8df9ae589070d83f612 Mon Sep 17 00:00:00 2001 From: 于紫祥_1901 <email@yuzixiang_1910> Date: Thu, 24 Dec 2020 13:47:50 +0800 Subject: [PATCH] 波动补偿 --- src/main/java/com/moral/service/impl/FluctuationCompensationServiceImpl.java | 24 ++++++++++++ src/main/java/com/moral/controller/PageController.java | 35 +++++++++++++++++ src/main/java/com/moral/mapper/FluctuationCompensationMapper.java | 12 ++++++ src/main/java/com/moral/service/FluctuationCompensationService.java | 9 ++++ src/main/resources/mapper/FluctuationCompensationMapper.xml | 11 +++++ src/main/java/com/moral/webSocketServer/ElectronicSWebSocketServer.java | 4 +- 6 files changed, 93 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/moral/controller/PageController.java b/src/main/java/com/moral/controller/PageController.java new file mode 100644 index 0000000..dfb7c31 --- /dev/null +++ b/src/main/java/com/moral/controller/PageController.java @@ -0,0 +1,35 @@ +package com.moral.controller; + + + +import com.moral.service.FluctuationCompensationService; +import net.sf.json.JSONObject; +import org.springframework.web.bind.annotation.*; +import javax.annotation.Resource; +import java.util.List; +import java.util.Map; + +@RestController +@RequestMapping("/page") +@CrossOrigin(origins = "*", maxAge = 3600) +public class PageController { + @Resource + private FluctuationCompensationService fluctuationCompensationService; + @PostMapping("getFC") + public List<Map> getFC(@RequestBody Map<String, Object> parameters) { + String mac = parameters.get("mac").toString(); + List<Map> fcMap = fluctuationCompensationService.getFc(mac); + return fcMap; + } + + @PostMapping("update") + public int updateFC(@RequestBody Map<String, Object> parameters){ + Object value = parameters.get("val"); + System.out.println(value); + JSONObject jsonObject = JSONObject.fromObject(value); + String val = jsonObject.get("json").toString(); + String mac = jsonObject.get("mac").toString(); + int i = fluctuationCompensationService.update(mac, val); + return i; + } +} diff --git a/src/main/java/com/moral/mapper/FluctuationCompensationMapper.java b/src/main/java/com/moral/mapper/FluctuationCompensationMapper.java new file mode 100644 index 0000000..4d8a9b2 --- /dev/null +++ b/src/main/java/com/moral/mapper/FluctuationCompensationMapper.java @@ -0,0 +1,12 @@ +package com.moral.mapper; + +import org.apache.ibatis.annotations.Param; + +import java.util.List; +import java.util.Map; + +public interface FluctuationCompensationMapper { + List<Map> getFC(@Param("mac") String mac); + + int update(@Param("mac") String mac, @Param("val") String val); +} diff --git a/src/main/java/com/moral/service/FluctuationCompensationService.java b/src/main/java/com/moral/service/FluctuationCompensationService.java new file mode 100644 index 0000000..edbff3c --- /dev/null +++ b/src/main/java/com/moral/service/FluctuationCompensationService.java @@ -0,0 +1,9 @@ +package com.moral.service; + +import java.util.List; +import java.util.Map; + +public interface FluctuationCompensationService { + List<Map> getFc(String mac); + int update(String mac,String val); +} diff --git a/src/main/java/com/moral/service/impl/FluctuationCompensationServiceImpl.java b/src/main/java/com/moral/service/impl/FluctuationCompensationServiceImpl.java new file mode 100644 index 0000000..e459611 --- /dev/null +++ b/src/main/java/com/moral/service/impl/FluctuationCompensationServiceImpl.java @@ -0,0 +1,24 @@ +package com.moral.service.impl; + +import com.moral.mapper.FluctuationCompensationMapper; +import com.moral.service.FluctuationCompensationService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; +import java.util.Map; + +@Service +public class FluctuationCompensationServiceImpl implements FluctuationCompensationService { +@Resource +private FluctuationCompensationMapper fluctuationCompensationMapper; + @Override + public List<Map> getFc(String mac) { + return fluctuationCompensationMapper.getFC(mac); + } + + @Override + public int update(String mac, String val) { + return fluctuationCompensationMapper.update(mac,val); + } +} diff --git a/src/main/java/com/moral/webSocketServer/ElectronicSWebSocketServer.java b/src/main/java/com/moral/webSocketServer/ElectronicSWebSocketServer.java index 7c41146..cedb59a 100644 --- a/src/main/java/com/moral/webSocketServer/ElectronicSWebSocketServer.java +++ b/src/main/java/com/moral/webSocketServer/ElectronicSWebSocketServer.java @@ -138,13 +138,13 @@ JexlExpression jexlExpression = jexlEngine.createExpression(s); Object evaluate = jexlExpression.evaluate(null); BigDecimal bg = new BigDecimal(evaluate.toString()); - value = bg.setScale(3, BigDecimal.ROUND_HALF_UP).toString(); + value = bg.setScale(2, BigDecimal.ROUND_HALF_UP).toString(); reMap.put(sensor.getName(), value+sensorUnits.get(0).getName()); } }else { if (sensor.getName().equals("���������������������(TVOC)")){ BigDecimal bg = new BigDecimal(Double.parseDouble(value)*2.5); - value = bg.setScale(3, BigDecimal.ROUND_HALF_UP).toString(); + value = bg.setScale(2, BigDecimal.ROUND_HALF_UP).toString(); reMap.put(sensor.getName(), value+sensor.getUnit()); }else { reMap.put(sensor.getName(), value+sensor.getUnit()); diff --git a/src/main/resources/mapper/FluctuationCompensationMapper.xml b/src/main/resources/mapper/FluctuationCompensationMapper.xml new file mode 100644 index 0000000..e4dbbcd --- /dev/null +++ b/src/main/resources/mapper/FluctuationCompensationMapper.xml @@ -0,0 +1,11 @@ +<?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.FluctuationCompensationMapper" > + <update id="update"> + update `fluctuation_compensation` set json=#{val} where mac=#{mac} + </update> + + <select id="getFC" resultType="java.util.Map"> + SELECT * FROM `fluctuation_compensation` where mac like concat('%',#{mac},'%') + </select> +</mapper> \ No newline at end of file -- Gitblit v1.8.0