1.解决pmsBug

This commit is contained in:
wr
2023-10-07 16:37:50 +08:00
parent d38557765c
commit e21dc1965a
7 changed files with 90 additions and 27 deletions

View File

@@ -33,16 +33,6 @@ public class PmsMonitorInfoDTO implements Serializable {
*/ */
private String powerName; private String powerName;
/**
* 母线id
*/
private String generatrixId;
/**
* 母线名称
*/
private String generatrixName;
/** /**
* 监测点id * 监测点id
*/ */

View File

@@ -1,5 +1,6 @@
package com.njcn.device.pms.pojo.vo; package com.njcn.device.pms.pojo.vo;
import cn.hutool.core.util.StrUtil;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
@@ -42,4 +43,28 @@ public class RStatDevSignalVO {
@ApiModelProperty(name = "updateTime", value = "最后通讯时间") @ApiModelProperty(name = "updateTime", value = "最后通讯时间")
private String updateTime; //最后通讯时间 private String updateTime; //最后通讯时间
public void setDeviceStatus(String deviceStatus) {
if(StrUtil.isNotBlank(deviceStatus)){
this.deviceStatus = deviceStatus;
}else{
this.deviceStatus = "/";
}
}
public void setRunStatus(String runStatus) {
if(StrUtil.isNotBlank(runStatus)){
this.runStatus = runStatus;
}else{
this.runStatus = "/";
}
}
public void setUpdateTime(String updateTime) {
if(StrUtil.isNotBlank(updateTime)){
this.updateTime = updateTime;
}else{
this.updateTime = "/";
}
}
} }

View File

@@ -3,10 +3,14 @@ package com.njcn.device.pms.mapper.majornetwork;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.device.pms.pojo.param.RStatDevSignalParam;
import com.njcn.device.pms.pojo.po.PmsTerminal; import com.njcn.device.pms.pojo.po.PmsTerminal;
import com.njcn.device.pms.pojo.vo.PmsTerminalVO; import com.njcn.device.pms.pojo.vo.PmsTerminalVO;
import com.njcn.device.pms.pojo.vo.RStatDevSignalVO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* <p> * <p>
* Mapper 接口 * Mapper 接口
@@ -18,4 +22,6 @@ import org.apache.ibatis.annotations.Param;
public interface TerminalMapper extends BaseMapper<PmsTerminal> { public interface TerminalMapper extends BaseMapper<PmsTerminal> {
Page<PmsTerminalVO> page(@Param("page")Page<PmsTerminalVO> page, @Param("ew") QueryWrapper<PmsTerminalVO> queryWrapper); Page<PmsTerminalVO> page(@Param("page")Page<PmsTerminalVO> page, @Param("ew") QueryWrapper<PmsTerminalVO> queryWrapper);
List<RStatDevSignalVO> selectTerminalList(@Param("ids") List<String> ids,@Param("param") RStatDevSignalParam rStatDevSignalParam);
} }

View File

@@ -91,12 +91,8 @@
pm.Org_Name AS orgName, pm.Org_Name AS orgName,
pm.Powerr_Id AS powerId, pm.Powerr_Id AS powerId,
pm.Powerr_Name AS powerName, pm.Powerr_Name AS powerName,
pm.Generatrix_Id AS generatrixId,
pm.Generatrix_Name AS generatrixName,
pm.Id AS monitorId, pm.Id AS monitorId,
pm.`Name` AS monitorName, pm.`Name` AS monitorName,
pm.Generatrix_Id AS generatrixId,
pm.Generatrix_Name AS generatrixName,
pm.Voltage_Level AS monitorVoltageLevel, pm.Voltage_Level AS monitorVoltageLevel,
pm.Monitor_Type AS monitorType, pm.Monitor_Type AS monitorType,
pm.Monitor_State AS monitorState pm.Monitor_State AS monitorState

View File

@@ -7,4 +7,36 @@
FROM pms_terminal pms_terminal FROM pms_terminal pms_terminal
WHERE ${ew.sqlSegment} WHERE ${ew.sqlSegment}
</select> </select>
<select id="selectTerminalList" resultType="com.njcn.device.pms.pojo.vo.RStatDevSignalVO">
SELECT
Id as terminalId,
NAME as terminalName,
Org_Name as orgName,
Org_Id as orgId,
ip as ip,
PORT as port,
Terminal_State as deviceStatus,
Com_Flag as runStatus,
Update_Time as updateTime
FROM
pms_terminal
<where>
<if test="ids != null and ids.size > 0">
AND Org_Id IN
<foreach collection='ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param.deviceName != null and param.deviceName !=''">
and pms_terminal.id like concat('%',#{param.deviceName},'%')
</if>
<if test="param.deviceStatus != null and param.deviceStatus !='' ">
and pms_terminal.Terminal_State = #{param.deviceStatus}
</if>
<if test="param.runStatus != null and param.runStatus !='' ">
and pms_terminal.Com_Flag = #{param.runStatus}
</if>
</where>
</select>
</mapper> </mapper>

View File

@@ -152,11 +152,16 @@ public class DataQualityStatServiceImpl implements DataQualityStatService {
// 计算有效接入率【有效接入监测点数量/在运监测点数】 // 计算有效接入率【有效接入监测点数量/在运监测点数】
return result.stream().peek(vo -> { return result.stream().peek(vo -> {
vo.setOrgName(deptDTOMap.get(vo.getOrgNo()).getName()); vo.setOrgName(deptDTOMap.get(vo.getOrgNo()).getName());
if(vo.getMeasurementCount()!=0&&vo.getMeasurementCount()!=null){
vo.setEffectiveAccessRate( vo.setEffectiveAccessRate(
Double.parseDouble( Double.parseDouble(
df.format((vo.getEffectiveAccessMeasurementCount() * 1.0) df.format((vo.getEffectiveAccessMeasurementCount() * 1.0)
/ (vo.getMeasurementCount() * 1.0)) / (vo.getMeasurementCount() * 1.0))
) * 100); ) * 100);
}else{
vo.setEffectiveAccessRate(0.0);
}
}).collect(Collectors.toList()); }).collect(Collectors.toList());
} }
@@ -196,11 +201,16 @@ public class DataQualityStatServiceImpl implements DataQualityStatService {
BeanUtils.copyProperties(po, vo); BeanUtils.copyProperties(po, vo);
vo.setOrgId(po.getOrgNo()); vo.setOrgId(po.getOrgNo());
vo.setOrgName(deptDTOMap.get(vo.getOrgId()).getName()); vo.setOrgName(deptDTOMap.get(vo.getOrgId()).getName());
if(po.getEffectiveAccessMeasurementCount()!=0&&po.getEffectiveAccessMeasurementCount()!=null){
vo.setProblemProportion( vo.setProblemProportion(
Double.parseDouble( Double.parseDouble(
df.format((po.getProblem() * 1.0) df.format((po.getProblem() * 1.0)
/ (po.getEffectiveAccessMeasurementCount() * 1.0)) / (po.getEffectiveAccessMeasurementCount() * 1.0))
) * 100); ) * 100);
}else{
vo.setProblemProportion(0.0);
}
if (po.getProblemYearOnYear() == null) { if (po.getProblemYearOnYear() == null) {
vo.setProblemYearOnYear("3.14159"); vo.setProblemYearOnYear("3.14159");
} else { } else {

View File

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.pms.mapper.majornetwork.TerminalMapper;
import com.njcn.device.pms.pojo.param.RStatDevSignalParam; import com.njcn.device.pms.pojo.param.RStatDevSignalParam;
import com.njcn.device.pms.pojo.po.RStatDevSignalD; import com.njcn.device.pms.pojo.po.RStatDevSignalD;
import com.njcn.device.pms.pojo.po.PmsTerminal; import com.njcn.device.pms.pojo.po.PmsTerminal;
@@ -26,6 +27,7 @@ import org.springframework.stereotype.Service;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@@ -38,7 +40,7 @@ import java.util.stream.Collectors;
public class RStatDevSignalDServiceImpl extends ServiceImpl<RStatDevSignalDMapper, RStatDevSignalD> public class RStatDevSignalDServiceImpl extends ServiceImpl<RStatDevSignalDMapper, RStatDevSignalD>
implements RStatDevSignalDService{ implements RStatDevSignalDService{
private final ITerminalService iTerminalService; private final TerminalMapper terminalMapper;
private final DeptFeignClient deptFeignClient; private final DeptFeignClient deptFeignClient;
@@ -63,7 +65,8 @@ public class RStatDevSignalDServiceImpl extends ServiceImpl<RStatDevSignalDMappe
} }
//单位id集合 //单位id集合
List<String> orgCodeList = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList()); List<String> orgCodeList = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
return terminalMapper.selectTerminalList(orgCodeList, rStatDevSignalParam);
/*
//查询终端数据 //查询终端数据
LambdaQueryWrapper<PmsTerminal> terminalWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<PmsTerminal> terminalWrapper = new LambdaQueryWrapper<>();
terminalWrapper.in(PmsTerminal::getOrgId, orgCodeList) terminalWrapper.in(PmsTerminal::getOrgId, orgCodeList)
@@ -96,7 +99,7 @@ public class RStatDevSignalDServiceImpl extends ServiceImpl<RStatDevSignalDMappe
rStatDevSignalVO.setPort(terminalMap.get(item.getDeviceId()).getPort()); //端口 rStatDevSignalVO.setPort(terminalMap.get(item.getDeviceId()).getPort()); //端口
return rStatDevSignalVO; return rStatDevSignalVO;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
Map<String, RStatDevSignalD> signalMap = list.stream().collect(Collectors.toMap(RStatDevSignalD::getDeviceId, terminal -> terminal)); Map<String, RStatDevSignalD> signalMap = list.stream().collect(Collectors.toMap(RStatDevSignalD::getDeviceId, Function.identity(),(key1, key2)->key1));
List<PmsTerminal> notList = terminalList.stream().filter(r -> !signalMap.containsKey(r.getId())) List<PmsTerminal> notList = terminalList.stream().filter(r -> !signalMap.containsKey(r.getId()))
.collect(Collectors.toList()); .collect(Collectors.toList());
@@ -117,6 +120,7 @@ public class RStatDevSignalDServiceImpl extends ServiceImpl<RStatDevSignalDMappe
} }
} }
return resultList; return resultList;
*/
} }
} }