RtAnalogDataServiceImpl.java 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579
  1. package com.bizmatics.service.impl;
  2. import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  3. import com.bizmatics.common.core.util.DateUtils;
  4. import com.bizmatics.common.core.util.StringUtils;
  5. import com.bizmatics.model.*;
  6. import com.bizmatics.persistence.mapper.RtAnalogDataMapper;
  7. import com.bizmatics.service.RtAnalogDataService;
  8. import com.bizmatics.common.mvc.base.AbstractCrudService;
  9. import com.bizmatics.service.SiteService;
  10. import com.bizmatics.service.UserSiteService;
  11. import com.bizmatics.service.util.Arith;
  12. import com.bizmatics.service.util.SessionLocal;
  13. import com.bizmatics.service.vo.RadCountVO;
  14. import org.apache.commons.lang3.ArrayUtils;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.boot.configurationprocessor.json.JSONArray;
  17. import org.springframework.stereotype.Service;
  18. import java.util.*;
  19. import java.util.concurrent.atomic.AtomicInteger;
  20. import java.util.concurrent.atomic.AtomicReference;
  21. /**
  22. * <p>
  23. * 服务实现类
  24. * </p>
  25. *
  26. * @author ya
  27. * @since 2021-07-07
  28. */
  29. @Service
  30. public class RtAnalogDataServiceImpl extends AbstractCrudService<RtAnalogDataMapper, RtAnalogData> implements RtAnalogDataService {
  31. @Autowired
  32. private UserSiteService userSiteService;
  33. @Autowired
  34. private SiteService siteService;
  35. @Override
  36. public RadCountVO selectCount() {
  37. Integer userId = SessionLocal.getUserId();
  38. List<UserSite> userSites = userSiteService.list(Wrappers.lambdaQuery(UserSite.class).eq(UserSite::getUserId, userId));
  39. AtomicReference<Integer> heavyLoad = new AtomicReference<>(0);
  40. AtomicReference<Integer> easyLoad = new AtomicReference<>(0);
  41. AtomicReference<Integer> norMalLoad = new AtomicReference<>(0);
  42. userSites.forEach(userSite -> {
  43. Site site = siteService.getOne(Wrappers.lambdaQuery(Site.class).eq(Site::getId, userSite.getId()));
  44. Double aDouble = baseMapper.selectTotalLoad(userId, site.getId());
  45. String installedCapacity = site.getInstalledCapacity();
  46. double installedCapacityDouble = 0.00;
  47. if (StringUtils.isNotBlank(installedCapacity)){
  48. installedCapacityDouble = Double.parseDouble(installedCapacity);
  49. if (installedCapacityDouble > 0){
  50. Arith.div(aDouble,installedCapacityDouble);
  51. }
  52. }
  53. if (installedCapacityDouble < 0.4){
  54. easyLoad.getAndSet(easyLoad.get() + 1);
  55. }else if (installedCapacityDouble >= 0.4 && installedCapacityDouble <= 0.8){
  56. norMalLoad.getAndSet(norMalLoad.get() + 1);
  57. }else {
  58. heavyLoad.getAndSet(heavyLoad.get() + 1);
  59. }
  60. });
  61. int count = userSites.size();
  62. RadCountVO radCountVO = new RadCountVO();
  63. radCountVO.setHeavyLoad(Arith.div(heavyLoad.get(),count));
  64. radCountVO.setEasyLoad(Arith.div(easyLoad.get(),count));
  65. radCountVO.setNorMalLoad(Arith.div(norMalLoad.get(),count));
  66. return radCountVO;
  67. }
  68. @Override
  69. public List<Map<String, Object>> getOne(Integer siteId) {
  70. List<Map<String, Object>> list = new ArrayList<>();
  71. Map<String, Object> radMap = baseMapper.getOneMap(siteId);
  72. Optional.ofNullable(radMap).ifPresent(rad -> {
  73. for (String name:rad.keySet()) {
  74. Map<String,Object> map = new HashMap<>();
  75. map.put("name",name);
  76. map.put("value",rad.get(name));
  77. list.add(map);
  78. }
  79. });
  80. return list;
  81. }
  82. @Override
  83. public Double getEpLoad(Integer siteId) {
  84. return baseMapper.selectTotalLoad(SessionLocal.getUserId(), siteId);
  85. }
  86. /**
  87. * 添加数据单位
  88. * @return
  89. */
  90. public String addUnit(String name,String value){
  91. if (name.endsWith("电压")){
  92. return value+"V";
  93. }else if (name.endsWith("电流")){
  94. return value+"A";
  95. }else if (name.endsWith("温度")){
  96. return value+"C";
  97. }else if (name.endsWith("频率")){
  98. return value+"Hz";
  99. }else if (name.endsWith("有功功率") || name.endsWith("需量")){
  100. return value+"KW";
  101. }else if (name.endsWith("无功功率")){
  102. return value+"KVar";
  103. }else if (name.endsWith("不平衡度") || name.endsWith("电压畸变率")){
  104. return value+"%";
  105. }else if (name.endsWith("次数")){
  106. return value+"次";
  107. }else if (name.endsWith("电度") || name.endsWith("有功")){
  108. return value+"KWh";
  109. }
  110. return value;
  111. }
  112. @Override
  113. public List<Map<String, Object>> getDataReport(Integer siteId,Date startTime, Date endTime,String queryType) {
  114. List<Map<String, Object>> list = new ArrayList<>();
  115. List<HtAnalogData> rtAnalogDataList = null;
  116. long diff = endTime.getTime() - startTime.getTime();
  117. long days = diff / (1000 * 60 * 60);
  118. if (days<=24){
  119. rtAnalogDataList = baseMapper.getDataReportMap(siteId, startTime, endTime);
  120. }else if (days<360&&days>24){
  121. List<Device> device_list = baseMapper.getDeviceListMap(siteId);
  122. rtAnalogDataList = baseMapper.getDataReportMMap(device_list,startTime, endTime);
  123. }else if (days>=360){
  124. List<Device> device_list = baseMapper.getDeviceListMap(siteId);
  125. rtAnalogDataList = baseMapper.getDataReportDMap(device_list,startTime, endTime);
  126. }
  127. String[] result = queryType.split(",");
  128. if (rtAnalogDataList.size()>0){
  129. rtAnalogDataList.forEach(rtAnalogData -> {
  130. Map<String,Object> map = new HashMap<>();
  131. if (ArrayUtils.contains(result,"I")){
  132. map.put("Ia",rtAnalogData.getIa());
  133. map.put("Ib",rtAnalogData.getIb());
  134. map.put("Ic",rtAnalogData.getIc());
  135. if (ArrayUtils.contains(result,"P")){
  136. map.put("P",rtAnalogData.getP());
  137. map.put("Q",rtAnalogData.getQ());
  138. map.put("Pa",rtAnalogData.getPa());
  139. map.put("Pb",rtAnalogData.getPb());
  140. map.put("Pc",rtAnalogData.getPc());
  141. map.put("Qa",rtAnalogData.getQa());
  142. map.put("Qb",rtAnalogData.getQb());
  143. map.put("Qc",rtAnalogData.getQc());
  144. map.put("Demand",rtAnalogData.getDemand());
  145. if (ArrayUtils.contains(result,"KWh")){
  146. map.put("Epn",rtAnalogData.getEpn());
  147. map.put("Epp",rtAnalogData.getEpp());
  148. map.put("Eqn",rtAnalogData.getEqn());
  149. map.put("Eqp",rtAnalogData.getEqp());
  150. if (ArrayUtils.contains(result,"V")){
  151. map.put("Ua",rtAnalogData.getUa());
  152. map.put("Ub",rtAnalogData.getUb());
  153. map.put("Uc",rtAnalogData.getUc());
  154. map.put("Uab",rtAnalogData.getUab());
  155. map.put("Ubc",rtAnalogData.getUbc());
  156. map.put("Uca",rtAnalogData.getUca());
  157. map.put("Ul",rtAnalogData.getUl());
  158. if (ArrayUtils.contains(result,"C")){
  159. map.put("T1",rtAnalogData.getT1());
  160. map.put("T2",rtAnalogData.getT2());
  161. map.put("T3",rtAnalogData.getT3());
  162. map.put("T4",rtAnalogData.getT4());
  163. map.put("DeviceTemp",rtAnalogData.getDeviceTemp());
  164. if (ArrayUtils.contains(result,"HZ")){
  165. map.put("F",rtAnalogData.getF());
  166. if (ArrayUtils.contains(result,"PS")){
  167. map.put("COSa",rtAnalogData.getCOSa());
  168. map.put("COSb",rtAnalogData.getCOSb());
  169. map.put("COSc",rtAnalogData.getCOSc());
  170. map.put("COS",rtAnalogData.getCos());
  171. if (ArrayUtils.contains(result,"RMS")){
  172. map.put("IHa",rtAnalogData.getIHa());
  173. map.put("IHb",rtAnalogData.getIHb());
  174. map.put("IHc",rtAnalogData.getIHc());
  175. if (ArrayUtils.contains(result,"DDB")){
  176. map.put("SignalIntensity",rtAnalogData.getSignalIntensity());
  177. if (ArrayUtils.contains(result,"VT")){
  178. map.put("Upt",rtAnalogData.getUpt());
  179. map.put("Udt",rtAnalogData.getUdt());
  180. map.put("Ust",rtAnalogData.getUst());
  181. }
  182. }
  183. }
  184. }
  185. }
  186. }
  187. }
  188. }
  189. }
  190. }
  191. if (days<=24){
  192. map.put("dataTime",DateUtils.format(rtAnalogData.getDataTime(),"MM-dd HH:mm"));
  193. }else if (days<360&&days>24){
  194. map.put("dataTime", DateUtils.format(rtAnalogData.getDataTime(),"MM-dd HH:mm"));
  195. }else if (days>=360){
  196. map.put("dataTime", DateUtils.format(rtAnalogData.getDataTime(),DateUtils.PARSE_PATTERNS[8]));
  197. }
  198. list.add(map);
  199. });
  200. }
  201. return list;
  202. }
  203. @Override
  204. public List<Map<String, Object>> getHistoricalCurve(Integer siteId,Date startTime, Date endTime,String queryType) {
  205. List<Map<String, Object>> list = new ArrayList<>();
  206. List<Map<String, Object>> listdataTime = new ArrayList<>();
  207. List<Map<String, Object>> list1 = new ArrayList<>();
  208. List<Map<String, Object>> list2 = new ArrayList<>();
  209. List<Map<String, Object>> list3 = new ArrayList<>();
  210. List<Map<String, Object>> list4 = new ArrayList<>();
  211. List<Map<String, Object>> list5 = new ArrayList<>();
  212. List<Map<String, Object>> list6 = new ArrayList<>();
  213. List<Map<String, Object>> list7 = new ArrayList<>();
  214. List<Map<String, Object>> list8 = new ArrayList<>();
  215. List<Map<String, Object>> list9 = new ArrayList<>();
  216. List<HtAnalogData> rtAnalogDataList = null;
  217. long diff = endTime.getTime() - startTime.getTime();
  218. long days = diff / (1000 * 60 * 60);
  219. if (days<=24){
  220. rtAnalogDataList = baseMapper.getDataReportMap(siteId, startTime, endTime);
  221. }else if (days<360&&days>24){
  222. List<Device> device_list = baseMapper.getDeviceListMap(siteId);
  223. rtAnalogDataList = baseMapper.getDataReportMMap(device_list,startTime, endTime);
  224. }else if (days>=360){
  225. List<Device> device_list = baseMapper.getDeviceListMap(siteId);
  226. rtAnalogDataList = baseMapper.getDataReportDMap(device_list,startTime, endTime);
  227. }
  228. String[] result = queryType.split(",");
  229. if (rtAnalogDataList.size()>0){
  230. Map<String,Object> mapIe1 = new HashMap<>();
  231. Map<String,Object> mapIe2 = new HashMap<>();
  232. Map<String,Object> mapIe3 = new HashMap<>();
  233. Map<String,Object> mapIe4 = new HashMap<>();
  234. Map<String,Object> mapIe5 = new HashMap<>();
  235. Map<String,Object> mapIe6 = new HashMap<>();
  236. Map<String,Object> mapIe7 = new HashMap<>();
  237. Map<String,Object> mapIe8 = new HashMap<>();
  238. Map<String,Object> mapIe9 = new HashMap<>();
  239. for (int i = 0; i < rtAnalogDataList.size(); i++) {
  240. Map<String,Object> map = new HashMap<>();
  241. Map<String,Object> map1 = new HashMap<>();
  242. Map<String,Object> map2 = new HashMap<>();
  243. Map<String,Object> map3 = new HashMap<>();
  244. Map<String,Object> map4 = new HashMap<>();
  245. Map<String,Object> map5 = new HashMap<>();
  246. Map<String,Object> map6 = new HashMap<>();
  247. Map<String,Object> map7 = new HashMap<>();
  248. Map<String,Object> map8 = new HashMap<>();
  249. Map<String,Object> map9 = new HashMap<>();
  250. HtAnalogData rtAnalogData = (HtAnalogData)rtAnalogDataList.get(i);
  251. if (days<=24){
  252. map.put("dataTime",DateUtils.format(rtAnalogData.getDataTime(),"MM-dd HH:mm"));
  253. }else if (days<360&&days>24){
  254. map.put("dataTime", DateUtils.format(rtAnalogData.getDataTime(),"MM-dd HH:mm"));
  255. }else if (days>=360){
  256. map.put("dataTime",DateUtils.format(rtAnalogData.getDataTime(),DateUtils.PARSE_PATTERNS[8]));
  257. }
  258. if (ArrayUtils.contains(result,"I")){
  259. map1.put("Ia",rtAnalogData.getIa());
  260. map2.put("Ib",rtAnalogData.getIb());
  261. map3.put("Ic",rtAnalogData.getIc());
  262. }else if (ArrayUtils.contains(result,"P")){
  263. map1.put("P",rtAnalogData.getP());
  264. map2.put("Q",rtAnalogData.getQ());
  265. map3.put("Pa",rtAnalogData.getPa());
  266. map4.put("Pb",rtAnalogData.getPb());
  267. map5.put("Pc",rtAnalogData.getPc());
  268. map6.put("Qa",rtAnalogData.getQa());
  269. map7.put("Qb",rtAnalogData.getQb());
  270. map8.put("Qc",rtAnalogData.getQc());
  271. map9.put("Demand",rtAnalogData.getDemand());
  272. }else if (ArrayUtils.contains(result,"KWh")){
  273. map1.put("Epn",rtAnalogData.getEpn());
  274. map2.put("Epp",rtAnalogData.getEpp());
  275. map3.put("Eqn",rtAnalogData.getEqn());
  276. map4.put("Eqp",rtAnalogData.getEqp());
  277. }else if (ArrayUtils.contains(result,"V")){
  278. map1.put("Ua",rtAnalogData.getUa());
  279. map2.put("Ub",rtAnalogData.getUb());
  280. map3.put("Uc",rtAnalogData.getUc());
  281. map4.put("Uab",rtAnalogData.getUab());
  282. map5.put("Ubc",rtAnalogData.getUbc());
  283. map6.put("Uca",rtAnalogData.getUca());
  284. map7.put("Ul",rtAnalogData.getUl());
  285. }else if (ArrayUtils.contains(result,"C")){
  286. map1.put("T1",rtAnalogData.getT1());
  287. map2.put("T2",rtAnalogData.getT2());
  288. map3.put("T3",rtAnalogData.getT3());
  289. map4.put("T4",rtAnalogData.getT4());
  290. map5.put("DeviceTemp",rtAnalogData.getDeviceTemp());
  291. }else if (ArrayUtils.contains(result,"HZ")){
  292. map1.put("F",rtAnalogData.getF());
  293. }else if (ArrayUtils.contains(result,"PS")){
  294. map1.put("COSa",rtAnalogData.getCOSa());
  295. map2.put("COSb",rtAnalogData.getCOSb());
  296. map3.put("COSc",rtAnalogData.getCOSc());
  297. map4.put("COS",rtAnalogData.getCos());
  298. }else if (ArrayUtils.contains(result,"RMS")){
  299. map1.put("IHa",rtAnalogData.getIHa());
  300. map2.put("IHb",rtAnalogData.getIHb());
  301. map3.put("IHc",rtAnalogData.getIHc());
  302. }else if (ArrayUtils.contains(result,"DDB")){
  303. map1.put("SignalIntensity",rtAnalogData.getSignalIntensity());
  304. }else if (ArrayUtils.contains(result,"VT")){
  305. map1.put("Upt",rtAnalogData.getUpt());
  306. map2.put("Udt",rtAnalogData.getUdt());
  307. map3.put("Ust",rtAnalogData.getUst());
  308. }
  309. listdataTime.add(map);
  310. list1.add(map1);
  311. list2.add(map2);
  312. list3.add(map3);
  313. list4.add(map4);
  314. list5.add(map5);
  315. list6.add(map6);
  316. list7.add(map7);
  317. list8.add(map8);
  318. list9.add(map9);
  319. }
  320. Object arre1[][]=new Object[listdataTime.size()][2];
  321. Object arre2[][]=new Object[listdataTime.size()][2];
  322. Object arre3[][]=new Object[listdataTime.size()][2];
  323. Object arre4[][]=new Object[listdataTime.size()][2];
  324. Object arre5[][]=new Object[listdataTime.size()][2];
  325. Object arre6[][]=new Object[listdataTime.size()][2];
  326. Object arre7[][]=new Object[listdataTime.size()][2];
  327. Object arre8[][]=new Object[listdataTime.size()][2];
  328. Object arre9[][]=new Object[listdataTime.size()][2];
  329. if (ArrayUtils.contains(result,"I")){
  330. for (int i = 0; i < listdataTime.size(); i++) {
  331. arre1[i][1]=listdataTime.get(i).get("dataTime");
  332. arre1[i][0]=list1.get(i).get("Ia");
  333. arre2[i][1]=listdataTime.get(i).get("dataTime");
  334. arre2[i][0]=list2.get(i).get("Ib");
  335. arre3[i][1]=listdataTime.get(i).get("dataTime");
  336. arre3[i][0]=list3.get(i).get("Ic");
  337. }
  338. mapIe1.put("name","A相电流");
  339. mapIe1.put("arr",arre1);
  340. mapIe2.put("name","B相电流");
  341. mapIe2.put("arr",arre2);
  342. mapIe3.put("name","C相电流");
  343. mapIe3.put("arr",arre3);
  344. list.add(mapIe1);
  345. list.add(mapIe2);
  346. list.add(mapIe3);
  347. }else if (ArrayUtils.contains(result,"P")){
  348. for (int i = 0; i < listdataTime.size(); i++) {
  349. arre1[i][1]=listdataTime.get(i).get("dataTime");
  350. arre1[i][0]=list1.get(i).get("P");
  351. arre2[i][1]=listdataTime.get(i).get("dataTime");
  352. arre2[i][0]=list2.get(i).get("Q");
  353. arre3[i][1]=listdataTime.get(i).get("dataTime");
  354. arre3[i][0]=list3.get(i).get("Pa");
  355. arre4[i][1]=listdataTime.get(i).get("dataTime");
  356. arre4[i][0]=list4.get(i).get("Pb");
  357. arre5[i][1]=listdataTime.get(i).get("dataTime");
  358. arre5[i][0]=list5.get(i).get("Pc");
  359. arre6[i][1]=listdataTime.get(i).get("dataTime");
  360. arre6[i][0]=list6.get(i).get("Qa");
  361. arre7[i][1]=listdataTime.get(i).get("dataTime");
  362. arre7[i][0]=list7.get(i).get("Qb");
  363. arre8[i][1]=listdataTime.get(i).get("dataTime");
  364. arre8[i][0]=list8.get(i).get("Qc");
  365. arre9[i][1]=listdataTime.get(i).get("dataTime");
  366. arre9[i][0]=list9.get(i).get("Demand");
  367. }
  368. mapIe1.put("name","总有功功率");
  369. mapIe1.put("arr",arre1);
  370. mapIe2.put("name","总无功功率");
  371. mapIe2.put("arr",arre2);
  372. mapIe3.put("name","A相有功功率");
  373. mapIe3.put("arr",arre3);
  374. mapIe4.put("name","B相有功功率");
  375. mapIe4.put("arr",arre4);
  376. mapIe5.put("name","C相有功功率");
  377. mapIe5.put("arr",arre5);
  378. mapIe6.put("name","A相无功功率");
  379. mapIe6.put("arr",arre6);
  380. mapIe7.put("name","B相无功功率");
  381. mapIe7.put("arr",arre7);
  382. mapIe8.put("name","C相无功功率");
  383. mapIe8.put("arr",arre8);
  384. mapIe9.put("name","实时需量");
  385. mapIe9.put("arr",arre9);
  386. list.add(mapIe1);
  387. list.add(mapIe2);
  388. list.add(mapIe3);
  389. list.add(mapIe4);
  390. list.add(mapIe5);
  391. list.add(mapIe6);
  392. list.add(mapIe7);
  393. list.add(mapIe8);
  394. list.add(mapIe9);
  395. }else if (ArrayUtils.contains(result,"KWh")){
  396. for (int i = 0; i < listdataTime.size(); i++) {
  397. arre1[i][1]=listdataTime.get(i).get("dataTime");
  398. arre1[i][0]=list1.get(i).get("Epn");
  399. arre2[i][1]=listdataTime.get(i).get("dataTime");
  400. arre2[i][0]=list2.get(i).get("Epp");
  401. arre3[i][1]=listdataTime.get(i).get("dataTime");
  402. arre3[i][0]=list3.get(i).get("Eqn");
  403. arre4[i][1]=listdataTime.get(i).get("dataTime");
  404. arre4[i][0]=list4.get(i).get("Eqp");
  405. }
  406. mapIe1.put("name","负有功电度");
  407. mapIe1.put("arr",arre1);
  408. mapIe2.put("name","正有功电度");
  409. mapIe2.put("arr",arre2);
  410. mapIe3.put("name","负无功电度");
  411. mapIe3.put("arr",arre3);
  412. mapIe4.put("name","正无功电度");
  413. mapIe4.put("arr",arre4);
  414. list.add(mapIe1);
  415. list.add(mapIe2);
  416. list.add(mapIe3);
  417. list.add(mapIe4);
  418. }else if (ArrayUtils.contains(result,"V")){
  419. for (int i = 0; i < listdataTime.size(); i++) {
  420. arre1[i][1]=listdataTime.get(i).get("dataTime");
  421. arre1[i][0]=list1.get(i).get("Ua");
  422. arre2[i][1]=listdataTime.get(i).get("dataTime");
  423. arre2[i][0]=list2.get(i).get("Ub");
  424. arre3[i][1]=listdataTime.get(i).get("dataTime");
  425. arre3[i][0]=list3.get(i).get("Uc");
  426. arre4[i][1]=listdataTime.get(i).get("dataTime");
  427. arre4[i][0]=list4.get(i).get("Uab");
  428. arre5[i][1]=listdataTime.get(i).get("dataTime");
  429. arre5[i][0]=list5.get(i).get("Ubc");
  430. arre6[i][1]=listdataTime.get(i).get("dataTime");
  431. arre6[i][0]=list6.get(i).get("Uca");
  432. arre7[i][1]=listdataTime.get(i).get("dataTime");
  433. arre7[i][0]=list7.get(i).get("Ul");
  434. }
  435. mapIe1.put("name","A相电压");
  436. mapIe1.put("arr",arre1);
  437. mapIe2.put("name","B相电压");
  438. mapIe2.put("arr",arre2);
  439. mapIe3.put("name","C相电压");
  440. mapIe3.put("arr",arre3);
  441. mapIe4.put("name","AB线电压");
  442. mapIe4.put("arr",arre4);
  443. mapIe5.put("name","BC线电压");
  444. mapIe5.put("arr",arre5);
  445. mapIe6.put("name","CA线电压");
  446. mapIe6.put("arr",arre6);
  447. mapIe7.put("name","回路电压");
  448. mapIe7.put("arr",arre7);
  449. list.add(mapIe1);
  450. list.add(mapIe2);
  451. list.add(mapIe3);
  452. list.add(mapIe4);
  453. list.add(mapIe5);
  454. list.add(mapIe6);
  455. list.add(mapIe7);
  456. }else if (ArrayUtils.contains(result,"C")){
  457. for (int i = 0; i < listdataTime.size(); i++) {
  458. arre1[i][1]=listdataTime.get(i).get("dataTime");
  459. arre1[i][0]=list1.get(i).get("T1");
  460. arre2[i][1]=listdataTime.get(i).get("dataTime");
  461. arre2[i][0]=list2.get(i).get("T2");
  462. arre3[i][1]=listdataTime.get(i).get("dataTime");
  463. arre3[i][0]=list3.get(i).get("T3");
  464. arre4[i][1]=listdataTime.get(i).get("dataTime");
  465. arre4[i][0]=list4.get(i).get("T4");
  466. arre5[i][1]=listdataTime.get(i).get("dataTime");
  467. arre5[i][0]=list5.get(i).get("DeviceTemp");
  468. }
  469. mapIe1.put("name","外接温度1");
  470. mapIe1.put("arr",arre1);
  471. mapIe2.put("name","外接温度1");
  472. mapIe2.put("arr",arre2);
  473. mapIe3.put("name","外接温度1");
  474. mapIe3.put("arr",arre3);
  475. mapIe4.put("name","外接温度1");
  476. mapIe4.put("arr",arre4);
  477. mapIe5.put("name","环境温度");
  478. mapIe5.put("arr",arre5);
  479. list.add(mapIe1);
  480. list.add(mapIe2);
  481. list.add(mapIe3);
  482. list.add(mapIe4);
  483. list.add(mapIe5);
  484. }else if (ArrayUtils.contains(result,"HZ")){
  485. for (int i = 0; i < listdataTime.size(); i++) {
  486. arre1[i][1]=listdataTime.get(i).get("dataTime");
  487. arre1[i][0]=list1.get(i).get("F");
  488. }
  489. mapIe1.put("name","频率");
  490. mapIe1.put("arr",arre1);
  491. list.add(mapIe1);
  492. }else if (ArrayUtils.contains(result,"PS")){
  493. for (int i = 0; i < listdataTime.size(); i++) {
  494. arre1[i][1]=listdataTime.get(i).get("dataTime");
  495. arre1[i][0]=list1.get(i).get("COSa");
  496. arre2[i][1]=listdataTime.get(i).get("dataTime");
  497. arre2[i][0]=list2.get(i).get("COSb");
  498. arre3[i][1]=listdataTime.get(i).get("dataTime");
  499. arre3[i][0]=list3.get(i).get("COSc");
  500. arre4[i][1]=listdataTime.get(i).get("dataTime");
  501. arre4[i][0]=list4.get(i).get("COS");
  502. }
  503. mapIe1.put("name","A相功率因数");
  504. mapIe1.put("arr",arre1);
  505. mapIe2.put("name","B相功率因数");
  506. mapIe2.put("arr",arre2);
  507. mapIe3.put("name","C相功率因数");
  508. mapIe3.put("arr",arre3);
  509. mapIe4.put("name","功率因数");
  510. mapIe4.put("arr",arre4);
  511. list.add(mapIe1);
  512. list.add(mapIe2);
  513. list.add(mapIe3);
  514. list.add(mapIe4);
  515. }else if (ArrayUtils.contains(result,"RMS")){
  516. for (int i = 0; i < listdataTime.size(); i++) {
  517. arre1[i][1]=listdataTime.get(i).get("dataTime");
  518. arre1[i][0]=list1.get(i).get("IHa");
  519. arre2[i][1]=listdataTime.get(i).get("dataTime");
  520. arre2[i][0]=list2.get(i).get("IHb");
  521. arre3[i][1]=listdataTime.get(i).get("dataTime");
  522. arre3[i][0]=list3.get(i).get("IHc");
  523. }
  524. mapIe1.put("name","Ia总谐波电流");
  525. mapIe1.put("arr",arre1);
  526. mapIe2.put("name","Ib总谐波电流");
  527. mapIe2.put("arr",arre2);
  528. mapIe3.put("name","Ic总谐波电流");
  529. mapIe3.put("arr",arre3);
  530. list.add(mapIe1);
  531. list.add(mapIe2);
  532. list.add(mapIe3);
  533. }else if (ArrayUtils.contains(result,"DDB")){
  534. for (int i = 0; i < listdataTime.size(); i++) {
  535. arre1[i][1]=listdataTime.get(i).get("dataTime");
  536. arre1[i][0]=list1.get(i).get("SignalIntensity");
  537. }
  538. mapIe1.put("name","设备信号强度");
  539. mapIe1.put("arr",arre1);
  540. list.add(mapIe1);
  541. }else if (ArrayUtils.contains(result,"VT")){
  542. for (int i = 0; i < listdataTime.size(); i++) {
  543. arre1[i][1]=listdataTime.get(i).get("dataTime");
  544. arre1[i][0]=list1.get(i).get("Upt");
  545. arre2[i][1]=listdataTime.get(i).get("dataTime");
  546. arre2[i][0]=list2.get(i).get("Udt");
  547. arre3[i][1]=listdataTime.get(i).get("dataTime");
  548. arre3[i][0]=list3.get(i).get("Ust");
  549. }
  550. mapIe1.put("name","电压暂升次数");
  551. mapIe1.put("arr",arre1);
  552. mapIe2.put("name","电压暂降次数");
  553. mapIe2.put("arr",arre2);
  554. mapIe3.put("name","电压中断次数");
  555. mapIe3.put("arr",arre3);
  556. list.add(mapIe1);
  557. list.add(mapIe2);
  558. list.add(mapIe3);
  559. }
  560. }
  561. return list;
  562. }
  563. }