zbj//1.大屏中间所有数据稳态符合性
This commit is contained in:
@@ -21,6 +21,12 @@ public class AllDataVO implements Serializable {
|
|||||||
@ApiModelProperty("部门名称")
|
@ApiModelProperty("部门名称")
|
||||||
private String areaName;
|
private String areaName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 部门id
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("部门id")
|
||||||
|
private String index;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 暂降事件次数
|
* 暂降事件次数
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -32,4 +32,7 @@ public interface LargeScreenMapper {
|
|||||||
List<Map<String, Object>> getMiddleTerminal (@Param("deviceIds") List<String> deviceIds, @Param("startTime") String startTime, @Param("endTime") String endTime);
|
List<Map<String, Object>> getMiddleTerminal (@Param("deviceIds") List<String> deviceIds, @Param("startTime") String startTime, @Param("endTime") String endTime);
|
||||||
|
|
||||||
List<MiddleLimitRateVO> getMiddleLimitRate (@Param("lineIds") List<String> deviceIds, @Param("startTime") String startTime, @Param("endTime") String endTime);
|
List<MiddleLimitRateVO> getMiddleLimitRate (@Param("lineIds") List<String> deviceIds, @Param("startTime") String startTime, @Param("endTime") String endTime);
|
||||||
|
|
||||||
|
List<Map<String,Object>> getHomeostasisArea (@Param("indexIds") List<String> indexIds, @Param("startTime") String startTime, @Param("endTime") String endTime);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -195,5 +195,23 @@
|
|||||||
left join pq_line pl3 on pl2.Pid = pl3.Id
|
left join pq_line pl3 on pl2.Pid = pl3.Id
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="getHomeostasisArea" resultType="java.util.Map">
|
||||||
|
select
|
||||||
|
rshom.org_no "id",
|
||||||
|
round(avg(rshom.over_limit_measurement_ratio_accrued),2) avg
|
||||||
|
from r_stat_harmonic_org_m rshom
|
||||||
|
left join sys_dict_data sdd on rshom.data_type = sdd.Id and sdd.`Code` = 'Mainnet_Point'
|
||||||
|
WHERE
|
||||||
|
rshom.org_no IN
|
||||||
|
<foreach collection="indexIds" item="item" open="(" close=")" separator=",">
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
<if test="startTime != null and startTime != ''">
|
||||||
|
and date_format(rshom.data_date,'%y%m%d') >= date_format(#{startTime},'%y%m%d')
|
||||||
|
</if>
|
||||||
|
<if test="endTime != null and endTime != ''">
|
||||||
|
and date_format(rshom.data_date,'%y%m%d') <= date_format(#{endTime},'%y%m%d')
|
||||||
|
</if>
|
||||||
|
group by rshom.org_no
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import com.njcn.system.pojo.enums.StatisticsEnum;
|
|||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.collections.map.HashedMap;
|
import org.apache.commons.collections.map.HashedMap;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import com.njcn.device.pq.api.GeneralDeviceInfoClient;
|
import com.njcn.device.pq.api.GeneralDeviceInfoClient;
|
||||||
|
|
||||||
@@ -19,10 +20,7 @@ import java.math.RoundingMode;
|
|||||||
import java.text.NumberFormat;
|
import java.text.NumberFormat;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -274,6 +272,8 @@ public class LargeScreenServiceImpl implements LargeScreenService {
|
|||||||
if (generalDeviceDTO.getDeviceIndexes().size() > 0) {
|
if (generalDeviceDTO.getDeviceIndexes().size() > 0) {
|
||||||
AllDataVO allDataVO = largeScreenMapper.getFlagCount(generalDeviceDTO.getDeviceIndexes());
|
AllDataVO allDataVO = largeScreenMapper.getFlagCount(generalDeviceDTO.getDeviceIndexes());
|
||||||
allDataVO.setAreaName(generalDeviceDTO.getName());
|
allDataVO.setAreaName(generalDeviceDTO.getName());
|
||||||
|
allDataVO.setIndex(generalDeviceDTO.getIndex());
|
||||||
|
allDataVO.setSteadyLoad("0.0");
|
||||||
if (generalDeviceDTO.getLineIndexes().size() > 0) {
|
if (generalDeviceDTO.getLineIndexes().size() > 0) {
|
||||||
Map<String, Object> map = largeScreenMapper.getDownCount(generalDeviceDTO.getLineIndexes(), largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
Map<String, Object> map = largeScreenMapper.getDownCount(generalDeviceDTO.getLineIndexes(), largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
||||||
allDataVO.setEventCounts(map.get("count").toString());
|
allDataVO.setEventCounts(map.get("count").toString());
|
||||||
@@ -284,11 +284,13 @@ public class LargeScreenServiceImpl implements LargeScreenService {
|
|||||||
} else {
|
} else {
|
||||||
AllDataVO allDataVO = new AllDataVO();
|
AllDataVO allDataVO = new AllDataVO();
|
||||||
allDataVO.setAreaName(generalDeviceDTO.getName());
|
allDataVO.setAreaName(generalDeviceDTO.getName());
|
||||||
|
allDataVO.setIndex(generalDeviceDTO.getIndex());
|
||||||
allDataVO.setRunning("0");
|
allDataVO.setRunning("0");
|
||||||
allDataVO.setHotSpare("0");
|
allDataVO.setHotSpare("0");
|
||||||
allDataVO.setShutdown("0");
|
allDataVO.setShutdown("0");
|
||||||
allDataVO.setNormal("0");
|
allDataVO.setNormal("0");
|
||||||
allDataVO.setBreakdown("0");
|
allDataVO.setBreakdown("0");
|
||||||
|
allDataVO.setSteadyLoad("0.0");
|
||||||
if (generalDeviceDTO.getLineIndexes().size() > 0) {
|
if (generalDeviceDTO.getLineIndexes().size() > 0) {
|
||||||
Map<String, Object> map = largeScreenMapper.getDownCount(generalDeviceDTO.getLineIndexes(), largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
Map<String, Object> map = largeScreenMapper.getDownCount(generalDeviceDTO.getLineIndexes(), largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
||||||
allDataVO.setEventCounts(map.get("count").toString());
|
allDataVO.setEventCounts(map.get("count").toString());
|
||||||
@@ -298,7 +300,20 @@ public class LargeScreenServiceImpl implements LargeScreenService {
|
|||||||
result.add(allDataVO);
|
result.add(allDataVO);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//todo 该接口部分功能未完成 1.稳态符合性 2.综合评估
|
//部门id集合
|
||||||
|
List<String> indexIds = generalDeviceDTOList.stream().map(GeneralDeviceDTO::getIndex).collect(Collectors.toList());
|
||||||
|
List<Map<String, Object>> homeostasisArea = largeScreenMapper.getHomeostasisArea(indexIds, largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
||||||
|
float f = 0.0f;
|
||||||
|
for (AllDataVO allDataVO : result) {
|
||||||
|
for (Map<String, Object> map : homeostasisArea) {
|
||||||
|
if (Objects.equals(map.get("id"),allDataVO.getIndex())){
|
||||||
|
f=Float.parseFloat(map.get("avg").toString());
|
||||||
|
allDataVO.setSteadyLoad(String.valueOf((1-f)*100));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//todo 该接口部分功能未完成 1.综合评估
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,5 @@
|
|||||||
package com.njcn.harmonic.mapper.majornetwork;
|
package com.njcn.harmonic.mapper.majornetwork;
|
||||||
|
|
||||||
import com.njcn.device.pq.pojo.vo.AllDataVO;
|
|
||||||
import com.njcn.device.pq.pojo.vo.EventVO;
|
|
||||||
import com.njcn.device.pq.pojo.vo.MiddleLimitRateVO;
|
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|||||||
Reference in New Issue
Block a user