1.数据完整性列表调整
2.区域电能质量评估列表调整 3.调整监测点台账列表顺序 4.删除灿能电力字样 5.调整loge和ico图标 6.调整概览首页在线率和完整率数据 7.调整设备树的查询方式
This commit is contained in:
@@ -3,6 +3,7 @@ package com.njcn.mapper.data;
|
|||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.njcn.pojo.data.AssesData;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
import com.njcn.pojo.data.Asses;
|
import com.njcn.pojo.data.Asses;
|
||||||
@@ -22,4 +23,5 @@ public interface AssesMapper extends Mapper<Asses> {
|
|||||||
|
|
||||||
//获取对应范围内综合质量
|
//获取对应范围内综合质量
|
||||||
List<PqsComasses> getSynData(@Param("list")List<Integer> temp,@Param("startTime")Date startTime,@Param("endTime")Date endTime);
|
List<PqsComasses> getSynData(@Param("list")List<Integer> temp,@Param("startTime")Date startTime,@Param("endTime")Date endTime);
|
||||||
|
List<AssesData> getLineVol( @Param("list") List<Integer> lineIds,@Param("startTime") Date startTime, @Param("endTime") Date endTime);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ public interface PointBaseInfoMapper {
|
|||||||
|
|
||||||
List<Integer> getDeptsLineIndex(@Param("deptsIndex")String deptsIndex,@Param("sysIndex")String sysIndex);
|
List<Integer> getDeptsLineIndex(@Param("deptsIndex")String deptsIndex,@Param("sysIndex")String sysIndex);
|
||||||
|
|
||||||
List<LineLedger> getLineLedger(@Param("lineList")List<Integer> lineList,@Param("loadTypeList")List<String> loadTypeList,@Param("scaleList")List<String> scaleList,@Param("status")Integer status,@Param("type")Integer type);
|
List<LineLedger> getLineLedger(@Param("lineList")List<Integer> lineList,@Param("loadTypeList")List<String> loadTypeList,@Param("scaleList")List<String> scaleList,@Param("status")Integer status,@Param("type")Integer type,@Param("powerId")Integer powerId);
|
||||||
|
|
||||||
|
|
||||||
DeviceUnitVO lineUnitDetail(@Param("lineId")Integer lineId);
|
DeviceUnitVO lineUnitDetail(@Param("lineId")Integer lineId);
|
||||||
|
|||||||
@@ -36,6 +36,16 @@ public interface DeptsLineMapper extends Mapper<DeptsLine> {
|
|||||||
List<IndexsCount> selectIndexsByDeptRun(@Param("deptsIndex") String deptsIndex, @Param("sysType") String sysType, @Param("devModel") Integer devModel, @Param("dataType") List<Integer> dataType,@Param("devStatus") Integer devicdStatus,@Param("status")Integer status);
|
List<IndexsCount> selectIndexsByDeptRun(@Param("deptsIndex") String deptsIndex, @Param("sysType") String sysType, @Param("devModel") Integer devModel, @Param("dataType") List<Integer> dataType,@Param("devStatus") Integer devicdStatus,@Param("status")Integer status);
|
||||||
|
|
||||||
|
|
||||||
|
List<IndexsCount> selectIndexsPowerIdByDeptRun(@Param("depts") List<String> depts,
|
||||||
|
@Param("sysType") String sysType,
|
||||||
|
@Param("devModel") Integer devModel,
|
||||||
|
@Param("dataType") List<Integer> dataType,
|
||||||
|
@Param("devStatus") Integer devicdStatus,
|
||||||
|
@Param("status")Integer status,
|
||||||
|
@Param("powerId") Integer powerId
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
//扩展上面两个sql(多关联了一个pq_linedetail表)
|
//扩展上面两个sql(多关联了一个pq_linedetail表)
|
||||||
List<IndexsCount> selectIndexsByDeptsRunForStatFlag(@Param("depts") List<Depts> depts, @Param("sysType") String sysType, @Param("devModel") Integer devModel, @Param("dataType") List<Integer> dataType, @Param("devStatus") Integer devicdStatus,@Param("status")Integer status);
|
List<IndexsCount> selectIndexsByDeptsRunForStatFlag(@Param("depts") List<Depts> depts, @Param("sysType") String sysType, @Param("devModel") Integer devModel, @Param("dataType") List<Integer> dataType, @Param("devStatus") Integer devicdStatus,@Param("status")Integer status);
|
||||||
|
|
||||||
|
|||||||
111
comService/src/main/java/com/njcn/pojo/data/AssesData.java
Normal file
111
comService/src/main/java/com/njcn/pojo/data/AssesData.java
Normal file
@@ -0,0 +1,111 @@
|
|||||||
|
package com.njcn.pojo.data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wr
|
||||||
|
* @description
|
||||||
|
* @date 2024/4/9 16:32
|
||||||
|
*/
|
||||||
|
public class AssesData implements Serializable {
|
||||||
|
//供电公司
|
||||||
|
private String powerCompany;
|
||||||
|
//变电站
|
||||||
|
private String substation;
|
||||||
|
//监测点id
|
||||||
|
private String lineId;
|
||||||
|
//监测点名称
|
||||||
|
private String lineName;
|
||||||
|
//综合评估
|
||||||
|
private Float synData;
|
||||||
|
//电压偏差
|
||||||
|
private Float vuDevs;
|
||||||
|
//频率偏差
|
||||||
|
private Float freqDev;
|
||||||
|
//电压闪变
|
||||||
|
private Float dataPlt;
|
||||||
|
//电压不平衡度
|
||||||
|
private Float vunbalanceCp95;
|
||||||
|
//谐波含量
|
||||||
|
private Float vThdCp95;
|
||||||
|
|
||||||
|
public String getPowerCompany() {
|
||||||
|
return powerCompany;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPowerCompany(String powerCompany) {
|
||||||
|
this.powerCompany = powerCompany;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getSubstation() {
|
||||||
|
return substation;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSubstation(String substation) {
|
||||||
|
this.substation = substation;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getLineName() {
|
||||||
|
return lineName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLineName(String lineName) {
|
||||||
|
this.lineName = lineName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Float getSynData() {
|
||||||
|
return synData;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSynData(Float synData) {
|
||||||
|
this.synData = synData;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Float getVuDevs() {
|
||||||
|
return vuDevs;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setVuDevs(Float vuDevs) {
|
||||||
|
this.vuDevs = vuDevs;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Float getFreqDev() {
|
||||||
|
return freqDev;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setFreqDev(Float freqDev) {
|
||||||
|
this.freqDev = freqDev;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Float getDataPlt() {
|
||||||
|
return dataPlt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDataPlt(Float dataPlt) {
|
||||||
|
this.dataPlt = dataPlt;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Float getVunbalanceCp95() {
|
||||||
|
return vunbalanceCp95;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setVunbalanceCp95(Float vunbalanceCp95) {
|
||||||
|
this.vunbalanceCp95 = vunbalanceCp95;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Float getvThdCp95() {
|
||||||
|
return vThdCp95;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setvThdCp95(Float vThdCp95) {
|
||||||
|
this.vThdCp95 = vThdCp95;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getLineId() {
|
||||||
|
return lineId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLineId(String lineId) {
|
||||||
|
this.lineId = lineId;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -11,6 +11,8 @@ public class LineLedger {
|
|||||||
private String lineIndex;
|
private String lineIndex;
|
||||||
private String lineName;
|
private String lineName;
|
||||||
|
|
||||||
|
//母线名称
|
||||||
|
private String busBarName;
|
||||||
private String electricityQualityName;
|
private String electricityQualityName;
|
||||||
|
|
||||||
private Long devIndex;
|
private Long devIndex;
|
||||||
@@ -655,4 +657,12 @@ public class LineLedger {
|
|||||||
public void setElectricityQualityName(String electricityQualityName) {
|
public void setElectricityQualityName(String electricityQualityName) {
|
||||||
this.electricityQualityName = electricityQualityName;
|
this.electricityQualityName = electricityQualityName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getBusBarName() {
|
||||||
|
return busBarName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setBusBarName(String busBarName) {
|
||||||
|
this.busBarName = busBarName;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -18,6 +18,8 @@ public class LineLedgerVO {
|
|||||||
private Integer status;
|
private Integer status;
|
||||||
//上报类型(国网、非国网)
|
//上报类型(国网、非国网)
|
||||||
private Integer appear;
|
private Integer appear;
|
||||||
|
//监测点性质
|
||||||
|
private Integer powerId;
|
||||||
|
|
||||||
public String getDeptIndex() {
|
public String getDeptIndex() {
|
||||||
return deptIndex;
|
return deptIndex;
|
||||||
@@ -74,4 +76,12 @@ public class LineLedgerVO {
|
|||||||
public void setAppear(Integer appear) {
|
public void setAppear(Integer appear) {
|
||||||
this.appear = appear;
|
this.appear = appear;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Integer getPowerId() {
|
||||||
|
return powerId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPowerId(Integer powerId) {
|
||||||
|
this.powerId = powerId;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -82,7 +82,7 @@ public interface DeviceService {
|
|||||||
List<OnlineRateData> getOnlineRate(Date startTime, Date endTime, String area);
|
List<OnlineRateData> getOnlineRate(Date startTime, Date endTime, String area);
|
||||||
|
|
||||||
//运行管理--》监测点数据完整性
|
//运行管理--》监测点数据完整性
|
||||||
IntergralityData getDataIntegralityTable(Date startTime, Date endTime, String area,Integer devflag);
|
IntergralityData getDataIntegralityTable(Date startTime, Date endTime, String area,Integer devflag,Integer powerId);
|
||||||
|
|
||||||
String getDeviceOnline(Date startTime, Date endTime, Long lineIndex);
|
String getDeviceOnline(Date startTime, Date endTime, Long lineIndex);
|
||||||
|
|
||||||
|
|||||||
@@ -312,10 +312,10 @@ public class DeviceServiceImpl implements DeviceService {
|
|||||||
* @param area 区域
|
* @param area 区域
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public IntergralityData getDataIntegralityTable(Date startTime, Date endTime, String area,Integer devflag) {
|
public IntergralityData getDataIntegralityTable(Date startTime, Date endTime, String area,Integer devflag,Integer powerId) {
|
||||||
IntergralityData intergralityData = new IntergralityData();
|
IntergralityData intergralityData = new IntergralityData();
|
||||||
|
|
||||||
List<AreaGeneralData> areaGeneralDataList = userUtil.getAreaGeneralRun(devflag,area);
|
List<AreaGeneralData> areaGeneralDataList = userUtil.getAreaGeneralRun(devflag,area,powerId);
|
||||||
List<Integer> lineIndexs = areaGeneralDataList.stream().flatMap(item->item.getLineIndexs().stream()).collect(Collectors.toList());
|
List<Integer> lineIndexs = areaGeneralDataList.stream().flatMap(item->item.getLineIndexs().stream()).collect(Collectors.toList());
|
||||||
if (CollectionUtils.isEmpty(lineIndexs)) {
|
if (CollectionUtils.isEmpty(lineIndexs)) {
|
||||||
return null;
|
return null;
|
||||||
@@ -6776,12 +6776,13 @@ public class DeviceServiceImpl implements DeviceService {
|
|||||||
getGwData(tmp, gwLineList, start, end);
|
getGwData(tmp, gwLineList, start, end);
|
||||||
|
|
||||||
String onlinerate = getOnline(devList, start, end);
|
String onlinerate = getOnline(devList, start, end);
|
||||||
|
//在线率
|
||||||
deviceMapInfo.setOnline(onlinerate.equals("3.14159") ? "0" : onlinerate);
|
deviceMapInfo.setOnline(onlinerate.equals("3.14159") ? "0" : onlinerate);
|
||||||
deviceMapInfo.setGwOnline(tmp.getGwonline().equals("3.14159") ? "0" : tmp.getGwonline());
|
deviceMapInfo.setGwOnline(tmp.getGwonline().equals("3.14159") ? "0" : tmp.getGwonline());
|
||||||
|
|
||||||
String dataIntegrality = getIntegrality(lineList, start, end);
|
String dataIntegrality = getIntegrality(lineList, start, end);
|
||||||
String gwdataIntegrality = getGwIntegrality(gwLineList, start, end);
|
String gwdataIntegrality = getGwIntegrality(gwLineList, start, end);
|
||||||
|
//数据完整率
|
||||||
deviceMapInfo.setDataIntegrality(dataIntegrality.equals("3.14159") ? "0" : dataIntegrality);
|
deviceMapInfo.setDataIntegrality(dataIntegrality.equals("3.14159") ? "0" : dataIntegrality);
|
||||||
deviceMapInfo.setGwDataIntegrality(gwdataIntegrality.equals("3.14159") ? "0" : gwdataIntegrality);
|
deviceMapInfo.setGwDataIntegrality(gwdataIntegrality.equals("3.14159") ? "0" : gwdataIntegrality);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.njcn.serviceimpl.point;
|
package com.njcn.serviceimpl.point;
|
||||||
|
|
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.collection.CollectionUtil;
|
import cn.hutool.core.collection.CollectionUtil;
|
||||||
import com.njcn.mapper.configuration.DeviceDetailMapper;
|
import com.njcn.mapper.configuration.DeviceDetailMapper;
|
||||||
import com.njcn.mapper.point.PointBaseInfoMapper;
|
import com.njcn.mapper.point.PointBaseInfoMapper;
|
||||||
@@ -17,10 +18,7 @@ import com.njcn.utils.UserUtil;
|
|||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Objects;
|
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -91,14 +89,14 @@ public class PointBaseInfoServiceImpl implements PointBaseInfoService {
|
|||||||
} else {
|
} else {
|
||||||
list = lineIndexes;
|
list = lineIndexes;
|
||||||
}
|
}
|
||||||
List<LineLedger> rvoList = pointBaseInfoMapper.getLineLedger(list, lineLedgerVO.getLoadType(), lineLedgerVO.getVoltage(), lineLedgerVO.getStatus(), lineLedgerVO.getAppear());
|
List<LineLedger> rvoList = pointBaseInfoMapper.getLineLedger(list, lineLedgerVO.getLoadType(), lineLedgerVO.getVoltage(), lineLedgerVO.getStatus(), lineLedgerVO.getAppear(),lineLedgerVO.getPowerId());
|
||||||
if (CollectionUtil.isNotEmpty(rvoList)) {
|
if (CollectionUtil.isNotEmpty(rvoList)) {
|
||||||
lineLedgerList.addAll(rvoList);
|
lineLedgerList.addAll(rvoList);
|
||||||
}
|
}
|
||||||
list.clear();
|
list.clear();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
List<LineLedger> rvoList = pointBaseInfoMapper.getLineLedger(lineIndexes, lineLedgerVO.getLoadType(), lineLedgerVO.getVoltage(), lineLedgerVO.getStatus(), lineLedgerVO.getAppear());
|
List<LineLedger> rvoList = pointBaseInfoMapper.getLineLedger(lineIndexes, lineLedgerVO.getLoadType(), lineLedgerVO.getVoltage(), lineLedgerVO.getStatus(), lineLedgerVO.getAppear(),lineLedgerVO.getPowerId());
|
||||||
lineLedgerList.addAll(rvoList);
|
lineLedgerList.addAll(rvoList);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -122,7 +120,7 @@ public class PointBaseInfoServiceImpl implements PointBaseInfoService {
|
|||||||
if (CollectionUtil.isEmpty(lineLedgerVO.getVoltage())) {
|
if (CollectionUtil.isEmpty(lineLedgerVO.getVoltage())) {
|
||||||
lineLedgerVO.setVoltage(null);
|
lineLedgerVO.setVoltage(null);
|
||||||
}
|
}
|
||||||
List<LineLedger> rvoList = pointBaseInfoMapper.getLineLedger(lineList, lineLedgerVO.getLoadType(), lineLedgerVO.getVoltage(), lineLedgerVO.getStatus(), lineLedgerVO.getAppear());
|
List<LineLedger> rvoList = pointBaseInfoMapper.getLineLedger(lineList, lineLedgerVO.getLoadType(), lineLedgerVO.getVoltage(), lineLedgerVO.getStatus(), lineLedgerVO.getAppear(),lineLedgerVO.getPowerId());
|
||||||
lineLedgerList.addAll(rvoList);
|
lineLedgerList.addAll(rvoList);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -140,7 +138,6 @@ public class PointBaseInfoServiceImpl implements PointBaseInfoService {
|
|||||||
lineLedger.setDevNo(deviceDetails.getDevNo());
|
lineLedger.setDevNo(deviceDetails.getDevNo());
|
||||||
lineLedger.setLineStatus(deviceDetails.getLineStatus());
|
lineLedger.setLineStatus(deviceDetails.getLineStatus());
|
||||||
}
|
}
|
||||||
|
|
||||||
return lineLedgerList;
|
return lineLedgerList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import java.util.stream.Collectors;
|
|||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
import cn.hutool.core.collection.CollectionUtil;
|
import cn.hutool.core.collection.CollectionUtil;
|
||||||
|
import cn.hutool.core.util.ArrayUtil;
|
||||||
import com.njcn.pojo.configuration.*;
|
import com.njcn.pojo.configuration.*;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.apache.shiro.session.Session;
|
import org.apache.shiro.session.Session;
|
||||||
@@ -530,14 +531,14 @@ public class UserUtil {
|
|||||||
return ag;
|
return ag;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<AreaGeneralData> getAreaGeneralRun(Integer devFlag,String deptId) {
|
public List<AreaGeneralData> getAreaGeneralRun(Integer devFlag,String deptId,Integer powerId) {
|
||||||
List<AreaGeneralData> ag;
|
List<AreaGeneralData> ag;
|
||||||
Depts depts = getDeptsByIndex(deptId);
|
Depts depts = getDeptsByIndex(deptId);
|
||||||
DeviceType deviceType = getOnLineDeviceType();
|
DeviceType deviceType = getOnLineDeviceType();
|
||||||
if (null == depts) {
|
if (null == depts) {
|
||||||
return new ArrayList<>();
|
return new ArrayList<>();
|
||||||
}
|
}
|
||||||
ag = getAreaDatas(depts, deviceType, devFlag);
|
ag = getAreaPowerIdData(depts, deviceType, devFlag,powerId);
|
||||||
return ag;
|
return ag;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -644,6 +645,63 @@ public class UserUtil {
|
|||||||
return ag;
|
return ag;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param dept 部门 只统计在线装置 且投运状态
|
||||||
|
* 1:判断该部门有没有直接子部门
|
||||||
|
* 2:根据有效部门获取部门对应的各项信息
|
||||||
|
*/
|
||||||
|
private List<AreaGeneralData> getAreaPowerIdData(Depts dept, DeviceType deviceType, Integer devFlag,Integer powerId) {
|
||||||
|
List<AreaGeneralData> ag = new ArrayList<>();
|
||||||
|
try {
|
||||||
|
List<Depts> depts = getDirectDeptsByNode(dept.getDeptsIndex());
|
||||||
|
if (CollectionUtils.isEmpty(depts)) {
|
||||||
|
//则只获取当前部门下的所有信息
|
||||||
|
ag.add(getAreaPowerIdDept(dept, deviceType, devFlag,powerId));
|
||||||
|
} else {
|
||||||
|
//返回当前用户下所有子部门的信息
|
||||||
|
for (Depts deptsTemp : depts) {
|
||||||
|
ag.add(getAreaPowerIdDept(deptsTemp, deviceType, devFlag,powerId));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
logger.error(e.getMessage());
|
||||||
|
}
|
||||||
|
return ag;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 获取部门下详细信息(监测点性质)
|
||||||
|
*
|
||||||
|
* @param dept 部门
|
||||||
|
*/
|
||||||
|
private AreaGeneralData getAreaPowerIdDept(Depts dept, DeviceType deviceType, Integer devicdStatus,Integer powerId) {
|
||||||
|
AreaGeneralData areaGeneralData = new AreaGeneralData();
|
||||||
|
if (dept.getCustomDept() == 0) {
|
||||||
|
areaGeneralData.setName(dept.getArea());
|
||||||
|
} else {
|
||||||
|
areaGeneralData.setName(dept.getDeptsName());
|
||||||
|
}
|
||||||
|
areaGeneralData.setDeptIndex(dept.getDeptsIndex());
|
||||||
|
String sysType = getSysType().equals(ProjectEnum.APP.getKey()) ? null : getSysType();
|
||||||
|
List<IndexsCount> indexsCountsByDept = deptsLineMapper.selectIndexsPowerIdByDeptRun(Arrays.asList(dept.getDeptsIndex()), sysType, deviceType.getDevModel(), deviceType.getDataType(), devicdStatus,null,powerId);
|
||||||
|
if (CollectionUtils.isEmpty(indexsCountsByDept)) {
|
||||||
|
//如果该部门没有任何的监测点关联,有可能是因为其是父节点(程序默认,当存在子节点时,当前部门节点不可绑定监测点)
|
||||||
|
List<Depts> depts = getDeptsByNode(dept.getDeptsIndex());
|
||||||
|
if (CollectionUtils.isEmpty(depts)) {
|
||||||
|
areaGeneralData.setMonitors(0);
|
||||||
|
} else {
|
||||||
|
List<String> deptIds = depts.stream().map(Depts::getDeptsIndex).collect(Collectors.toList());
|
||||||
|
List<IndexsCount> indexsCountsByDepts = deptsLineMapper.selectIndexsPowerIdByDeptRun(deptIds, sysType, deviceType.getDevModel(), deviceType.getDataType(), devicdStatus,null,powerId);
|
||||||
|
if (CollectionUtils.isEmpty(indexsCountsByDepts)) {
|
||||||
|
areaGeneralData.setMonitors(0);
|
||||||
|
} else {
|
||||||
|
areaGeneralData = filtIndexData(indexsCountsByDepts, areaGeneralData);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
areaGeneralData = filtIndexData(indexsCountsByDept, areaGeneralData);
|
||||||
|
}
|
||||||
|
return areaGeneralData;
|
||||||
|
}
|
||||||
private List<AreaGeneralData> getDeptsDatas(Depts dept, DeviceType deviceType, Integer devStatus) {
|
private List<AreaGeneralData> getDeptsDatas(Depts dept, DeviceType deviceType, Integer devStatus) {
|
||||||
List<AreaGeneralData> ag = new ArrayList<>();
|
List<AreaGeneralData> ag = new ArrayList<>();
|
||||||
try {
|
try {
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ public class IntegralityController {
|
|||||||
* type 统计类型(冀北省、国网)
|
* type 统计类型(冀北省、国网)
|
||||||
*/
|
*/
|
||||||
@GetMapping("integralitytable")
|
@GetMapping("integralitytable")
|
||||||
public ModelAndView integrityTable(String starttime, String endtime, String area, String interval) {
|
public ModelAndView integrityTable(String starttime, String endtime, String area, String interval, String gwtype) {
|
||||||
ModelAndView modelAndView = new ModelAndView();
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
modelAndView.setViewName("business/manage/integrityTable");
|
modelAndView.setViewName("business/manage/integrityTable");
|
||||||
if(StringUtils.isEmpty(starttime)&&StringUtils.isEmpty(endtime)){
|
if(StringUtils.isEmpty(starttime)&&StringUtils.isEmpty(endtime)){
|
||||||
@@ -101,6 +101,7 @@ public class IntegralityController {
|
|||||||
}
|
}
|
||||||
modelAndView.addObject("area", area);
|
modelAndView.addObject("area", area);
|
||||||
modelAndView.addObject("interval", interval);
|
modelAndView.addObject("interval", interval);
|
||||||
|
modelAndView.addObject("gwType", gwtype);
|
||||||
return modelAndView;
|
return modelAndView;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -114,7 +115,7 @@ public class IntegralityController {
|
|||||||
*/
|
*/
|
||||||
@PostMapping("getIntegrityData")
|
@PostMapping("getIntegrityData")
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public HttpResult getIntegrityData(String startTime, String endTime, String area,Integer devflag, HttpServletRequest request) {
|
public HttpResult getIntegrityData(String startTime, String endTime, String area,Integer devflag,Integer powerId, HttpServletRequest request) {
|
||||||
HttpResult result = PubUtils.initResult(TokenManager.getToken().getLoginName(), request, LogTypeEnum.BUSSINESS.toString(), 0);
|
HttpResult result = PubUtils.initResult(TokenManager.getToken().getLoginName(), request, LogTypeEnum.BUSSINESS.toString(), 0);
|
||||||
DatePojo datePojo;
|
DatePojo datePojo;
|
||||||
datePojo = PubUtils.validateDate(startTime, endTime, "getIntegrityData");
|
datePojo = PubUtils.validateDate(startTime, endTime, "getIntegrityData");
|
||||||
@@ -124,7 +125,7 @@ public class IntegralityController {
|
|||||||
}
|
}
|
||||||
IntergralityData intergralityData;
|
IntergralityData intergralityData;
|
||||||
try {
|
try {
|
||||||
intergralityData = deviceService.getDataIntegralityTable(datePojo.getStartTime(), datePojo.getEndTime(), area,devflag);
|
intergralityData = deviceService.getDataIntegralityTable(datePojo.getStartTime(), datePojo.getEndTime(), area,devflag,powerId);
|
||||||
if (null == intergralityData) {
|
if (null == intergralityData) {
|
||||||
result = PubUtils.assignmentResultLog(null, 500, "获取监测点数据完整性数据为空", "查询完整性列表", "成功", result);
|
result = PubUtils.assignmentResultLog(null, 500, "获取监测点数据完整性数据为空", "查询完整性列表", "成功", result);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.pqs9000.controller.business;
|
package com.pqs9000.controller.business;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.njcn.enums.ProjectEnum;
|
import com.njcn.enums.ProjectEnum;
|
||||||
import com.njcn.pojo.commons.WebItem;
|
import com.njcn.pojo.commons.WebItem;
|
||||||
import com.njcn.pojo.system.SubSystem;
|
import com.njcn.pojo.system.SubSystem;
|
||||||
@@ -348,11 +349,17 @@ public class BusinessController {
|
|||||||
|
|
||||||
// 跳转终端运行管理页面
|
// 跳转终端运行管理页面
|
||||||
@GetMapping(value = "runtime")
|
@GetMapping(value = "runtime")
|
||||||
public ModelAndView runtime(String area,String type) {
|
public ModelAndView runtime(String area,String type, String manufacturer) {
|
||||||
ModelAndView modelAndView = new ModelAndView();
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
|
if(StrUtil.isNotBlank(manufacturer)){
|
||||||
|
if(manufacturer.indexOf("(")!=-1){
|
||||||
|
manufacturer=manufacturer.substring(0,manufacturer.indexOf("("));
|
||||||
|
}
|
||||||
|
}
|
||||||
modelAndView.setViewName("business/manage/runtime");
|
modelAndView.setViewName("business/manage/runtime");
|
||||||
modelAndView.addObject("area", area);
|
modelAndView.addObject("area", area);
|
||||||
modelAndView.addObject("type", type);
|
modelAndView.addObject("type", type);
|
||||||
|
modelAndView.addObject("manufacturer", manufacturer);
|
||||||
return modelAndView;
|
return modelAndView;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -6,27 +6,25 @@ import com.njcn.pojo.commons.DatePojo;
|
|||||||
import com.njcn.pojo.commons.HttpResult;
|
import com.njcn.pojo.commons.HttpResult;
|
||||||
import com.njcn.pojo.commons.SimpleValue;
|
import com.njcn.pojo.commons.SimpleValue;
|
||||||
import com.njcn.pojo.commons.SteadyTypeData;
|
import com.njcn.pojo.commons.SteadyTypeData;
|
||||||
import com.njcn.pojo.commons.acceptability.AcceptabilityAllData;
|
|
||||||
import com.njcn.pojo.commons.acceptability.AcceptabilityData;
|
|
||||||
import com.njcn.pojo.commons.device.DeviceGeneral;
|
import com.njcn.pojo.commons.device.DeviceGeneral;
|
||||||
|
import com.njcn.pojo.data.AssesData;
|
||||||
import com.njcn.service.configuration.DeviceService;
|
import com.njcn.service.configuration.DeviceService;
|
||||||
import com.njcn.service.configuration.LineService;
|
import com.njcn.service.configuration.LineService;
|
||||||
import com.njcn.service.log.UserLogDetailService;
|
import com.njcn.service.log.UserLogDetailService;
|
||||||
import com.njcn.shiro.token.TokenManager;
|
import com.njcn.shiro.token.TokenManager;
|
||||||
import com.njcn.utils.PubUtils;
|
import com.njcn.utils.PubUtils;
|
||||||
import com.pqs9000.pojo.common.OverviewData;
|
|
||||||
import com.pqs9000.pojo.common.PowerQualityData;
|
import com.pqs9000.pojo.common.PowerQualityData;
|
||||||
import com.pqs9000.service.data.AssesService;
|
import com.pqs9000.service.data.AssesService;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.util.CollectionUtils;
|
|
||||||
import org.springframework.util.StringUtils;
|
import org.springframework.util.StringUtils;
|
||||||
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.ResponseBody;
|
import org.springframework.web.bind.annotation.ResponseBody;
|
||||||
import tk.mybatis.mapper.entity.Example;
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -52,6 +50,51 @@ public class OverviewController {
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
UserLogDetailService userLog;
|
UserLogDetailService userLog;
|
||||||
|
@GetMapping("/assesTable")
|
||||||
|
public ModelAndView integrityTable(String starttime, String endtime, String area, String interval) {
|
||||||
|
ModelAndView modelAndView = new ModelAndView();
|
||||||
|
modelAndView.setViewName("business/area/assesTable");
|
||||||
|
DatePojo datePojo=PubUtils.validateDate(starttime,endtime,"assesTable");
|
||||||
|
if(!StringUtils.isEmpty(datePojo.getMsg())){
|
||||||
|
modelAndView.addObject("startTime", "");
|
||||||
|
modelAndView.addObject("endTime", "");
|
||||||
|
}else{
|
||||||
|
modelAndView.addObject("startTime", starttime);
|
||||||
|
modelAndView.addObject("endTime", endtime);
|
||||||
|
}
|
||||||
|
modelAndView.addObject("area", area);
|
||||||
|
modelAndView.addObject("interval", interval);
|
||||||
|
return modelAndView;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 区域--》点击柱状图电能质量评估--》列表
|
||||||
|
*
|
||||||
|
* @param startTime 起始时间
|
||||||
|
* @param endTime 截止时间
|
||||||
|
*/
|
||||||
|
@PostMapping("/assesTableData")
|
||||||
|
@ResponseBody
|
||||||
|
public HttpResult getAssesTableData(String startTime, String endTime, String area, HttpServletRequest request) {
|
||||||
|
HttpResult result = PubUtils.initResult(TokenManager.getToken().getLoginName(), request, LogTypeEnum.BUSSINESS.toString(), 0);
|
||||||
|
DatePojo datePojo;
|
||||||
|
datePojo = PubUtils.validateDate(startTime, endTime, "assesTableData");
|
||||||
|
if (!StringUtils.isEmpty(datePojo.getMsg())) {
|
||||||
|
result = PubUtils.assignmentResult(null, 500, datePojo.getMsg());
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
List<AssesData> data;
|
||||||
|
try {
|
||||||
|
data = assesService.getAssesTableData(datePojo.getStartTime(), datePojo.getEndTime(), area);
|
||||||
|
result = PubUtils.assignmentResultLog(data, 200, "区域获取电能质量评估列表成功", "查询区域获取电能质量评估列表", "成功", result);
|
||||||
|
userLog.getLog("查询电能质量评估列表", "成功", PubUtils.getIpAddr(request), LogTypeEnum.BUSSINESS.toString(), 0);
|
||||||
|
} catch (Exception e) {
|
||||||
|
userLog.getLog("查询电能质量评估列表", "失败", PubUtils.getIpAddr(request), LogTypeEnum.BUSSINESS.toString(), 0);
|
||||||
|
result = PubUtils.assignmentResultLog(null, 200, "区域获取电能质量评估列表失败", "查询区域获取电能质量评估列表", "失败", result);
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import java.io.Serializable;
|
|||||||
*/
|
*/
|
||||||
public class AreaPowerQualityData implements Serializable {
|
public class AreaPowerQualityData implements Serializable {
|
||||||
|
|
||||||
|
private String deptsIndex;
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
private float data;
|
private float data;
|
||||||
@@ -49,6 +50,14 @@ public class AreaPowerQualityData implements Serializable {
|
|||||||
this.level = level;
|
this.level = level;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getDeptsIndex() {
|
||||||
|
return deptsIndex;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDeptsIndex(String deptsIndex) {
|
||||||
|
this.deptsIndex = deptsIndex;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return "AreaPowerQualityData{" +
|
return "AreaPowerQualityData{" +
|
||||||
|
|||||||
@@ -1,8 +1,10 @@
|
|||||||
package com.pqs9000.service.data;
|
package com.pqs9000.service.data;
|
||||||
|
|
||||||
|
import com.njcn.pojo.data.AssesData;
|
||||||
import com.pqs9000.pojo.common.PowerQualityData;
|
import com.pqs9000.pojo.common.PowerQualityData;
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author hongawen
|
* @author hongawen
|
||||||
@@ -20,4 +22,7 @@ public interface AssesService {
|
|||||||
PowerQualityData qualityAssess(Date startTime, Date endTime, Long lineIndex);
|
PowerQualityData qualityAssess(Date startTime, Date endTime, Long lineIndex);
|
||||||
|
|
||||||
PowerQualityData qualityAssessTB(Date startTime, Date endTime,Date laststartTime, Date lastendTime, Long lineIndex);
|
PowerQualityData qualityAssessTB(Date startTime, Date endTime,Date laststartTime, Date lastendTime, Long lineIndex);
|
||||||
|
|
||||||
|
//电能质量评估列表
|
||||||
|
List<AssesData> getAssesTableData(Date startTime, Date endTime, String area);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,10 +1,11 @@
|
|||||||
package com.pqs9000.serviceimpl.data;
|
package com.pqs9000.serviceimpl.data;
|
||||||
|
|
||||||
import java.text.DecimalFormat;
|
import java.text.DecimalFormat;
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.Date;
|
import java.util.stream.Collectors;
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollUtil;
|
||||||
|
import com.njcn.pojo.data.AssesData;
|
||||||
import org.apache.commons.collections.CollectionUtils;
|
import org.apache.commons.collections.CollectionUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@@ -12,7 +13,6 @@ import org.springframework.stereotype.Service;
|
|||||||
|
|
||||||
import com.njcn.mapper.configuration.OverLimitMapper;
|
import com.njcn.mapper.configuration.OverLimitMapper;
|
||||||
import com.njcn.mapper.data.AssesMapper;
|
import com.njcn.mapper.data.AssesMapper;
|
||||||
import com.njcn.mapper.user.DeptsMapper;
|
|
||||||
import com.njcn.pojo.commons.AreaGeneralData;
|
import com.njcn.pojo.commons.AreaGeneralData;
|
||||||
import com.njcn.pojo.configuration.OverLimit;
|
import com.njcn.pojo.configuration.OverLimit;
|
||||||
import com.njcn.pojo.data.Asses;
|
import com.njcn.pojo.data.Asses;
|
||||||
@@ -94,6 +94,7 @@ public class AssesServiceImpl implements AssesService {
|
|||||||
if(CollectionUtils.isEmpty(areaGeneralData.getLineIndexs())){
|
if(CollectionUtils.isEmpty(areaGeneralData.getLineIndexs())){
|
||||||
//综合评分
|
//综合评分
|
||||||
AreaPowerQualityData areaPowerQualityData5=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData5=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData5.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData5.setName(areaGeneralData.getName());
|
areaPowerQualityData5.setName(areaGeneralData.getName());
|
||||||
//获取综合评分
|
//获取综合评分
|
||||||
areaPowerQualityData5.setData(3.1415f);
|
areaPowerQualityData5.setData(3.1415f);
|
||||||
@@ -103,6 +104,7 @@ public class AssesServiceImpl implements AssesService {
|
|||||||
synData.add(areaPowerQualityData5);
|
synData.add(areaPowerQualityData5);
|
||||||
if(StringUtils.isBlank(overview)){
|
if(StringUtils.isBlank(overview)){
|
||||||
AreaPowerQualityData areaPowerQualityData=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData.setName(areaGeneralData.getName());
|
areaPowerQualityData.setName(areaGeneralData.getName());
|
||||||
//获取时间范围内该区域的电压偏差
|
//获取时间范围内该区域的电压偏差
|
||||||
areaPowerQualityData.setData(3.1415f);
|
areaPowerQualityData.setData(3.1415f);
|
||||||
@@ -110,24 +112,28 @@ public class AssesServiceImpl implements AssesService {
|
|||||||
areaPowerQualityData.setMonitor(0);
|
areaPowerQualityData.setMonitor(0);
|
||||||
vuDevs.add(areaPowerQualityData);
|
vuDevs.add(areaPowerQualityData);
|
||||||
AreaPowerQualityData areaPowerQualityData1=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData1=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData1.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData1.setName(areaGeneralData.getName());
|
areaPowerQualityData1.setName(areaGeneralData.getName());
|
||||||
areaPowerQualityData1.setData(3.1415f);
|
areaPowerQualityData1.setData(3.1415f);
|
||||||
areaPowerQualityData1.setLevel("/");
|
areaPowerQualityData1.setLevel("/");
|
||||||
areaPowerQualityData1.setMonitor(0);
|
areaPowerQualityData1.setMonitor(0);
|
||||||
freqDev.add(areaPowerQualityData1);
|
freqDev.add(areaPowerQualityData1);
|
||||||
AreaPowerQualityData areaPowerQualityData2=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData2=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData2.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData2.setName(areaGeneralData.getName());
|
areaPowerQualityData2.setName(areaGeneralData.getName());
|
||||||
areaPowerQualityData2.setData(3.1415f);
|
areaPowerQualityData2.setData(3.1415f);
|
||||||
areaPowerQualityData2.setLevel("/");
|
areaPowerQualityData2.setLevel("/");
|
||||||
areaPowerQualityData2.setMonitor(0);
|
areaPowerQualityData2.setMonitor(0);
|
||||||
dataPlt.add(areaPowerQualityData2);
|
dataPlt.add(areaPowerQualityData2);
|
||||||
AreaPowerQualityData areaPowerQualityData3=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData3=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData3.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData3.setName(areaGeneralData.getName());
|
areaPowerQualityData3.setName(areaGeneralData.getName());
|
||||||
areaPowerQualityData3.setData(3.1415f);
|
areaPowerQualityData3.setData(3.1415f);
|
||||||
areaPowerQualityData3.setLevel("/");
|
areaPowerQualityData3.setLevel("/");
|
||||||
areaPowerQualityData3.setMonitor(0);
|
areaPowerQualityData3.setMonitor(0);
|
||||||
vThdCp95.add(areaPowerQualityData3);
|
vThdCp95.add(areaPowerQualityData3);
|
||||||
AreaPowerQualityData areaPowerQualityData4=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData4=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData4.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData4.setName(areaGeneralData.getName());
|
areaPowerQualityData4.setName(areaGeneralData.getName());
|
||||||
areaPowerQualityData4.setData(3.1415f);
|
areaPowerQualityData4.setData(3.1415f);
|
||||||
areaPowerQualityData4.setLevel("/");
|
areaPowerQualityData4.setLevel("/");
|
||||||
@@ -136,6 +142,7 @@ public class AssesServiceImpl implements AssesService {
|
|||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
AreaPowerQualityData areaPowerQualityData=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData.setName(areaGeneralData.getName());
|
areaPowerQualityData.setName(areaGeneralData.getName());
|
||||||
//获取时间范围内该区域的电压偏差
|
//获取时间范围内该区域的电压偏差
|
||||||
List<Integer> lineIds=areaGeneralData.getLineIndexs();
|
List<Integer> lineIds=areaGeneralData.getLineIndexs();
|
||||||
@@ -158,24 +165,28 @@ public class AssesServiceImpl implements AssesService {
|
|||||||
areaPowerQualityData.setMonitor(lineIds.size());
|
areaPowerQualityData.setMonitor(lineIds.size());
|
||||||
vuDevs.add(areaPowerQualityData);
|
vuDevs.add(areaPowerQualityData);
|
||||||
AreaPowerQualityData areaPowerQualityData1=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData1=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData1.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData1.setName(areaGeneralData.getName());
|
areaPowerQualityData1.setName(areaGeneralData.getName());
|
||||||
areaPowerQualityData1.setData(3.14159f);
|
areaPowerQualityData1.setData(3.14159f);
|
||||||
areaPowerQualityData1.setLevel("(暂无数据)");
|
areaPowerQualityData1.setLevel("(暂无数据)");
|
||||||
areaPowerQualityData1.setMonitor(lineIds.size());
|
areaPowerQualityData1.setMonitor(lineIds.size());
|
||||||
freqDev.add(areaPowerQualityData1);
|
freqDev.add(areaPowerQualityData1);
|
||||||
AreaPowerQualityData areaPowerQualityData2=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData2=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData2.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData2.setName(areaGeneralData.getName());
|
areaPowerQualityData2.setName(areaGeneralData.getName());
|
||||||
areaPowerQualityData2.setData(3.14159f);
|
areaPowerQualityData2.setData(3.14159f);
|
||||||
areaPowerQualityData2.setLevel("(暂无数据)");
|
areaPowerQualityData2.setLevel("(暂无数据)");
|
||||||
areaPowerQualityData2.setMonitor(lineIds.size());
|
areaPowerQualityData2.setMonitor(lineIds.size());
|
||||||
dataPlt.add(areaPowerQualityData2);
|
dataPlt.add(areaPowerQualityData2);
|
||||||
AreaPowerQualityData areaPowerQualityData3=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData3=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData3.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData3.setName(areaGeneralData.getName());
|
areaPowerQualityData3.setName(areaGeneralData.getName());
|
||||||
areaPowerQualityData3.setData(3.14159f);
|
areaPowerQualityData3.setData(3.14159f);
|
||||||
areaPowerQualityData3.setLevel("(暂无数据)");
|
areaPowerQualityData3.setLevel("(暂无数据)");
|
||||||
areaPowerQualityData3.setMonitor(lineIds.size());
|
areaPowerQualityData3.setMonitor(lineIds.size());
|
||||||
vThdCp95.add(areaPowerQualityData3);
|
vThdCp95.add(areaPowerQualityData3);
|
||||||
AreaPowerQualityData areaPowerQualityData4=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData4=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData4.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData4.setName(areaGeneralData.getName());
|
areaPowerQualityData4.setName(areaGeneralData.getName());
|
||||||
areaPowerQualityData4.setData(3.14159f);
|
areaPowerQualityData4.setData(3.14159f);
|
||||||
areaPowerQualityData4.setLevel("(暂无数据)");
|
areaPowerQualityData4.setLevel("(暂无数据)");
|
||||||
@@ -185,6 +196,7 @@ public class AssesServiceImpl implements AssesService {
|
|||||||
}else{
|
}else{
|
||||||
//综合评分
|
//综合评分
|
||||||
AreaPowerQualityData areaPowerQualityData5=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData5=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData5.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData5.setName(areaGeneralData.getName());
|
areaPowerQualityData5.setName(areaGeneralData.getName());
|
||||||
//获取综合评分
|
//获取综合评分
|
||||||
float synDatas=getSynData(areaGeneralData.getLineIndexs(),startTime,endTime);
|
float synDatas=getSynData(areaGeneralData.getLineIndexs(),startTime,endTime);
|
||||||
@@ -199,24 +211,28 @@ public class AssesServiceImpl implements AssesService {
|
|||||||
areaPowerQualityData.setMonitor(lineIds.size());
|
areaPowerQualityData.setMonitor(lineIds.size());
|
||||||
vuDevs.add(areaPowerQualityData);
|
vuDevs.add(areaPowerQualityData);
|
||||||
AreaPowerQualityData areaPowerQualityData1=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData1=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData1.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData1.setName(areaGeneralData.getName());
|
areaPowerQualityData1.setName(areaGeneralData.getName());
|
||||||
areaPowerQualityData1.setData(FloatUtils.get2Float(asses.getFreqDev()));
|
areaPowerQualityData1.setData(FloatUtils.get2Float(asses.getFreqDev()));
|
||||||
areaPowerQualityData1.setLevel(getLevel(asses.getFreqDev(),0f,0.05f,0.1f,0.15f,0.2f,0.25f,0.30f,0.35f));
|
areaPowerQualityData1.setLevel(getLevel(asses.getFreqDev(),0f,0.05f,0.1f,0.15f,0.2f,0.25f,0.30f,0.35f));
|
||||||
areaPowerQualityData1.setMonitor(lineIds.size());
|
areaPowerQualityData1.setMonitor(lineIds.size());
|
||||||
freqDev.add(areaPowerQualityData1);
|
freqDev.add(areaPowerQualityData1);
|
||||||
AreaPowerQualityData areaPowerQualityData2=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData2=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData2.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData2.setName(areaGeneralData.getName());
|
areaPowerQualityData2.setName(areaGeneralData.getName());
|
||||||
areaPowerQualityData2.setData(FloatUtils.get2Float(asses.getDataPlt()));
|
areaPowerQualityData2.setData(FloatUtils.get2Float(asses.getDataPlt()));
|
||||||
areaPowerQualityData2.setLevel(getLevel(asses.getDataPlt(),0f,0.15f,0.3f,0.45f,0.6f,0.75f,0.90f,1.05f));
|
areaPowerQualityData2.setLevel(getLevel(asses.getDataPlt(),0f,0.15f,0.3f,0.45f,0.6f,0.75f,0.90f,1.05f));
|
||||||
areaPowerQualityData2.setMonitor(lineIds.size());
|
areaPowerQualityData2.setMonitor(lineIds.size());
|
||||||
dataPlt.add(areaPowerQualityData2);
|
dataPlt.add(areaPowerQualityData2);
|
||||||
AreaPowerQualityData areaPowerQualityData3=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData3=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData3.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData3.setName(areaGeneralData.getName());
|
areaPowerQualityData3.setName(areaGeneralData.getName());
|
||||||
areaPowerQualityData3.setData(FloatUtils.get2Float(asses.getvThdCp95()));
|
areaPowerQualityData3.setData(FloatUtils.get2Float(asses.getvThdCp95()));
|
||||||
areaPowerQualityData3.setLevel(getLevel(asses.getvThdCp95(),0f,0.5f,1f,1.5f,2f,2.5f,3f,3.5f));
|
areaPowerQualityData3.setLevel(getLevel(asses.getvThdCp95(),0f,0.5f,1f,1.5f,2f,2.5f,3f,3.5f));
|
||||||
areaPowerQualityData3.setMonitor(lineIds.size());
|
areaPowerQualityData3.setMonitor(lineIds.size());
|
||||||
vThdCp95.add(areaPowerQualityData3);
|
vThdCp95.add(areaPowerQualityData3);
|
||||||
AreaPowerQualityData areaPowerQualityData4=new AreaPowerQualityData();
|
AreaPowerQualityData areaPowerQualityData4=new AreaPowerQualityData();
|
||||||
|
areaPowerQualityData4.setDeptsIndex(areaGeneralData.getDeptIndex());
|
||||||
areaPowerQualityData4.setName(areaGeneralData.getName());
|
areaPowerQualityData4.setName(areaGeneralData.getName());
|
||||||
areaPowerQualityData4.setData(FloatUtils.get2Float(asses.getVunbalanceCp95()));
|
areaPowerQualityData4.setData(FloatUtils.get2Float(asses.getVunbalanceCp95()));
|
||||||
areaPowerQualityData4.setLevel(getLevel(asses.getVunbalanceCp95(),0f,0.5f,1f,1.5f,2f,2.5f,3f,3.5f));
|
areaPowerQualityData4.setLevel(getLevel(asses.getVunbalanceCp95(),0f,0.5f,1f,1.5f,2f,2.5f,3f,3.5f));
|
||||||
@@ -241,6 +257,9 @@ public class AssesServiceImpl implements AssesService {
|
|||||||
if(synDatas==3.14159f){
|
if(synDatas==3.14159f){
|
||||||
return "(暂无数据)";
|
return "(暂无数据)";
|
||||||
}
|
}
|
||||||
|
if(synDatas==3.1415f){
|
||||||
|
return "/";
|
||||||
|
}
|
||||||
if(0<=synDatas&&synDatas<2){
|
if(0<=synDatas&&synDatas<2){
|
||||||
return "极差";
|
return "极差";
|
||||||
}else if(2<=synDatas&&synDatas<3){
|
}else if(2<=synDatas&&synDatas<3){
|
||||||
@@ -599,4 +618,99 @@ public class AssesServiceImpl implements AssesService {
|
|||||||
powerQualityData.setVunbalanceCp95(vunbalanceCp95);
|
powerQualityData.setVunbalanceCp95(vunbalanceCp95);
|
||||||
return powerQualityData;
|
return powerQualityData;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<AssesData> getAssesTableData(Date startTime, Date endTime, String area) {
|
||||||
|
List<AreaGeneralData> areaGeneralDataList = userUtil.getAreaGeneralRun(null,area,null);
|
||||||
|
List<Integer> lineIndexs = areaGeneralDataList.stream().flatMap(item->item.getLineIndexs().stream()).collect(Collectors.toList());
|
||||||
|
if (org.springframework.util.CollectionUtils.isEmpty(lineIndexs)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
List<AssesData> integralityTable = getIntegralityTable(startTime, endTime, lineIndexs);
|
||||||
|
if(CollUtil.isNotEmpty(integralityTable)){
|
||||||
|
Map<String, Float> assesSynData = getAssesSynData(startTime, endTime, lineIndexs);
|
||||||
|
for (AssesData assesData : integralityTable) {
|
||||||
|
if(assesSynData.containsKey(assesData.getLineId())){
|
||||||
|
assesData.setSynData(assesSynData.get(assesData.getLineId()));
|
||||||
|
}else{
|
||||||
|
assesData.setSynData(0f);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return integralityTable;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分片处理获取
|
||||||
|
*
|
||||||
|
* @param startTime 起始时间
|
||||||
|
* @param endTime 截止时间
|
||||||
|
* @param lineIndexs 监测点索引
|
||||||
|
*/
|
||||||
|
private List<AssesData> getIntegralityTable(Date startTime, Date endTime, List<Integer> lineIndexs) {
|
||||||
|
List<AssesData> intergralityTables = new ArrayList<>();
|
||||||
|
//分片1000个监测点
|
||||||
|
if (lineIndexs.size() > 1000) {
|
||||||
|
int times = lineIndexs.size() / 1000 + 1;
|
||||||
|
for (int i = 1; i <= times; i++) {
|
||||||
|
if (lineIndexs.size() > 1000) {
|
||||||
|
List<Integer> tempIndexs = lineIndexs.subList(0, 1000);
|
||||||
|
List<AssesData> tempTables = assesMapper.getLineVol(tempIndexs, startTime, endTime);
|
||||||
|
intergralityTables.addAll(tempTables);
|
||||||
|
tempIndexs.clear();
|
||||||
|
} else {
|
||||||
|
List<AssesData> tempTables = assesMapper.getLineVol(lineIndexs, startTime, endTime);
|
||||||
|
intergralityTables.addAll(tempTables);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
intergralityTables = assesMapper.getLineVol(lineIndexs, startTime, endTime);
|
||||||
|
}
|
||||||
|
return intergralityTables;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分片处理获取
|
||||||
|
*
|
||||||
|
* @param startTime 起始时间
|
||||||
|
* @param endTime 截止时间
|
||||||
|
* @param lineIndexs 监测点索引
|
||||||
|
*/
|
||||||
|
private Map<String,Float> getAssesSynData(Date startTime, Date endTime, List<Integer> lineIndexs) {
|
||||||
|
Map<String,Float> map=new HashMap<>();
|
||||||
|
List<PqsComasses> intergralityTables = new ArrayList<>();
|
||||||
|
//分片1000个监测点
|
||||||
|
if (lineIndexs.size() > 1000) {
|
||||||
|
int times = lineIndexs.size() / 1000 + 1;
|
||||||
|
for (int i = 1; i <= times; i++) {
|
||||||
|
if (lineIndexs.size() > 1000) {
|
||||||
|
List<Integer> tempIndexs = lineIndexs.subList(0, 1000);
|
||||||
|
List<PqsComasses> tempTables = assesMapper.getSynData(tempIndexs, startTime, endTime);
|
||||||
|
intergralityTables.addAll(tempTables);
|
||||||
|
tempIndexs.clear();
|
||||||
|
} else {
|
||||||
|
List<PqsComasses> tempTables = assesMapper.getSynData(lineIndexs, startTime, endTime);
|
||||||
|
intergralityTables.addAll(tempTables);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
intergralityTables = assesMapper.getSynData(lineIndexs, startTime, endTime);
|
||||||
|
}
|
||||||
|
if(CollUtil.isNotEmpty(intergralityTables)){
|
||||||
|
for (int i = 0; i < intergralityTables.size(); i++) {
|
||||||
|
PqsComasses tempPqs=intergralityTables.get(i);
|
||||||
|
//组合二维数组
|
||||||
|
float f1[][]={{tempPqs.getFreqDev1(),tempPqs.getFreqDev2(),tempPqs.getFreqDev3(),tempPqs.getFreqDev4(),tempPqs.getFreqDev5()}
|
||||||
|
,{tempPqs.getVThd1(),tempPqs.getVThd2(),tempPqs.getVThd3(),tempPqs.getVThd4(),tempPqs.getVThd5(),}
|
||||||
|
,{tempPqs.getDataPst1(),tempPqs.getDataPst2(),tempPqs.getDataPst3(),tempPqs.getDataPst4(),tempPqs.getDataPst5()}
|
||||||
|
,{tempPqs.getVuDev1(),tempPqs.getVuDev2(),tempPqs.getVuDev3(),tempPqs.getVuDev4(),tempPqs.getVuDev5(),}
|
||||||
|
,{tempPqs.getVUnbalance1(),tempPqs.getVUnbalance2(),tempPqs.getVUnbalance3(),tempPqs.getVUnbalance4(),tempPqs.getVUnbalance5(),}
|
||||||
|
,{tempPqs.getEvent1(),tempPqs.getEvent2(),tempPqs.getEvent3(),tempPqs.getEvent4(),tempPqs.getEvent5(),}};
|
||||||
|
//获取该值返回的数据
|
||||||
|
float temp=comAssesUtil.GetComAsses(f1);
|
||||||
|
map.put(tempPqs.getLineid(),temp);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return map;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -66,5 +66,44 @@
|
|||||||
GROUP BY
|
GROUP BY
|
||||||
LINEID
|
LINEID
|
||||||
</select>
|
</select>
|
||||||
|
<select id="getLineVol" resultType="com.njcn.pojo.data.AssesData">
|
||||||
|
SELECT
|
||||||
|
T6.NAME powerCompany,
|
||||||
|
T7.NAME substation,
|
||||||
|
T1.LINEID lineId,
|
||||||
|
T2.NAME lineName,
|
||||||
|
VU_DEV as vuDevs,
|
||||||
|
Freq_Dev as freqDev,
|
||||||
|
Data_PLT as dataPlt,
|
||||||
|
V_Unbalance_CP95 as vunbalanceCp95,
|
||||||
|
V_THD_CP95 as vThdCp95
|
||||||
|
FROM
|
||||||
|
(
|
||||||
|
SELECT
|
||||||
|
LINEID,
|
||||||
|
ROUND(AVG( VU_DEV ),2) VU_DEV,
|
||||||
|
ROUND(AVG( Freq_Dev ),2) Freq_Dev,
|
||||||
|
ROUND(AVG( Data_PLT ),2) Data_PLT,
|
||||||
|
ROUND(AVG( V_Unbalance_CP95 ),2) V_Unbalance_CP95,
|
||||||
|
ROUND(AVG( V_THD_CP95 ),2) V_THD_CP95
|
||||||
|
FROM
|
||||||
|
PQS_ASSES
|
||||||
|
WHERE
|
||||||
|
TIMEID BETWEEN #{startTime}
|
||||||
|
AND #{endTime}
|
||||||
|
AND LINEID IN
|
||||||
|
<foreach collection="list" item="item" separator="," open="(" close=")">
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
GROUP BY
|
||||||
|
LINEID
|
||||||
|
) T1,
|
||||||
|
PQ_LINE T2,
|
||||||
|
PQ_SUBSTATION T7,
|
||||||
|
PQ_GDINFORMATION T6
|
||||||
|
WHERE
|
||||||
|
T1.LINEID = T2.LINE_INDEX
|
||||||
|
AND T2.SUB_INDEX = T7.SUB_INDEX
|
||||||
|
AND T2.GD_INDEX = T6.GD_INDEX
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
@@ -23,7 +23,7 @@
|
|||||||
SUM (T1.real) countOnline,
|
SUM (T1.real) countOnline,
|
||||||
SUM (T1.due) countAll
|
SUM (T1.due) countAll
|
||||||
FROM
|
FROM
|
||||||
PQS_NGCPINTEGRITY T1
|
PQS_Integrity T1
|
||||||
WHERE
|
WHERE
|
||||||
T1.Line_index in
|
T1.Line_index in
|
||||||
<foreach collection="list" item="item" open="(" close=")" separator=",">
|
<foreach collection="list" item="item" open="(" close=")" separator=",">
|
||||||
@@ -148,7 +148,7 @@
|
|||||||
4
|
4
|
||||||
) * 100 integrity
|
) * 100 integrity
|
||||||
FROM
|
FROM
|
||||||
PQS_NGCPINTEGRITY T1
|
PQS_Integrity T1
|
||||||
WHERE
|
WHERE
|
||||||
T1.LINE_INDEX IN <foreach collection="list" item="item" open="(" close=")" separator=",">#{item}</foreach>
|
T1.LINE_INDEX IN <foreach collection="list" item="item" open="(" close=")" separator=",">#{item}</foreach>
|
||||||
AND t1.TIMEID BETWEEN #{startTime} AND #{endTime}
|
AND t1.TIMEID BETWEEN #{startTime} AND #{endTime}
|
||||||
|
|||||||
@@ -108,7 +108,8 @@
|
|||||||
a.line_index lineIndex,
|
a.line_index lineIndex,
|
||||||
mod(a.line_index,10) as lineNum,
|
mod(a.line_index,10) as lineNum,
|
||||||
a.name as lineName,
|
a.name as lineName,
|
||||||
nvl(b.POWER_SUBSTATION_NAME,e.name)||'_'||sv.NAME||'_'||a.name as electricityQualityName,
|
e.name||'_'||sv.NAME||'_'||a.name as electricityQualityName,
|
||||||
|
sv.NAME as busBarName,
|
||||||
a.dev_index devIndex,
|
a.dev_index devIndex,
|
||||||
a.status lineStatus,
|
a.status lineStatus,
|
||||||
b.pttype ptType,
|
b.pttype ptType,
|
||||||
@@ -194,10 +195,14 @@
|
|||||||
<if test="status!=null">
|
<if test="status!=null">
|
||||||
and d.status = #{status}
|
and d.status = #{status}
|
||||||
</if>
|
</if>
|
||||||
|
<if test="powerId!=null">
|
||||||
|
and b.POWERID = #{powerId}
|
||||||
|
</if>
|
||||||
<choose>
|
<choose>
|
||||||
<when test="type == 0"> and b.MONITOR_ID is not null and b.MONITOR_ID != ' '</when>
|
<when test="type == 0"> and b.MONITOR_ID is not null and b.MONITOR_ID != ' '</when>
|
||||||
<when test="type == 1"> and (b.MONITOR_ID IS NULL or b.MONITOR_ID IN (' '))</when>
|
<when test="type == 1"> and (b.MONITOR_ID IS NULL or b.MONITOR_ID IN (' '))</when>
|
||||||
</choose>
|
</choose>
|
||||||
|
order by province,gdName,devName,lineNum,subName,busBarName,lineName
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getDeptsLineIndex" resultType="java.lang.Integer"
|
<select id="getDeptsLineIndex" resultType="java.lang.Integer"
|
||||||
|
|||||||
@@ -127,7 +127,43 @@
|
|||||||
</foreach>
|
</foreach>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="selectIndexsPowerIdByDeptRun" resultType="IndexsCount">
|
||||||
|
SELECT
|
||||||
|
t2.LINE_INDEX lineIndex,
|
||||||
|
t2.SUB_INDEX subIndex,
|
||||||
|
t2.DEV_INDEX devIndex,
|
||||||
|
t2.GD_INDEX gdIndex
|
||||||
|
FROM
|
||||||
|
PQS_DEPTSLINE t1,
|
||||||
|
PQ_LINE t2,
|
||||||
|
PQ_LINEDETAIL t4,
|
||||||
|
PQ_DEVICE t3
|
||||||
|
WHERE
|
||||||
|
t1.LINE_INDEX = t2.LINE_INDEX
|
||||||
|
and t4.LINE_INDEX = t2.LINE_INDEX
|
||||||
|
AND t2.DEV_INDEX = t3.DEV_INDEX
|
||||||
|
AND t1.DEPTS_INDEX in
|
||||||
|
<foreach collection="depts" item="item" open="(" separator="," close=")">
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
<if test="sysType != null">
|
||||||
|
AND t1.systype=#{sysType}
|
||||||
|
</if>
|
||||||
|
AND t3.DEVMODEL = #{devModel}
|
||||||
|
<if test="devStatus!=null">
|
||||||
|
AND t3.DevFlag=#{devStatus}
|
||||||
|
</if>
|
||||||
|
<if test="status!=null">
|
||||||
|
AND t3.status = #{status}
|
||||||
|
</if>
|
||||||
|
<if test="powerId!=null">
|
||||||
|
AND t4.POWERID = #{powerId}
|
||||||
|
</if>
|
||||||
|
AND t3.DATATYPE in
|
||||||
|
<foreach collection="dataType" item="item" open="(" separator="," close=")">
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
</select>
|
||||||
|
|
||||||
<select id="selectIndexsByDeptsRunForStatFlag" resultType="IndexsCount">
|
<select id="selectIndexsByDeptsRunForStatFlag" resultType="IndexsCount">
|
||||||
SELECT
|
SELECT
|
||||||
|
|||||||
@@ -0,0 +1,131 @@
|
|||||||
|
<%@ page language="java" contentType="text/html; charset=UTF-8"
|
||||||
|
pageEncoding="UTF-8" %>
|
||||||
|
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
|
||||||
|
<%@ taglib prefix="shiro" uri="http://shiro.apache.org/tags" %>
|
||||||
|
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="zh-CN">
|
||||||
|
<head>
|
||||||
|
<title>电能质量评估列表</title>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport"
|
||||||
|
content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"/>
|
||||||
|
<link rel="stylesheet" href="${ctx}/css/plugin/bootstrap/bootstrap.min.css">
|
||||||
|
<link rel="stylesheet" href="${ctx}/css/plugin/datatables/buttons.dataTables.min.css">
|
||||||
|
<link rel="stylesheet" href="${ctx}/css/plugin/datatables/datatables.bootstrap.css">
|
||||||
|
<link rel="stylesheet" href="${ctx}/css/plugin/datatimepicker/bootstrap-datetimepicker.css">
|
||||||
|
<link rel="stylesheet" href="${ctx}/css/plugin/ztree/zTreeStyle.css">
|
||||||
|
<link rel="stylesheet" href="${ctx}/css/plugin/fontawesome/font-awesome.min.css">
|
||||||
|
<link rel="stylesheet" href="${ctx}/css/plugin/bootstrapSwitch/bootstrap-switch.min.css">
|
||||||
|
<link rel="stylesheet" href="${ctx}/css/basic.css">
|
||||||
|
<link rel="stylesheet" href="${ctx}/css/plugin/basicButton.css">
|
||||||
|
<link rel="stylesheet" href="${ctx}/css/tip.css">
|
||||||
|
<style>
|
||||||
|
|
||||||
|
body {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
#integritylist {
|
||||||
|
min-width: 2000px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tr {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.td {
|
||||||
|
text-align: center;
|
||||||
|
height: 48px;
|
||||||
|
line-height: 48px
|
||||||
|
}
|
||||||
|
|
||||||
|
.table > tbody > tr > td {
|
||||||
|
padding: 5px;
|
||||||
|
line-height: 1.42857143;
|
||||||
|
vertical-align: top;
|
||||||
|
border-top: 1px solid #ddd;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagination > li > a, .pagination > li > span {
|
||||||
|
padding: 6px 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="container-fluid">
|
||||||
|
<div class="form-inline header mt10">
|
||||||
|
<label class="form-group">区域:</label>
|
||||||
|
<div class="form-group has-feedback mr10">
|
||||||
|
<div class="disinlineb">
|
||||||
|
<input id="area" class="form-control" style="width: 140px" readonly>
|
||||||
|
<i class="fa fa-caret-down areaicon"></i>
|
||||||
|
<i class="fa fa-caret-up treeUpIcon disnone"
|
||||||
|
style="color: #C9CBCE;position: absolute;left: 60px;font-size: 18px;z-index: 9999;top: 20px"></i>
|
||||||
|
<div class=" ztree treeUpDiv disnone " id="areaTree"
|
||||||
|
style="position: absolute;width: 140px;height: 147px;border: 2px solid #C9CBCE;overflow: auto;top: 32px;background: #fff;z-index: 100;border-radius: 2px">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<%@include file="../../include/time.jsp" %>
|
||||||
|
<button id="query" type="button" class="btn btn-primary ml5">
|
||||||
|
<i class="glyphicon glyphicon-search"></i>
|
||||||
|
</button>
|
||||||
|
|
||||||
|
<div class="form-group fr mr10" id="fliteData">
|
||||||
|
<label>筛选数据:</label>
|
||||||
|
<input type="text" class="form-control" onkeyup="searchResult(this.value)"
|
||||||
|
placeholder="空格分开多条件筛选数据">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<table id="integritylist" class="table table-striped table-bordered dataTable no-footer width100">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>序号</th>
|
||||||
|
<th>供电公司</th>
|
||||||
|
<th>变电站</th>
|
||||||
|
<th>监测点名称</th>
|
||||||
|
<th>综合评估</th>
|
||||||
|
<th>电压偏差(%)</th>
|
||||||
|
<th>频率偏差(Hz)</th>
|
||||||
|
<th>谐波含量(%)</th>
|
||||||
|
<th>电压闪变</th>
|
||||||
|
<th>三相电压不平衡度(%)</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
<input id="_startTime" value="${startTime}" hidden>
|
||||||
|
<input id="_endTime" value="${endTime}" hidden>
|
||||||
|
<input id="_area" value="${area}" hidden>
|
||||||
|
<input id="_interval" value="${interval}" hidden>
|
||||||
|
<input id="gwType" value="${gwType}" hidden>
|
||||||
|
</body>
|
||||||
|
<script src="${ctx}/js/plugin/jquery/jquery.min.js"></script>
|
||||||
|
<script src="${ctx}/js/plugin/bootstrap/bootstrap.min.js"></script>
|
||||||
|
<script src="${ctx}/js/plugin/bootstrap/bootstrap-datetimepicker.js"></script>
|
||||||
|
<script src="${ctx}/js/plugin/bootstrap/bootstrap-datetimepicker.zh-CN.js"></script>
|
||||||
|
<script src="${ctx}/js/plugin/datatables/datatables.jquery.js"></script>
|
||||||
|
<script src="${ctx}/js/plugin/datatables/dataTables.buttons.min.js"></script>
|
||||||
|
<script src="${ctx}/js/plugin/datatables/datatables.bootstrap.js"></script>
|
||||||
|
<script src="${ctx}/js/plugin/datatables/buttons.html5.min.js"></script>
|
||||||
|
<script src="${ctx}/js/plugin/bootstrapSwitch/bootstrap-switch.min.js"></script>
|
||||||
|
<script src="${ctx}/js/plugin/layui/layer.js"></script>
|
||||||
|
<script src="${ctx}/jspJS/utils/loading.js"></script>
|
||||||
|
<script src="${ctx}/jspJS/utils/timeControl.js"></script>
|
||||||
|
<script src="${ctx}/js/plugin/ztree/jquery.ztree.core.js"></script>
|
||||||
|
<script src="${ctx}/js/area.js"></script>
|
||||||
|
<script src="${ctx}/js/plugin/xss/xss.js"></script>
|
||||||
|
<script src="${ctx}/jspJS/utils/judgeAjaxStatus.js"></script>
|
||||||
|
<script src="${ctx}/js/color.js"></script>
|
||||||
|
<script src="${ctx}/jspJS/area/assesTable.js"></script>
|
||||||
|
<script src="${ctx}/jspJS/utils/helper.js"></script>
|
||||||
|
<script type="text/javascript">
|
||||||
|
$("#helper").click(function () {
|
||||||
|
toHelper("#jcdsjwzx");
|
||||||
|
});
|
||||||
|
var gwType = $("#gwType");
|
||||||
|
</script>
|
||||||
|
</html>
|
||||||
@@ -82,9 +82,19 @@
|
|||||||
<div class="form-inline disinlineb wanzhengdiv">
|
<div class="form-inline disinlineb wanzhengdiv">
|
||||||
<div class="form-group has-feedback mr10">
|
<div class="form-group has-feedback mr10">
|
||||||
<label>统计类型:</label>
|
<label>统计类型:</label>
|
||||||
<input type="checkbox" checked class="wanzheng"/>
|
<input type="checkbox" class="wanzheng" id="checkbox"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<label class="form-group">监测点性质:</label>
|
||||||
|
<select class="form-control" id="powerId">
|
||||||
|
<option value="">全部</option>
|
||||||
|
<option value="0">电网侧</option>
|
||||||
|
<option value="1">非电网侧</option>
|
||||||
|
<option value="2">电网侧(新能源)</option>
|
||||||
|
<option value="3">非电网侧(新能源)</option>
|
||||||
|
<option value="4">上送国网</option>
|
||||||
|
<option value="5">PCC</option>
|
||||||
|
</select><label class="form-group">
|
||||||
<button id="query" type="button" class="btn btn-primary ml5">
|
<button id="query" type="button" class="btn btn-primary ml5">
|
||||||
<i class="glyphicon glyphicon-search"></i>
|
<i class="glyphicon glyphicon-search"></i>
|
||||||
</button>
|
</button>
|
||||||
@@ -121,6 +131,7 @@
|
|||||||
<input id="_endTime" value="${endTime}" hidden>
|
<input id="_endTime" value="${endTime}" hidden>
|
||||||
<input id="_area" value="${area}" hidden>
|
<input id="_area" value="${area}" hidden>
|
||||||
<input id="_interval" value="${interval}" hidden>
|
<input id="_interval" value="${interval}" hidden>
|
||||||
|
<input id="gwType" value="${gwType}" hidden>
|
||||||
</body>
|
</body>
|
||||||
<script src="${ctx}/js/plugin/jquery/jquery.min.js"></script>
|
<script src="${ctx}/js/plugin/jquery/jquery.min.js"></script>
|
||||||
<script src="${ctx}/js/plugin/bootstrap/bootstrap.min.js"></script>
|
<script src="${ctx}/js/plugin/bootstrap/bootstrap.min.js"></script>
|
||||||
@@ -145,5 +156,6 @@
|
|||||||
$("#helper").click(function () {
|
$("#helper").click(function () {
|
||||||
toHelper("#jcdsjwzx");
|
toHelper("#jcdsjwzx");
|
||||||
});
|
});
|
||||||
|
var gwType = $("#gwType");
|
||||||
</script>
|
</script>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -73,6 +73,16 @@
|
|||||||
<option value="-1">全部</option>
|
<option value="-1">全部</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
|
<label class="form-group">监测点性质:</label>
|
||||||
|
<select class="form-control" id="powerId">
|
||||||
|
<option value="">全部</option>
|
||||||
|
<option value="0">电网侧</option>
|
||||||
|
<option value="1">非电网侧</option>
|
||||||
|
<option value="2">电网侧(新能源)</option>
|
||||||
|
<option value="3">非电网侧(新能源)</option>
|
||||||
|
<option value="4">上送国网</option>
|
||||||
|
<option value="5">PCC</option>
|
||||||
|
</select><label class="form-group">
|
||||||
<button id="query" type="button" class="btn btn-primary ml5">
|
<button id="query" type="button" class="btn btn-primary ml5">
|
||||||
<i class="glyphicon glyphicon-search"></i>
|
<i class="glyphicon glyphicon-search"></i>
|
||||||
</button>
|
</button>
|
||||||
@@ -88,38 +98,35 @@
|
|||||||
<th>序号</th>
|
<th>序号</th>
|
||||||
<th>省公司</th>
|
<th>省公司</th>
|
||||||
<th>市公司</th>
|
<th>市公司</th>
|
||||||
<th>监测点电压等级</th>
|
<th id="devNo" title="监测终端编号(电能质量监测系统终端编号)">监测终端编号</th>
|
||||||
<th>监测点名称</th>
|
|
||||||
<th>电能质量名称</th>
|
|
||||||
<th>所属电站</th>
|
<th>所属电站</th>
|
||||||
|
<th>母线名称</th>
|
||||||
|
<th>电能质量终端装置名称</th>
|
||||||
|
<th>监测点名称</th>
|
||||||
|
<th>监测点电压等级</th>
|
||||||
|
<th>监测点序号</th>
|
||||||
<th>干扰源类型</th>
|
<th>干扰源类型</th>
|
||||||
<th>监测对象名称</th>
|
<th>监测对象名称</th>
|
||||||
<th>电网侧变电站</th>
|
<th>电网侧变电站</th>
|
||||||
|
<th>监测装置网络参数</th>
|
||||||
<th>监测终端状态</th>
|
<th>监测终端状态</th>
|
||||||
<th>监测装置通讯状态</th>
|
<th>监测装置通讯状态</th>
|
||||||
<th>最新数据时间</th>
|
<th>监测装置安装位置</th>
|
||||||
<th>监测装置网络参数</th>
|
|
||||||
<th>监测装置投运时间</th>
|
<th>监测装置投运时间</th>
|
||||||
<th>监测装置型号</th>
|
<th>监测装置型号</th>
|
||||||
<th>所属前置机</th>
|
|
||||||
<th>监测装置厂家</th>
|
<th>监测装置厂家</th>
|
||||||
<th>监测装置安装位置</th>
|
<th>监测厂家设备编号</th>
|
||||||
|
<th>监测点状态</th>
|
||||||
|
<th>监测点运行状态</th>
|
||||||
|
<th>最新数据时间</th>
|
||||||
<th>最小短路容量(MVA)</th>
|
<th>最小短路容量(MVA)</th>
|
||||||
<th>供电设备容量(MVA)</th>
|
<th>供电设备容量(MVA)</th>
|
||||||
<th>用户协议容量(MVA)</th>
|
<th>用户协议容量(MVA)</th>
|
||||||
<th>监测点状态</th>
|
|
||||||
<th>监测点运行状态</th>
|
|
||||||
<th>监测点序号</th>
|
|
||||||
|
|
||||||
<th>监测终端编号(电能质量监测系统终端编号)</th>
|
|
||||||
<th>监测厂家设备编号</th>
|
|
||||||
<th>监测点编号</th>
|
<th>监测点编号</th>
|
||||||
|
<th>监测点性质</th>
|
||||||
|
|
||||||
|
|
||||||
|
<th>所属前置机</th>
|
||||||
<th>监测终端接线方式</th>
|
<th>监测终端接线方式</th>
|
||||||
<th>电压偏差上限</th>
|
<th>电压偏差上限</th>
|
||||||
<th>电压偏差下限</th>
|
<th>电压偏差下限</th>
|
||||||
|
|||||||
@@ -137,6 +137,7 @@
|
|||||||
<input type="hidden" id="token" value="${token}">
|
<input type="hidden" id="token" value="${token}">
|
||||||
<input id="_area" value="${area}" hidden>
|
<input id="_area" value="${area}" hidden>
|
||||||
<input id="gwType" value="${type}" hidden>
|
<input id="gwType" value="${type}" hidden>
|
||||||
|
<input id="facturer" value="${manufacturer}" hidden>
|
||||||
<script src="${ctx}/js/plugin/jquery/jquery.min.js"></script>
|
<script src="${ctx}/js/plugin/jquery/jquery.min.js"></script>
|
||||||
<script src="${ctx}/js/plugin/jquery/jquery.dataTables.js"></script>
|
<script src="${ctx}/js/plugin/jquery/jquery.dataTables.js"></script>
|
||||||
<script src="${ctx}/js/plugin/bootstrap/bootstrap.min.js"></script>
|
<script src="${ctx}/js/plugin/bootstrap/bootstrap.min.js"></script>
|
||||||
@@ -166,6 +167,8 @@
|
|||||||
});
|
});
|
||||||
var $area = $("#area");
|
var $area = $("#area");
|
||||||
var gwType = $("#gwType");
|
var gwType = $("#gwType");
|
||||||
|
var facturer = $("#facturer").val();
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -21,21 +21,21 @@
|
|||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div id="search">
|
<div id="search">
|
||||||
<input style="width: 200px; height: 25px;" id="search_value"
|
<input style="width: 94%; height: 25px;" id="search_value"
|
||||||
type="text" value="" placeholder="请输入关键词" autocomplete="off"
|
type="text" value="" placeholder="请输入关键词" autocomplete="off"
|
||||||
oninput="valueChange(this.value)" />
|
oninput="valueChange(this.value)" />
|
||||||
<button type="button" id="serchB"
|
<%-- <button type="button" id="serchB"--%>
|
||||||
class="btn-primary"
|
<%-- class="btn-primary"--%>
|
||||||
onclick="javascript: searchNode(search_value.value)"
|
<%-- onclick="javascript: searchNode(search_value.value)"--%>
|
||||||
style="height: 25px; width: 55px; border-radius: 4px; border: 1px solid;">
|
<%-- style="height: 25px; width: 55px; border-radius: 4px; border: 1px solid;">--%>
|
||||||
<i class="glyphicon glyphicon-search"></i>搜索
|
<%-- <i class="glyphicon glyphicon-search"></i>搜索--%>
|
||||||
</button>
|
<%-- </button>--%>
|
||||||
<button type="button" id="resetB"
|
<%-- <button type="button" id="resetB"--%>
|
||||||
class="btn-primary"
|
<%-- class="btn-primary"--%>
|
||||||
onclick="resetTree()"
|
<%-- onclick=""--%>
|
||||||
style="padding: 0 5px; height: 25px; width: 55px; border-radius: 4px; border: 1px solid;display:none;">
|
<%-- style="padding: 0 5px; height: 25px; width: 55px; border-radius: 4px; border: 1px solid;display:none;">--%>
|
||||||
<i class="glyphicon glyphicon-refresh"></i>重置
|
<%-- <i class="glyphicon glyphicon-refresh"></i>重置--%>
|
||||||
</button>
|
<%-- </button>--%>
|
||||||
</div>
|
</div>
|
||||||
<div id="tree" class="ztree" style="overflow: auto;margin-left: -8px;"></div>
|
<div id="tree" class="ztree" style="overflow: auto;margin-left: -8px;"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -185,9 +185,9 @@
|
|||||||
<shiro:hasPermission name="/pqs9000/area/harmonicrate">
|
<shiro:hasPermission name="/pqs9000/area/harmonicrate">
|
||||||
<a href="javascript:void(0)" onclick="addTab('/pqs9000/area/harmonicrate','谐波总畸变率统计')">谐波总畸变率统计</a>
|
<a href="javascript:void(0)" onclick="addTab('/pqs9000/area/harmonicrate','谐波总畸变率统计')">谐波总畸变率统计</a>
|
||||||
</shiro:hasPermission>
|
</shiro:hasPermission>
|
||||||
<%-- <shiro:hasPermission name="/pqs9000/area/onlinerate">--%>
|
<shiro:hasPermission name="/pqs9000/area/tomonitorscope">
|
||||||
<%-- <a href="javascript:void(0)" onclick="addTab('/pqs9000/area/onlinerate','终端在线率')">终端在线率</a>--%>
|
<a href="javascript:void(0)" onclick="addTab('/pqs9000/business/tomonitorscope','监测点信息图')">监测点信息图</a>
|
||||||
<%-- </shiro:hasPermission>--%>
|
</shiro:hasPermission>
|
||||||
<shiro:hasPermission name="/pqs9000/area/vdlist">
|
<shiro:hasPermission name="/pqs9000/area/vdlist">
|
||||||
<a href="javascript:void(0)" onclick="addTab('/pqs9000/area/vdlist','暂态事件列表')">暂态事件列表</a>
|
<a href="javascript:void(0)" onclick="addTab('/pqs9000/area/vdlist','暂态事件列表')">暂态事件列表</a>
|
||||||
</shiro:hasPermission>
|
</shiro:hasPermission>
|
||||||
@@ -303,7 +303,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
<div class="footer-copy clearfix">
|
<div class="footer-copy clearfix">
|
||||||
<div class="fr f13">CopyRight@2017 南京灿能电力自动化股份有限公司 版权所有</div>
|
<div class="fr f13"></div>
|
||||||
</div>
|
</div>
|
||||||
<div id="rightContent" style="position: absolute; left: 270px; right: 20px; top: 80px;">
|
<div id="rightContent" style="position: absolute; left: 270px; right: 20px; top: 80px;">
|
||||||
<div id="tabs" style="width: 100%; height: 100%;">
|
<div id="tabs" style="width: 100%; height: 100%;">
|
||||||
|
|||||||
@@ -272,7 +272,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
<div class="footer-copy clearfix">
|
<div class="footer-copy clearfix">
|
||||||
<div class="fr f13">CopyRight@2017 南京灿能电力自动化股份有限公司 版权所有</div>
|
<div class="fr f13"></div>
|
||||||
</div>
|
</div>
|
||||||
<div id="rightContent" style="position: absolute; left: 270px; right: 20px; top: 80px;">
|
<div id="rightContent" style="position: absolute; left: 270px; right: 20px; top: 80px;">
|
||||||
<div id="tabs" style="width: 100%; height: 100%;">
|
<div id="tabs" style="width: 100%; height: 100%;">
|
||||||
|
|||||||
@@ -394,8 +394,9 @@
|
|||||||
district.setOption(option);
|
district.setOption(option);
|
||||||
district.on('click', function (params) {
|
district.on('click', function (params) {
|
||||||
var city=params.data.areaIndex;
|
var city=params.data.areaIndex;
|
||||||
|
var gwtype= tiggleValue=="冀北省"?"0":"1";
|
||||||
if (getRole("/pqs9000/business/runtime") === 1) {
|
if (getRole("/pqs9000/business/runtime") === 1) {
|
||||||
window.top.addTab('runtime?area='+city, '终端运行情况')
|
window.top.addTab('runtime?area='+city+"&type="+gwtype, '终端运行情况')
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -710,11 +711,11 @@
|
|||||||
};
|
};
|
||||||
var factory = echarts.init(document.getElementById('company'));
|
var factory = echarts.init(document.getElementById('company'));
|
||||||
factory.setOption(option);
|
factory.setOption(option);
|
||||||
factory.on('click', function () {
|
factory.on('click', function (params) {
|
||||||
// var city=params.data.areaIndex;
|
var gwtype= tiggleValue=="冀北省"?"0":"1";
|
||||||
alert(1)
|
var manufacturer= params.name;
|
||||||
if (getRole("/pqs9000/business/runtime") == 1) {
|
if (getRole("/pqs9000/business/runtime") == 1) {
|
||||||
window.top.addTab('runtime', '终端运行情况')
|
window.top.addTab('runtime?type='+gwtype+"&manufacturer="+manufacturer, '终端运行情况')
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -134,6 +134,22 @@
|
|||||||
var companyLength;//厂家个数
|
var companyLength;//厂家个数
|
||||||
var color;
|
var color;
|
||||||
var companyname;
|
var companyname;
|
||||||
|
var onlines = [];
|
||||||
|
var gwonlines = [];
|
||||||
|
var integralitys = [];
|
||||||
|
var gwintegralitys = [];
|
||||||
|
function rate(num) {
|
||||||
|
if(num.length===0){
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
var dataNum = 0;
|
||||||
|
for (var i = 0; i < num.length; i++) {
|
||||||
|
if (!(num[i] === 3.1415)&&!(num[i] === 3.14159)) {
|
||||||
|
dataNum=dataNum+num[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return (dataNum/num.length).toFixed(2);
|
||||||
|
}
|
||||||
|
|
||||||
function initInfo() {
|
function initInfo() {
|
||||||
var endTime = getEndTime();
|
var endTime = getEndTime();
|
||||||
@@ -153,13 +169,13 @@
|
|||||||
var str1 = "<b style='font-size: 13px;color:" + color + ";'>" + data.body.name +
|
var str1 = "<b style='font-size: 13px;color:" + color + ";'>" + data.body.name +
|
||||||
":</b>\n<b style='font-size: 12px;color:" + color + ";'> 监测点数:" +data.body.pointCount +
|
":</b>\n<b style='font-size: 12px;color:" + color + ";'> 监测点数:" +data.body.pointCount +
|
||||||
"</b>\n<b style='font-size: 12px;color: " + color + ";'> 终端数:" + data.body.count +
|
"</b>\n<b style='font-size: 12px;color: " + color + ";'> 终端数:" + data.body.count +
|
||||||
"</b>\n<b style='font-size: 12px;color: " + color + ";'> 在线率:" + data.body.online +
|
"</b>\n<b style='font-size: 12px;color: " + color + ";'> 在线率:" + rate(onlines) +
|
||||||
"%</b>\n<b style='font-size: 12px;color: " + color + ";'> 数据完整性:" + data.body.dataIntegrality + "%</b>\n";
|
"%</b>\n<b style='font-size: 12px;color: " + color + ";'> 数据完整性:" + rate(integralitys) + "%</b>\n";
|
||||||
var str2 = "<b style='font-size: 13px;color: " + color + ";'>" + companyname +
|
var str2 = "<b style='font-size: 13px;color: " + color + ";'>" + companyname +
|
||||||
"</b>\n<b style='font-size: 12px;color: " + color + ";'> 监测点数:" + data.body.gwPointCount +
|
"</b>\n<b style='font-size: 12px;color: " + color + ";'> 监测点数:" + data.body.gwPointCount +
|
||||||
"</b>\n<b style='font-size: 12px;color: " + color + ";'> 终端数:" + data.body.gwCount +
|
"</b>\n<b style='font-size: 12px;color: " + color + ";'> 终端数:" + data.body.gwCount +
|
||||||
"</b>\n<b style='font-size: 12px;color: " + color + ";'> 在线率:" + data.body.gwOnline +
|
"</b>\n<b style='font-size: 12px;color: " + color + ";'> 在线率:" + rate(gwonlines) +
|
||||||
"%</b>\n<b style='font-size: 12px;color: " + color + ";'> 数据完整性:" + data.body.gwDataIntegrality + "%</b>\n";
|
"%</b>\n<b style='font-size: 12px;color: " + color + ";'> 数据完整性:" + rate(gwintegralitys) + "%</b>\n";
|
||||||
var str = str0;
|
var str = str0;
|
||||||
str += data.body.count == 0 ? "" : str1;
|
str += data.body.count == 0 ? "" : str1;
|
||||||
str += data.body.gwCount == 0 ? "" : str2;
|
str += data.body.gwCount == 0 ? "" : str2;
|
||||||
@@ -181,7 +197,6 @@
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
initInfo();
|
|
||||||
var t1 = getRole("/pqs9000/business/frequency");
|
var t1 = getRole("/pqs9000/business/frequency");
|
||||||
var t2 = getRole("/pqs9000/business/powerquality");
|
var t2 = getRole("/pqs9000/business/powerquality");
|
||||||
var t3 = 0;
|
var t3 = 0;
|
||||||
@@ -513,6 +528,8 @@
|
|||||||
onContent(id, title + info);
|
onContent(id, title + info);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
initInfo();
|
||||||
});
|
});
|
||||||
|
|
||||||
//画终端状态缩略图
|
//画终端状态缩略图
|
||||||
@@ -557,6 +574,8 @@
|
|||||||
}
|
}
|
||||||
itemStyle.normal=normalData;
|
itemStyle.normal=normalData;
|
||||||
singleData.itemStyle=itemStyle;
|
singleData.itemStyle=itemStyle;
|
||||||
|
onlines[i]=Number(area[i].online);
|
||||||
|
gwonlines[i]=Number(area[i].gwonline);
|
||||||
rate[i]=singleData;
|
rate[i]=singleData;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -723,6 +742,8 @@
|
|||||||
}
|
}
|
||||||
singleData.itemStyle = item;
|
singleData.itemStyle = item;
|
||||||
inte[i] = singleData;
|
inte[i] = singleData;
|
||||||
|
integralitys[i]=Number(area[i].dataIntegrity);
|
||||||
|
gwintegralitys[i]=Number(area[i].gwdataIntegrity);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
var option = {
|
var option = {
|
||||||
|
|||||||
285
pqs9000/src/main/webapp/jspJS/area/assesTable.js
Normal file
285
pqs9000/src/main/webapp/jspJS/area/assesTable.js
Normal file
@@ -0,0 +1,285 @@
|
|||||||
|
var $area = $("#area");
|
||||||
|
var $startTime = $("#startTime");
|
||||||
|
var $endTime = $("#endTime");
|
||||||
|
var $timeType = $("#interval");
|
||||||
|
var dataTable = null;
|
||||||
|
var resultData = null;
|
||||||
|
var areaInfo;
|
||||||
|
var buttonname = '';
|
||||||
|
var companyname;
|
||||||
|
var tiggleValue = "";
|
||||||
|
var allNetsData = [];
|
||||||
|
var countryNetsData = [];
|
||||||
|
$("#interval").val("月份");
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 电压等级排序自定义比较end
|
||||||
|
*/
|
||||||
|
$(function () {
|
||||||
|
//初始化区域
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
url: "/pqs9000/user/getAreasInfo",
|
||||||
|
dataType: 'json',
|
||||||
|
success: function (data) {
|
||||||
|
areaInfo = data;
|
||||||
|
$("#area").val(data[0].name);
|
||||||
|
$("#area").attr("index", data[0].id);
|
||||||
|
areaTree = $.fn.zTree.init($("#areaTree"), settingAreaTree, data);
|
||||||
|
//初始化页面内容
|
||||||
|
var sTemp = $("#_startTime").val();
|
||||||
|
var eTemp = $("#_endTime").val();
|
||||||
|
var aTemp = $("#_area").val();
|
||||||
|
var iTemp = $("#_interval").val();
|
||||||
|
sTemp = filterXSS(sTemp);
|
||||||
|
eTemp = filterXSS(eTemp);
|
||||||
|
aTemp = filterXSS(aTemp);
|
||||||
|
iTemp = filterXSS(iTemp);
|
||||||
|
if (sTemp === "" | sTemp === undefined) {
|
||||||
|
var area = $area.eq(0).attr("index");
|
||||||
|
var startTime = $startTime.eq(0).val();
|
||||||
|
var endTime = $endTime.eq(0).val();
|
||||||
|
refresh(area, startTime, endTime);
|
||||||
|
} else {
|
||||||
|
//填充区域、时间输入框
|
||||||
|
$("#startTime").val(sTemp);
|
||||||
|
$("#endTime").val(eTemp);
|
||||||
|
$("#interval").val(iTemp);
|
||||||
|
judgeInterval(iTemp);
|
||||||
|
if (aTemp === "" | aTemp === undefined) {
|
||||||
|
aTemp = $area.eq(0).attr("index");
|
||||||
|
} else {
|
||||||
|
$area.eq(0).val(getDeptsName(aTemp));
|
||||||
|
$area.eq(0).attr("index", aTemp);
|
||||||
|
}
|
||||||
|
refresh(aTemp, sTemp, eTemp);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
var start = $startTime.eq(0).val();
|
||||||
|
var end = $endTime.eq(0).val();
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
data: {
|
||||||
|
start: start,
|
||||||
|
end: end
|
||||||
|
},
|
||||||
|
async: false,
|
||||||
|
url: "/pqs9000/device/getMsgInfo",
|
||||||
|
dataType: 'json',
|
||||||
|
success: function (data) {
|
||||||
|
buttonname = data.body.name;
|
||||||
|
tiggleValue = data.body.name;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
url: "/pqs9000/theme/getThemeInfo",
|
||||||
|
async: false,
|
||||||
|
dataType: 'json',
|
||||||
|
success: function (data) {
|
||||||
|
companyname = data.body.name;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
//点击确定,去后台请求参数
|
||||||
|
$("#query").click(function () {
|
||||||
|
var area = $area.eq(0).attr("index");
|
||||||
|
var startTime = $startTime.eq(0).val();
|
||||||
|
var endTime = $endTime.eq(0).val();
|
||||||
|
var devflag = $("#devflag").val();
|
||||||
|
var powerId = $("#powerId").val();
|
||||||
|
refresh(area, startTime, endTime,devflag,powerId);
|
||||||
|
});
|
||||||
|
|
||||||
|
//获取表格数据
|
||||||
|
function refresh(area, startTime, endTime,devflag,powerId) {
|
||||||
|
var i;
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
url: "/pqs9000/overview/assesTableData",
|
||||||
|
dataType: "json",
|
||||||
|
data: {
|
||||||
|
startTime: startTime,
|
||||||
|
endTime: endTime,
|
||||||
|
area: area,
|
||||||
|
},
|
||||||
|
beforeSend: function () {
|
||||||
|
i = ityzl_SHOW_LOAD_LAYER();
|
||||||
|
},
|
||||||
|
success: function (data) {
|
||||||
|
if (data.code === 500) {
|
||||||
|
layer.msg(data.message, {icon: 2, time: 2000})
|
||||||
|
//没有数据
|
||||||
|
allNetsData = null;
|
||||||
|
} else {
|
||||||
|
allNetsData = data.body;
|
||||||
|
}
|
||||||
|
startQuery();
|
||||||
|
//***********关闭loading
|
||||||
|
ityzl_CLOSE_LOAD_LAYER(i);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
//实例化表格
|
||||||
|
function initTable(data) {
|
||||||
|
var height = $(window).height() - 155;
|
||||||
|
var length = Math.floor(height / 28);
|
||||||
|
if (length < 1) {
|
||||||
|
length = 1;
|
||||||
|
}
|
||||||
|
dataTable = $("#integritylist").DataTable();
|
||||||
|
dataTable.clear().draw();
|
||||||
|
dataTable = $('#integritylist').DataTable({
|
||||||
|
order: [1, "asc"],
|
||||||
|
columnDefs: [
|
||||||
|
{
|
||||||
|
orderable: false,
|
||||||
|
targets: 0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
columns: [
|
||||||
|
{width: "2%", data: null},
|
||||||
|
{
|
||||||
|
width: "4%", data: "powerCompany", render: function (data, type, full, meta) {
|
||||||
|
var value = data;
|
||||||
|
if (data.length > 10) {
|
||||||
|
value = data.substring(0, 9) + "...";
|
||||||
|
value = "<span title=" + data + ">" + value + "</span>";
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
width: "4%", data: "substation", render: function (data, type, full, meta) {
|
||||||
|
var value = data;
|
||||||
|
if (data.length > 10) {
|
||||||
|
value = data.substring(0, 9) + "...";
|
||||||
|
value = "<span title=" + data + ">" + value + "</span>";
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
width: "4%", data: "lineName", render: function (data, type, full, meta) {
|
||||||
|
var value = data;
|
||||||
|
if (data.length > 12) {
|
||||||
|
value = data.substring(0, 11) + "...";
|
||||||
|
value = "<span title=" + data + ">" + value + "</span>";
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{width: "2%", data: "synData"},
|
||||||
|
{width: "2%", data: "vuDevs"},
|
||||||
|
{width: "2%", data: "freqDev"},
|
||||||
|
{width: "2%", data: "dataPlt"},
|
||||||
|
{width: "2%", data: "vunbalanceCp95"},
|
||||||
|
{width: "2%", data: "vThdCp95"}
|
||||||
|
],
|
||||||
|
destroy: true,
|
||||||
|
data: data,
|
||||||
|
lengthChange: false,
|
||||||
|
searching: true,
|
||||||
|
dom: 'rtip',
|
||||||
|
scrollY: height,
|
||||||
|
scrollX: true,
|
||||||
|
lengthMenu: [length],
|
||||||
|
language: {
|
||||||
|
url: '/pqs9000/json/chine.json'
|
||||||
|
},
|
||||||
|
fnDrawCallback: function (oTable) {
|
||||||
|
$("#integritylist_info").addClass("fl");
|
||||||
|
$("#integritylist_paginate").addClass("fr");
|
||||||
|
$("#integritylist_paginate").append("<div style='float:right;padding-top:4px;padding-left:10px'>到第 <input type='text' id='changePage' class='input-text' style='width:50px;height:28px;'> 页 <button class='btn btn-primary' id='dataTable-btn'>确定</button></div>");
|
||||||
|
var table = $("#integritylist").dataTable();
|
||||||
|
$('#dataTable-btn').click(function (e) {
|
||||||
|
if ($("#changePage").val() && $("#changePage").val() > 0) {
|
||||||
|
var redirectpage = $("#changePage").val() - 1;
|
||||||
|
} else {
|
||||||
|
var redirectpage = 0;
|
||||||
|
}
|
||||||
|
table.fnPageChange(redirectpage);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
var name = $area.find("option:selected").text();
|
||||||
|
new $.fn.dataTable.Buttons(dataTable, {
|
||||||
|
buttons: [
|
||||||
|
{
|
||||||
|
extend: 'csv',
|
||||||
|
title: name + '电能质量评估列表',//导出csv名称
|
||||||
|
exportOptions: {
|
||||||
|
columns: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
|
||||||
|
format: {
|
||||||
|
body: function (data, rID, cID) {
|
||||||
|
if (cID === 0) {
|
||||||
|
return rID + 1;
|
||||||
|
} else if (cID === 1 | cID === 2 | cID === 3) {
|
||||||
|
if (data.indexOf("title") > 0) {
|
||||||
|
return data.substring(data.indexOf("=") + 1, data.indexOf(">"));
|
||||||
|
} else {
|
||||||
|
return data
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
});
|
||||||
|
modifyCss(dataTable);
|
||||||
|
dataTable.on('order.dt search.dt',
|
||||||
|
function () {
|
||||||
|
dataTable.column(0, {
|
||||||
|
search: 'applied',
|
||||||
|
order: 'applied'
|
||||||
|
}).nodes().each(function (cell, i) {
|
||||||
|
cell.innerHTML = i + 1;
|
||||||
|
});
|
||||||
|
}).draw();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function modifyCss(dataTable) {
|
||||||
|
dataTable.buttons().container().css("display", "inline-block");
|
||||||
|
dataTable.buttons().container().css("float", "right");
|
||||||
|
dataTable.buttons().container().css("top", "4px");
|
||||||
|
dataTable.buttons().container().find("a").prepend("<i class='glyphicon glyphicon-share'></i>");
|
||||||
|
dataTable.buttons().container().appendTo('.header');
|
||||||
|
dataTable.buttons().container().after($("#fliteData")[0]);
|
||||||
|
}
|
||||||
|
|
||||||
|
//搜索表中的数据
|
||||||
|
function searchResult(value) {
|
||||||
|
dataTable.search(value).draw();
|
||||||
|
}
|
||||||
|
|
||||||
|
//特殊处理,表头紧缩问题--start
|
||||||
|
var it = null;
|
||||||
|
|
||||||
|
function startQuery() {
|
||||||
|
//实时刷新时间单位为毫秒
|
||||||
|
it = setInterval('refreshQuery()', 100);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 刷新查询 */
|
||||||
|
function refreshQuery() {
|
||||||
|
var width = $("#integritylist").width();
|
||||||
|
if (width > 100) {
|
||||||
|
initTable(allNetsData);
|
||||||
|
window.clearInterval(it)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//特殊处理,表头紧缩问题--end
|
||||||
|
|
||||||
|
|
||||||
@@ -348,8 +348,9 @@ function drawAreaPic(area) {
|
|||||||
var startTime = $startTime.eq(0).val();
|
var startTime = $startTime.eq(0).val();
|
||||||
var endTime = $endTime.eq(0).val();
|
var endTime = $endTime.eq(0).val();
|
||||||
var interval = $("#interval").val();
|
var interval = $("#interval").val();
|
||||||
|
var gwType= tiggleValue=="冀北省"?"0":"1";
|
||||||
if (getRole("/pqs9000/area/integralitytable")) {
|
if (getRole("/pqs9000/area/integralitytable")) {
|
||||||
window.top.addTab('/pqs9000/area/integralitytable?startTime=' + startTime + '&endTime=' + endTime + '&area=' + city + '&interval=' + interval, '数据完整性列表')
|
window.top.addTab('/pqs9000/area/integralitytable?startTime=' + startTime + '&endTime=' + endTime + '&area=' + city + '&interval=' + interval+'&gwtype='+ gwType, '数据完整性列表')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -215,6 +215,7 @@ function initMap(quentityData, name, max, temp, unit,lineFeed,route) {
|
|||||||
}
|
}
|
||||||
singleData.itemStyle = item;
|
singleData.itemStyle = item;
|
||||||
}
|
}
|
||||||
|
singleData.areaIndex = quentityData[i].deptsIndex;
|
||||||
inte[i] = singleData;
|
inte[i] = singleData;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -286,6 +287,13 @@ function initMap(quentityData, name, max, temp, unit,lineFeed,route) {
|
|||||||
}]
|
}]
|
||||||
};
|
};
|
||||||
barOption.setOption(option);
|
barOption.setOption(option);
|
||||||
|
barOption.on('click', function (params) {
|
||||||
|
var city = params.data.areaIndex;
|
||||||
|
var startTime = $startTime.eq(0).val();
|
||||||
|
var endTime = $endTime.eq(0).val();
|
||||||
|
var interval = $("#interval").val();
|
||||||
|
onContent(city, startTime, endTime,interval);
|
||||||
|
});
|
||||||
//填充表格
|
//填充表格
|
||||||
var height = picHeight * 0.5 - 40;
|
var height = picHeight * 0.5 - 40;
|
||||||
if (quentityData == null) {
|
if (quentityData == null) {
|
||||||
@@ -327,7 +335,19 @@ function initMap(quentityData, name, max, temp, unit,lineFeed,route) {
|
|||||||
],
|
],
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
function onContent(city, startTime, endTime,interval) {
|
||||||
|
layer.open({
|
||||||
|
id: 'overview',
|
||||||
|
type: 2,
|
||||||
|
title: "电能质量评估列表",
|
||||||
|
maxmin: false,
|
||||||
|
resize: false,
|
||||||
|
shadeClose: true, //点击遮罩关闭层
|
||||||
|
area: ['100%', '100%'],
|
||||||
|
content: "/pqs9000/overview/assesTable?starttime="+startTime+"&endtime="+endTime+"&area="+city+"&interval="+interval,
|
||||||
|
scrollbar: false
|
||||||
|
});
|
||||||
|
}
|
||||||
function renderMapEvent(data, f1, f2, f3, f4, f5, f6, f7, f8) {
|
function renderMapEvent(data, f1, f2, f3, f4, f5, f6, f7, f8) {
|
||||||
//初始化绘制全国地图配置
|
//初始化绘制全国地图配置
|
||||||
var optionEvent = {
|
var optionEvent = {
|
||||||
|
|||||||
@@ -96,7 +96,13 @@ $(function () {
|
|||||||
companyname = data.body.name;
|
companyname = data.body.name;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
//初始化页面内容(1是国网 0是全部)
|
||||||
|
if (gwType.val() == '1') {
|
||||||
|
tiggleValue="国网";
|
||||||
|
$("#checkbox").prop('checked', false);
|
||||||
|
} else {
|
||||||
|
$("#checkbox").prop('checked', true);
|
||||||
|
}
|
||||||
//开关初始化
|
//开关初始化
|
||||||
$(".wanzheng").bootstrapSwitch({
|
$(".wanzheng").bootstrapSwitch({
|
||||||
onText: buttonname, // 设置ON文本
|
onText: buttonname, // 设置ON文本
|
||||||
@@ -125,12 +131,12 @@ $("#query").click(function () {
|
|||||||
var startTime = $startTime.eq(0).val();
|
var startTime = $startTime.eq(0).val();
|
||||||
var endTime = $endTime.eq(0).val();
|
var endTime = $endTime.eq(0).val();
|
||||||
var devflag = $("#devflag").val();
|
var devflag = $("#devflag").val();
|
||||||
refresh(area, startTime, endTime,devflag);
|
var powerId = $("#powerId").val();
|
||||||
|
refresh(area, startTime, endTime,devflag,powerId);
|
||||||
});
|
});
|
||||||
|
|
||||||
//获取表格数据
|
//获取表格数据
|
||||||
function refresh(area, startTime, endTime,devflag) {
|
function refresh(area, startTime, endTime,devflag,powerId) {
|
||||||
console.log(devflag)
|
|
||||||
var i;
|
var i;
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type: "POST",
|
type: "POST",
|
||||||
@@ -140,7 +146,8 @@ function refresh(area, startTime, endTime,devflag) {
|
|||||||
startTime: startTime,
|
startTime: startTime,
|
||||||
endTime: endTime,
|
endTime: endTime,
|
||||||
area: area,
|
area: area,
|
||||||
devflag:devflag
|
devflag:devflag,
|
||||||
|
powerId:powerId
|
||||||
},
|
},
|
||||||
beforeSend: function () {
|
beforeSend: function () {
|
||||||
i = ityzl_SHOW_LOAD_LAYER();
|
i = ityzl_SHOW_LOAD_LAYER();
|
||||||
|
|||||||
@@ -66,12 +66,14 @@ function initData(type) {
|
|||||||
voltage: null,
|
voltage: null,
|
||||||
loadType: null,
|
loadType: null,
|
||||||
appear: null,
|
appear: null,
|
||||||
|
powerId: null,
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
let scale = getOptions("voltage")
|
let scale = getOptions("voltage")
|
||||||
let type = getOptions("type")
|
let type = getOptions("type")
|
||||||
let status = $("#status").val()
|
let status = $("#status").val()
|
||||||
let appear = $("#appear").val()
|
let appear = $("#appear").val()
|
||||||
|
let powerId = $("#powerId").val();
|
||||||
area = $area.eq(0).attr("index");
|
area = $area.eq(0).attr("index");
|
||||||
let dept = []
|
let dept = []
|
||||||
dept.push(area)
|
dept.push(area)
|
||||||
@@ -91,7 +93,8 @@ function initData(type) {
|
|||||||
areaList: dept,
|
areaList: dept,
|
||||||
voltage: scale,
|
voltage: scale,
|
||||||
loadType: type,
|
loadType: type,
|
||||||
appear: appear
|
appear: appear,
|
||||||
|
powerId:powerId
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -136,11 +139,13 @@ function initTable(data) {
|
|||||||
{width: "0%",data:null},
|
{width: "0%",data:null},
|
||||||
{width: "6%", data: "province"},
|
{width: "6%", data: "province"},
|
||||||
{width: "7%", data: "gdName"},
|
{width: "7%", data: "gdName"},
|
||||||
|
{width: "3%", data: "devName"},
|
||||||
{width: "3%", data: "scale"},
|
|
||||||
{width: "4%", data: "lineName"},
|
|
||||||
{width: "4%", data: "electricityQualityName"},
|
|
||||||
{width: "4%", data: "subName"},
|
{width: "4%", data: "subName"},
|
||||||
|
{width: "4%", data: "busBarName"},
|
||||||
|
{width: "4%", data: "electricityQualityName"},
|
||||||
|
{width: "4%", data: "lineName"},
|
||||||
|
{width: "3%", data: "scale"},
|
||||||
|
{width: "3%", data: "lineNum"},
|
||||||
{width: "5%", data: "loadType"},
|
{width: "5%", data: "loadType"},
|
||||||
{
|
{
|
||||||
width: "1%", data: "objName", render: function (data) {
|
width: "1%", data: "objName", render: function (data) {
|
||||||
@@ -148,14 +153,35 @@ function initTable(data) {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
{width: "3%", data: "powerSubstationName"},
|
{width: "3%", data: "powerSubstationName"},
|
||||||
|
{width: "3%", data: "ip"},
|
||||||
{width: "3%", data: "devflag"},
|
{width: "3%", data: "devflag"},
|
||||||
{width: "3%", data: "devStatus"},
|
{width: "3%", data: "devStatus"},
|
||||||
{width: "3%", data: "updateTime"},
|
{width: "3%", data: "devLocation"},
|
||||||
{width: "3%", data: "ip"},
|
|
||||||
{width: "3%", data: "time"},
|
{width: "3%", data: "time"},
|
||||||
{width: "3%", data: "devType"},
|
{width: "3%", data: "devType"},
|
||||||
{width: "3%", data: "nodeName"},
|
|
||||||
{width: "3%", data: "manufacturer"},
|
{width: "3%", data: "manufacturer"},
|
||||||
|
{width: "3%", data: "devNo"},
|
||||||
|
{
|
||||||
|
width: "7%", data: "status", render: function (data) {
|
||||||
|
if (data == 1) {
|
||||||
|
return "正常"
|
||||||
|
} else {
|
||||||
|
return "中断"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{width: "3%", data: "lineStatus"},
|
||||||
|
{width: "3%", data: "updateTime"},
|
||||||
|
{width: "3%", data: "dlCmp"},
|
||||||
|
{width: "3%", data: "devCmp"},
|
||||||
|
{width: "3%", data: "xyCmp"},
|
||||||
|
{width: "3%", data: "monitorId", render: function (data, type, full, meta) {
|
||||||
|
if (data == null || data === ' '){
|
||||||
|
return "/"
|
||||||
|
}
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
},
|
||||||
{width: "3%", data: "powerId", render: function (data, type, full, meta) {
|
{width: "3%", data: "powerId", render: function (data, type, full, meta) {
|
||||||
switch (data) {
|
switch (data) {
|
||||||
case 0:
|
case 0:
|
||||||
@@ -173,29 +199,7 @@ function initTable(data) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{width: "3%", data: "dlCmp"},
|
{width: "3%", data: "nodeName"},
|
||||||
{width: "3%", data: "devCmp"},
|
|
||||||
{width: "3%", data: "xyCmp"},
|
|
||||||
{
|
|
||||||
width: "7%", data: "status", render: function (data) {
|
|
||||||
if (data == 1) {
|
|
||||||
return "正常"
|
|
||||||
} else {
|
|
||||||
return "中断"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{width: "3%", data: "lineStatus"},
|
|
||||||
{width: "3%", data: "lineNum"},
|
|
||||||
{width: "3%", data: "devName"},
|
|
||||||
{width: "3%", data: "devNo"},
|
|
||||||
{width: "3%", data: "monitorId", render: function (data, type, full, meta) {
|
|
||||||
if (data == null || data === ' '){
|
|
||||||
return "/"
|
|
||||||
}
|
|
||||||
return data;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
width: "6%", data: "ptType", render: function (data, type, full, meta) {
|
width: "6%", data: "ptType", render: function (data, type, full, meta) {
|
||||||
switch (data) {
|
switch (data) {
|
||||||
@@ -261,9 +265,9 @@ function initTable(data) {
|
|||||||
},
|
},
|
||||||
createdRow: function ( row, data, index ) {
|
createdRow: function ( row, data, index ) {
|
||||||
if(data.status=="1"){
|
if(data.status=="1"){
|
||||||
$('td', row).eq(20).css('color','#00ff04')
|
$('td', row).eq(21).css('color','#00ff04')
|
||||||
}else if(data.status=="0"){
|
}else if(data.status=="0"){
|
||||||
$('td', row).eq(20).css('color','#ED1C24')
|
$('td', row).eq(21).css('color','#ED1C24')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -39,30 +39,7 @@ var area = null;
|
|||||||
var devTypeBefore = "";//记录之前的状态
|
var devTypeBefore = "";//记录之前的状态
|
||||||
var devTypeNow = "";//记录更改后的状态
|
var devTypeNow = "";//记录更改后的状态
|
||||||
$(document).ready(function () {
|
$(document).ready(function () {
|
||||||
$.ajax({
|
|
||||||
type: "POST",
|
|
||||||
url: "/pqs9000/user/getAreasInfo",
|
|
||||||
dataType: 'json',
|
|
||||||
success: function (data) {
|
|
||||||
$("#area").val(data[0].name);
|
|
||||||
$("#area").attr("index", data[0].id);
|
|
||||||
areaTree = $.fn.zTree.init($("#areaTree"), settingAreaTree, data);
|
|
||||||
areaInfo = data;
|
|
||||||
//初始化页面内容
|
|
||||||
var aTemp = $("#_area").val();
|
|
||||||
aTemp = filterXSS(aTemp);
|
|
||||||
if (aTemp === "" || aTemp === undefined) {
|
|
||||||
aTemp = $area.eq(0).attr("index");
|
|
||||||
} else {
|
|
||||||
$area.eq(0).val(getDeptsName(aTemp));
|
|
||||||
$area.eq(0).attr("index", aTemp);
|
|
||||||
}
|
|
||||||
area = aTemp;
|
|
||||||
load();
|
|
||||||
}
|
|
||||||
})
|
|
||||||
getGdnameG();
|
getGdnameG();
|
||||||
//load();
|
|
||||||
});
|
});
|
||||||
$("#query").click(function () {
|
$("#query").click(function () {
|
||||||
area = $area.eq(0).attr("index");
|
area = $area.eq(0).attr("index");
|
||||||
@@ -93,12 +70,41 @@ function getGdnameG() {
|
|||||||
success: function (data) {
|
success: function (data) {
|
||||||
if (data.body != null) {
|
if (data.body != null) {
|
||||||
for (var i = 0; i < data.body.length; i++) {
|
for (var i = 0; i < data.body.length; i++) {
|
||||||
var option = $("<option style='text-align: center;' value='"
|
var option ;
|
||||||
+ data.body[i].manufacturer + "'>"
|
if(data.body[i].manufacturer === facturer){
|
||||||
+ data.body[i].manufacturer + "</option>");
|
option = $("<option style='text-align: center;' value='"
|
||||||
|
+ data.body[i].manufacturer + "' selected>"
|
||||||
|
+ data.body[i].manufacturer + "</option>");
|
||||||
|
}else{
|
||||||
|
option = $("<option style='text-align: center;' value='"
|
||||||
|
+ data.body[i].manufacturer + "'>"
|
||||||
|
+ data.body[i].manufacturer + "</option>");
|
||||||
|
}
|
||||||
$("#manufacturer").append(option);
|
$("#manufacturer").append(option);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
url: "/pqs9000/user/getAreasInfo",
|
||||||
|
dataType: 'json',
|
||||||
|
success: function (data) {
|
||||||
|
$("#area").val(data[0].name);
|
||||||
|
$("#area").attr("index", data[0].id);
|
||||||
|
areaTree = $.fn.zTree.init($("#areaTree"), settingAreaTree, data);
|
||||||
|
areaInfo = data;
|
||||||
|
//初始化页面内容
|
||||||
|
var aTemp = $("#_area").val();
|
||||||
|
aTemp = filterXSS(aTemp);
|
||||||
|
if (aTemp === "" || aTemp === undefined) {
|
||||||
|
aTemp = $area.eq(0).attr("index");
|
||||||
|
} else {
|
||||||
|
$area.eq(0).val(getDeptsName(aTemp));
|
||||||
|
$area.eq(0).attr("index", aTemp);
|
||||||
|
}
|
||||||
|
area = aTemp;
|
||||||
|
load();
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -274,59 +274,61 @@ function closeHigh() {
|
|||||||
|
|
||||||
// 模糊搜索name满足条件的节点
|
// 模糊搜索name满足条件的节点
|
||||||
function searchNode(value) {
|
function searchNode(value) {
|
||||||
if (value == "")
|
|
||||||
return;
|
|
||||||
|
|
||||||
// var treeObj = $.fn.zTree.getZTreeObj("tree");
|
// if (value == ""){
|
||||||
// var allNodes = treeObj.getNodes();
|
// resetTree()
|
||||||
// treeObj.hideNodes(allNodes);
|
// return;
|
||||||
// var nodes = treeObj.getNodesByParamFuzzy("name", value);// 获取搜索的节点
|
// }
|
||||||
//
|
var treeObj = $.fn.zTree.getZTreeObj("tree");
|
||||||
// closeHigh();
|
var allNodes = treeObj.getNodes();
|
||||||
//
|
treeObj.hideNodes(allNodes);
|
||||||
// treeObj.expandAll(false);// 展开第一层节点
|
var nodes = treeObj.getNodesByParamFuzzy("name", value);// 获取搜索的节点
|
||||||
// treeObj.expandNode(treeObj.getNodes()[0], true);
|
|
||||||
//
|
closeHigh();
|
||||||
// // 高亮并展开搜索到的节点
|
|
||||||
// for (var i = 0; i < nodes.length; i++) {
|
treeObj.expandAll(false);// 展开第一层节点
|
||||||
// if(nodes[i].nodeType == 5){
|
treeObj.expandNode(treeObj.getNodes()[0], true);
|
||||||
// treeObj.showNode(nodes[i].getParentNode().getParentNode().getParentNode().getParentNode().getParentNode());
|
|
||||||
// treeObj.showNode(nodes[i].getParentNode().getParentNode().getParentNode().getParentNode());
|
// 高亮并展开搜索到的节点
|
||||||
// treeObj.showNode(nodes[i].getParentNode().getParentNode().getParentNode());
|
for (var i = 0; i < nodes.length; i++) {
|
||||||
// treeObj.showNode(nodes[i].getParentNode().getParentNode());
|
if(nodes[i].nodeType == 5){
|
||||||
// treeObj.showNode(nodes[i].getParentNode());
|
treeObj.showNode(nodes[i].getParentNode().getParentNode().getParentNode().getParentNode().getParentNode());
|
||||||
// treeObj.showNode(nodes[i]);
|
treeObj.showNode(nodes[i].getParentNode().getParentNode().getParentNode().getParentNode());
|
||||||
// }else if(nodes[i].nodeType == 4){
|
treeObj.showNode(nodes[i].getParentNode().getParentNode().getParentNode());
|
||||||
// treeObj.showNode(nodes[i].getParentNode().getParentNode().getParentNode().getParentNode());
|
treeObj.showNode(nodes[i].getParentNode().getParentNode());
|
||||||
// treeObj.showNode(nodes[i].getParentNode().getParentNode().getParentNode());
|
treeObj.showNode(nodes[i].getParentNode());
|
||||||
// treeObj.showNode(nodes[i].getParentNode().getParentNode());
|
treeObj.showNode(nodes[i]);
|
||||||
// treeObj.showNode(nodes[i].getParentNode());
|
}else if(nodes[i].nodeType == 4){
|
||||||
// treeObj.showNode(nodes[i]);
|
treeObj.showNode(nodes[i].getParentNode().getParentNode().getParentNode().getParentNode());
|
||||||
// treeObj.showNode(nodes[i].children);
|
treeObj.showNode(nodes[i].getParentNode().getParentNode().getParentNode());
|
||||||
// }else if(nodes[i].nodeType == 3){
|
treeObj.showNode(nodes[i].getParentNode().getParentNode());
|
||||||
// var a = nodes[i].getParentNode().getParentNode().getParentNode();
|
treeObj.showNode(nodes[i].getParentNode());
|
||||||
// treeObj.showNode(nodes[i].getParentNode().getParentNode().getParentNode());
|
treeObj.showNode(nodes[i]);
|
||||||
// treeObj.showNode(nodes[i].getParentNode().getParentNode());
|
treeObj.showNode(nodes[i].children);
|
||||||
// treeObj.showNode(nodes[i].getParentNode());
|
}else if(nodes[i].nodeType == 3){
|
||||||
// treeObj.showNode(nodes[i]);
|
var a = nodes[i].getParentNode().getParentNode().getParentNode();
|
||||||
// treeObj.showNode(nodes[i].children);
|
treeObj.showNode(nodes[i].getParentNode().getParentNode().getParentNode());
|
||||||
// }else if(nodes[i].nodeType == 2){
|
treeObj.showNode(nodes[i].getParentNode().getParentNode());
|
||||||
// treeObj.showNode(nodes[i].getParentNode().getParentNode());
|
treeObj.showNode(nodes[i].getParentNode());
|
||||||
// treeObj.showNode(nodes[i].getParentNode());
|
treeObj.showNode(nodes[i]);
|
||||||
// treeObj.showNode(nodes[i]);
|
treeObj.showNode(nodes[i].children);
|
||||||
// treeObj.showNode(nodes[i].children);
|
}else if(nodes[i].nodeType == 2){
|
||||||
// }else if(nodes[i].nodeType == 1){
|
treeObj.showNode(nodes[i].getParentNode().getParentNode());
|
||||||
// treeObj.showNode(nodes[i].getParentNode());
|
treeObj.showNode(nodes[i].getParentNode());
|
||||||
// treeObj.showNode(nodes[i]);
|
treeObj.showNode(nodes[i]);
|
||||||
// treeObj.showNode(nodes[i].children);
|
treeObj.showNode(nodes[i].children);
|
||||||
// }else if(nodes[i].nodeType == 0){
|
}else if(nodes[i].nodeType == 1){
|
||||||
// treeObj.showNode(nodes[i]);
|
treeObj.showNode(nodes[i].getParentNode());
|
||||||
// treeObj.showNode(nodes[i].children);
|
treeObj.showNode(nodes[i]);
|
||||||
// }
|
treeObj.showNode(nodes[i].children);
|
||||||
// nodes[i].highlight = true;
|
}else if(nodes[i].nodeType == 0){
|
||||||
// treeObj.updateNode(nodes[i]); // 更新节点,让高亮生效
|
treeObj.showNode(nodes[i]);
|
||||||
// treeObj.expandNode(nodes[i].getParentNode(), true);
|
treeObj.showNode(nodes[i].children);
|
||||||
// }
|
}
|
||||||
|
nodes[i].highlight = true;
|
||||||
|
treeObj.updateNode(nodes[i]); // 更新节点,让高亮生效
|
||||||
|
treeObj.expandNode(nodes[i].getParentNode(), true);
|
||||||
|
}
|
||||||
|
|
||||||
var hiddenNodes = [];
|
var hiddenNodes = [];
|
||||||
var ztreeObj = $.fn.zTree.getZTreeObj("tree");
|
var ztreeObj = $.fn.zTree.getZTreeObj("tree");
|
||||||
@@ -343,8 +345,8 @@ function searchNode(value) {
|
|||||||
|
|
||||||
closeHigh();
|
closeHigh();
|
||||||
|
|
||||||
// treeObj.expandAll(false);// 展开第一层节点
|
treeObj.expandAll(false);// 展开第一层节点
|
||||||
// treeObj.expandNode(treeObj.getNodes()[0], true);
|
treeObj.expandNode(treeObj.getNodes()[0], true);
|
||||||
|
|
||||||
// 高亮并展开搜索到的节点
|
// 高亮并展开搜索到的节点
|
||||||
for (var i = 0; i < nodes.length; i++) {
|
for (var i = 0; i < nodes.length; i++) {
|
||||||
@@ -356,8 +358,8 @@ function searchNode(value) {
|
|||||||
|
|
||||||
// treeObj.expandAll(true);
|
// treeObj.expandAll(true);
|
||||||
|
|
||||||
$("#serchB").css("display", "none");
|
// $("#serchB").css("display", "none");
|
||||||
$("#resetB").css("display", "");
|
// $("#resetB").css("display", "");
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 查找子结点,如果匹配模糊查询的关键字则返回false,否则返回true
|
* 查找子结点,如果匹配模糊查询的关键字则返回false,否则返回true
|
||||||
@@ -467,6 +469,9 @@ function getTreeSelected(type) {
|
|||||||
function valueChange(value) {
|
function valueChange(value) {
|
||||||
if (value == '') {
|
if (value == '') {
|
||||||
closeHigh();
|
closeHigh();
|
||||||
|
resetTree();
|
||||||
|
}else{
|
||||||
|
searchNode(value);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -102,14 +102,14 @@ public class WordUtil {
|
|||||||
addParagraph(titleParagraphBigRun, "宋体", 28, "000000", "暂降事件报告", true);
|
addParagraph(titleParagraphBigRun, "宋体", 28, "000000", "暂降事件报告", true);
|
||||||
addLine(titleParagraph, 17);
|
addLine(titleParagraph, 17);
|
||||||
XWPFRun titleParagraphDateRun = titleParagraph.createRun();
|
XWPFRun titleParagraphDateRun = titleParagraph.createRun();
|
||||||
addParagraph(titleParagraphDateRun, "宋体", 16, "000000", "南京灿能电力自动化股份有限公司", false);
|
// addParagraph(titleParagraphDateRun, "宋体", 16, "000000", "南京灿能电力自动化股份有限公司", false);
|
||||||
addLine(titleParagraph, 1);
|
addLine(titleParagraph, 1);
|
||||||
titleParagraphDateRun = titleParagraph.createRun();
|
titleParagraphDateRun = titleParagraph.createRun();
|
||||||
addParagraph(titleParagraphDateRun, "宋体", 14, "000000", "生成时间:" + getRightNow(), false);
|
addParagraph(titleParagraphDateRun, "宋体", 14, "000000", "生成时间:" + getRightNow(), false);
|
||||||
addLine(titleParagraph, 8);
|
addLine(titleParagraph, 8);
|
||||||
titleParagraph = getLeftParagraph(this.document);
|
titleParagraph = getLeftParagraph(this.document);
|
||||||
titleParagraphDateRun = titleParagraph.createRun();
|
titleParagraphDateRun = titleParagraph.createRun();
|
||||||
addParagraph(titleParagraphDateRun, "宋体", 10, "000000", "【申明】本公司保留对报告的修改权,恕不另行通知,敬请关注最新版本。", false);
|
// addParagraph(titleParagraphDateRun, "宋体", 10, "000000", "【申明】本公司保留对报告的修改权,恕不另行通知,敬请关注最新版本。", false);
|
||||||
for (int m = 0; m < length; m++) {
|
for (int m = 0; m < length; m++) {
|
||||||
List<EventEigDetail> eventDetailEigenvaluetmp = this.eventDetailEigenvalue.get(m);
|
List<EventEigDetail> eventDetailEigenvaluetmp = this.eventDetailEigenvalue.get(m);
|
||||||
|
|
||||||
|
|||||||
@@ -23,7 +23,7 @@
|
|||||||
SUM (T1.real) countOnline,
|
SUM (T1.real) countOnline,
|
||||||
SUM (T1.due) countAll
|
SUM (T1.due) countAll
|
||||||
FROM
|
FROM
|
||||||
PQS_NGCPINTEGRITY T1
|
PQS_Integrity T1
|
||||||
WHERE
|
WHERE
|
||||||
T1.Line_index in
|
T1.Line_index in
|
||||||
<foreach collection="list" item="item" open="(" close=")" separator=",">
|
<foreach collection="list" item="item" open="(" close=")" separator=",">
|
||||||
|
|||||||
@@ -261,7 +261,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="fr f13">CopyRight@2017 南京灿能电力自动化股份有限公司 版权所有</div>
|
<div class="fr f13"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="rightContent" style="position: absolute; left: 270px; right: 20px; top: 80px;">
|
<div id="rightContent" style="position: absolute; left: 270px; right: 20px; top: 80px;">
|
||||||
|
|||||||
@@ -157,7 +157,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
<div class="footer-copy clearfix">
|
<div class="footer-copy clearfix">
|
||||||
<div class="fr f13">CopyRight@2017 南京灿能电力自动化股份有限公司 版权所有</div>
|
<div class="fr f13"></div>
|
||||||
</div>
|
</div>
|
||||||
<div id="rightContent" style="position: absolute; left: 270px; right: 20px; top: 80px;">
|
<div id="rightContent" style="position: absolute; left: 270px; right: 20px; top: 80px;">
|
||||||
<div id="tabs" style="width: 100%; height: 100%;">
|
<div id="tabs" style="width: 100%; height: 100%;">
|
||||||
|
|||||||
@@ -282,7 +282,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
<div class="footer-copy clearfix">
|
<div class="footer-copy clearfix">
|
||||||
<div class="fr f13">CopyRight@2017 南京灿能电力自动化股份有限公司 版权所有</div>
|
<div class="fr f13"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="rightContent" style="position: absolute; left: 270px; right: 20px; top: 80px;">
|
<div id="rightContent" style="position: absolute; left: 270px; right: 20px; top: 80px;">
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 41 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 21 KiB |
Reference in New Issue
Block a user