zbj//1.大屏接口 代码调整
This commit is contained in:
@@ -26,6 +26,6 @@ public class MiddleTerminalListVO implements Serializable {
|
||||
* 总次数
|
||||
*/
|
||||
@ApiModelProperty("总次数")
|
||||
private Integer size;
|
||||
private Long size;
|
||||
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.njcn.event.controller.majornetwork;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.common.pojo.annotation.OperateInfo;
|
||||
import com.njcn.common.pojo.enums.common.LogEnum;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
@@ -135,9 +136,9 @@ public class LargeScreenController extends BaseController {
|
||||
@PostMapping("/getMiddleLimitRate")
|
||||
@ApiOperation("大屏中间稳态越线信息")
|
||||
@ApiImplicitParam(name = "largeScreenParam", value = "大屏中间稳态越线信息", required = true)
|
||||
public HttpResult<MiddleLimitRateListVO> getMiddleLimitRate(@RequestBody @Validated LargeScreenParam largeScreenParam) {
|
||||
public HttpResult<Page<MiddleLimitRateVO>> getMiddleLimitRate(@RequestBody @Validated LargeScreenParam largeScreenParam) {
|
||||
String methodDescribe = getMethodDescribe("getMiddleLimitRate");
|
||||
MiddleLimitRateListVO result = largeScreenService.getMiddleLimitRate(largeScreenParam);
|
||||
Page<MiddleLimitRateVO> result = largeScreenService.getMiddleLimitRate(largeScreenParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ public interface LargeScreenMapper {
|
||||
|
||||
List<Map<String, Object>> getTimeCount(@Param("lineIds") List<String> lineIds, @Param("startTime") String startTime, @Param("endTime") String endTime);
|
||||
|
||||
List<EventVO> eventLists(@Param("startTime") String startTime, @Param("endTime") String endTime);
|
||||
List<EventVO> eventLists(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("typeId") String typeId);
|
||||
|
||||
AllDataVO getFlagCount(@Param("lineIds") List<String> lineIds);
|
||||
|
||||
@@ -36,11 +36,11 @@ public interface LargeScreenMapper {
|
||||
|
||||
List<EventVO> getMiddleDownChind (@Param("lineIds") List<String> lineIds, @Param("startTime") String startTime, @Param("endTime") String endTime);
|
||||
|
||||
List<MiddleChildVO> getMiddleTerminal (Page<MiddleChildVO> page,@Param("deviceIds") List<String> deviceIds, @Param("startTime") String startTime, @Param("endTime") String endTime);
|
||||
Page<MiddleChildVO> getMiddleTerminal (Page<MiddleChildVO> page,@Param("deviceIds") List<String> deviceIds, @Param("startTime") String startTime, @Param("endTime") String endTime);
|
||||
|
||||
List<MiddleChildVO> getMiddleTerminalChild (@Param("deviceIds") List<String> deviceIds, @Param("startTime") String startTime, @Param("endTime") String endTime);
|
||||
|
||||
List<MiddleLimitRateVO> getMiddleLimitRate (Page<MiddleLimitRateVO> page,@Param("lineIds") List<String> deviceIds, @Param("startTime") String startTime, @Param("endTime") String endTime);
|
||||
Page<MiddleLimitRateVO> getMiddleLimitRate (Page<MiddleLimitRateVO> page,@Param("lineIds") List<String> deviceIds, @Param("startTime") String startTime, @Param("endTime") String endTime);
|
||||
|
||||
List<MiddleLimitRateVO> getMiddleLimitRateChild (@Param("lineIds") List<String> deviceIds, @Param("startTime") String startTime, @Param("endTime") String endTime);
|
||||
|
||||
|
||||
@@ -126,7 +126,7 @@
|
||||
AND cfm.flag = 1
|
||||
)) base,
|
||||
IFNULL( cfm2.flow, 0 ) ream,
|
||||
IFNULL( cmf.Statis_Value, 0 ) statusValue,
|
||||
IFNULL( cmf.Actual_Value, 0 ) statusValue,
|
||||
pl1.`Name` "name",
|
||||
pd.IP ip,
|
||||
pd.`Port` "port",
|
||||
@@ -153,6 +153,7 @@
|
||||
<if test="endTime != null and endTime != ''">
|
||||
and date_format(cmf.Time_Id,'%y%m%d') <= date_format(#{endTime},'%y%m%d')
|
||||
</if>
|
||||
and pd.Com_Flag = '0'
|
||||
</select>
|
||||
|
||||
<select id="getMiddleLimitRate" resultType="com.njcn.device.pq.pojo.vo.MiddleLimitRateVO">
|
||||
@@ -178,6 +179,7 @@
|
||||
left join pq_line pl1 on pl.Pid = pl1.Id
|
||||
left join pq_line pl2 on pl1.Pid = pl2.Id
|
||||
left join pq_line pl3 on pl2.Pid = pl3.Id
|
||||
where t.count != 0
|
||||
</select>
|
||||
|
||||
<select id="getHomeostasisArea" resultType="java.util.Map">
|
||||
@@ -316,7 +318,7 @@
|
||||
AND cfm.flag = 1
|
||||
)) base,
|
||||
IFNULL( cfm2.flow, 0 ) ream,
|
||||
IFNULL( cmf.Statis_Value, 0 ) statusValue,
|
||||
IFNULL( cmf.Actual_Value, 0 ) statusValue,
|
||||
pl1.`Name` "name",
|
||||
pd.IP ip,
|
||||
pd.`Port` "port",
|
||||
@@ -357,6 +359,7 @@
|
||||
<if test="endTime != null and endTime != ''">
|
||||
and date_format(ed.start_time,'%y%m%d') <= date_format(#{endTime},'%y%m%d')
|
||||
</if>
|
||||
and ed.event_type = #{typeId}
|
||||
</where>
|
||||
order by time desc
|
||||
limit 50
|
||||
|
||||
@@ -16,7 +16,10 @@ import com.njcn.event.service.majornetwork.LargeScreenService;
|
||||
import com.njcn.harmonic.pojo.dto.ComAssessDTO;
|
||||
import com.njcn.harmonic.pojo.po.PQSComAssesPO;
|
||||
import com.njcn.harmonic.utils.HarmonicComAssesUtil;
|
||||
import com.njcn.system.api.DicDataFeignClient;
|
||||
import com.njcn.system.enums.DicDataEnum;
|
||||
import com.njcn.system.pojo.enums.StatisticsEnum;
|
||||
import com.njcn.system.pojo.po.DictData;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.map.HashedMap;
|
||||
@@ -47,6 +50,7 @@ public class LargeScreenServiceImpl implements LargeScreenService {
|
||||
|
||||
private final HarmonicComAssesUtil comAssesUtil;
|
||||
|
||||
private final DicDataFeignClient dicDataFeignClient;
|
||||
/**
|
||||
* 暂降事件区域
|
||||
*/
|
||||
@@ -248,7 +252,8 @@ public class LargeScreenServiceImpl implements LargeScreenService {
|
||||
*/
|
||||
@Override
|
||||
public List<EventVO> eventLists(LargeScreenParam largeScreenParam) {
|
||||
return largeScreenMapper.eventLists(largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
||||
DictData dictData = dicDataFeignClient.getDicDataByCode(DicDataEnum.VOLTAGE_DIP.getCode()).getData();
|
||||
return largeScreenMapper.eventLists(largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime(), dictData.getId());
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -394,49 +399,46 @@ public class LargeScreenServiceImpl implements LargeScreenService {
|
||||
List<GeneralDeviceDTO> generalDeviceDTOList = generalDeviceInfoClient.getPracticalAllDeviceInfo(deviceInfoParam).getData();
|
||||
//获取所有监测点集合
|
||||
List<String> deviceIds = generalDeviceDTOList.stream().flatMap(dto -> dto.getDeviceIndexes().stream()).collect(Collectors.toList());
|
||||
List<MiddleChildVO> map = largeScreenMapper.getMiddleTerminal(new Page<>(largeScreenParam.getPageNum(), largeScreenParam.getPageSize()), deviceIds, largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
||||
//获取没分页前的总数据
|
||||
List<MiddleChildVO> child = largeScreenMapper.getMiddleTerminalChild(deviceIds, largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
||||
Page<MiddleChildVO> map = largeScreenMapper.getMiddleTerminal(new Page<>(largeScreenParam.getPageNum(), largeScreenParam.getPageSize()), deviceIds, largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
||||
|
||||
float base = 0.0f;
|
||||
float ream = 0.0f;
|
||||
float statusValue = 0.0f;
|
||||
float v = 0.0f;
|
||||
String s = "";
|
||||
for (MiddleChildVO middleChildVO : map) {
|
||||
|
||||
for (MiddleChildVO middleChildVO : map.getRecords()) {
|
||||
MiddleTerminalVO vo = new MiddleTerminalVO();
|
||||
base = middleChildVO.getBase();
|
||||
ream = middleChildVO.getReam();
|
||||
statusValue = middleChildVO.getStatusValue();
|
||||
statusValue = statusValue / 1024.0f / 1024.0f;
|
||||
v = statusValue / (base + ream);
|
||||
s = formatFloat(v);
|
||||
vo.setName(middleChildVO.getName());
|
||||
vo.setIp(middleChildVO.getIp());
|
||||
vo.setPort(middleChildVO.getPort());
|
||||
vo.setComFlag(middleChildVO.getComFlag());
|
||||
vo.setProportion(s);
|
||||
vo.setProportion(formatFloat(v));
|
||||
result.add(vo);
|
||||
}
|
||||
MiddleTerminalListVO listVO = new MiddleTerminalListVO();
|
||||
listVO.setList(result);
|
||||
listVO.setSize(child.size());
|
||||
listVO.setSize(map.getTotal());
|
||||
return listVO;
|
||||
}
|
||||
|
||||
public static String formatFloat(Float value) {
|
||||
NumberFormat nf = NumberFormat.getNumberInstance();
|
||||
nf.setMaximumFractionDigits(2);//保留两位小数,即四舍五入到小数点后两位
|
||||
nf.setMaximumFractionDigits(2);//保留一位小数,即四舍五入到小数点后一位
|
||||
nf.setRoundingMode(RoundingMode.HALF_UP);//设置四舍五入模式为四舍五入
|
||||
float v = Float.parseFloat(nf.format(value));
|
||||
return String.valueOf(v * 100);
|
||||
return String.format("%.1f", Double.parseDouble(String.valueOf(v * 100)));
|
||||
}
|
||||
|
||||
/**
|
||||
* 大屏中间稳态越线信息
|
||||
*/
|
||||
@Override
|
||||
public MiddleLimitRateListVO getMiddleLimitRate(LargeScreenParam largeScreenParam) {
|
||||
public Page<MiddleLimitRateVO> getMiddleLimitRate(LargeScreenParam largeScreenParam) {
|
||||
DeviceInfoParam.BusinessParam deviceInfoParam = new DeviceInfoParam.BusinessParam();
|
||||
//部门索引
|
||||
deviceInfoParam.setDeptIndex(largeScreenParam.getDeptIndex());
|
||||
@@ -452,13 +454,8 @@ public class LargeScreenServiceImpl implements LargeScreenService {
|
||||
List<GeneralDeviceDTO> generalDeviceDTOList = generalDeviceInfoClient.getPracticalAllDeviceInfo(deviceInfoParam).getData();
|
||||
//获取所有监测点集合
|
||||
List<String> lineIds = generalDeviceDTOList.stream().flatMap(dto -> dto.getLineIndexes().stream()).collect(Collectors.toList());
|
||||
List<MiddleLimitRateVO> middleLimitRate = largeScreenMapper.getMiddleLimitRate(new Page<>(largeScreenParam.getPageNum(), largeScreenParam.getPageSize()), lineIds, largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
||||
//获取没分页前的总数据
|
||||
List<MiddleLimitRateVO> child = largeScreenMapper.getMiddleLimitRateChild(lineIds, largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
||||
MiddleLimitRateListVO listVO = new MiddleLimitRateListVO();
|
||||
listVO.setList(middleLimitRate);
|
||||
listVO.setSize(child.size());
|
||||
return listVO;
|
||||
Page<MiddleLimitRateVO> middleLimitRate = largeScreenMapper.getMiddleLimitRate(new Page<>(largeScreenParam.getPageNum(), largeScreenParam.getPageSize()), lineIds, largeScreenParam.getSearchBeginTime(), largeScreenParam.getSearchEndTime());
|
||||
return middleLimitRate;
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.njcn.event.service.majornetwork;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.device.pq.pojo.param.LargeScreenParam;
|
||||
import com.njcn.device.pq.pojo.vo.*;
|
||||
import com.njcn.harmonic.pojo.dto.ComAssessDTO;
|
||||
@@ -29,7 +30,7 @@ public interface LargeScreenService {
|
||||
|
||||
MiddleTerminalListVO getMiddleTerminal(LargeScreenParam largeScreenParam);
|
||||
|
||||
MiddleLimitRateListVO getMiddleLimitRate(LargeScreenParam largeScreenParam);
|
||||
Page<MiddleLimitRateVO> getMiddleLimitRate(LargeScreenParam largeScreenParam);
|
||||
|
||||
List<PQSComAssesPO> getComAccessData(List<String> lineIndexes, String searchBeginTime, String searchEndTime);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user