From 154b73d12f9e39039fc7b099beab3881c94b2d8d Mon Sep 17 00:00:00 2001 From: ZhuDongming <773644075@qq.com> Date: Thu, 21 Nov 2019 12:42:00 +0800 Subject: [PATCH] update:请求合并 --- src/main/java/com/moral/service/impl/SensorServiceImpl.java | 112 ++++++++------- src/main/resources/mapper/SensorMapper.xml | 204 ++++++++++++++-------------- src/main/webapp/js/moralmap.js | 22 -- src/main/java/com/moral/service/SensorService.java | 14 +- src/main/java/com/moral/mapper/SensorMapper.java | 2 src/main/webapp/view/map.jsp | 9 src/main/java/com/moral/controller/ScreenController.java | 40 ++--- 7 files changed, 195 insertions(+), 208 deletions(-) diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java index 042724a..0fd3457 100644 --- a/src/main/java/com/moral/controller/ScreenController.java +++ b/src/main/java/com/moral/controller/ScreenController.java @@ -545,21 +545,9 @@ } @GetMapping("/getSensorsMap") - public ResultBean getSensorsMapOnly(String mac){ - Map<String, String> paramMap = sensorService.getSensorsMapOnly(mac); - ResultBean<Map<String, String>> resultBean = new ResultBean(); - resultBean.setData(paramMap); - resultBean.setCode(ResultBean.SUCCESS); - return resultBean; - } - - @GetMapping("/getSensorsUnitMap") - public ResultBean getSensorsUnitMap(String mac){ - Map<String, String> paramMap = sensorService.getSensorsUnitMap(mac); - ResultBean<Map<String, String>> resultBean = new ResultBean(); - resultBean.setData(paramMap); - resultBean.setCode(ResultBean.SUCCESS); - return resultBean; + public List<Map<String, String>> getSensorsMapOnly(String mac) { + List<Map<String, String>> sensorsMapList = sensorService.getSensorsMaps(mac); + return sensorsMapList; } @RequestMapping(value = "/get-monitorpoints", method = RequestMethod.GET) @@ -1049,8 +1037,8 @@ String monitor_point_id = (String) parameters.get("monitor_point_id"); List<Map<String, Object>> list = sensorService.getSensorByMonitorPointId(monitor_point_id); List<Map<String, Object>> sensorUnitList = sensorUnitService.getSensorsByMonitPointId2(monitor_point_id); - System.out.println("list:"+list); - System.out.println("sensorUnitList:"+sensorUnitList); + System.out.println("list:" + list); + System.out.println("sensorUnitList:" + sensorUnitList); for (Map<String, Object> sensorMap : list) { for (Map<String, Object> sensorUnitMap : sensorUnitList) { if (sensorUnitMap.get("sensor_key").equals(sensorMap.get("sensorKey"))) { @@ -1076,7 +1064,7 @@ String intoTime = parameters.get("time").toString(); Date date = new SimpleDateFormat("yy-MM-dd").parse(intoTime); DateFormat df1 = new SimpleDateFormat("yyyy-MM-dd"); - String alterTime = df1.format(date.getTime()-15*24*60*60*1000); + String alterTime = df1.format(date.getTime() - 15 * 24 * 60 * 60 * 1000); parameters.put("time", alterTime); ParameterUtils.getTimeType4Time(parameters); String monitor_point_id = (String) parameters.get("monitorPoint"); @@ -1095,15 +1083,15 @@ Map<String, Object> weatherMap = new HashMap<>(); Map<String, Object> tempMap = new HashMap<>(); Boolean tf = false; - for(int i=0;i<sensorKeys.length;i++) { - if(sensorKeys[i].equals("e7")) { - tf = true; - } + for (int i = 0; i < sensorKeys.length; i++) { + if (sensorKeys[i].equals("e7")) { + tf = true; + } } if (tf) { weatherMap = weatherService.get15DayWeatherDataByRegion(weatherParameters); tempMap = TempAllocationUtils.tempAllocation(weatherMap); - } + } //������������������ Map<String, Map<String, Object>> sensorUnitMap = sensorUnitService.getSensorsByMonitPointId(monitor_point_id); @@ -1111,9 +1099,9 @@ String time = map.get("time").toString(); time = time.substring(time.length() - 2); map.put("time", Integer.valueOf(time)); - if (tempMap!=null) { - map.put("temp", tempMap.get(map.get("time").toString())); - } + if (tempMap != null) { + map.put("temp", tempMap.get(map.get("time").toString())); + } List<Number> values = new ArrayList<Number>(); List<String> units = new ArrayList<String>(); for (String string : sensorKeys) { diff --git a/src/main/java/com/moral/mapper/SensorMapper.java b/src/main/java/com/moral/mapper/SensorMapper.java index ff015e7..0a63b1e 100644 --- a/src/main/java/com/moral/mapper/SensorMapper.java +++ b/src/main/java/com/moral/mapper/SensorMapper.java @@ -28,5 +28,5 @@ List<Sensor> getSensorsByMac(Map<String, Object> parameters); - List<Sensor> getSensorsByMacOnly(@Param("mac") String mac); + List<Sensor> getSensorsInfoByMac(@Param("mac") String mac); } \ No newline at end of file diff --git a/src/main/java/com/moral/service/SensorService.java b/src/main/java/com/moral/service/SensorService.java index f1b9365..51222a5 100644 --- a/src/main/java/com/moral/service/SensorService.java +++ b/src/main/java/com/moral/service/SensorService.java @@ -20,21 +20,21 @@ List<Sensor> queryListByVersionNo(Integer versionNo); public void addOrModify(Sensor sensor); + public void deleteByIds(Integer... ids); List<Sensor> queryByOrgId(Integer organizationId); public List<Sensor> getAllSensors(); - + Map<String, Object> getSensorBySensorKey(String SensorKey); - - List<Map<String,Object>> getSensorByDeviceId(String id); - - List<Map<String,Object>> getSensorByMonitorPointId(String monitor_point_id); + + List<Map<String, Object>> getSensorByDeviceId(String id); + + List<Map<String, Object>> getSensorByMonitorPointId(String monitor_point_id); Map<String, String> getSensorsMap(Map<String, Object> parameters) throws Exception; - Map<String, String> getSensorsMapOnly(String mac); + List<Map<String, String>> getSensorsMaps(String mac); - Map<String, String> getSensorsUnitMap(String mac); } diff --git a/src/main/java/com/moral/service/impl/SensorServiceImpl.java b/src/main/java/com/moral/service/impl/SensorServiceImpl.java index 1638cb7..77dca20 100644 --- a/src/main/java/com/moral/service/impl/SensorServiceImpl.java +++ b/src/main/java/com/moral/service/impl/SensorServiceImpl.java @@ -5,17 +5,21 @@ import com.moral.entity.Sensor; import com.moral.mapper.SensorMapper; import com.moral.service.SensorService; + import org.springframework.stereotype.Service; + import tk.mybatis.mapper.entity.Example; import javax.annotation.Resource; + +import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; @Service -public class SensorServiceImpl implements SensorService{ +public class SensorServiceImpl implements SensorService { @Resource SensorMapper sensorMapper; @@ -23,47 +27,52 @@ /** * ������������������������������ + * * @return */ @Override - public List<Sensor> queryAll(){ + public List<Sensor> queryAll() { return sensorMapper.selectByExample(null); } - public PageBean<Sensor> queryByPageBean(PageBean pageBean){ - return MyBatisBaseMapUtil.queryPage(sensorMapper,pageBean,ENTITY_CLASS); + + public PageBean<Sensor> queryByPageBean(PageBean pageBean) { + return MyBatisBaseMapUtil.queryPage(sensorMapper, pageBean, ENTITY_CLASS); } + @Override - public PageBean queryByVersionId(Integer deviceVersionId){ + public PageBean queryByVersionId(Integer deviceVersionId) { List<Sensor> sensorList = sensorMapper.selectByVersionId(deviceVersionId); - return new PageBean(sensorList); + return new PageBean(sensorList); } + @Override - public List<Sensor> queryListByVersionId(Integer deviceVersionId){ + public List<Sensor> queryListByVersionId(Integer deviceVersionId) { return sensorMapper.selectByVersionId(deviceVersionId); } + @Override - public List<Sensor> queryListByVersionNo(Integer versionNo){ + public List<Sensor> queryListByVersionNo(Integer versionNo) { return sensorMapper.selectByVersionNo(versionNo); } - public void addOrModify(Sensor sensor){ - try{ - if(sensor.getId()==null){ + + public void addOrModify(Sensor sensor) { + try { + if (sensor.getId() == null) { sensorMapper.insertSelective(sensor); - }else{ + } else { sensorMapper.updateByPrimaryKeySelective(sensor); } - } - catch (Exception ex){ - throw ex; + } catch (Exception ex) { + throw ex; } } @Override public void deleteByIds(Integer... ids) { - if(ids!=null&&ids.length>0){ - if(ids.length==1){ + if (ids != null && ids.length > 0) { + if (ids.length == 1) { sensorMapper.deleteByPrimaryKey(ids[0]); - }else{ + } else { Example example = new Example(ENTITY_CLASS); example.or().andIn("id", Arrays.asList(ids)); sensorMapper.deleteByExample(example); @@ -74,6 +83,7 @@ /** * ������������������������������������������ + * * @param organizationId * @return */ @@ -81,25 +91,29 @@ public List<Sensor> queryByOrgId(Integer organizationId) { return sensorMapper.selectByOrgId(organizationId); } + @Override - public List<Sensor> getAllSensors() { - return sensorMapper.selectAll(); - } - @Override - public Map<String, Object> getSensorBySensorKey(String sensorKey) { - Map<String, Object> map = sensorMapper.getSensorBySensorKey(sensorKey); - return map; - } - @Override - public List<Map<String, Object>> getSensorByDeviceId(String id) { - List<Map<String,Object>> list = sensorMapper.getSensorByDeviceId(id); - return list; - } - @Override - public List<Map<String, Object>> getSensorByMonitorPointId(String monitor_point_id) { - List<Map<String,Object>> list = sensorMapper.getSensorByMonitorPointId(monitor_point_id); - return list; - } + public List<Sensor> getAllSensors() { + return sensorMapper.selectAll(); + } + + @Override + public Map<String, Object> getSensorBySensorKey(String sensorKey) { + Map<String, Object> map = sensorMapper.getSensorBySensorKey(sensorKey); + return map; + } + + @Override + public List<Map<String, Object>> getSensorByDeviceId(String id) { + List<Map<String, Object>> list = sensorMapper.getSensorByDeviceId(id); + return list; + } + + @Override + public List<Map<String, Object>> getSensorByMonitorPointId(String monitor_point_id) { + List<Map<String, Object>> list = sensorMapper.getSensorByMonitorPointId(monitor_point_id); + return list; + } @Override public Map<String, String> getSensorsMap(Map<String, Object> parameters) { @@ -112,22 +126,20 @@ } @Override - public Map<String, String> getSensorsMapOnly(String mac) { - List<Sensor> sensors = sensorMapper.getSensorsByMacOnly(mac); - Map<String, String> sensorMap = new HashMap<>(); + public List<Map<String, String>> getSensorsMaps(String mac) { + List<Sensor> sensors = sensorMapper.getSensorsInfoByMac(mac); + Map<String, String> sensorsDescriptionMap = new HashMap<>(); for (Sensor sensor : sensors) { - sensorMap.put(sensor.getSensorKey(), sensor.getDescription()); + sensorsDescriptionMap.put(sensor.getSensorKey(), sensor.getDescription()); } - return sensorMap; + Map<String, String> sensorsUnitMap = new HashMap<>(); + for (Sensor sensor : sensors) { + sensorsUnitMap.put(sensor.getSensorKey(), sensor.getUnit()); + } + List<Map<String, String>> sensorsMapList = new ArrayList<>(); + sensorsMapList.add(sensorsDescriptionMap); + sensorsMapList.add(sensorsUnitMap); + return sensorsMapList; } - @Override - public Map<String, String> getSensorsUnitMap(String mac) { - List<Sensor> sensors = sensorMapper.getSensorsByMacOnly(mac); - Map<String, String> sensorMap = new HashMap<>(); - for (Sensor sensor : sensors) { - sensorMap.put(sensor.getSensorKey(), sensor.getUnit()); - } - return sensorMap; - } } diff --git a/src/main/resources/mapper/SensorMapper.xml b/src/main/resources/mapper/SensorMapper.xml index d4fb2bf..b50c240 100644 --- a/src/main/resources/mapper/SensorMapper.xml +++ b/src/main/resources/mapper/SensorMapper.xml @@ -1,68 +1,68 @@ <?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.SensorMapper" > - <resultMap id="BaseResultMap" type="com.moral.entity.Sensor" > - <id column="id" property="id" jdbcType="INTEGER" /> - <result column="name" property="name" jdbcType="VARCHAR" /> - <result column="sensor_key" property="sensorKey" jdbcType="VARCHAR" /> - <result column="upper" property="upper" jdbcType="DOUBLE" /> - <result column="lower" property="lower" jdbcType="DOUBLE" /> - <result column="unit" property="unit" jdbcType="VARCHAR" /> - <result column="description" property="description" jdbcType="VARCHAR" /> - </resultMap> - <sql id="Base_Column_List" > +<mapper namespace="com.moral.mapper.SensorMapper"> + <resultMap id="BaseResultMap" type="com.moral.entity.Sensor"> + <id column="id" property="id" jdbcType="INTEGER"/> + <result column="name" property="name" jdbcType="VARCHAR"/> + <result column="sensor_key" property="sensorKey" jdbcType="VARCHAR"/> + <result column="upper" property="upper" jdbcType="DOUBLE"/> + <result column="lower" property="lower" jdbcType="DOUBLE"/> + <result column="unit" property="unit" jdbcType="VARCHAR"/> + <result column="description" property="description" jdbcType="VARCHAR"/> + </resultMap> + <sql id="Base_Column_List"> id, name, sensor_key, upper, lower, unit, description </sql> - <select id="selectByVersionId" resultMap="BaseResultMap" parameterType="java.lang.Integer" > - select - <include refid="Base_Column_List" /> - from sensor sen - where EXISTS - ( select id - from device_version_sensor dvs - where sen.id = dvs.sensor_id and dvs.device_version_id = #{deviceVersionId,jdbcType=INTEGER} - ) - </select> - <select id="selectByVersionNo" resultMap="BaseResultMap" parameterType="java.lang.Integer" > - select - <include refid="Base_Column_List" /> - from sensor sen - where EXISTS - ( select id - from device_version_sensor dvs - where sen.id = dvs.sensor_id - and dvs.device_version_id in - ( - select dev.id from device_version dev - where dev.version = #{deviceVersionNo,jdbcType=INTEGER} - ) - ) - </select> - <select id="selectByVersionNos" resultMap="BaseResultMap" parameterType="java.util.List" > - select - <include refid="Base_Column_List" /> - from sensor sen - where EXISTS - ( select id - from device_version_sensor dvs - where sen.id = dvs.sensor_id - and dvs.device_version_id in - ( - select dev.id from device_version dev - <where> - 1 > 1 - <if test="versionNos!=null and versionNos.size() > 0"> - or dev.version in - <foreach collection="versionNos" item="versionNo" open="(" close=")" separator=","> - #{versionNo,jdbcType=INTEGER} - </foreach> - </if> - </where> - ) - ) - </select> - - <select id="getSensorsByDeviceVersionId" resultType="java.util.Map"> + <select id="selectByVersionId" resultMap="BaseResultMap" parameterType="java.lang.Integer"> + select + <include refid="Base_Column_List"/> + from sensor sen + where EXISTS + ( select id + from device_version_sensor dvs + where sen.id = dvs.sensor_id and dvs.device_version_id = #{deviceVersionId,jdbcType=INTEGER} + ) + </select> + <select id="selectByVersionNo" resultMap="BaseResultMap" parameterType="java.lang.Integer"> + select + <include refid="Base_Column_List"/> + from sensor sen + where EXISTS + ( select id + from device_version_sensor dvs + where sen.id = dvs.sensor_id + and dvs.device_version_id in + ( + select dev.id from device_version dev + where dev.version = #{deviceVersionNo,jdbcType=INTEGER} + ) + ) + </select> + <select id="selectByVersionNos" resultMap="BaseResultMap" parameterType="java.util.List"> + select + <include refid="Base_Column_List"/> + from sensor sen + where EXISTS + ( select id + from device_version_sensor dvs + where sen.id = dvs.sensor_id + and dvs.device_version_id in + ( + select dev.id from device_version dev + <where> + 1 > 1 + <if test="versionNos!=null and versionNos.size() > 0"> + or dev.version in + <foreach collection="versionNos" item="versionNo" open="(" close=")" separator=","> + #{versionNo,jdbcType=INTEGER} + </foreach> + </if> + </where> + ) + ) + </select> + + <select id="getSensorsByDeviceVersionId" resultType="java.util.Map"> SELECT s.* FROM @@ -73,38 +73,38 @@ AND dvs.device_version_id = #{deviceVersionId} </select> - <select id="getSensorsByCriteria" resultMap="BaseResultMap"> - SELECT - DISTINCT s.* - FROM - sensor s, - device_version_sensor dvs, - device d, - monitor_point mp - WHERE - s.id = dvs.sensor_id - AND dvs.device_version_id = d.device_version_id - AND d.monitor_point_id = mp.id - <if test="provinceCode != null"> - AND mp.province_code = #{provinceCode} - </if> - <if test="cityCode != null"> - AND mp.city_code = #{cityCode} - </if> - <if test="areaCode != null"> - AND mp.area_code = #{areaCode} - </if> - <if test="monitorPointId != null"> - AND mp.id = #{monitorPointId} - </if> - <if test="mac != null"> - AND d.mac = #{mac} - </if> - <if test="professionId != null"> - AND d.profession_id = #{professionId} - </if> - </select> - <select id="selectByOrgId" resultMap="BaseResultMap"> + <select id="getSensorsByCriteria" resultMap="BaseResultMap"> + SELECT + DISTINCT s.* + FROM + sensor s, + device_version_sensor dvs, + device d, + monitor_point mp + WHERE + s.id = dvs.sensor_id + AND dvs.device_version_id = d.device_version_id + AND d.monitor_point_id = mp.id + <if test="provinceCode != null"> + AND mp.province_code = #{provinceCode} + </if> + <if test="cityCode != null"> + AND mp.city_code = #{cityCode} + </if> + <if test="areaCode != null"> + AND mp.area_code = #{areaCode} + </if> + <if test="monitorPointId != null"> + AND mp.id = #{monitorPointId} + </if> + <if test="mac != null"> + AND d.mac = #{mac} + </if> + <if test="professionId != null"> + AND d.profession_id = #{professionId} + </if> + </select> + <select id="selectByOrgId" resultMap="BaseResultMap"> select * from sensor sen where sen.id in ( select DISTINCT sensor_id from device_version_sensor dvs @@ -122,22 +122,22 @@ ) order by sen.id asc </select> - - <select id="getSensorBySensorKey" resultType="java.util.Map"> + + <select id="getSensorBySensorKey" resultType="java.util.Map"> SELECT * FROM sensor WHERE sensor_key = #{sensor_key} </select> - - <select id="getSensorByDeviceId" resultType="java.util.Map"> + + <select id="getSensorByDeviceId" resultType="java.util.Map"> SELECT DISTINCT d.id,d.monitor_point_id,s.* FROM device d,device_version dv,device_version_sensor dvs,sensor s WHERE d.device_version_id = dvs.device_version_id AND dvs.sensor_id = s.id AND d.id = #{id} </select> - - <select id="getSensorByMonitorPointId" resultType="java.util.Map"> + + <select id="getSensorByMonitorPointId" resultType="java.util.Map"> SELECT DISTINCT s.sensor_key sensorKey,s.unit,s.name,s.description,s.id FROM device d,device_version dv,device_version_sensor dvs,sensor s WHERE d.device_version_id = dvs.device_version_id @@ -156,11 +156,11 @@ s.id = dvs.sensor_id AND dvs.device_version_id = d.device_version_id <if test="mac != null"> - AND d.mac = #{mac} + AND d.mac = #{mac} </if> </select> - <select id="getSensorsByMacOnly" resultMap="BaseResultMap"> + <select id="getSensorsInfoByMac" resultMap="BaseResultMap"> SELECT DISTINCT s.* FROM @@ -171,7 +171,7 @@ s.id = dvs.sensor_id AND dvs.device_version_id = d.device_version_id <if test="mac != null"> - AND d.mac = #{mac} + AND d.mac = #{mac} </if> </select> </mapper> \ No newline at end of file diff --git a/src/main/webapp/js/moralmap.js b/src/main/webapp/js/moralmap.js index f4b025b..124827d 100644 --- a/src/main/webapp/js/moralmap.js +++ b/src/main/webapp/js/moralmap.js @@ -654,23 +654,15 @@ //���������mac���key������ //��������������� ������MoralMark������ moralMap.Equipment = function (option) { - var sensorsMap; + var sensorsDescriptionMap; var sensorsUnitMap; $.ajax({ url: "getSensorsMap?mac=" + option['mac'], type: "get", dataType: "json", success: function (data) { - sensorsMap = data.data; - } - }); - - $.ajax({ - url: "getSensorsUnitMap?mac=" + option['mac'], - type: "get", - dataType: "json", - success: function (data) { - sensorsUnitMap = data.data; + sensorsDescriptionMap = data[0]; + sensorsUnitMap = data[1]; } }); @@ -844,10 +836,6 @@ } moralMap.showSensors = function (jsonData) { - var address = (option["address"] == null) ? "" : option["address"]; - if (address.length > 18) { - address = address.slice(0, 18) + "..."; - } var adressOutHtml = '<div style="min-height:20px;overflow:auto;max-height:400px;font-size: 12px;" onmouseover="moralMap.clearCloseInfoWindow()" onmouseout="moralMap.closeInfoWindow()">'; var y, m, d, h, mm, s; var date = new Date(jsonData['time']); @@ -861,9 +849,9 @@ adressOutHtml += '<p style="height: 18px;line-height: 18px">' + "��������� " + date + " </p>"; for (var prop in jsonData) { if (jsonData.hasOwnProperty(prop) && prop != 'ver' && prop != 'methodName' && prop != 'mac' && prop != 'time') { - for (var key in sensorsMap) { + for (var key in sensorsDescriptionMap) { if (prop == key) { - var sensorsDescription = sensorsMap[key]; + var sensorsDescription = sensorsDescriptionMap[key]; } } for (var key in sensorsUnitMap) { diff --git a/src/main/webapp/view/map.jsp b/src/main/webapp/view/map.jsp index 4d8dd8c..8eeac9e 100644 --- a/src/main/webapp/view/map.jsp +++ b/src/main/webapp/view/map.jsp @@ -351,10 +351,10 @@ <div class="charts_btn"> </div> </div> - <!--<div class="search_box"> - <button id="searchBtn" type="button">������</button> - <textarea style="width: 200px;height:200px;" id="searchParam"></textarea> - </div>--> + <!-- <div class="search_box"> + <button id="searchBtn" type="button">������</button> + <textarea style="width: 200px;height:200px;" id="searchParam"></textarea> + </div>--> <!-- <div id="popup_box"> <div id="equ_list" class="listview"> </div> @@ -749,7 +749,6 @@ } function callJS(jsonData) { - // $("#searchParam").val(jsonData); var jsonData = JSON.parse(jsonData); var methodName = jsonData.methodName; if ("JumpBaiduMap" == methodName) { -- Gitblit v1.8.0