Commit 94b5d4be authored by lilongyang's avatar lilongyang

1、大屏->光伏->光伏场各子阵状态->子系统各变量健康状态指数趋势查询修改

2、大屏->光伏->场站设备健康状态指数与趋势查询修改
parent e6720fac
...@@ -69,10 +69,8 @@ import com.yeejoin.amos.boot.module.jxiop.biz.tdMapper2.PvHealthIndexDayMapper; ...@@ -69,10 +69,8 @@ import com.yeejoin.amos.boot.module.jxiop.biz.tdMapper2.PvHealthIndexDayMapper;
import com.yeejoin.amos.boot.module.jxiop.biz.tdMapper2.PvHealthIndexMapper; import com.yeejoin.amos.boot.module.jxiop.biz.tdMapper2.PvHealthIndexMapper;
import com.yeejoin.amos.boot.module.jxiop.biz.tdMapper2.PvWaringRecordMapper; import com.yeejoin.amos.boot.module.jxiop.biz.tdMapper2.PvWaringRecordMapper;
import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.FanHealthIndex; import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.FanHealthIndex;
import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.FanHealthIndexDay;
import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.FanWarningRecord; import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.FanWarningRecord;
import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.PvHealthIndex; import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.PvHealthIndex;
import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.PvHealthIndexDay;
import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.PvWarningRecord; import com.yeejoin.amos.boot.module.jxiop.biz.tdengine.PvWarningRecord;
import com.yeejoin.amos.boot.module.jxiop.biz.tdmapper.IndicatorDataMapper; import com.yeejoin.amos.boot.module.jxiop.biz.tdmapper.IndicatorDataMapper;
import com.yeejoin.amos.boot.module.jxiop.biz.utils.TimeRangeUtil; import com.yeejoin.amos.boot.module.jxiop.biz.utils.TimeRangeUtil;
...@@ -157,8 +155,8 @@ public class TDBigScreenAnalyseController extends BaseController { ...@@ -157,8 +155,8 @@ public class TDBigScreenAnalyseController extends BaseController {
wrapper.eq(FanHealthIndex::getAnalysisType, "按10分钟"); wrapper.eq(FanHealthIndex::getAnalysisType, "按10分钟");
if (CharSequenceUtil.isNotEmpty(stationCode)) { if (CharSequenceUtil.isNotEmpty(stationCode)) {
StationBasic stationBasic = stationBasicMapper.selectById(stationCode); StationBasic stationBasic = stationBasicMapper.selectById(stationCode);
stationCode = stationBasic.getFanGatewayId();
if ("FDZ".equals(stationBasic.getStationType())) { if ("FDZ".equals(stationBasic.getStationType())) {
stationCode = stationBasic.getFanGatewayId();
wrapper.eq(FanHealthIndex::getAnalysisObjType, "场站"); wrapper.eq(FanHealthIndex::getAnalysisObjType, "场站");
wrapper.eq(FanHealthIndex::getGatewayId, stationCode); wrapper.eq(FanHealthIndex::getGatewayId, stationCode);
FanHealthIndex fanHealthIndex = fanHealthIndexMapper.selectOne(wrapper); FanHealthIndex fanHealthIndex = fanHealthIndexMapper.selectOne(wrapper);
...@@ -175,6 +173,7 @@ public class TDBigScreenAnalyseController extends BaseController { ...@@ -175,6 +173,7 @@ public class TDBigScreenAnalyseController extends BaseController {
pvwrapper.eq(PvHealthIndex::getGatewayId, stationCode); pvwrapper.eq(PvHealthIndex::getGatewayId, stationCode);
pvwrapper.orderByDesc(PvHealthIndex::getTs); pvwrapper.orderByDesc(PvHealthIndex::getTs);
pvwrapper.last("limit 1"); pvwrapper.last("limit 1");
pvwrapper.eq(PvHealthIndex::getAnalysisType, "按10分钟");
PvHealthIndex pvHealthIndex = pvHealthIndexMapper.selectOne(pvwrapper); PvHealthIndex pvHealthIndex = pvHealthIndexMapper.selectOne(pvwrapper);
//预防空指针 //预防空指针
if (Objects.isNull(pvHealthIndex)) { if (Objects.isNull(pvHealthIndex)) {
...@@ -340,9 +339,10 @@ public class TDBigScreenAnalyseController extends BaseController { ...@@ -340,9 +339,10 @@ public class TDBigScreenAnalyseController extends BaseController {
} else { } else {
LambdaQueryWrapper<PvHealthIndex> pvwrapper = new LambdaQueryWrapper<PvHealthIndex>(); LambdaQueryWrapper<PvHealthIndex> pvwrapper = new LambdaQueryWrapper<PvHealthIndex>();
pvwrapper.eq(PvHealthIndex::getAnalysisObjType, "场站"); pvwrapper.eq(PvHealthIndex::getAnalysisObjType, "场站");
pvwrapper.eq(PvHealthIndex::getGatewayId, stationCode); pvwrapper.eq(PvHealthIndex::getGatewayId, finalStationCode);
pvwrapper.orderByDesc(PvHealthIndex::getTs); pvwrapper.orderByDesc(PvHealthIndex::getTs);
pvwrapper.last("limit 15"); pvwrapper.last("limit 15");
pvwrapper.eq(PvHealthIndex::getAnalysisType, "按10分钟");
List<PvHealthIndex> pvHealthIndexList = pvHealthIndexMapper.selectList(pvwrapper); List<PvHealthIndex> pvHealthIndexList = pvHealthIndexMapper.selectList(pvwrapper);
valueList = pvHealthIndexList.stream().map(t -> String.valueOf(BigDecimal.valueOf(t.getHealthIndex()) valueList = pvHealthIndexList.stream().map(t -> String.valueOf(BigDecimal.valueOf(t.getHealthIndex())
.setScale(1, BigDecimal.ROUND_HALF_UP))).collect(Collectors.toList()); .setScale(1, BigDecimal.ROUND_HALF_UP))).collect(Collectors.toList());
......
...@@ -656,9 +656,7 @@ FROM ( ...@@ -656,9 +656,7 @@ FROM (
</select> </select>
<select id="getPvSubSystemInfo" resultType="java.util.Map"> <select id="getPvSubSystemInfo" resultType="java.util.Map">
SELECT SELECT
IFNULL ( ROUND( MAX(HEALTH_INDEX), 2 ), 100 ) AS avgHealthIndex IFNULL ( ROUND( MAX(HEALTH_INDEX), 2 ), 100 ) AS avgHealthIndex,
round(IFNULL( AVG( HEALTH_INDEX ), 100 ), 1) AS avgHealthIndex,
EQUIPMENT_NAME AS equipmentName EQUIPMENT_NAME AS equipmentName
FROM FROM
pv_health_index_latest_data pv_health_index_latest_data
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment