|
|
|
@ -12,6 +12,7 @@ import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
|
|
import javax.annotation.Resource; |
|
|
|
|
import java.text.DecimalFormat; |
|
|
|
|
import java.text.ParseException; |
|
|
|
|
import java.text.SimpleDateFormat; |
|
|
|
|
import java.util.*; |
|
|
|
|
|
|
|
|
@ -41,6 +42,7 @@ public class PsdcThermometerHtdataServiceImpl implements IPsdcThermometerHtdataS |
|
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); |
|
|
|
|
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyyMMdd"); |
|
|
|
|
SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy-MM-dd HH"); |
|
|
|
|
SimpleDateFormat sdf4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
|
|
|
|
|
DecimalFormat df = new DecimalFormat("#.00"); |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@ -67,19 +69,30 @@ public class PsdcThermometerHtdataServiceImpl implements IPsdcThermometerHtdataS |
|
|
|
|
|
|
|
|
|
// 循环遍历今天历史数据对象集合
|
|
|
|
|
List<PsdcThermometerHtdata> htdata = psdcThermometerHtdataMapper.selTodayThermometer(d, tb, te); |
|
|
|
|
for (PsdcThermometerHtdata h : htdata) { |
|
|
|
|
if (null != h.getThermometerValue()) { |
|
|
|
|
listTemp.add(h.getThermometerValue()); |
|
|
|
|
} |
|
|
|
|
if (null != h.getThermometerValueIn()) { |
|
|
|
|
listIn.add(h.getThermometerValueIn()); |
|
|
|
|
} |
|
|
|
|
if (null != h.getThermometerValueOut()) { |
|
|
|
|
listOut.add(h.getThermometerValueOut()); |
|
|
|
|
try { |
|
|
|
|
long time1 = 0; |
|
|
|
|
for (int i = 0; i < htdata.size(); i++) { |
|
|
|
|
PsdcThermometerHtdata h = htdata.get(i); |
|
|
|
|
long time2 = sdf4.parse(h.getUpdateTime()).getTime(); |
|
|
|
|
long time3 = time2 - time1; |
|
|
|
|
if(time3 >= 900000){ |
|
|
|
|
if (null != h.getThermometerValue()) { |
|
|
|
|
listTemp.add(h.getThermometerValue()); |
|
|
|
|
} |
|
|
|
|
if (null != h.getThermometerValueIn()) { |
|
|
|
|
listIn.add(h.getThermometerValueIn()); |
|
|
|
|
} |
|
|
|
|
if (null != h.getThermometerValueOut()) { |
|
|
|
|
listOut.add(h.getThermometerValueOut()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
String t = h.getUpdateTime().split(" ")[1].substring(0, 5); |
|
|
|
|
times.add(t); |
|
|
|
|
time1 = sdf4.parse(h.getUpdateTime()).getTime(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
String t = h.getUpdateTime().split(" ")[1].substring(0, 5); |
|
|
|
|
times.add(t); |
|
|
|
|
} catch (Exception e){ |
|
|
|
|
e.printStackTrace(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
Double useEnergy = psdcElectricHtdataMapper.selTodayUseEnergy(d, tb, te); |
|
|
|
@ -167,17 +180,29 @@ public class PsdcThermometerHtdataServiceImpl implements IPsdcThermometerHtdataS |
|
|
|
|
return ary; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private Double getaDouble(Double houseTemp, int count, List<Double> listTemp, List<String> times, List<PsdcThermometerHtdata> tempList) { |
|
|
|
|
private Double getaDouble(Double houseTemp, int count, List<Double> listTemp, List<String> times, List<PsdcThermometerHtdata> tempList) { |
|
|
|
|
if (tempList.size() == 0) { |
|
|
|
|
count = 1; |
|
|
|
|
} |
|
|
|
|
for (PsdcThermometerHtdata scr1 : tempList) { |
|
|
|
|
Double evIn = scr1.getThermometerValue() / count; |
|
|
|
|
listTemp.add(Double.parseDouble(df.format(evIn))); |
|
|
|
|
times.add(scr1.getUpdateTime().split(" ")[1].substring(0,5)); |
|
|
|
|
try { |
|
|
|
|
long time1 = 0; |
|
|
|
|
for (int i = 0; i < tempList.size(); i++) { |
|
|
|
|
PsdcThermometerHtdata scr1 = tempList.get(i); |
|
|
|
|
long time2 = sdf4.parse(scr1.getUpdateTime()).getTime(); |
|
|
|
|
long time3 = time2 - time1; |
|
|
|
|
if(time3 >= 900000){ |
|
|
|
|
Double evIn = scr1.getThermometerValue() / count; |
|
|
|
|
listTemp.add(Double.parseDouble(df.format(evIn))); |
|
|
|
|
times.add(scr1.getUpdateTime().split(" ")[1].substring(0,5)); |
|
|
|
|
time1 = sdf4.parse(scr1.getUpdateTime()).getTime(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
houseTemp = houseTemp / count; |
|
|
|
|
return houseTemp; |
|
|
|
|
} catch (Exception e){ |
|
|
|
|
e.printStackTrace(); |
|
|
|
|
return 0.0; |
|
|
|
|
} |
|
|
|
|
houseTemp = houseTemp / count; |
|
|
|
|
return houseTemp; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
@ -196,18 +221,30 @@ public class PsdcThermometerHtdataServiceImpl implements IPsdcThermometerHtdataS |
|
|
|
|
List<String> times = new ArrayList(); // 时间轴
|
|
|
|
|
// 循环遍历今天历史数据对象集合
|
|
|
|
|
List<PsdcThermometerHtdata> htdata = psdcThermometerHtdataMapper.selTodayThermometer(deviceId, tb, te); |
|
|
|
|
for (PsdcThermometerHtdata h : htdata) { |
|
|
|
|
if (null != h.getThermometerValueIn()) { |
|
|
|
|
listIn.add(h.getThermometerValueIn()); |
|
|
|
|
} |
|
|
|
|
if (null != h.getThermometerValueOut()) { |
|
|
|
|
listOut.add(h.getThermometerValueOut()); |
|
|
|
|
} |
|
|
|
|
if (null != h.getThermometerValue()) { |
|
|
|
|
listTemps.add(h.getThermometerValue()); |
|
|
|
|
try { |
|
|
|
|
long time1 = 0; |
|
|
|
|
for (int i = 0; i < htdata.size(); i++) { |
|
|
|
|
PsdcThermometerHtdata h = htdata.get(i); |
|
|
|
|
long time2 = sdf4.parse(h.getUpdateTime()).getTime(); |
|
|
|
|
long time3 = time2 - time1; |
|
|
|
|
if(time3 >= 900000){ |
|
|
|
|
if (null != h.getThermometerValue()) { |
|
|
|
|
listTemps.add(h.getThermometerValue()); |
|
|
|
|
} |
|
|
|
|
if (null != h.getThermometerValueIn()) { |
|
|
|
|
listIn.add(h.getThermometerValueIn()); |
|
|
|
|
} |
|
|
|
|
if (null != h.getThermometerValueOut()) { |
|
|
|
|
listOut.add(h.getThermometerValueOut()); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
String t = h.getUpdateTime().split(" ")[1].substring(0, 5); |
|
|
|
|
times.add(t); |
|
|
|
|
time1 = sdf4.parse(h.getUpdateTime()).getTime(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
String t = h.getUpdateTime().split(" ")[1].substring(0, 5); |
|
|
|
|
times.add(t); |
|
|
|
|
} catch (Exception e){ |
|
|
|
|
e.printStackTrace(); |
|
|
|
|
} |
|
|
|
|
AjaxResult ajax = AjaxResult.success().put("tempIn", listIn).put("tempOut", listOut).put("temps", listTemps).put("times", times); |
|
|
|
|
return ajax; |
|
|
|
|