|
@@ -107,8 +107,10 @@ public class BigScreenSbInfoServiceImpl extends BaseServiceImpl<SbInfoMapper, Sb
|
|
|
private final RemoteMeasureMapper remoteMeasureMapper;
|
|
|
private final SysDictMapper sysDictMapper;
|
|
|
private final RemoteDegreeLogMapper remoteDegreeLogMapper;
|
|
|
+
|
|
|
/**
|
|
|
* 按照线路汇总统计
|
|
|
+ *
|
|
|
* @param lineNum
|
|
|
* @return
|
|
|
*/
|
|
@@ -122,20 +124,30 @@ public class BigScreenSbInfoServiceImpl extends BaseServiceImpl<SbInfoMapper, Sb
|
|
|
throw new BusinessException("请在数据字典配置设备电力线路,数据值:" + lineNum);
|
|
|
}
|
|
|
|
|
|
- // 查询所有的遥测点位
|
|
|
+ // 查询所有的遥测点位:包含威胜多功能表的
|
|
|
Weekend<RemoteMeasure> remoteDegreeWeekend = new Weekend<>(RemoteMeasure.class);
|
|
|
WeekendCriteria<RemoteMeasure, Object> remoteDegreeObjectWeekendCriteria = remoteDegreeWeekend.weekendCriteria();
|
|
|
- remoteDegreeObjectWeekendCriteria.andEqualTo(RemoteMeasure::getLine, lineNum);
|
|
|
+ remoteDegreeObjectWeekendCriteria.andLike(RemoteMeasure::getSbName, "%威胜多功能%").andEqualTo(RemoteMeasure::getLine, lineNum);
|
|
|
List<RemoteMeasure> remoteMeasureList = remoteMeasureMapper.selectByExample(remoteDegreeWeekend);
|
|
|
JSONObject obj = new JSONObject();
|
|
|
- if(CollectionUtil.isNotEmpty(remoteMeasureList)){
|
|
|
+ if (CollectionUtil.isNotEmpty(remoteMeasureList)) {
|
|
|
obj.put("line", lineNum);
|
|
|
obj.put("lineName", sysDict.getLabel());
|
|
|
Map<String, List<RemoteMeasure>> map = remoteMeasureList.stream().collect(Collectors.groupingBy(RemoteMeasure::getSbName, Collectors.toList()));
|
|
|
+ map = map.entrySet().stream().sorted(Map.Entry.comparingByKey()).collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue, (oldVal, newVal) -> oldVal, LinkedHashMap::new));
|
|
|
JSONArray lineArray = new JSONArray();
|
|
|
- for(String key:map.keySet()){
|
|
|
+ for (String key : map.keySet()) {
|
|
|
JSONObject dictJsonObject = new JSONObject();
|
|
|
dictJsonObject.put("sbName", key);
|
|
|
+ if (key.contains("电容")) {
|
|
|
+ dictJsonObject.put("imgType", 1);
|
|
|
+ } else if (key.contains("机") || key.contains("泵")) {
|
|
|
+ dictJsonObject.put("imgType", 2);
|
|
|
+ } else if (key.contains("主变")) {
|
|
|
+ dictJsonObject.put("imgType", 3);
|
|
|
+ } else {
|
|
|
+ dictJsonObject.put("imgType", 4);
|
|
|
+ }
|
|
|
dictJsonObject.put("measureList", map.get(key));
|
|
|
lineArray.add(dictJsonObject);
|
|
|
}
|
|
@@ -203,6 +215,7 @@ public class BigScreenSbInfoServiceImpl extends BaseServiceImpl<SbInfoMapper, Sb
|
|
|
throw new BusinessException("请在数据字典配置设备电力线路");
|
|
|
}
|
|
|
sysDictList.sort(Comparator.comparing(SysDict::getSort));
|
|
|
+ record.setSbName("G01");
|
|
|
List<RemoteDegreeLogVO> list = remoteDegreeLogMapper.selectList(record);
|
|
|
JSONArray jSONArray = new JSONArray();
|
|
|
if (isDay) {//
|
|
@@ -226,8 +239,8 @@ public class BigScreenSbInfoServiceImpl extends BaseServiceImpl<SbInfoMapper, Sb
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- dictJsonObject.put("positive", positiveTotal.divide(BigDecimal.valueOf(100),2, RoundingMode.HALF_UP).doubleValue());
|
|
|
- dictJsonObject.put("negative", negativeTotal.divide(BigDecimal.valueOf(100),2, RoundingMode.HALF_UP).doubleValue());
|
|
|
+ dictJsonObject.put("positive", positiveTotal.divide(BigDecimal.valueOf(100), 2, RoundingMode.HALF_UP).doubleValue());
|
|
|
+ dictJsonObject.put("negative", negativeTotal.divide(BigDecimal.valueOf(100), 2, RoundingMode.HALF_UP).doubleValue());
|
|
|
lineArray.add(dictJsonObject);
|
|
|
}
|
|
|
jsonObject.put("lines", lineArray);
|
|
@@ -246,7 +259,7 @@ public class BigScreenSbInfoServiceImpl extends BaseServiceImpl<SbInfoMapper, Sb
|
|
|
BigDecimal positiveTotal = new BigDecimal(0.00);// 正向有功
|
|
|
BigDecimal negativeTotal = new BigDecimal(0.00);// 正向无功,不需要吗,后面可以删除,先保存
|
|
|
for (RemoteDegreeLogVO log : list) {
|
|
|
- if(log.getLine() == null){
|
|
|
+ if (log.getLine() == null) {
|
|
|
throw new BusinessException("设备未设置电力线路, 设备名称:" + log.getSbName() + ", 设备编号:" + log.getSbNo());
|
|
|
}
|
|
|
if (log.getLine().toString().equals(dict.getValue())) {
|
|
@@ -259,8 +272,8 @@ public class BigScreenSbInfoServiceImpl extends BaseServiceImpl<SbInfoMapper, Sb
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- dictJsonObject.put("positive", positiveTotal.divide(BigDecimal.valueOf(100),2, RoundingMode.HALF_UP).doubleValue());
|
|
|
- dictJsonObject.put("negative", negativeTotal.divide(BigDecimal.valueOf(100),2, RoundingMode.HALF_UP).doubleValue());
|
|
|
+ dictJsonObject.put("positive", positiveTotal.divide(BigDecimal.valueOf(100), 2, RoundingMode.HALF_UP).doubleValue());
|
|
|
+ dictJsonObject.put("negative", negativeTotal.divide(BigDecimal.valueOf(100), 2, RoundingMode.HALF_UP).doubleValue());
|
|
|
lineArray.add(dictJsonObject);
|
|
|
}
|
|
|
jsonObject.put("lines", lineArray);
|