From 29a0417eb3b695df5502d1cf055f4740f1fdcd9f Mon Sep 17 00:00:00 2001
From: 于紫祥_1901 <email@yuzixiang_1910>
Date: Wed, 11 Nov 2020 16:26:46 +0800
Subject: [PATCH] update 获取沧州device sql
---
src/main/java/com/moral/service/impl/DeviceServiceImpl.java | 161 ++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 109 insertions(+), 52 deletions(-)
diff --git a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
index 52bda83..169131e 100644
--- a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
@@ -212,6 +212,7 @@
Integer orgId = Integer.parseInt(orgIdObj.toString());
List<Integer> orgIds = orgMapper.selectLowerOrgIds(orgId);
params.put("orgIds", orgIds);
+ System.out.println(params);
deviceList = deviceMapper.selectByMap(params);
// loadDeviceState(deviceList);
}
@@ -718,14 +719,12 @@
}
@Override
- public List byMonitorIdGetDeviceAndWind(String id,String time,String tab) {
- List<DeviceAndWind> deviceAndWinds=deviceMapper.byMonitorIdGetDeviceAndWind(Integer.parseInt(id),time,tab);
- System.out.println(time);
+ public List byMonitorIdGetDeviceAndWind(String id,String tab) {
+ List<DeviceAndWind> deviceAndWinds=deviceMapper.byMonitorIdGetDeviceAndWind(Integer.parseInt(id),tab);
List loList=new ArrayList();
List laList=new ArrayList();
Double U=0.0;
Double V=0.0;
- log.info(deviceAndWinds.size());
List list=new ArrayList();
for (DeviceAndWind andWind : deviceAndWinds) {
Double lo=andWind.getLongitude();
@@ -869,7 +868,6 @@
List transList= LatLngTransformation.Convert_BD09_To_GCJ02(monitorLa,monitorLo);
Double transLo=(Double) transList.get(0);
Double transLa=(Double) transList.get(1);
-
list.add(jsonArray);
list.add(transLo);
list.add(transLa);
@@ -878,26 +876,72 @@
}
@Override
- public List byMonitorIdGetDeviceAndWindSpecial(String id, String time, String tab) {
- List<DeviceAndWind> deviceAndWinds=deviceMapper.byMonitorIdGetDeviceAndWind(Integer.parseInt(id),time,tab);
+ public List byMonitorIdGetDeviceAndWindSpecial(String id, String tab) {
+ MonitorPoint monitorPoint=monitorPointMapper.byIdGetMonitorPoint(Integer.parseInt(id));
+ Integer areaCode=monitorPoint.getAreaCode();
+ String townCode= monitorPoint.getTownCode()+"";
+ int monitorPointId=monitorPoint.getId();
+ Map<String, Object> parm=new HashMap<>();
+ List<DeviceAndWind> deviceAndWinds=new ArrayList<>();
+ Double loma= 0.0;
+ Double lomi= 0.0;
+ Double lama= 0.0;
+ Double lami= 0.0;
+
+ int length=1;
+ int perdlen=1;
+ if (areaCode==320581){
+ parm.put("areaCode",areaCode);
+ List<Device> deviceList=deviceMapper.getDeviceByCode(parm);
+ for (Device d : deviceList) {
+ String mac=d.getMac();
+ DeviceAndWind deviceAndWind = deviceMapper.byMacGetDeviceAndWind(mac,tab);
+ if (deviceAndWind!=null){
+ deviceAndWinds.add(deviceAndWind);
+ }
+ }
+ length=8000;
+ perdlen=2200;
+ }else if ((areaCode == 320583) && (townCode.equals("320583108000"))){
+ parm.put("townCode",townCode);
+ List<Device> deviceList=deviceMapper.getDeviceByCode(parm);
+ for (Device d : deviceList) {
+ String mac=d.getMac();
+ DeviceAndWind deviceAndWind = deviceMapper.byMacGetDeviceAndWind(mac,tab);
+ if (deviceAndWind!=null){
+ deviceAndWinds.add(deviceAndWind);
+ }
+ }
+ length=2000;
+ perdlen=280;
+ }else if(monitorPointId==35){
+ DeviceAndWind deviceAndWind=deviceMapper.getDeviceAndWindByMac("898607b0101730392253",tab);
+ DeviceAndWind deviceAndWind1=deviceMapper.getDeviceAndWindByMac("p5dnd7a0392083",tab);
+ deviceAndWinds.add(deviceAndWind);
+ deviceAndWinds.add(deviceAndWind1);
+ length=2000;
+ perdlen=50;
+
+ }else {
+ deviceAndWinds=deviceMapper.byMonitorIdGetDeviceAndWind(Integer.parseInt(id),tab);
+ length=2000;
+ perdlen=80;
+ }
List loList=new ArrayList();
List laList=new ArrayList();
Double U=0.0;
Double V=0.0;
List list=new ArrayList();
for (DeviceAndWind andWind : deviceAndWinds) {
- Double lo=andWind.getLongitude();
- Double la=andWind.getLatitude();
- List tranlist= LatLngTransformation.Convert_BD09_To_GCJ02(la,lo);
- Double transLo=(Double) tranlist.get(0);
- Double transLa=(Double) tranlist.get(1);
- loList.add(transLo);
- laList.add(transLa);
+ Double lo=andWind.getLongitude();
+ Double la=andWind.getLatitude();
+ List tranlist= LatLngTransformation.Convert_BD09_To_GCJ02(la,lo);
+ Double transLo=(Double) tranlist.get(0);
+ Double transLa=(Double) tranlist.get(1);
+ loList.add(transLo);
+ laList.add(transLa);
}
- Double loma= 0.0;
- Double lomi= 0.0;
- Double lama= 0.0;
- Double lami= 0.0;
+
if (loList.size()>0){
loma= (Double) Collections.max(loList);
lomi= (Double) Collections.min(loList);
@@ -912,17 +956,15 @@
laLaMap.put("maxLa",lama);
laLaMap.put("minLa",lami);
- Double lo1=lomi-2000*0.00001141;
- Double lo2=loma+2000*0.00001141;
- Double la2=lami-2000*0.00000899;
- Double la1=lama+2000*0.00000899;
+ Double lo1=lomi-length*0.00001141;
+ Double lo2=loma+length*0.00001141;
+ Double la2=lami-length*0.00000899;
+ Double la1=lama+length*0.00000899;
- Double dx=0.00001141*70;
- Double dy=0.00000899*70;
-
+ Double dx=0.00001141*perdlen;
+ Double dy=0.00000899*perdlen;
int nx=(int) Math.floor((lo2-lo1)/dx);
int ny=(int) Math.floor((la1-la2)/dy);
- System.out.println(nx+"----"+ny);
String header1 = "\"" + "header" + "\"" + ": " + "{" + "\"" + "parameterUnit" + "\"" + ": " + "\"" + "m/s" + "\"" + ", " + "\"" + "parameterNumber" + "\"" + ": " + 2 +
", " + "\"" + "dx" + "\"" + ": " + dx + ", " + "\"" + "dy" + "\"" + ": " + dy +
", " + "\"" + "parameterNumberName" + "\"" + ": " + "\"" + "eastward_wind" + "\"" + ", " + "\"" + "la1" + "\"" + ": " + la1 + ", " + "\"" + "la2" + "\"" + ": " + la2 +
@@ -942,31 +984,30 @@
List<Map> mapList=new ArrayList<Map>();
for (int j = 0; j <deviceAndWinds.size() ; j++) {
- Map<String,Double> map=new HashMap<String,Double> ();
- Double windDir= deviceAndWinds.get(j).getWindDir();
+ Map<String,Double> map=new HashMap<String,Double> ();
+ Double windDir= deviceAndWinds.get(j).getWindDir();
+ Double windSpeed=deviceAndWinds.get(j).getWindSpeed();
+ if (windDir==null){
+ windDir=0.0;
+ windSpeed=0.0;
+ }
+ Double tvoc=deviceAndWinds.get(j).getTVoc();
- Double windSpeed=deviceAndWinds.get(j).getWindSpeed();
- if (windDir==null){
- windDir=0.0;
- windSpeed=0.0;
- }
- Double tvoc=deviceAndWinds.get(j).getTVoc();
+ List tranlist= LatLngTransformation.Convert_BD09_To_GCJ02(deviceAndWinds.get(j).getLatitude(),deviceAndWinds.get(j).getLongitude());
+ Double transLo=(Double) tranlist.get(0);
+ Double transLa=(Double) tranlist.get(1);
+ if (tvoc==null){
+ tvoc=0.0;
+ }
+ Double dir = (270.0 - windDir * Math.PI / 180.0);
- List tranlist= LatLngTransformation.Convert_BD09_To_GCJ02(deviceAndWinds.get(j).getLatitude(),deviceAndWinds.get(j).getLongitude());
- Double transLo=(Double) tranlist.get(0);
- Double transLa=(Double) tranlist.get(1);
- if (tvoc==null){
- tvoc=0.0;
- }
- Double dir = (270.0 - windDir * Math.PI / 180.0);
-
- U = windSpeed * Math.cos(dir);
- V = windSpeed * Math.sin(dir);
- map.put("lo",transLo);
- map.put("la",transLa);
- map.put("U",U);
- map.put("V",V);
- mapList.add(map);
+ U = windSpeed * Math.cos(dir);
+ V = windSpeed * Math.sin(dir);
+ map.put("lo",transLo);
+ map.put("la",transLa);
+ map.put("U",U);
+ map.put("V",V);
+ mapList.add(map);
}
for (int i = 0; i <mapList.size() ; i++) {
Double lo= (Double) mapList.get(i).get("lo");
@@ -1023,7 +1064,7 @@
String vData = "\"" + "data" + "\"" + ": " + vList;
String s1 = "[" + "{" + header1 + ", " + uData + "}" + ", " + "{" + header2 + ", " + vData + "}" + "]";
JSONArray jsonArray = JSONArray.parseArray(s1);
- MonitorPoint monitorPoint=monitorPointMapper.byIdGetMonitorPoint(Integer.parseInt(id));
+
Double monitorLo=monitorPoint.getLongitude();
Double monitorLa=monitorPoint.getLatitude();
List transList= LatLngTransformation.Convert_BD09_To_GCJ02(monitorLa,monitorLo);
@@ -1038,7 +1079,23 @@
}
@Override
- public DeviceAndWind getDeviceAndWindByMac(String mac,String time,String table) {
- return deviceMapper.getDeviceAndWindByMac(mac,time,table);
+ public List<Device> getDeviceByCodeAndId(String code, String id) {
+ return deviceMapper.getDeviceByCodeAndId(code,id);
}
+
+ @Override
+ public String byMacGetOrgId(String mac) {
+ return deviceMapper.byMacGetOrgId(mac);
+ }
+
+ @Override
+ public List<Device> getDevice(String macOrName) {
+ return deviceMapper.getDevice(macOrName);
+ }
+
+ @Override
+ public List<Device> getDeviceByCode() {
+ return deviceMapper.getDeviceByCityCode();
+ }
+
}
--
Gitblit v1.8.0