代码调整

This commit is contained in:
2022-11-10 10:47:55 +08:00
parent de1c9a6209
commit 11048c17f1
130 changed files with 10553 additions and 0 deletions

View File

@@ -0,0 +1,74 @@
package com.njcn.event.pojo.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* 监测点电压暂降和短时中断分布情况(用于前端表格展示)
* @Title EventDipShortDistributionTableVO
* @Package com.njcn.event.pojo.vo
* @Author jianghaifei
* @Date 2022-10-31 14:35
* @Version V1.0
*/
@Data
public class EventDipShortDistributionTableVO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 特征幅值
*/
@ApiModelProperty(name = "featureAmplitude",value = "特征幅值")
private String featureAmplitude;
/**
* 持续时间0-100ms
*/
@ApiModelProperty(name = "duration100",value = "持续时间0-100ms")
private Integer duration100;
/**
* 持续时间100-250ms
*/
@ApiModelProperty(name = "duration250",value = "持续时间100-250ms")
private Integer duration250;
/**
* 持续时间250-500ms
*/
@ApiModelProperty(name = "duration500",value = "持续时间250-500ms")
private Integer duration500;
/**
* 持续时间500-1000ms
*/
@ApiModelProperty(name = "duration1000",value = "持续时间500-1000ms")
private Integer duration1000;
/**
* 持续时间1000-3000ms
*/
@ApiModelProperty(name = "duration3000",value = "持续时间1000-3000ms")
private Integer duration3000;
/**
* 持续时间3000-10000ms
*/
@ApiModelProperty(name = "duration10000",value = "持续时间3000-10000ms")
private Integer duration10000;
/**
* 持续时间10000-20000ms
*/
@ApiModelProperty(name = "duration20000",value = "持续时间10000-20000ms")
private Integer duration20000;
/**
* 持续时间20000-60000ms
*/
@ApiModelProperty(name = "duration60000",value = "持续时间20000-60000ms")
private Integer duration60000;
}

View File

@@ -0,0 +1,43 @@
package com.njcn.event.pojo.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**监测点电压暂升分布情况(用于前端表格展示)
* @Title EventRiseDistributionTableVO
* @Package com.njcn.event.pojo.vo
* @Author jianghaifei
* @Date 2022-10-31 15:17
* @Version V1.0
*/
@Data
public class EventRiseDistributionTableVO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 特征幅值
*/
@ApiModelProperty(name = "featureAmplitude",value = "特征幅值")
private String featureAmplitude;
/**
* 持续时间100ms-500ms
*/
@ApiModelProperty(name = "duration500",value = "持续时间100ms-500ms")
private Integer duration500;
/**
* 持续时间500ms-5000ms
*/
@ApiModelProperty(name = "duration5000",value = "持续时间500ms-5000ms")
private Integer duration5000;
/**
* 持续时间5000ms-60000ms
*/
@ApiModelProperty(name = "duration60000",value = "持续时间5000ms-60000ms")
private Integer duration60000;
}

View File

@@ -0,0 +1,89 @@
package com.njcn.event.controller.distribution;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.event.pojo.param.EventMonitorReportParam;
import com.njcn.event.pojo.vo.EventDipShortDistributionTableVO;
import com.njcn.event.pojo.vo.EventMonitorReportVO;
import com.njcn.event.pojo.vo.EventRiseDistributionTableVO;
import com.njcn.event.service.distribution.PwEventMonitorReportService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 暂态指标监测点统计报表
* @Title EventMonitorDailyReportController
* @Package com.njcn.event.controller
* @Author jianghaifei
* @Date 2022-10-25 09:36
* @Version V1.0
*/
@RestController
@RequestMapping("/pwEventMonitorReport")
@Api(tags = "配网-暂态指标统计报表")
@RequiredArgsConstructor
public class PwEventMonitorReportController extends BaseController {
private final PwEventMonitorReportService eventMonitorReportService;
/***
* @author jianghaifei
* @date 2022-10-29 16:37
* @param eventMonitorReportParam
* @return com.njcn.common.pojo.response.HttpResult<java.util.List<com.njcn.event.pojo.vo.EventMonitorReportVO>>
*/
@PostMapping("getMonitorEventCount")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("监测点暂态事件发生次数")
public HttpResult<List<EventMonitorReportVO>> getMonitorEventCount(@RequestBody EventMonitorReportParam eventMonitorReportParam) {
String methodDescribe = getMethodDescribe("getMonitorEventCount");
List<EventMonitorReportVO> list = eventMonitorReportService.getMonitorEventCount(eventMonitorReportParam);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
}
/***
*
* @author jianghaifei
* @date 2022-10-29 14:08
* @param eventMonitorReportParam
* @return com.njcn.common.pojo.response.HttpResult<com.njcn.event.pojo.vo.EventDipShortDistributionVO>
*/
@PostMapping("getEventDipShortDistribution")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("暂态指标监测点电压暂降和短时中断分布情况")
public HttpResult<List<EventDipShortDistributionTableVO>> getEventDipShortDistribution(@RequestBody EventMonitorReportParam eventMonitorReportParam) {
String methodDescribe = getMethodDescribe("getEventDipShortDistribution");
List<EventDipShortDistributionTableVO> list = eventMonitorReportService.getEventDipShortDistributionByCond(eventMonitorReportParam);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
}
/***
*
* @author jianghaifei
* @date 2022-10-29 14:08
* @param eventMonitorReportParam
* @return com.njcn.common.pojo.response.HttpResult<com.njcn.event.pojo.vo.EventRiseDistributionVO>
*/
@PostMapping("getEventRiseDistribution")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("暂态指标监测点电压暂升分布情况")
public HttpResult<List<EventRiseDistributionTableVO>> getEventRiseDistribution(@RequestBody EventMonitorReportParam eventMonitorReportParam) {
String methodDescribe = getMethodDescribe("getEventRiseDistribution");
List<EventRiseDistributionTableVO> list = eventMonitorReportService.getEventRiseDistributionByCond(eventMonitorReportParam);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
}
}

View File

@@ -0,0 +1,56 @@
package com.njcn.event.mapper.distribution;
import com.njcn.event.pojo.po.EventDistributionStatisticsPO;
import com.njcn.event.pojo.po.EventDurationLineChartPO;
import com.njcn.event.pojo.po.EventFeatureAmplitudeLineChartPO;
import com.njcn.event.pojo.po.RmpEventDetailPO;
import com.njcn.event.pojo.vo.EventDipShortDistributionVO;
import com.njcn.event.pojo.vo.EventRiseDistributionVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/***
*
* @author jianghaifei
* @date 2022-11-08 09:26
* @return
*/
@Mapper
public interface PwEventDistributionStatisticsMapper {
/**
* 获取监测点暂态事件明细数据
*
* @param monitorIdList 监测点id
* @param startTime 开始时间
* @param endTime 结束时间
* @return 监测点暂态事件明细数据
*/
List<RmpEventDetailPO> getRmpEventDetail(@Param("monitorIdList") List<String> monitorIdList,
@Param("startTime") String startTime,
@Param("endTime") String endTime);
/***
* 获取监测点电压暂降和短时中断分布情况
* @author jianghaifei
* @date 2022-11-8 09:26:34
* @param map
* @return com.njcn.event.pojo.vo.EventDipShortDistributionVO
*/
EventDipShortDistributionVO getEventDipShortDistributionByCond(Map<String, Object> map);
/***
* 获取监测点电压暂升分布情况
* @author jianghaifei
* @date 2022-11-8 09:26:29
* @param map
* @return com.njcn.event.pojo.vo.EventRiseDistributionVO
*/
EventRiseDistributionVO getEventRiseDistributionByCond(Map<String, Object> map);
}

View File

@@ -0,0 +1,265 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.event.mapper.distribution.PwEventDistributionStatisticsMapper">
<!--获取监测点暂态事件明细数据-->
<select id="getRmpEventDetail" resultType="com.njcn.event.pojo.po.RmpEventDetailPO">
SELECT
measurement_point_id as measurementPointId,
start_time AS startTime,
duration AS duration,
feature_amplitude AS featureAmplitude
FROM
`r_mp_event_detail`
</select>
<!--获取监测点电压暂降和短时中断分布情况-->
<select id="getEventDipShortDistributionByCond"
resultType="com.njcn.event.pojo.vo.EventDipShortDistributionVO">
SELECT
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 80 AND r.feature_amplitude &lt;= 90 AND duration &gt; 10 AND
duration &lt;= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with100ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 80 AND r.feature_amplitude &lt;= 90 AND duration &gt; 100 AND
duration &lt;= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with250ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 80 AND r.feature_amplitude &lt;= 90 AND duration &gt; 250 AND
duration &lt;= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with500ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 80 AND r.feature_amplitude &lt;= 90 AND duration &gt; 500 AND
duration &lt;= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with1000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 80 AND r.feature_amplitude &lt;= 90 AND duration &gt; 1000 AND
duration &lt;= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with3000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 80 AND r.feature_amplitude &lt;= 90 AND duration &gt; 3000 AND
duration &lt;= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with10000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 80 AND r.feature_amplitude &lt;= 90 AND duration &gt; 10000 AND
duration &lt;= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with20000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 80 AND r.feature_amplitude &lt;= 90 AND duration &gt; 20000 AND
duration &lt;= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp90with60000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 70 AND r.feature_amplitude &lt; 80 AND duration &gt; 10 AND
duration &lt;= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with100ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 70 AND r.feature_amplitude &lt; 80 AND duration &gt; 100 AND
duration &lt;= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with250ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 70 AND r.feature_amplitude &lt; 80 AND duration &gt; 250 AND
duration &lt;= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with500ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 70 AND r.feature_amplitude &lt; 80 AND duration &gt; 500 AND
duration &lt;= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with1000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 70 AND r.feature_amplitude &lt; 80 AND duration &gt; 1000 AND
duration &lt;= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with3000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 70 AND r.feature_amplitude &lt; 80 AND duration &gt; 3000 AND
duration &lt;= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with10000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 70 AND r.feature_amplitude &lt; 80 AND duration &gt; 10000 AND
duration &lt;= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with20000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 70 AND r.feature_amplitude &lt; 80 AND duration &gt; 20000 AND
duration &lt;= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp80with60000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 60 AND r.feature_amplitude &lt; 70 AND duration &gt; 10 AND
duration &lt;= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with100ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 60 AND r.feature_amplitude &lt; 70 AND duration &gt; 100 AND
duration &lt;= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with250ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 60 AND r.feature_amplitude &lt; 70 AND duration &gt; 250 AND
duration &lt;= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with500ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 60 AND r.feature_amplitude &lt; 70 AND duration &gt; 500 AND
duration &lt;= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with1000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 60 AND r.feature_amplitude &lt; 70 AND duration &gt; 1000 AND
duration &lt;= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with3000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 60 AND r.feature_amplitude &lt; 70 AND duration &gt; 3000 AND
duration &lt;= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with10000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 60 AND r.feature_amplitude &lt; 70 AND duration &gt; 10000 AND
duration &lt;= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with20000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 60 AND r.feature_amplitude &lt; 70 AND duration &gt; 20000 AND
duration &lt;= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp70with60000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 50 AND r.feature_amplitude &lt; 60 AND duration &gt; 10 AND
duration &lt;= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with100ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 50 AND r.feature_amplitude &lt; 60 AND duration &gt; 100 AND
duration &lt;= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with250ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 50 AND r.feature_amplitude &lt; 60 AND duration &gt; 250 AND
duration &lt;= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with500ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 50 AND r.feature_amplitude &lt; 60 AND duration &gt; 500 AND
duration &lt;= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with1000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 50 AND r.feature_amplitude &lt; 60 AND duration &gt; 1000 AND
duration &lt;= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with3000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 50 AND r.feature_amplitude &lt; 60 AND duration &gt; 3000 AND
duration &lt;= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with10000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 50 AND r.feature_amplitude &lt; 60 AND duration &gt; 10000 AND
duration &lt;= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with20000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 50 AND r.feature_amplitude &lt; 60 AND duration &gt; 20000 AND
duration &lt;= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp60with60000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 40 AND r.feature_amplitude &lt; 50 AND duration &gt; 10 AND
duration &lt;= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with100ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 40 AND r.feature_amplitude &lt; 50 AND duration &gt; 100 AND
duration &lt;= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with250ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 40 AND r.feature_amplitude &lt; 50 AND duration &gt; 250 AND
duration &lt;= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with500ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 40 AND r.feature_amplitude &lt; 50 AND duration &gt; 500 AND
duration &lt;= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with1000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 40 AND r.feature_amplitude &lt; 50 AND duration &gt; 1000 AND
duration &lt;= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with3000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 40 AND r.feature_amplitude &lt; 50 AND duration &gt; 3000 AND
duration &lt;= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with10000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 40 AND r.feature_amplitude &lt; 50 AND duration &gt; 10000 AND
duration &lt;= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with20000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 40 AND r.feature_amplitude &lt; 50 AND duration &gt; 20000 AND
duration &lt;= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp50with60000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 30 AND r.feature_amplitude &lt; 40 AND duration &gt; 10 AND
duration &lt;= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with100ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 30 AND r.feature_amplitude &lt; 40 AND duration &gt; 100 AND
duration &lt;= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with250ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 30 AND r.feature_amplitude &lt; 40 AND duration &gt; 250 AND
duration &lt;= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with500ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 30 AND r.feature_amplitude &lt; 40 AND duration &gt; 500 AND
duration &lt;= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with1000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 30 AND r.feature_amplitude &lt; 40 AND duration &gt; 1000 AND
duration &lt;= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with3000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 30 AND r.feature_amplitude &lt; 40 AND duration &gt; 3000 AND
duration &lt;= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with10000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 30 AND r.feature_amplitude &lt; 40 AND duration &gt; 10000 AND
duration &lt;= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with20000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 30 AND r.feature_amplitude &lt; 40 AND duration &gt; 20000 AND
duration &lt;= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp40with60000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 20 AND r.feature_amplitude &lt; 30 AND duration &gt; 10 AND
duration &lt;= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with100ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 20 AND r.feature_amplitude &lt; 30 AND duration &gt; 100 AND
duration &lt;= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with250ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 20 AND r.feature_amplitude &lt; 30 AND duration &gt; 250 AND
duration &lt;= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with500ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 20 AND r.feature_amplitude &lt; 30 AND duration &gt; 500 AND
duration &lt;= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with1000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 20 AND r.feature_amplitude &lt; 30 AND duration &gt; 1000 AND
duration &lt;= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with3000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 20 AND r.feature_amplitude &lt; 30 AND duration &gt; 3000 AND
duration &lt;= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with10000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 20 AND r.feature_amplitude &lt; 30 AND duration &gt; 10000 AND
duration &lt;= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with20000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 20 AND r.feature_amplitude &lt; 30 AND duration &gt; 20000 AND
duration &lt;= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp30with60000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 10 AND r.feature_amplitude &lt; 20 AND duration &gt; 10 AND
duration &lt;= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with100ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 10 AND r.feature_amplitude &lt; 20 AND duration &gt; 100 AND
duration &lt;= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with250ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 10 AND r.feature_amplitude &lt; 20 AND duration &gt; 250 AND
duration &lt;= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with500ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 10 AND r.feature_amplitude &lt; 20 AND duration &gt; 500 AND
duration &lt;= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with1000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 10 AND r.feature_amplitude &lt; 20 AND duration &gt; 1000 AND
duration &lt;= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with3000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 10 AND r.feature_amplitude &lt; 20 AND duration &gt; 3000 AND
duration &lt;= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with10000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 10 AND r.feature_amplitude &lt; 20 AND duration &gt; 10000 AND
duration &lt;= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with20000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 10 AND r.feature_amplitude &lt; 20 AND duration &gt; 20000 AND
duration &lt;= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp20with60000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 0 AND r.feature_amplitude &lt; 10 AND duration &gt; 10 AND
duration &lt;= 100 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with100ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 0 AND r.feature_amplitude &lt; 10 AND duration &gt; 100 AND
duration &lt;= 250 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with250ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 0 AND r.feature_amplitude &lt; 10 AND duration &gt; 250 AND
duration &lt;= 500 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with500ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 0 AND r.feature_amplitude &lt; 10 AND duration &gt; 500 AND
duration &lt;= 1000 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with1000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 0 AND r.feature_amplitude &lt; 10 AND duration &gt; 1000 AND
duration &lt;= 3000 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with3000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 0 AND r.feature_amplitude &lt; 10 AND duration &gt; 3000 AND
duration &lt;= 10000 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with10000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 0 AND r.feature_amplitude &lt; 10 AND duration &gt; 10000 AND
duration &lt;= 20000 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with20000ms",
COALESCE( sum( CASE WHEN r.feature_amplitude &gt;= 0 AND r.feature_amplitude &lt; 10 AND duration &gt; 20000 AND
duration &lt;= 60000 THEN 1 ELSE 0 END ), 0 ) "featureAmp10with60000ms"
FROM
(
SELECT
duration,
feature_amplitude
FROM
r_mp_event_detail
WHERE 1 = 1
AND measurement_point_id IN
<foreach collection="monitorIdList" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
AND event_type IN
<foreach collection="eventTypeList" item="type" open="(" close=")" separator=",">
#{type}
</foreach>
<choose>
<when test="dateType != null and dateType == 3">
<if test="startTime != null and startTime != ''">
AND DATE_FORMAT(start_time, '%Y-%m') &gt;= #{startTime}
</if>
<if test="endTime != null and endTime != ''">
AND DATE_FORMAT(start_time, '%Y-%m') &lt;= #{endTime}
</if>
</when>
<when test="dateType != null and dateType == 5">
<if test="startTime != null and startTime != ''">
AND DATE_FORMAT(start_time, '%Y-%m-%d') &gt;= #{startTime}
</if>
<if test="endTime != null and endTime != ''">
AND DATE_FORMAT(start_time, '%Y-%m-%d') &lt;= #{endTime}
</if>
</when>
</choose>
)
r
</select>
<!--获取监测点电压暂升分布情况-->
<select id="getEventRiseDistributionByCond" resultType="com.njcn.event.pojo.vo.EventRiseDistributionVO">
SELECT
COALESCE(sum(CASE WHEN r.feature_amplitude &gt;= 120 AND duration &gt; 10 AND duration &lt;= 500 THEN 1 ELSE 0 END), 0) "featureAmp120with500ms",
COALESCE(sum(CASE WHEN r.feature_amplitude &gt;= 120 AND duration &gt; 500 AND duration &lt;= 5000 THEN 1 ELSE 0 END), 0) "featureAmp120with5000ms",
COALESCE(sum(CASE WHEN r.feature_amplitude &gt;= 120 AND duration &gt; 5000 AND duration &lt;= 60000 THEN 1 ELSE 0 END), 0) "featureAmp120with60000ms",
COALESCE(sum(CASE WHEN r.feature_amplitude &gt;= -120 AND r.feature_amplitude &lt;= 110 AND duration &gt; 10 AND duration &lt;= 500 THEN 1 ELSE 0 END), 0) "featureAmp110with500ms",
COALESCE(sum(CASE WHEN r.feature_amplitude &gt;= -120 AND r.feature_amplitude &lt;= 110 AND duration &gt; 500 AND duration &lt;= 5000 THEN 1 ELSE 0 END), 0) "featureAmp110with5000ms",
COALESCE(sum(CASE WHEN r.feature_amplitude &gt;= -120 AND r.feature_amplitude &lt;= 110 AND duration &gt; 5000 AND duration &lt;= 60000 THEN 1 ELSE 0 END), 0) "featureAmp110with60000ms"
FROM
(
SELECT
duration,
feature_amplitude
FROM
r_mp_event_detail
WHERE 1 = 1
AND measurement_point_id IN
<foreach collection="monitorIdList" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
AND event_type IN
<foreach collection="eventTypeList" item="type" open="(" close=")" separator=",">
#{type}
</foreach>
<choose>
<when test="dateType != null and dateType == 3">
<if test="startTime != null and startTime != ''">
AND DATE_FORMAT(start_time, '%Y-%m') &gt;= #{startTime}
</if>
<if test="endTime != null and endTime != ''">
AND DATE_FORMAT(start_time, '%Y-%m') &lt;= #{endTime}
</if>
</when>
<when test="dateType != null and dateType == 5">
<if test="startTime != null and startTime != ''">
AND DATE_FORMAT(start_time, '%Y-%m-%d') &gt;= #{startTime}
</if>
<if test="endTime != null and endTime != ''">
AND DATE_FORMAT(start_time, '%Y-%m-%d') &lt;= #{endTime}
</if>
</when>
</choose>
)
r
</select>
</mapper>

View File

@@ -0,0 +1,356 @@
package com.njcn.event.service.distribution.Impl;
import cn.hutool.core.collection.CollUtil;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.device.pms.api.PwMonitorClient;
import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO;
import com.njcn.device.pms.pojo.param.PwPmsMonitorParam;
import com.njcn.event.mapper.distribution.PwEventDistributionStatisticsMapper;
import com.njcn.event.mapper.distribution.PwRmpEventDetailMapper;
import com.njcn.event.pojo.param.EventMonitorReportParam;
import com.njcn.event.pojo.po.RmpEventDetailPO;
import com.njcn.event.pojo.vo.*;
import com.njcn.event.service.distribution.PwEventMonitorReportService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.stream.Collectors;
/**
* @Title EventMonitorDailyReportServiceImpl
* @Package com.njcn.event.service.Impl
* @Author jianghaifei
* @Date 2022-10-25 09:39
* @Version V1.0
*/
@Service
@RequiredArgsConstructor
public class PwEventMonitorReportServiceImpl implements PwEventMonitorReportService {
private final PwMonitorClient pwMonitorClient;
private final PwRmpEventDetailMapper rmpEventDetailMapper;
private final DicDataFeignClient dicDataFeignClient;
private final PwEventDistributionStatisticsMapper eventDistributionStatisticsMapper;
/***
* 监测点暂态事件发生次数
* @author jianghaifei
* @date 2022-10-29 18:05
* @param eventMonitorReportParam
* @return java.util.List<com.njcn.event.pojo.vo.EventMonitorReportVO>
*/
@Override
public List<EventMonitorReportVO> getMonitorEventCount(EventMonitorReportParam eventMonitorReportParam) {
//提取查询参数
// String monitorName = eventMonitorReportParam.getMonitorName(); //监测点名称
// String id = eventMonitorReportParam.getId(); //单位id
String startTime = eventMonitorReportParam.getStartTime(); //开始时间
String endTime = eventMonitorReportParam.getEndTime(); //结束时间
Integer type = eventMonitorReportParam.getType(); //时间类型(日/月)
//查询监测点信息
List<PwPmsMonitorDTO> monitorList = this.getMonitorList(eventMonitorReportParam);
List<String> monitorIdList = monitorList.stream().map(PwPmsMonitorDTO::getMonitorId).collect(Collectors.toList()); //监测点id信息
Map<String, PwPmsMonitorDTO> monitorMap = monitorList.stream().collect(Collectors.toMap(PwPmsMonitorDTO::getMonitorId, monitor -> monitor));
//获取电压等级的字典
List<DictData> voltageLevelList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE.getCode()).getData();
//将电压信息转成mapkeyid valuename
Map<String, String> voltageLevelMap = voltageLevelList.stream().collect(Collectors.toMap(DictData::getId, DictData::getName));
//获取暂态指标的字典
List<DictData> eventStatisList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.EVENT_STATIS.getCode()).getData();
//将暂态指标信息转成mapkeyid value实体
Map<String, DictData> eventStatisMap = eventStatisList.stream().collect(Collectors.toMap(DictData::getId, data -> data));
//将暂态指标信息转成mapkeycode value实体
// Map<String, DictData> eventStatisMapByCode = eventStatisList.stream().collect(Collectors.toMap(DictData::getCode, data -> data));
//查询暂态事件明细
List<RmpEventDetailPO> detailList;
if (BizParamConstant.STAT_BIZ_MONTH.equals(type + "")) { //按月查
detailList = rmpEventDetailMapper.getDetailsOfTransientEventsByMonth(monitorIdList, null, startTime, endTime);
} else { //按日查
detailList = rmpEventDetailMapper.getDetailsOfTransientEvents(monitorIdList, null, startTime, endTime);
}
Map<String, List<RmpEventDetailPO>> groupByMIdDetailMap = detailList.stream().collect(Collectors.groupingBy(RmpEventDetailPO::getMeasurementPointId, Collectors.toList()));
List<EventMonitorReportVO> resultList = new ArrayList<>();
groupByMIdDetailMap.forEach((key, monitorEventDetailList) -> {
//封装返回需要返回的信息
PwPmsMonitorDTO pmsMonitorDTO = monitorMap.get(key);
EventMonitorReportVO eventMonitorReportVO = new EventMonitorReportVO();
eventMonitorReportVO.setDate(startTime); //查询时间
//监测点基本信息
eventMonitorReportVO.setMonitorId(pmsMonitorDTO.getMonitorId()); //监测点id
eventMonitorReportVO.setMonitorName(pmsMonitorDTO.getMonitorName()); //监测点name
eventMonitorReportVO.setOrgId(pmsMonitorDTO.getOrgId()); //单位id
eventMonitorReportVO.setOrgName(pmsMonitorDTO.getOrgName()); //单位name
eventMonitorReportVO.setVoltageLevel(pmsMonitorDTO.getVoltageLevel()); //监测点电压等级
eventMonitorReportVO.setVoltageLevelName(voltageLevelMap.get(pmsMonitorDTO.getVoltageLevel())); //监测点电压等级名称
//暂升、暂降、短时中断次数
Map<String, List<RmpEventDetailPO>> countMap = monitorEventDetailList.stream().collect(Collectors.groupingBy(RmpEventDetailPO::getEventType, Collectors.toList()));
countMap.forEach((countKey, value) -> {
String code = eventStatisMap.get(countKey).getCode();
//电压暂降次数
if (DicDataEnum.VOLTAGE_DIP.getCode().equalsIgnoreCase(code)) {
eventMonitorReportVO.setVoltageDipCount(CollUtil.isNotEmpty(value) ? value.size() : 0);
}
//电压暂升次数
if (DicDataEnum.VOLTAGE_RISE.getCode().equalsIgnoreCase(code)) {
eventMonitorReportVO.setVoltageRiseCount(CollUtil.isNotEmpty(value) ? value.size() : 0);
}
//短时中断
if (DicDataEnum.SHORT_INTERRUPTIONS.getCode().equalsIgnoreCase(code)) {
eventMonitorReportVO.setShortInterruptionCount(CollUtil.isNotEmpty(value) ? value.size() : 0);
}
});
//重新校验设置属性值避免值是null
eventMonitorReportVO.setVoltageDipCount(eventMonitorReportVO.getVoltageDipCount() == null ? 0 : eventMonitorReportVO.getVoltageDipCount());
eventMonitorReportVO.setVoltageRiseCount(eventMonitorReportVO.getVoltageRiseCount() == null ? 0 : eventMonitorReportVO.getVoltageRiseCount());
eventMonitorReportVO.setShortInterruptionCount(eventMonitorReportVO.getShortInterruptionCount() == null ? 0 : eventMonitorReportVO.getShortInterruptionCount());
resultList.add(eventMonitorReportVO);
});
return resultList;
}
/***
* 暂态指标监测点电压暂降和短时中断分布情况
* @author jianghaifei
* @date 2022-10-28 14:56
* @param eventMonitorReportParam
* @return com.njcn.event.pojo.vo.EventDipShortDistributionVO
*/
@Override
public List<EventDipShortDistributionTableVO> getEventDipShortDistributionByCond(EventMonitorReportParam eventMonitorReportParam) {
//提取参数
// String monitorName = eventMonitorReportParam.getMonitorName(); //监测点名称
// String id = eventMonitorReportParam.getId(); //单位id
String startTime = eventMonitorReportParam.getStartTime(); //开始时间
String endTime = eventMonitorReportParam.getEndTime(); //结束时间
Integer type = eventMonitorReportParam.getType(); //时间类型(日/月)
//查询监测点信息
List<PwPmsMonitorDTO> monitorList = this.getMonitorList(eventMonitorReportParam);
List<String> monitorIdList = monitorList.stream().map(PwPmsMonitorDTO::getMonitorId).collect(Collectors.toList()); //监测点id集合
//获取暂态指标的字典
List<DictData> eventStatisList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.EVENT_STATIS.getCode()).getData();
//将暂态指标信息转成mapkeycode value实体
Map<String, DictData> eventStatisMapByCode = eventStatisList.stream().collect(Collectors.toMap(DictData::getCode, data -> data));
//短时中断、暂降分布情况
Map<String, Object> condMap = new HashMap<>();
condMap.put("monitorIdList", monitorIdList);
condMap.put("startTime", startTime);
condMap.put("endTime", endTime);
condMap.put("eventTypeList", Arrays.asList(eventStatisMapByCode.get(DicDataEnum.VOLTAGE_DIP.getCode()).getId(), eventStatisMapByCode.get(DicDataEnum.SHORT_INTERRUPTIONS.getCode()).getId()));
condMap.put("dateType", type);
EventDipShortDistributionVO eventDipShortDistribution = eventDistributionStatisticsMapper.getEventDipShortDistributionByCond(condMap);
//设置返回数据
List<EventDipShortDistributionTableVO> list = new ArrayList<>();
//特征幅值[80,90]
EventDipShortDistributionTableVO entity8090 = new EventDipShortDistributionTableVO();
entity8090.setFeatureAmplitude("[80,90]");
entity8090.setDuration100(eventDipShortDistribution.getFeatureAmp90with100ms()); //持续时间10ms-100ms
entity8090.setDuration250(eventDipShortDistribution.getFeatureAmp90with250ms()); //持续时间100ms-250ms
entity8090.setDuration500(eventDipShortDistribution.getFeatureAmp90with500ms()); //持续时间250ms-500ms
entity8090.setDuration1000(eventDipShortDistribution.getFeatureAmp90with1000ms()); //持续时间500ms-1000ms
entity8090.setDuration3000(eventDipShortDistribution.getFeatureAmp90with3000ms()); //持续时间1000ms-3000ms
entity8090.setDuration10000(eventDipShortDistribution.getFeatureAmp90with10000ms()); //持续时间3000ms-10000ms
entity8090.setDuration20000(eventDipShortDistribution.getFeatureAmp90with20000ms()); //持续时间10000ms-20000ms
entity8090.setDuration60000(eventDipShortDistribution.getFeatureAmp90with60000ms()); //持续时间20000ms-60000ms
list.add(entity8090);
//特征幅值[70,80)
EventDipShortDistributionTableVO entity7080 = new EventDipShortDistributionTableVO();
entity7080.setFeatureAmplitude("[70,80)");
entity7080.setDuration100(eventDipShortDistribution.getFeatureAmp80with100ms()); //持续时间10ms-100ms
entity7080.setDuration250(eventDipShortDistribution.getFeatureAmp80with250ms()); //持续时间100ms-250ms
entity7080.setDuration500(eventDipShortDistribution.getFeatureAmp80with500ms()); //持续时间250ms-500ms
entity7080.setDuration1000(eventDipShortDistribution.getFeatureAmp80with1000ms()); //持续时间500ms-1000ms
entity7080.setDuration3000(eventDipShortDistribution.getFeatureAmp80with3000ms()); //持续时间1000ms-3000ms
entity7080.setDuration10000(eventDipShortDistribution.getFeatureAmp80with10000ms()); //持续时间3000ms-10000ms
entity7080.setDuration20000(eventDipShortDistribution.getFeatureAmp80with20000ms()); //持续时间10000ms-20000ms
entity7080.setDuration60000(eventDipShortDistribution.getFeatureAmp80with60000ms()); //持续时间20000ms-60000ms
list.add(entity7080);
//特征幅值[60,70)
EventDipShortDistributionTableVO entity6070 = new EventDipShortDistributionTableVO();
entity6070.setFeatureAmplitude("[60,70)");
entity6070.setDuration100(eventDipShortDistribution.getFeatureAmp70with100ms()); //持续时间10ms-100ms
entity6070.setDuration250(eventDipShortDistribution.getFeatureAmp70with250ms()); //持续时间100ms-250ms
entity6070.setDuration500(eventDipShortDistribution.getFeatureAmp70with500ms()); //持续时间250ms-500ms
entity6070.setDuration1000(eventDipShortDistribution.getFeatureAmp70with1000ms()); //持续时间500ms-1000ms
entity6070.setDuration3000(eventDipShortDistribution.getFeatureAmp70with3000ms()); //持续时间1000ms-3000ms
entity6070.setDuration10000(eventDipShortDistribution.getFeatureAmp70with10000ms()); //持续时间3000ms-10000ms
entity6070.setDuration20000(eventDipShortDistribution.getFeatureAmp70with20000ms()); //持续时间10000ms-20000ms
entity6070.setDuration60000(eventDipShortDistribution.getFeatureAmp70with60000ms()); //持续时间20000ms-60000ms
list.add(entity6070);
//特征幅值[50,60)
EventDipShortDistributionTableVO entity5060 = new EventDipShortDistributionTableVO();
entity5060.setFeatureAmplitude("[50,60)");
entity5060.setDuration100(eventDipShortDistribution.getFeatureAmp60with100ms()); //持续时间10ms-100ms
entity5060.setDuration250(eventDipShortDistribution.getFeatureAmp60with250ms()); //持续时间100ms-250ms
entity5060.setDuration500(eventDipShortDistribution.getFeatureAmp60with500ms()); //持续时间250ms-500ms
entity5060.setDuration1000(eventDipShortDistribution.getFeatureAmp60with1000ms()); //持续时间500ms-1000ms
entity5060.setDuration3000(eventDipShortDistribution.getFeatureAmp60with3000ms()); //持续时间1000ms-3000ms
entity5060.setDuration10000(eventDipShortDistribution.getFeatureAmp60with10000ms()); //持续时间3000ms-10000ms
entity5060.setDuration20000(eventDipShortDistribution.getFeatureAmp60with20000ms()); //持续时间10000ms-20000ms
entity5060.setDuration60000(eventDipShortDistribution.getFeatureAmp60with60000ms()); //持续时间20000ms-60000ms
list.add(entity5060);
//特征幅值[40,50)
EventDipShortDistributionTableVO entity4050 = new EventDipShortDistributionTableVO();
entity4050.setFeatureAmplitude("[40,50)");
entity4050.setDuration100(eventDipShortDistribution.getFeatureAmp50with100ms()); //持续时间10ms-100ms
entity4050.setDuration250(eventDipShortDistribution.getFeatureAmp50with250ms()); //持续时间100ms-250ms
entity4050.setDuration500(eventDipShortDistribution.getFeatureAmp50with500ms()); //持续时间250ms-500ms
entity4050.setDuration1000(eventDipShortDistribution.getFeatureAmp50with1000ms()); //持续时间500ms-1000ms
entity4050.setDuration3000(eventDipShortDistribution.getFeatureAmp50with3000ms()); //持续时间1000ms-3000ms
entity4050.setDuration10000(eventDipShortDistribution.getFeatureAmp50with10000ms()); //持续时间3000ms-10000ms
entity4050.setDuration20000(eventDipShortDistribution.getFeatureAmp50with20000ms()); //持续时间10000ms-20000ms
entity4050.setDuration60000(eventDipShortDistribution.getFeatureAmp50with60000ms()); //持续时间20000ms-60000ms
list.add(entity4050);
//特征幅值[30,40)
EventDipShortDistributionTableVO entity3040 = new EventDipShortDistributionTableVO();
entity3040.setFeatureAmplitude("[30,40)");
entity3040.setDuration100(eventDipShortDistribution.getFeatureAmp40with100ms()); //持续时间10ms-100ms
entity3040.setDuration250(eventDipShortDistribution.getFeatureAmp40with250ms()); //持续时间100ms-250ms
entity3040.setDuration500(eventDipShortDistribution.getFeatureAmp40with500ms()); //持续时间250ms-500ms
entity3040.setDuration1000(eventDipShortDistribution.getFeatureAmp40with1000ms()); //持续时间500ms-1000ms
entity3040.setDuration3000(eventDipShortDistribution.getFeatureAmp40with3000ms()); //持续时间1000ms-3000ms
entity3040.setDuration10000(eventDipShortDistribution.getFeatureAmp40with10000ms()); //持续时间3000ms-10000ms
entity3040.setDuration20000(eventDipShortDistribution.getFeatureAmp40with20000ms()); //持续时间10000ms-20000ms
entity3040.setDuration60000(eventDipShortDistribution.getFeatureAmp40with60000ms()); //持续时间20000ms-60000ms
list.add(entity3040);
//特征幅值[20,30)
EventDipShortDistributionTableVO entity2030 = new EventDipShortDistributionTableVO();
entity2030.setFeatureAmplitude("[20,30)");
entity2030.setDuration100(eventDipShortDistribution.getFeatureAmp30with100ms()); //持续时间10ms-100ms
entity2030.setDuration250(eventDipShortDistribution.getFeatureAmp30with250ms()); //持续时间100ms-250ms
entity2030.setDuration500(eventDipShortDistribution.getFeatureAmp30with500ms()); //持续时间250ms-500ms
entity2030.setDuration1000(eventDipShortDistribution.getFeatureAmp30with1000ms()); //持续时间500ms-1000ms
entity2030.setDuration3000(eventDipShortDistribution.getFeatureAmp30with3000ms()); //持续时间1000ms-3000ms
entity2030.setDuration10000(eventDipShortDistribution.getFeatureAmp30with10000ms()); //持续时间3000ms-10000ms
entity2030.setDuration20000(eventDipShortDistribution.getFeatureAmp30with20000ms()); //持续时间10000ms-20000ms
entity2030.setDuration60000(eventDipShortDistribution.getFeatureAmp30with60000ms()); //持续时间20000ms-60000ms
list.add(entity2030);
//特征幅值[10,20)
EventDipShortDistributionTableVO entity1020 = new EventDipShortDistributionTableVO();
entity1020.setFeatureAmplitude("[10,20)");
entity1020.setDuration100(eventDipShortDistribution.getFeatureAmp20with100ms()); //持续时间10ms-100ms
entity1020.setDuration250(eventDipShortDistribution.getFeatureAmp20with250ms()); //持续时间100ms-250ms
entity1020.setDuration500(eventDipShortDistribution.getFeatureAmp20with500ms()); //持续时间250ms-500ms
entity1020.setDuration1000(eventDipShortDistribution.getFeatureAmp20with1000ms()); //持续时间500ms-1000ms
entity1020.setDuration3000(eventDipShortDistribution.getFeatureAmp20with3000ms()); //持续时间1000ms-3000ms
entity1020.setDuration10000(eventDipShortDistribution.getFeatureAmp20with10000ms()); //持续时间3000ms-10000ms
entity1020.setDuration20000(eventDipShortDistribution.getFeatureAmp20with20000ms()); //持续时间10000ms-20000ms
entity1020.setDuration60000(eventDipShortDistribution.getFeatureAmp20with60000ms()); //持续时间20000ms-60000ms
list.add(entity1020);
//特征幅值[0,10)
EventDipShortDistributionTableVO entity10 = new EventDipShortDistributionTableVO();
entity10.setFeatureAmplitude("[0,10)");
entity10.setDuration100(eventDipShortDistribution.getFeatureAmp10with100ms()); //持续时间10ms-100ms
entity10.setDuration250(eventDipShortDistribution.getFeatureAmp10with250ms()); //持续时间100ms-250ms
entity10.setDuration500(eventDipShortDistribution.getFeatureAmp10with500ms()); //持续时间250ms-500ms
entity10.setDuration1000(eventDipShortDistribution.getFeatureAmp10with1000ms()); //持续时间500ms-1000ms
entity10.setDuration3000(eventDipShortDistribution.getFeatureAmp10with3000ms()); //持续时间1000ms-3000ms
entity10.setDuration10000(eventDipShortDistribution.getFeatureAmp10with10000ms()); //持续时间3000ms-10000ms
entity10.setDuration20000(eventDipShortDistribution.getFeatureAmp10with20000ms()); //持续时间10000ms-20000ms
entity10.setDuration60000(eventDipShortDistribution.getFeatureAmp10with60000ms()); //持续时间20000ms-60000ms
list.add(entity10);
return list;
}
/***
* 暂态指标监测点电压暂升分布情况
* @author jianghaifei
* @date 2022-10-29 14:08
* @param eventMonitorReportParam
* @return com.njcn.event.pojo.vo.EventRiseDistributionVO
*/
@Override
public List<EventRiseDistributionTableVO> getEventRiseDistributionByCond(EventMonitorReportParam eventMonitorReportParam) {
//提取参数
// String monitorName = eventMonitorReportParam.getMonitorName(); //监测点名称
// String id = eventMonitorReportParam.getId(); //单位id
String startTime = eventMonitorReportParam.getStartTime(); //开始时间
String endTime = eventMonitorReportParam.getEndTime(); //结束时间
Integer type = eventMonitorReportParam.getType(); //时间类型(日/月)
//查询监测点信息
List<PwPmsMonitorDTO> monitorList = this.getMonitorList(eventMonitorReportParam);
List<String> monitorIdList = monitorList.stream().map(PwPmsMonitorDTO::getMonitorId).collect(Collectors.toList()); //监测点id集合
//获取暂态指标的字典
List<DictData> eventStatisList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.EVENT_STATIS.getCode()).getData();
//将暂态指标信息转成mapkeycode value实体
Map<String, DictData> eventStatisMapByCode = eventStatisList.stream().collect(Collectors.toMap(DictData::getCode, data -> data));
//暂升分布情况
Map<String, Object> riseCondMap = new HashMap<>();
riseCondMap.put("monitorIdList", monitorIdList);
riseCondMap.put("startTime", startTime);
riseCondMap.put("endTime", endTime);
riseCondMap.put("eventTypeList", Collections.singletonList(eventStatisMapByCode.get(DicDataEnum.VOLTAGE_RISE.getCode()).getId()));
riseCondMap.put("dateType", type);
EventRiseDistributionVO eventRiseDistribution = eventDistributionStatisticsMapper.getEventRiseDistributionByCond(riseCondMap);
//设置返回数据
List<EventRiseDistributionTableVO> list = new ArrayList<>();
//特征幅值U1≥120
EventRiseDistributionTableVO entity120 = new EventRiseDistributionTableVO();
entity120.setFeatureAmplitude("≥120");
entity120.setDuration500(eventRiseDistribution.getFeatureAmp120with500ms()); //持续时间100ms-500ms
entity120.setDuration5000(eventRiseDistribution.getFeatureAmp120with5000ms()); //持续时间500ms-5000ms
entity120.setDuration60000(eventRiseDistribution.getFeatureAmp120with60000ms()); //持续时间5000ms-60000ms
list.add(entity120);
//特征幅值-120-110
EventRiseDistributionTableVO entity110 = new EventRiseDistributionTableVO();
entity110.setFeatureAmplitude("-120,110");
entity110.setDuration500(eventRiseDistribution.getFeatureAmp110with500ms()); //持续时间100ms-500ms
entity110.setDuration5000(eventRiseDistribution.getFeatureAmp110with5000ms()); //持续时间500ms-5000ms
entity110.setDuration60000(eventRiseDistribution.getFeatureAmp110with60000ms()); //持续时间5000ms-60000ms
list.add(entity110);
return list;
}
/***
* 获取单位(及子孙单位)下的监测点信息(抽取的公共方法)
* @author jianghaifei
* @date 2022-10-29 17:37
* @param eventMonitorReportParam
* @return java.util.List<com.njcn.device.pms.pojo.dto.PmsMonitorDTO>
*/
private List<PwPmsMonitorDTO> getMonitorList(EventMonitorReportParam eventMonitorReportParam) {
//提起参数
String id = eventMonitorReportParam.getId(); //单位id
String monitorName = eventMonitorReportParam.getMonitorName(); //台区名称
//根据条件查询单位下面的所有配网监测点
PwPmsMonitorParam pwPmsMonitorParam = new PwPmsMonitorParam();
pwPmsMonitorParam.setOrgId(id); //单位id
pwPmsMonitorParam.setMonitorName(monitorName); //台区名称(监测点名称)
List<PwPmsMonitorDTO> pwMonitorList = pwMonitorClient.getPwMonitorList(pwPmsMonitorParam).getData();
return pwMonitorList;
}
}

View File

@@ -0,0 +1,28 @@
package com.njcn.event.service.distribution;
import com.njcn.event.pojo.param.EventMonitorReportParam;
import com.njcn.event.pojo.vo.EventDipShortDistributionTableVO;
import com.njcn.event.pojo.vo.EventMonitorReportVO;
import com.njcn.event.pojo.vo.EventRiseDistributionTableVO;
import java.util.List;
/**
* 配网暂态指标
* @Title EventMonitorDailyReportService
* @Package com.njcn.event.service
* @Author jianghaifei
* @Date 2022-10-25 09:39
* @Version V1.0
*/
public interface PwEventMonitorReportService {
//监测点暂态事件发生次数
List<EventMonitorReportVO> getMonitorEventCount(EventMonitorReportParam eventMonitorReportParam);
//暂态指标监测点电压暂降和短时中断分布情况
List<EventDipShortDistributionTableVO> getEventDipShortDistributionByCond(EventMonitorReportParam eventMonitorReportParam);
//暂态指标监测点电压暂升分布情况
List<EventRiseDistributionTableVO> getEventRiseDistributionByCond(EventMonitorReportParam eventMonitorReportParam);
}

View File

@@ -0,0 +1,19 @@
package com.njcn.harmonic.pojo.param;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Title RStatPwPermeabilityMParam
* @Package com.njcn.harmonic.pojo.param
* @Author jianghaifei
* @Date 2022-11-07 14:15
* @Version V1.0
*/
@Data
public class RStatPwPermeabilityMParam extends StatisticsBizBaseParam {
@ApiModelProperty(name = "psrName", value = "台区名称")
private String psrName;
}

View File

@@ -0,0 +1,61 @@
package com.njcn.harmonic.pojo.po;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
*
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/11/8 13:27【需求编号】
*
* @author clam
* @version V1.0.0
*/
/**
* 单位污区图统计日表
*/
@ApiModel(value="com-njcn-harmonic-pojo-po-RStatPollutionOrgDPO")
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "r_stat_pollution_org_d")
public class RStatPollutionOrgDPO implements Serializable {
/**
* 单位id
*/
@TableField(value = "org_id")
@ApiModelProperty(value="单位id")
private String orgId;
/**
* 时间
*/
@TableField(value = "data_date")
@ApiModelProperty(value="时间")
private Date dataDate;
/**
* 污区图统计类型
*/
@TableField(value = "pollution_type")
@ApiModelProperty(value="污区图统计类型")
private String pollutionType;
/**
* 统计值
*/
@TableField(value = "value")
@ApiModelProperty(value="统计值")
private Double value;
private static final long serialVersionUID = 1L;
}

View File

@@ -0,0 +1,62 @@
package com.njcn.harmonic.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
*
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/11/8 13:27【需求编号】
*
* @author clam
* @version V1.0.0
*/
/**
* 单位污区图统计季表
*/
@ApiModel(value="com-njcn-harmonic-pojo-po-RStatPollutionOrgQPO")
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "r_stat_pollution_org_q")
public class RStatPollutionOrgQPO implements Serializable {
/**
* 单位id
*/
@TableField(value = "org_id")
@ApiModelProperty(value="单位id")
private String orgId;
/**
* 时间
*/
@TableField(value = "data_date")
@ApiModelProperty(value="时间")
private Date dataDate;
/**
* 污区图统计类型
*/
@TableField(value = "pollution_type")
@ApiModelProperty(value="污区图统计类型")
private String pollutionType;
/**
* 统计值
*/
@TableField(value = "value")
@ApiModelProperty(value="统计值")
private Double value;
private static final long serialVersionUID = 1L;
}

View File

@@ -0,0 +1,62 @@
package com.njcn.harmonic.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
*
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/11/8 13:28【需求编号】
*
* @author clam
* @version V1.0.0
*/
/**
* 单位污区图统计年表
*/
@ApiModel(value="com-njcn-harmonic-pojo-po-RStatPollutionOrgYPO")
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "r_stat_pollution_org_y")
public class RStatPollutionOrgYPO implements Serializable {
/**
* 单位id
*/
@TableField(value = "org_id")
@ApiModelProperty(value="单位id")
private String orgId;
/**
* 时间
*/
@TableField(value = "data_date")
@ApiModelProperty(value="时间")
private Date dataDate;
/**
* 污区图统计类型
*/
@TableField(value = "pollution_type")
@ApiModelProperty(value="污区图统计类型")
private String pollutionType;
/**
* 统计值
*/
@TableField(value = "value")
@ApiModelProperty(value="统计值")
private Double value;
private static final long serialVersionUID = 1L;
}

View File

@@ -0,0 +1,62 @@
package com.njcn.harmonic.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
*
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/11/8 13:28【需求编号】
*
* @author clam
* @version V1.0.0
*/
/**
* 变电站污区图统计日表
*/
@ApiModel(value="com-njcn-harmonic-pojo-po-RStatPollutionSubstationDPO")
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "r_stat_pollution_substation_d")
public class RStatPollutionSubstationDPO implements Serializable {
/**
* 变电站id
*/
@TableField(value = "substation_id")
@ApiModelProperty(value="变电站id")
private String substationId;
/**
* 时间
*/
@TableField(value = "data_date")
@ApiModelProperty(value="时间")
private Date dataDate;
/**
* 污区图统计类型
*/
@TableField(value = "pollution_type")
@ApiModelProperty(value="污区图统计类型")
private String pollutionType;
/**
* 统计值
*/
@TableField(value = "value")
@ApiModelProperty(value="统计值")
private Double value;
private static final long serialVersionUID = 1L;
}

View File

@@ -0,0 +1,62 @@
package com.njcn.harmonic.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
*
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/11/8 13:28【需求编号】
*
* @author clam
* @version V1.0.0
*/
/**
* 变电站污区图统计季表
*/
@ApiModel(value="com-njcn-harmonic-pojo-po-RStatPollutionSubstationQPO")
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "r_stat_pollution_substation_q")
public class RStatPollutionSubstationQPO implements Serializable {
/**
* 变电站id
*/
@TableField(value = "substation_id")
@ApiModelProperty(value="变电站id")
private String substationId;
/**
* 时间
*/
@TableField(value = "data_date")
@ApiModelProperty(value="时间")
private Date dataDate;
/**
* 污区图统计类型
*/
@TableField(value = "pollution_type")
@ApiModelProperty(value="污区图统计类型")
private String pollutionType;
/**
* 统计值
*/
@TableField(value = "value")
@ApiModelProperty(value="统计值")
private Double value;
private static final long serialVersionUID = 1L;
}

View File

@@ -0,0 +1,62 @@
package com.njcn.harmonic.pojo.po;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
*
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/11/8 13:28【需求编号】
*
* @author clam
* @version V1.0.0
*/
/**
* 变电站污区图统计年表
*/
@ApiModel(value="com-njcn-harmonic-pojo-po-RStatPollutionSubstationYPO")
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "r_stat_pollution_substation_y")
public class RStatPollutionSubstationYPO implements Serializable {
/**
* 变电站id
*/
@TableField(value = "substation_id")
@ApiModelProperty(value="变电站id")
private String substationId;
/**
* 时间
*/
@TableField(value = "data_date")
@ApiModelProperty(value="时间")
private Date dataDate;
/**
* 污区图统计类型
*/
@TableField(value = "pollution_type")
@ApiModelProperty(value="污区图统计类型")
private String pollutionType;
/**
* 统计值
*/
@TableField(value = "value")
@ApiModelProperty(value="统计值")
private Double value;
private static final long serialVersionUID = 1L;
}

View File

@@ -0,0 +1,82 @@
package com.njcn.harmonic.pojo.po;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
*
* @TableName r_stat_pw_permeability_m
*/
@TableName(value ="r_stat_pw_permeability_m")
@Data
public class RStatPwPermeabilityM implements Serializable {
@TableField(exist = false)
private static final long serialVersionUID = 1L;
/**
* 单位ID
*/
private String orgNo;
/**
* 生成数据的时间,每月统计一次
*/
private Date dataDate;
/**
* 台区ID
*/
private String psrId;
/**
* 电压水平均值
*/
private Double voltageAvg;
/**
* 电压水平标准差
*/
private Double voltageSd;
/**
* 三相电压不平衡水平均值
*/
private Double unbalanceAvg;
/**
* 三相电压不平衡水平标准差
*/
private Double unbalanceSd;
/**
* 电压总谐波畸变率水平均值
*/
private Double vthdAvg;
/**
* 电压总谐波畸变率水平标准差
*/
private Double vthdSd;
/**
* 长时间闪变水平均值
*/
private Double flickerAvg;
/**
* 长时间闪变水平标准差
*/
private Double flickerSd;
/**
* 分布式光伏台区渗透率水平(0~25%、25~50%、50~75%、75~100%、100%)
*/
private String permeabilityType;
}

View File

@@ -0,0 +1,59 @@
package com.njcn.harmonic.pojo.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @Title PwRMpBenchmarkLevelVO
* @Package com.njcn.harmonic.pojo.vo
* @Author jianghaifei
* @Date 2022-11-04 11:04
* @Version V1.0
*/
@Data
public class PwRMpBenchmarkLevelVO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(name = "orgNo", value = "单位id")
private String orgNo;
@ApiModelProperty(name = "orgName", value = "单位名称")
private String orgName;
@ApiModelProperty(name = "measurementPointId", value = "监测点ID")
private String measurementPointId;
@ApiModelProperty(name = "measurementPointName", value = "监测点名称")
private String measurementPointName;
@ApiModelProperty(name = "voltage_Level", value = "电压等级id")
private String voltageLevel;
@ApiModelProperty(name = "voltageAvg", value = "电压水平均值")
private Double voltageAvg;
@ApiModelProperty(name = "voltageSd", value = "电压水平标准差")
private Double voltageSd;
@ApiModelProperty(name = "unbalanceAvg", value = "三相电压不平衡水平均值")
private Double unbalanceAvg;
@ApiModelProperty(name = "unbalanceSd", value = "三相电压不平衡水平标准差")
private Double unbalanceSd;
@ApiModelProperty(name = "vthdAvg", value = "电压总谐波畸变率水平均值")
private Double vthdAvg;
@ApiModelProperty(name = "vthdSd", value = "电压总谐波畸变率水平标准差")
private Double vthdSd;
@ApiModelProperty(name = "flickerAvg", value = "长时间闪变水平均值")
private Double flickerAvg;
@ApiModelProperty(name = "flickerSd", value = "长时间闪变水平标准差")
private Double flickerSd;
}

View File

@@ -0,0 +1,37 @@
package com.njcn.harmonic.pojo.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* <功能描述>
*
* @author 1754607820@qq.com
* @createTime: 2022-11-08
*/
@Data
public class PwRStatOrgVO {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "单位id")
private String orgNo;
@ApiModelProperty(value = "单位名称")
private String orgName;
@ApiModelProperty(value = "监测点类别")
private String measurementTypeClass;
@ApiModelProperty(value = "在线监测点数")
private String allCount;
@ApiModelProperty(value = "频率偏差合格率")
private Float freqPassRate;
@ApiModelProperty(value = "电压偏差合格率")
private Float vDevPassRate;
@ApiModelProperty(value = "闪变合格率")
private Float flickerPassRate;
}

View File

@@ -0,0 +1,158 @@
package com.njcn.harmonic.pojo.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* 各渗透率光伏台区基准水平返回实体
* @Title RStatPwPermeabilityMVO
* @Package com.njcn.harmonic.pojo.vo
* @Author jianghaifei
* @Date 2022-11-07 10:40
* @Version V1.0
*/
@Data
public class RStatPwPermeabilityMVO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(name = "orgNo", value = "单位id")
private String orgNo;
@ApiModelProperty(name = "orgName", value = "单位名称")
private String orgName;
@ApiModelProperty(name = "psrId", value = "台区Id")
private String psrId;
@ApiModelProperty(name = "psrName", value = "台区名称")
private String psrName;
@ApiModelProperty(name = "voltageAvg25", value = "0~25%渗透率电压水平均值")
private Double voltageAvg25;
@ApiModelProperty(name = "voltageSd25", value = "0~25%渗透率电压水平标准差")
private Double voltageSd25;
@ApiModelProperty(name = "unbalanceAvg25", value = "0~25%渗透率三相电压不平衡水平均值")
private Double unbalanceAvg25;
@ApiModelProperty(name = "unbalanceSd25", value = "0~25%渗透率三相电压不平衡水平标准差")
private Double unbalanceSd25;
@ApiModelProperty(name = "vthdAvg25", value = "0~25%渗透率电压总谐波畸变率水平均值")
private Double vthdAvg25;
@ApiModelProperty(name = "vthdSd25", value = "0~25%渗透率电压总谐波畸变率水平标准差")
private Double vthdSd25;
@ApiModelProperty(name = "flickerAvg25", value = "0~25%渗透率长时间闪变水平均值")
private Double flickerAvg25;
@ApiModelProperty(name = "flickerSd25", value = "0~25%渗透率长时间闪变水平标准差")
private Double flickerSd25;
@ApiModelProperty(name = "voltageAvg50", value = "25~50%渗透率电压水平均值")
private Double voltageAvg50;
@ApiModelProperty(name = "voltageSd50", value = "25~50%渗透率电压水平标准差")
private Double voltageSd50;
@ApiModelProperty(name = "unbalanceAvg50", value = "25~50%渗透率三相电压不平衡水平均值")
private Double unbalanceAvg50;
@ApiModelProperty(name = "unbalanceSd50", value = "25~50%渗透率三相电压不平衡水平标准差")
private Double unbalanceSd50;
@ApiModelProperty(name = "vthdAvg50", value = "25~50%渗透率电压总谐波畸变率水平均值")
private Double vthdAvg50;
@ApiModelProperty(name = "vthdSd50", value = "25~50%渗透率电压总谐波畸变率水平标准差")
private Double vthdSd50;
@ApiModelProperty(name = "flickerAvg50", value = "25~50%渗透率长时间闪变水平均值")
private Double flickerAvg50;
@ApiModelProperty(name = "flickerSd50", value = "25~50%渗透率长时间闪变水平标准差")
private Double flickerSd50;
@ApiModelProperty(name = "voltageAvg75", value = "50~75%渗透率电压水平均值")
private Double voltageAvg75;
@ApiModelProperty(name = "voltageSd75", value = "50~75%渗透率电压水平标准差")
private Double voltageSd75;
@ApiModelProperty(name = "unbalanceAvg75", value = "50~75%渗透率三相电压不平衡水平均值")
private Double unbalanceAvg75;
@ApiModelProperty(name = "unbalanceSd75", value = "50~75%渗透率三相电压不平衡水平标准差")
private Double unbalanceSd75;
@ApiModelProperty(name = "vthdAvg75", value = "50~75%渗透率电压总谐波畸变率水平均值")
private Double vthdAvg75;
@ApiModelProperty(name = "vthdSd75", value = "50~75%渗透率电压总谐波畸变率水平标准差")
private Double vthdSd75;
@ApiModelProperty(name = "flickerAvg75", value = "50~75%渗透率长时间闪变水平均值")
private Double flickerAvg75;
@ApiModelProperty(name = "flickerSd75", value = "50~75%渗透率长时间闪变水平标准差")
private Double flickerSd75;
@ApiModelProperty(name = "voltageAvg99", value = "75~100%渗透率电压水平均值")
private Double voltageAvg99;
@ApiModelProperty(name = "voltageSd99", value = "75~100%渗透率电压水平标准差")
private Double voltageSd99;
@ApiModelProperty(name = "unbalanceAvg99", value = "75~100%渗透率三相电压不平衡水平均值")
private Double unbalanceAvg99;
@ApiModelProperty(name = "unbalanceSd99", value = "75~100%渗透率三相电压不平衡水平标准差")
private Double unbalanceSd99;
@ApiModelProperty(name = "vthdAvg99", value = "75~100%渗透率电压总谐波畸变率水平均值")
private Double vthdAvg99;
@ApiModelProperty(name = "vthdSd99", value = "75~100%渗透率电压总谐波畸变率水平标准差")
private Double vthdSd99;
@ApiModelProperty(name = "flickerAvg99", value = "75~100%渗透率长时间闪变水平均值")
private Double flickerAvg99;
@ApiModelProperty(name = "flickerSd99", value = "75~100%渗透率长时间闪变水平标准差")
private Double flickerSd99;
@ApiModelProperty(name = "voltageAvg100", value = "100%渗透率电压水平均值")
private Double voltageAvg100;
@ApiModelProperty(name = "voltageSd100", value = "100%渗透率电压水平标准差")
private Double voltageSd100;
@ApiModelProperty(name = "unbalanceAvg100", value = "100%渗透率三相电压不平衡水平均值")
private Double unbalanceAvg100;
@ApiModelProperty(name = "unbalanceSd100", value = "100%渗透率三相电压不平衡水平标准差")
private Double unbalanceSd100;
@ApiModelProperty(name = "vthdAvg100", value = "100%渗透率电压总谐波畸变率水平均值")
private Double vthdAvg100;
@ApiModelProperty(name = "vthdSd100", value = "100%渗透率电压总谐波畸变率水平标准差")
private Double vthdSd100;
@ApiModelProperty(name = "flickerAvg100", value = "100%渗透率长时间闪变水平均值")
private Double flickerAvg100;
@ApiModelProperty(name = "flickerSd100", value = "100%渗透率长时间闪变水平标准差")
private Double flickerSd100;
}

View File

@@ -0,0 +1,48 @@
package com.njcn.harmonic.controller;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.harmonic.pojo.param.RMpBenchmarkLevelParam;
import com.njcn.harmonic.pojo.param.RStatPwPermeabilityMParam;
import com.njcn.harmonic.pojo.vo.PwRMpBenchmarkLevelVO;
import com.njcn.harmonic.pojo.vo.RStatPwPermeabilityMVO;
import com.njcn.harmonic.service.RStatPwPermeabilityMService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @Title RStatPwPermeabilityMController
* @Package com.njcn.harmonic.controller
* @Author jianghaifei
* @Date 2022-11-07 13:55
* @Version V1.0
*/
@RestController
@RequestMapping("/rStatPwPermeability")
@RequiredArgsConstructor
@Api(tags = "配网-各渗透率光伏台区基准水平")
public class RStatPwPermeabilityMController extends BaseController {
private final RStatPwPermeabilityMService rStatPwPermeabilityMService;
@PostMapping("getPwPermeabilityList")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("查询各渗透率光伏台区基准水平")
public HttpResult<List<RStatPwPermeabilityMVO>> getPwPermeabilityList(@RequestBody RStatPwPermeabilityMParam rStatPwPermeabilityMParam) {
String methodDescribe = getMethodDescribe("getPwPermeabilityList");
List<RStatPwPermeabilityMVO> list = rStatPwPermeabilityMService.getPwPermeabilityList(rStatPwPermeabilityMParam);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
}
}

View File

@@ -0,0 +1,86 @@
package com.njcn.harmonic.controller.distribution;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.harmonic.pojo.param.RStatHarmonicMParam;
import com.njcn.harmonic.pojo.vo.RArrayVO;
import com.njcn.harmonic.pojo.vo.RHarmonicPolylineVO;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicMService;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicQService;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicYService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* <p>
* 前端控制器
* </p>
*
* @author rui.wu
* @since 2022-10-09
*/
@RestController
@RequiredArgsConstructor
@Api(tags = "配网指标分类概览-监测点分类总览")
@RequestMapping("/harmonic/pwRStatHarmonic")
public class PwRStatHarmonicController extends BaseController {
private final RStatHarmonicMService rStatHarmonicMService;
private final RStatHarmonicQService rStatHarmonicQService;
private final RStatHarmonicYService rStatHarmonicYService;
/**
* 查询查询监测点稳态指标 日/月点数
*/
@PostMapping("/getPwAllRStatHarmonic")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("查询稳态累计超标监测点数")
public HttpResult<List<RArrayVO>> getPwAllRStatHarmonic(@RequestBody StatisticsBizBaseParam param) {
String methodDescribe = getMethodDescribe("getPwAllRStatHarmonic");
List<RArrayVO> rStatHarmonicMAll = null;
String string = param.getType().toString();
switch (string) {
//查询超标监测点数-年数据
case BizParamConstant.STAT_BIZ_YEAR:
rStatHarmonicMAll = rStatHarmonicYService.getPwRStatHarmonicYAll(param);
break;
//查询超标监测点数-季数据
case BizParamConstant.STAT_BIZ_QUARTER:
rStatHarmonicMAll = rStatHarmonicQService.getPwRStatHarmonicQAll(param);
break;
//查询超标监测点数-月数据
case BizParamConstant.STAT_BIZ_MONTH:
rStatHarmonicMAll = rStatHarmonicMService.getPwRStatHarmonicMAll(param);
break;
default:
break;
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatHarmonicMAll, methodDescribe);
}
/**
* 监测点-频率偏差-电压统计图
*/
@PostMapping("/getPwRStatHarmonicIconDate")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("稳态监测点-频率偏差-越线日期统计图")
public HttpResult<List<RHarmonicPolylineVO>> getPwRStatHarmonicIconDate(@RequestBody RStatHarmonicMParam param) {
String methodDescribe = getMethodDescribe("getPwRStatHarmonicIconDate");
List<RHarmonicPolylineVO> rStatHarmonicIcon = rStatHarmonicMService.getPwRStatHarmonicIconDate(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatHarmonicIcon, methodDescribe);
}
}

View File

@@ -0,0 +1,103 @@
package com.njcn.harmonic.controller.distribution;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.harmonic.pojo.param.RStatHarmonicMParam;
import com.njcn.harmonic.pojo.vo.RArrayVO;
import com.njcn.harmonic.pojo.vo.RIconVO;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicOrgMService;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicOrgQService;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicOrgYService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* <p>
* 前端控制器
* </p>
*
* @author rui.wu
* @since 2022-10-14
*/
@RestController
@RequiredArgsConstructor
@Api(tags = "配网指标分类概览-各单位分类总览")
@RequestMapping("/harmonic/pwRStatHarmonicOrg")
public class PwRStatHarmonicOrgMController extends BaseController {
private final RStatHarmonicOrgYService rStatHarmonicOrgYService;
private final RStatHarmonicOrgQService rStatHarmonicOrgQService;
private final RStatHarmonicOrgMService rStatHarmonicOrgMService;
/**
* 查询查询监测点稳态指标 日/月点数
*/
@PostMapping("/getPwRStatHarmonicOrg")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("查询稳态累计超标监测点数")
public HttpResult<List<RArrayVO>> getPwRStatHarmonicOrg(@RequestBody StatisticsBizBaseParam param) {
String methodDescribe = getMethodDescribe("getPwRStatHarmonicOrg");
List<RArrayVO> org = null;
String string = param.getType().toString();
switch (string) {
//查询各单位累计超标监测点数-年数据
case BizParamConstant.STAT_BIZ_YEAR:
org = rStatHarmonicOrgYService.getPwRStatHarmonicYAll(param);
break;
//查询各单位累计超标监测点数-季数据
case BizParamConstant.STAT_BIZ_QUARTER:
org = rStatHarmonicOrgQService.getPwRStatHarmonicQAll(param);
break;
//查询各单位累计超标监测点数-月数据
case BizParamConstant.STAT_BIZ_MONTH:
org = rStatHarmonicOrgMService.getPwRStatHarmonicMAll(param);
break;
default:
break;
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, org, methodDescribe);
}
/**
* 查询查询监测点稳态指标 日/月点数
*/
@PostMapping("/getPwRStatHarmonicOrgIcon")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("查询稳态各单位超标监测统计图")
public HttpResult<List<RIconVO>> getPwRStatHarmonicOrgIcon(@RequestBody RStatHarmonicMParam param) {
String methodDescribe = getMethodDescribe("getPwRStatHarmonicOrgIcon");
List<RIconVO> icon= null;
String string = param.getType().toString();
switch (string) {
//查询各单位累计超标监测点数统计图-年数据
case BizParamConstant.STAT_BIZ_YEAR:
icon = rStatHarmonicOrgYService.getPwRStatHarmonicOrgYIcon(param);
break;
//查询各单位累计超标监测点数-季数据
case BizParamConstant.STAT_BIZ_QUARTER:
icon = rStatHarmonicOrgQService.getPwRStatHarmonicOrgQIcon(param);
break;
//查询各单位累计超标监测点数-月数据
case BizParamConstant.STAT_BIZ_MONTH:
icon = rStatHarmonicOrgMService.getPwRStatHarmonicOrgMIcon(param);
break;
default:
break;
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, icon, methodDescribe);
}
}

View File

@@ -0,0 +1,175 @@
package com.njcn.harmonic.controller.distribution;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.harmonic.pojo.param.RStatOrgParam;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.vo.*;
import com.njcn.harmonic.service.distribution.PwRStatOrgService;
import com.njcn.harmonic.service.majornetwork.*;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* <p>
* 区域分类统计月表 前端控制器
* </p>
*
* @author rui.wu
* @since 2022-10-17
*/
@RestController
@RequiredArgsConstructor
@Api(tags = "配网指标-稳态指标")
@RequestMapping("/harmonic/pwRStatOrg")
public class PwRStatOrgController extends BaseController {
private final PwRStatOrgService pwRStatOrgService;
private final RStatOrgYService rStatOrgYService;
private final RStatOrgBusbarVoltageService rStatOrgBusbarVoltageService;
private final RStatLoadTypeService rStatLoadTypeService;
private final RMpPartHarmonicDetailMService rMpPartHarmonicDetailMService;
private final RMpPartHarmonicDetailDService rMpPartHarmonicDetailDService;
private final RMpPassRateService rMpPassRateService;
/**
* 查询配网区域超标统计
*/
@PostMapping("/getPwAllRStatHarmonicOrg")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("区域超标统计")
public HttpResult<List<RStatOrgVO.PwRStatOrgVO>> getPwAllRStatHarmonicOrg(@RequestBody StatSubstationBizBaseParam param) {
String methodDescribe = getMethodDescribe("getPwAllRStatHarmonicOrg");
List<RStatOrgVO.PwRStatOrgVO> rStatHarmonicAll = pwRStatOrgService.getRStatHarmonicAll(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatHarmonicAll, methodDescribe);
}
// /**
// * 区域稳态指标超标分类统计表
// */
// @GetMapping("/getPwRStatSubstation")
// @OperateInfo(info = LogEnum.BUSINESS_COMMON)
// @ApiOperation("区域稳态指标超标分类统计表")
// public HttpResult<List<RStatSubstationOrg2VO>> getRStatSubstation(StatisticsBizBaseParam param) {
// String methodDescribe = getMethodDescribe("getRStatSubstation");
// List<RStatSubstationOrg2VO> statSubstationIcon = rStatOrgYService.getRStatSubstationOrg(param);
// return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, statSubstationIcon, methodDescribe);
// }
//
// /**
// * 区域稳态指标超标分类统计表
// */
// @PostMapping("/getRStatOrgBusbarVoltage")
// @OperateInfo(info = LogEnum.BUSINESS_COMMON)
// @ApiOperation("区域电站母线电压类指标超标计")
// public HttpResult<List<RStatOrgBusbarVoltageVO>> getRStatOrgBusbarVoltage(@RequestBody StatSubstationBizBaseParam param) {
// String methodDescribe = getMethodDescribe("getRStatOrgBusbarVoltage");
// List<RStatOrgBusbarVoltageVO> statSubstationIcon = rStatOrgBusbarVoltageService.getRStatOrgBusbarVoltage(param);
// return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, statSubstationIcon, methodDescribe);
// }
//
// /**
// * 区域干扰源电流类指标超标统计
// *
// * @param param
// * @return
// */
// @GetMapping("/getRStatLoadType")
// @OperateInfo(info = LogEnum.BUSINESS_COMMON)
// @ApiOperation("区域干扰源电流类指标超标统计")
// public HttpResult<List<RArrayVO>> getRStatLoadType(StatisticsBizBaseParam param) {
// String methodDescribe = getMethodDescribe("getRStatLoadType");
// List<RArrayVO> rStatLoadType = rStatLoadTypeService.getRStatLoadType(param);
// return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatLoadType, methodDescribe);
// }
//
// /**
// * 变电站(换流站)稳态指标超标分类统计表
// *
// * @param param
// * @return
// */
// @PostMapping("/getRStatSubstationOrg")
// @OperateInfo(info = LogEnum.BUSINESS_COMMON)
// @ApiOperation("变电站(换流站)稳态指标超标分类统计表")
// public HttpResult<List<RSubstationIcon2VO.RSubstationInfoVO>> getRStatSubstationOrg(@RequestBody StatSubstationBizBaseParam param
// ) {
// String methodDescribe = getMethodDescribe("getRStatSubstationOrg");
// List<RSubstationIcon2VO.RSubstationInfoVO> rStatOrg = rStatOrgYService.getRStatSubstation(param);
// return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatOrg, methodDescribe);
// }
//
// /**
// * 稳态指标超标明细表
// *
// * @param param
// * @return
// */
// @PostMapping("/getRMpPartHarmonicDetail")
// @OperateInfo(info = LogEnum.BUSINESS_COMMON)
// @ApiOperation("稳态指标超标明细表")
// public HttpResult<List<RMpPartHarmonicDetailVO>> getRMpPartHarmonicDetail(@RequestBody RStatOrgParam param) {
// String methodDescribe = getMethodDescribe("getRMpPartHarmonicDetail");
// List<RMpPartHarmonicDetailVO> rMpPartHarmonicDetail = rMpPartHarmonicDetailMService.getRMpPartHarmonicDetail(param);
// return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rMpPartHarmonicDetail, methodDescribe);
// }
//
// /**
// * 稳态指标超标明细表-指标趋势图
// *
// * @param param
// * @return
// */
// @GetMapping("/getRMpPartHarmonicDetailIcon")
// @OperateInfo(info = LogEnum.BUSINESS_COMMON)
// @ApiOperation("稳态指标超标明细表-指标趋势图")
// public HttpResult<List<RMpPartHarmonicDetailIconVO>> getRMpPartHarmonicDetailIcon(StatisticsBizBaseParam param) {
// String methodDescribe = getMethodDescribe("getRMpPartHarmonicDetailIcon");
// List<RMpPartHarmonicDetailIconVO> rMpPartHarmonicDetail = rMpPartHarmonicDetailDService.getRMpPartHarmonicDetailIcon(param);
// return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rMpPartHarmonicDetail, methodDescribe);
// }
/**
* 区域稳态指标合格率统计表-主网(稳态指标合格率统计)
*
* @param param
* @return
*/
@GetMapping("/getPwRStatOrgIndex")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("区域稳态指标合格率统计表")
public HttpResult<List<PwRStatOrgVO>>getRStatOrgIndex(StatSubstationBizBaseParam param) {
String methodDescribe = getMethodDescribe("getRStatOrgIndex");
List<PwRStatOrgVO> rStatOrg = pwRStatOrgService.getRStatOrgIndex(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatOrg, methodDescribe);
}
/**
* 区域稳态指标合格率统计表-主网(稳态指标合格率统计)
*
* @param param
* @return
*/
@PostMapping("/getRMpPassRateInfo")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("稳态指标合格率明细表")
public HttpResult<List<RStatOrgIndexVO>> getRMpPassRateInfo(@RequestBody RStatOrgParam param) {
String methodDescribe = getMethodDescribe("getRMpPassRateInfo");
List<RStatOrgIndexVO> rStatOrg = rMpPassRateService.getRMpPassRateInfo(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatOrg, methodDescribe);
}
}

View File

@@ -0,0 +1,99 @@
package com.njcn.harmonic.controller.majornetwork;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.harmonic.pojo.param.RStatHarmonicMParam;
import com.njcn.harmonic.pojo.vo.*;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicMService;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicQService;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicYService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* <p>
* 前端控制器
* </p>
*
* @author rui.wu
* @since 2022-10-09
*/
@RestController
@RequiredArgsConstructor
@Api(tags = "主网指标分类概览-监测点分类总览")
@RequestMapping("/harmonic/rStatHarmonic")
public class RStatHarmonicMController extends BaseController {
private final RStatHarmonicMService rStatHarmonicMService;
private final RStatHarmonicQService rStatHarmonicQService;
private final RStatHarmonicYService rStatHarmonicYService;
/**
* 查询查询监测点稳态指标 日/月点数
*/
@GetMapping("/getAllRStatHarmonic")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("查询稳态累计超标监测点数")
public HttpResult<List<RArrayVO>> getAllRStatHarmonic(StatisticsBizBaseParam param) {
String methodDescribe = getMethodDescribe("getAllRStatHarmonic");
List<RArrayVO> rStatHarmonicMAll = null;
String string = param.getType().toString();
switch (string) {
//查询超标监测点数-年数据
case BizParamConstant.STAT_BIZ_YEAR:
rStatHarmonicMAll = rStatHarmonicYService.getRStatHarmonicYAll(param);
break;
//查询超标监测点数-季数据
case BizParamConstant.STAT_BIZ_QUARTER:
rStatHarmonicMAll = rStatHarmonicQService.getRStatHarmonicQAll(param);
break;
//查询超标监测点数-月数据
case BizParamConstant.STAT_BIZ_MONTH:
rStatHarmonicMAll = rStatHarmonicMService.getRStatHarmonicMAll(param);
break;
default:
break;
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatHarmonicMAll, methodDescribe);
}
/**
* 电铁-频率偏差-电压统计图
*/
@GetMapping("/getRStatHarmonicIconVoltage")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("稳态电铁-频率偏差-电压统计图")
public HttpResult<List<RIconVO>> getRStatHarmonicIconVoltage(RStatHarmonicMParam param) {
String methodDescribe = getMethodDescribe("getRStatHarmonicIconVoltage");
List<RIconVO> rStatHarmonicIcon = rStatHarmonicMService.getRStatHarmonicIconVoltage(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatHarmonicIcon, methodDescribe);
}
/**
* 电铁-频率偏差-电压统计图
*/
@GetMapping("/getRStatHarmonicIconDate")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("稳态电铁-频率偏差-越线日期统计图")
public HttpResult<List<RHarmonicPolylineVO>> getRStatHarmonicIconDate(RStatHarmonicMParam param) {
String methodDescribe = getMethodDescribe("getRStatHarmonicIconDate");
List<RHarmonicPolylineVO> rStatHarmonicIcon = rStatHarmonicMService.getRStatHarmonicIconDate(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatHarmonicIcon, methodDescribe);
}
}

View File

@@ -0,0 +1,106 @@
package com.njcn.harmonic.controller.majornetwork;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.harmonic.pojo.param.RStatHarmonicMParam;
import com.njcn.harmonic.pojo.vo.RArrayVO;
import com.njcn.harmonic.pojo.vo.RIconVO;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicOrgMService;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicOrgQService;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicOrgYService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* <p>
* 前端控制器
* </p>
*
* @author rui.wu
* @since 2022-10-14
*/
@RestController
@RequiredArgsConstructor
@Api(tags = "主网指标分类概览-各单位分类总览")
@RequestMapping("/harmonic/rStatHarmonicOrg")
public class RStatHarmonicOrgMController extends BaseController {
private final RStatHarmonicOrgYService rStatHarmonicOrgYService;
private final RStatHarmonicOrgQService rStatHarmonicOrgQService;
private final RStatHarmonicOrgMService rStatHarmonicOrgMService;
/**
* 查询查询监测点稳态指标 日/月点数
*/
@GetMapping("/getAllRStatHarmonicOrg")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("查询稳态累计超标监测点数")
public HttpResult<List<RArrayVO>> getAllRStatHarmonicOrg(StatisticsBizBaseParam param) {
String methodDescribe = getMethodDescribe("getAllRStatHarmonicOrg");
List<RArrayVO> rStatHarmonicOrgMAll = null;
String string = param.getType().toString();
switch (string) {
//查询各单位累计超标监测点数-年数据
case BizParamConstant.STAT_BIZ_YEAR:
rStatHarmonicOrgMAll = rStatHarmonicOrgYService.getRStatHarmonicYAll(param);
break;
//查询各单位累计超标监测点数-季数据
case BizParamConstant.STAT_BIZ_QUARTER:
rStatHarmonicOrgMAll = rStatHarmonicOrgQService.getRStatHarmonicQAll(param);
break;
//查询各单位累计超标监测点数-月数据
case BizParamConstant.STAT_BIZ_MONTH:
rStatHarmonicOrgMAll = rStatHarmonicOrgMService.getRStatHarmonicMAll(param);
break;
default:
break;
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatHarmonicOrgMAll, methodDescribe);
}
/**
* 查询查询监测点稳态指标 日/月点数
*/
@GetMapping("/getAllRStatHarmonicOrgIcon")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("查询稳态各单位超标监测统计图")
public HttpResult<List<RIconVO>> getAllRStatHarmonicOrgIcon(RStatHarmonicMParam param) {
String methodDescribe = getMethodDescribe("getAllRStatHarmonicOrgIcon");
List<RIconVO> getAllRStatHarmonicOrgIcon = null;
String string = param.getType().toString();
switch (string) {
//查询各单位累计超标监测点数统计图-年数据
case BizParamConstant.STAT_BIZ_YEAR:
getAllRStatHarmonicOrgIcon = rStatHarmonicOrgYService.getRStatHarmonicOrgYIcon(param);
break;
//查询各单位累计超标监测点数-季数据
case BizParamConstant.STAT_BIZ_QUARTER:
getAllRStatHarmonicOrgIcon = rStatHarmonicOrgQService.getRStatHarmonicOrgQIcon(param);
break;
//查询各单位累计超标监测点数-月数据
case BizParamConstant.STAT_BIZ_MONTH:
getAllRStatHarmonicOrgIcon = rStatHarmonicOrgMService.getRStatHarmonicOrgMIcon(param);
break;
default:
break;
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, getAllRStatHarmonicOrgIcon, methodDescribe);
}
}

View File

@@ -0,0 +1,195 @@
package com.njcn.harmonic.controller.majornetwork;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.harmonic.pojo.param.RStatOrgParam;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.vo.*;
import com.njcn.harmonic.service.majornetwork.*;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* <p>
* 区域分类统计月表 前端控制器
* </p>
*
* @author rui.wu
* @since 2022-10-17
*/
@RestController
@RequiredArgsConstructor
@Api(tags = "主网指标-稳态指标")
@RequestMapping("/harmonic/rStatOrg")
public class RStatOrgController extends BaseController {
private final RStatOrgYService rStatOrgYService;
private final RStatOrgQService rStatOrgQService;
private final RStatOrgMService rStatOrgMService;
private final RStatOrgBusbarVoltageService rStatOrgBusbarVoltageService;
private final RStatLoadTypeService rStatLoadTypeService;
private final RMpPartHarmonicDetailMService rMpPartHarmonicDetailMService;
private final RMpPartHarmonicDetailDService rMpPartHarmonicDetailDService;
private final RMpPassRateService rMpPassRateService;
/**
* 查询区域超标统计
*/
@GetMapping("/getAllRStatHarmonicOrg")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("区域超标统计")
public HttpResult<List<RStatOrgVO>> getAllRStatHarmonicOrg(StatisticsBizBaseParam param) {
String methodDescribe = getMethodDescribe("getAllRStatHarmonicOrg");
List<RStatOrgVO> rStatHarmonicOrgMAll = null;
String string = param.getType().toString();
switch (string) {
//查询区域超标统计-年数据
case BizParamConstant.STAT_BIZ_YEAR:
rStatHarmonicOrgMAll = rStatOrgYService.getRStatHarmonicYAll(param);
break;
//查询区域超标统计-季数据
case BizParamConstant.STAT_BIZ_QUARTER:
rStatHarmonicOrgMAll = rStatOrgQService.getRStatHarmonicQAll(param);
break;
//查询各区域超标统计-月数据
case BizParamConstant.STAT_BIZ_MONTH:
rStatHarmonicOrgMAll = rStatOrgMService.getRStatHarmonicMAll(param);
break;
default:
break;
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatHarmonicOrgMAll, methodDescribe);
}
/**
* 区域稳态指标超标分类统计表
*/
@GetMapping("/getRStatSubstation")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("区域稳态指标超标分类统计表")
public HttpResult<List<RStatSubstationOrg2VO>> getRStatSubstation(StatisticsBizBaseParam param) {
String methodDescribe = getMethodDescribe("getRStatSubstation");
List<RStatSubstationOrg2VO> statSubstationIcon = rStatOrgYService.getRStatSubstationOrg(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, statSubstationIcon, methodDescribe);
}
/**
* 区域稳态指标超标分类统计表
*/
@PostMapping("/getRStatOrgBusbarVoltage")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("区域电站母线电压类指标超标计")
public HttpResult<List<RStatOrgBusbarVoltageVO>> getRStatOrgBusbarVoltage(@RequestBody StatSubstationBizBaseParam param) {
String methodDescribe = getMethodDescribe("getRStatOrgBusbarVoltage");
List<RStatOrgBusbarVoltageVO> statSubstationIcon = rStatOrgBusbarVoltageService.getRStatOrgBusbarVoltage(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, statSubstationIcon, methodDescribe);
}
/**
* 区域干扰源电流类指标超标统计
*
* @param param
* @return
*/
@GetMapping("/getRStatLoadType")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("区域干扰源电流类指标超标统计")
public HttpResult<List<RArrayVO>> getRStatLoadType(StatisticsBizBaseParam param) {
String methodDescribe = getMethodDescribe("getRStatLoadType");
List<RArrayVO> rStatLoadType = rStatLoadTypeService.getRStatLoadType(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatLoadType, methodDescribe);
}
/**
* 变电站(换流站)稳态指标超标分类统计表
*
* @param param
* @return
*/
@PostMapping("/getRStatSubstationOrg")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("变电站(换流站)稳态指标超标分类统计表")
public HttpResult<List<RSubstationIcon2VO.RSubstationInfoVO>> getRStatSubstationOrg(@RequestBody StatSubstationBizBaseParam param
) {
String methodDescribe = getMethodDescribe("getRStatSubstationOrg");
List<RSubstationIcon2VO.RSubstationInfoVO> rStatOrg = rStatOrgYService.getRStatSubstation(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatOrg, methodDescribe);
}
/**
* 稳态指标超标明细表
*
* @param param
* @return
*/
@PostMapping("/getRMpPartHarmonicDetail")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("稳态指标超标明细表")
public HttpResult<List<RMpPartHarmonicDetailVO>> getRMpPartHarmonicDetail(@RequestBody RStatOrgParam param) {
String methodDescribe = getMethodDescribe("getRMpPartHarmonicDetail");
List<RMpPartHarmonicDetailVO> rMpPartHarmonicDetail = rMpPartHarmonicDetailMService.getRMpPartHarmonicDetail(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rMpPartHarmonicDetail, methodDescribe);
}
/**
* 稳态指标超标明细表-指标趋势图
*
* @param param
* @return
*/
@GetMapping("/getRMpPartHarmonicDetailIcon")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("稳态指标超标明细表-指标趋势图")
public HttpResult<List<RMpPartHarmonicDetailIconVO>> getRMpPartHarmonicDetailIcon(StatisticsBizBaseParam param) {
String methodDescribe = getMethodDescribe("getRMpPartHarmonicDetailIcon");
List<RMpPartHarmonicDetailIconVO> rMpPartHarmonicDetail = rMpPartHarmonicDetailDService.getRMpPartHarmonicDetailIcon(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rMpPartHarmonicDetail, methodDescribe);
}
/**
* 区域稳态指标合格率统计表-主网(稳态指标合格率统计)
*
* @param param
* @return
*/
@GetMapping("/getRStatOrgIndex")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("区域稳态指标合格率统计表")
public HttpResult<List<RStatOrgIndexVO.RStatOrgIndexInfoVO>> getRStatOrgIndex(StatisticsBizBaseParam param) {
String methodDescribe = getMethodDescribe("getRStatOrgIndex");
List<RStatOrgIndexVO.RStatOrgIndexInfoVO> rStatOrg = rStatOrgYService.getRStatOrgIndex(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatOrg, methodDescribe);
}
/**
* 区域稳态指标合格率统计表-主网(稳态指标合格率统计)
*
* @param param
* @return
*/
@PostMapping("/getRMpPassRateInfo")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("稳态指标合格率明细表")
public HttpResult<List<RStatOrgIndexVO>> getRMpPassRateInfo(@RequestBody RStatOrgParam param) {
String methodDescribe = getMethodDescribe("getRMpPassRateInfo");
List<RStatOrgIndexVO> rStatOrg = rMpPassRateService.getRMpPassRateInfo(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, rStatOrg, methodDescribe);
}
}

View File

@@ -0,0 +1,81 @@
package com.njcn.harmonic.controller.majornetwork;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.harmonic.pojo.vo.RSubstationIcon2VO;
import com.njcn.harmonic.pojo.vo.RSubstationIconVO;
import com.njcn.harmonic.pojo.vo.RVoltageIconVO;
import com.njcn.harmonic.service.majornetwork.RStatSubstationMService;
import com.njcn.harmonic.service.majornetwork.RStatSubstationVoltageMService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* <p>
* 前端控制器
* </p>
*
* @author rui.wu
* @since 2022-10-18
*/
@RestController
@RequiredArgsConstructor
@Api(tags = "主网指标分类概览-变电站分类总览")
@RequestMapping("/harmonic/rStatSubstation")
public class RStatSubstationMController extends BaseController {
private final RStatSubstationMService rStatSubstationMService;
private final RStatSubstationVoltageMService rStatSubstationVoltageMService;
/**
* 变电站稳态指标超标分布(按超标天数)
*/
@GetMapping("/getAllRStatSubstationIconDays")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("变电站稳态指标超标分布(按超标天数)")
public HttpResult<RSubstationIconVO> getAllRStatSubstationIconDays(StatisticsBizBaseParam param) {
String methodDescribe = getMethodDescribe("getAllRStatSubstationIconDays");
RSubstationIconVO statSubstationIcon = rStatSubstationMService.getStatSubstationIcon(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, statSubstationIcon, methodDescribe);
}
/**
* 变电站稳态指标超标分布(按电压等级)
*/
@GetMapping("/getAllRStatSubstationIconVoltage")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("变电站稳态指标超标分布(按电压等级)")
public HttpResult<List<RVoltageIconVO>> getAllRStatSubstationIconVoltage(StatisticsBizBaseParam param) {
String methodDescribe = getMethodDescribe("getAllRStatSubstationIconVoltage");
List<RVoltageIconVO> statSubstationIcon = rStatSubstationVoltageMService.getStatSubstationIcon(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, statSubstationIcon, methodDescribe);
}
/**
* 变电站稳态指标平均超标天数
*/
@GetMapping("/getAllRStatSubstationIconAvgDays")
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@ApiOperation("变电站稳态指标平均超标天数")
public HttpResult<List<RSubstationIcon2VO>> getAllRStatSubstationIconAvgDays(StatisticsBizBaseParam param) {
String methodDescribe = getMethodDescribe("getAllRStatSubstationIconAvgDays");
List<RSubstationIcon2VO> statSubstationIcon = rStatSubstationMService.getStatSubstationIcon2(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, statSubstationIcon, methodDescribe);
}
}

View File

@@ -0,0 +1,25 @@
package com.njcn.harmonic.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.RStatPollutionOrgDPO;
import java.util.List;
import org.apache.ibatis.annotations.Param;
/**
*
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/11/8 13:27【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface RStatPollutionOrgDPOMapper extends BaseMapper<RStatPollutionOrgDPO> {
int updateBatch(List<RStatPollutionOrgDPO> list);
int batchInsert(@Param("list") List<RStatPollutionOrgDPO> list);
int insertOrUpdate(RStatPollutionOrgDPO record);
int insertOrUpdateSelective(RStatPollutionOrgDPO record);
}

View File

@@ -0,0 +1,25 @@
package com.njcn.harmonic.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.RStatPollutionOrgQPO;
import java.util.List;
import org.apache.ibatis.annotations.Param;
/**
*
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/11/8 13:27【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface RStatPollutionOrgQPOMapper extends BaseMapper<RStatPollutionOrgQPO> {
int updateBatch(List<RStatPollutionOrgQPO> list);
int batchInsert(@Param("list") List<RStatPollutionOrgQPO> list);
int insertOrUpdate(RStatPollutionOrgQPO record);
int insertOrUpdateSelective(RStatPollutionOrgQPO record);
}

View File

@@ -0,0 +1,25 @@
package com.njcn.harmonic.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.RStatPollutionOrgYPO;
import java.util.List;
import org.apache.ibatis.annotations.Param;
/**
*
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/11/8 13:28【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface RStatPollutionOrgYPOMapper extends BaseMapper<RStatPollutionOrgYPO> {
int updateBatch(List<RStatPollutionOrgYPO> list);
int batchInsert(@Param("list") List<RStatPollutionOrgYPO> list);
int insertOrUpdate(RStatPollutionOrgYPO record);
int insertOrUpdateSelective(RStatPollutionOrgYPO record);
}

View File

@@ -0,0 +1,25 @@
package com.njcn.harmonic.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.RStatPollutionSubstationDPO;
import java.util.List;
import org.apache.ibatis.annotations.Param;
/**
*
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/11/8 13:28【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface RStatPollutionSubstationDPOMapper extends BaseMapper<RStatPollutionSubstationDPO> {
int updateBatch(List<RStatPollutionSubstationDPO> list);
int batchInsert(@Param("list") List<RStatPollutionSubstationDPO> list);
int insertOrUpdate(RStatPollutionSubstationDPO record);
int insertOrUpdateSelective(RStatPollutionSubstationDPO record);
}

View File

@@ -0,0 +1,25 @@
package com.njcn.harmonic.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.RStatPollutionSubstationQPO;
import java.util.List;
import org.apache.ibatis.annotations.Param;
/**
*
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/11/8 13:28【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface RStatPollutionSubstationQPOMapper extends BaseMapper<RStatPollutionSubstationQPO> {
int updateBatch(List<RStatPollutionSubstationQPO> list);
int batchInsert(@Param("list") List<RStatPollutionSubstationQPO> list);
int insertOrUpdate(RStatPollutionSubstationQPO record);
int insertOrUpdateSelective(RStatPollutionSubstationQPO record);
}

View File

@@ -0,0 +1,25 @@
package com.njcn.harmonic.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.RStatPollutionSubstationYPO;
import java.util.List;
import org.apache.ibatis.annotations.Param;
/**
*
* Description:
* 接口文档访问地址http://serverIP:port/swagger-ui.html
* Date: 2022/11/8 13:28【需求编号】
*
* @author clam
* @version V1.0.0
*/
public interface RStatPollutionSubstationYPOMapper extends BaseMapper<RStatPollutionSubstationYPO> {
int updateBatch(List<RStatPollutionSubstationYPO> list);
int batchInsert(@Param("list") List<RStatPollutionSubstationYPO> list);
int insertOrUpdate(RStatPollutionSubstationYPO record);
int insertOrUpdateSelective(RStatPollutionSubstationYPO record);
}

View File

@@ -0,0 +1,24 @@
package com.njcn.harmonic.mapper;
import com.njcn.harmonic.pojo.param.RStatPwPermeabilityMParam;
import com.njcn.harmonic.pojo.po.RStatPwPermeabilityM;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RStatPwPermeabilityMVO;
import java.util.List;
import java.util.Map;
/**
* @author jianghf
* @description 针对表【r_stat_pw_permeability_m】的数据库操作Mapper
* @createDate 2022-11-07 10:35:21
* @Entity com.njcn.harmonic.pojo.po.RStatPwPermeabilityM
*/
public interface RStatPwPermeabilityMMapper extends BaseMapper<RStatPwPermeabilityM> {
List<RStatPwPermeabilityMVO> getPwPermeabilityList(Map<String, Object> map);
}

View File

@@ -0,0 +1,55 @@
package com.njcn.harmonic.mapper.distribution;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatOrgQ;
import com.njcn.harmonic.pojo.vo.RStatOrgIndexVO;
import com.njcn.harmonic.pojo.vo.RStatOrgVO;
import com.njcn.harmonic.pojo.vo.RStatSubstationOrgVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* 区域分类统计季表 Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-17
*/
public interface PwRStatOrgMapper extends BaseMapper<RStatOrgQ> {
/**
* 配网查询区域超标统计-年数据
* @param param
* @param deptIds
* @param dataType
* @return
*/
List<RStatOrgVO.PwRStatOrgVO> selectListY(@Param("param") StatSubstationBizBaseParam param,
@Param("deptIds")List<String> deptIds,
@Param("dataType")String dataType);
/**
* 配网查询区域超标统计-季数据
* @param param
* @param deptIds
* @param dataType
* @return
*/
List<RStatOrgVO.PwRStatOrgVO> selectListQ(@Param("param") StatSubstationBizBaseParam param,
@Param("deptIds")List<String> deptIds,
@Param("dataType")String dataType);
/**
* 配网查询区域超标统计-月数据
* @param param
* @param deptIds
* @param dataType
* @return
*/
List<RStatOrgVO.PwRStatOrgVO> selectListM(@Param("param") StatSubstationBizBaseParam param,
@Param("deptIds")List<String> deptIds,
@Param("dataType")String dataType);
}

View File

@@ -0,0 +1,114 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.PwRStatOrgMapper">
<select id="selectListY" resultType="com.njcn.harmonic.pojo.vo.RStatOrgVO$PwRStatOrgVO">
select
org_no,
data_date,
measurement_type_class,
all_count,
effective_measurement_average,
effective_measurement_accrued,
over_limit_measurement_average,
over_limit_measurement_accrued,
harmonic_measurement_ratio_average,
TRUNCATE(over_limit_measurement_accrued / effective_measurement_accrued ,2) as harmonicMeasurementRatioAccrued,
average_over_day
from r_stat_org_y
<where>
data_type = #{dataType}
<if test="param != null and param.ids != null and param.ids.size > 0">
AND measurement_type_class IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="deptIds != null and deptIds.size > 0">
AND org_no IN
<foreach collection='deptIds' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND data_date &lt;= #{param.endTime}
</if>
</where>
</select>
<select id="selectListQ" resultType="com.njcn.harmonic.pojo.vo.RStatOrgVO$PwRStatOrgVO">
select
org_no,
data_date,
measurement_type_class,
all_count,
effective_measurement_average,
effective_measurement_accrued,
harmonic_measurement_average as overLimitMeasurementAverage,
harmonic_measurement_accrued as overLimitMeasurementAccrued,
harmonic_measurement_ratio_average,
TRUNCATE(harmonic_measurement_accrued / effective_measurement_accrued ,2) as harmonicMeasurementRatioAccrued,
average_over_day
from r_stat_org_q
<where>
data_type = #{dataType}
<if test="param != null and param.ids != null and param.ids.size > 0">
AND measurement_type_class IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="deptIds != null and deptIds.size > 0">
AND org_no IN
<foreach collection='deptIds' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND data_date &lt;= #{param.endTime}
</if>
</where>
</select>
<select id="selectListM" resultType="com.njcn.harmonic.pojo.vo.RStatOrgVO$PwRStatOrgVO">
select
org_no,
data_date,
measurement_type_class,
all_count,
effective_measurement_average,
effective_measurement_accrued,
harmonic_measurement_average,
harmonic_measurement_accrued,
harmonic_measurement_ratio_average,
TRUNCATE(harmonic_measurement_accrued / effective_measurement_accrued ,2) as harmonicMeasurementRatioAccrued,
TRUNCATE(over_day_accrued / effective_measurement_accrued ,2) as averageOverDay
from r_stat_org_m
<where>
data_type = #{dataType}
<if test="param != null and param.ids != null and param.ids.size > 0">
AND measurement_type_class IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="deptIds != null and deptIds.size > 0">
AND org_no IN
<foreach collection='deptIds' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,27 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailD;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RMpPartHarmonicDetailIconVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-24
*/
public interface RMpPartHarmonicDetailDMapper extends BaseMapper<RMpPartHarmonicDetailD> {
/**
* 稳态指标超标明细表-指标趋势图
* @param param
* @return
*/
List<RMpPartHarmonicDetailIconVO> getRMpPartHarmonicDetailIcon(@Param("param") StatisticsBizBaseParam param);
}

View File

@@ -0,0 +1,16 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailM;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-24
*/
public interface RMpPartHarmonicDetailMMapper extends BaseMapper<RMpPartHarmonicDetailM> {
}

View File

@@ -0,0 +1,27 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RMpPassRateM;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RStatOrgIndexVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-24
*/
public interface RMpPassRateMMapper extends BaseMapper<RMpPassRateM> {
/**
* 获取月稳态指标合格率明细表
* @param baseParam
* @return
*/
List<RStatOrgIndexVO> getMonthPassRate(@Param("param") StatSubstationBizBaseParam baseParam);
}

View File

@@ -0,0 +1,27 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RMpPassRateQ;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RStatOrgIndexVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-24
*/
public interface RMpPassRateQMapper extends BaseMapper<RMpPassRateQ> {
/**
* 获取季稳态指标合格率明细表
* @param baseParam
* @return
*/
List<RStatOrgIndexVO> getQuarterPassRate(@Param("param") StatSubstationBizBaseParam baseParam);
}

View File

@@ -0,0 +1,27 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RMpPassRateY;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RStatOrgIndexVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-24
*/
public interface RMpPassRateYMapper extends BaseMapper<RMpPassRateY> {
/**
* 获取年稳态指标合格率明细表
* @param baseParam
* @return
*/
List<RStatOrgIndexVO> getYearPassRate(@Param("param") StatSubstationBizBaseParam baseParam);
}

View File

@@ -0,0 +1,16 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.po.RMpSurplusHarmonicDetailD;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-24
*/
public interface RMpSurplusHarmonicDetailDMapper extends BaseMapper<RMpSurplusHarmonicDetailD> {
}

View File

@@ -0,0 +1,27 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RMpSurplusHarmonicDetailM;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RMpPartHarmonicDetailVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-24
*/
public interface RMpSurplusHarmonicDetailMMapper extends BaseMapper<RMpSurplusHarmonicDetailM> {
/**
* 稳态指标超标明细表
* @param param
* @return
*/
List<RMpPartHarmonicDetailVO> getRMpPartHarmonicDetail(@Param("param") StatSubstationBizBaseParam param);
}

View File

@@ -0,0 +1,16 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.RStatHarmonicD;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-12
*/
public interface RStatHarmonicDMapper extends BaseMapper<RStatHarmonicD> {
}

View File

@@ -0,0 +1,17 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.RStatHarmonicM;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-09
*/
public interface RStatHarmonicMMapper extends BaseMapper<RStatHarmonicM> {
}

View File

@@ -0,0 +1,16 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.RStatHarmonicQ;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-12
*/
public interface RStatHarmonicQMapper extends BaseMapper<RStatHarmonicQ> {
}

View File

@@ -0,0 +1,16 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.RStatHarmonicVoltageD;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-10
*/
public interface RStatHarmonicVoltageDMapper extends BaseMapper<RStatHarmonicVoltageD> {
}

View File

@@ -0,0 +1,16 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.RStatHarmonicVoltageM;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-10
*/
public interface RStatHarmonicVoltageMMapper extends BaseMapper<RStatHarmonicVoltageM> {
}

View File

@@ -0,0 +1,16 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.po.RStatHarmonicY;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-12
*/
public interface RStatHarmonicYMapper extends BaseMapper<RStatHarmonicY> {
}

View File

@@ -0,0 +1,27 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatLoadTypeM;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RStatLoadTypeVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-19
*/
public interface RStatLoadTypeMMapper extends BaseMapper<RStatLoadTypeM> {
/**
* 获取月区域暂态指标分类统计表
* @param param
* @return
*/
List<RStatLoadTypeVO> getMonthStatLoadType(@Param("param") StatSubstationBizBaseParam param);
}

View File

@@ -0,0 +1,27 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatLoadTypeQ;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RStatLoadTypeVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-19
*/
public interface RStatLoadTypeQMapper extends BaseMapper<RStatLoadTypeQ> {
/**
* 获取季区域暂态指标分类统计表
* @param param
* @return
*/
List<RStatLoadTypeVO> getQuarterStatLoadType(@Param("param") StatSubstationBizBaseParam param);
}

View File

@@ -0,0 +1,26 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatLoadTypeY;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RStatLoadTypeVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-19
*/
public interface RStatLoadTypeYMapper extends BaseMapper<RStatLoadTypeY> {
/**
* 获取年区域暂态指标分类统计表
* @return
*/
List<RStatLoadTypeVO> getYearStatLoadType(@Param("param") StatSubstationBizBaseParam param);
}

View File

@@ -0,0 +1,27 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatOrgBusbarVoltageM;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RStatOrgBusbarVoltageVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-19
*/
public interface RStatOrgBusbarVoltageMMapper extends BaseMapper<RStatOrgBusbarVoltageM> {
/**
* 获取月区域电站母线电压类指标超标计
* @param param
* @return
*/
List<RStatOrgBusbarVoltageVO> getMstatOrgBusbarVoltageVO(@Param("param") StatSubstationBizBaseParam param);
}

View File

@@ -0,0 +1,27 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatOrgBusbarVoltageQ;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RStatOrgBusbarVoltageVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-19
*/
public interface RStatOrgBusbarVoltageQMapper extends BaseMapper<RStatOrgBusbarVoltageQ> {
/**
* 获取季区域电站母线电压类指标超标计
* @param param
* @return
*/
List<RStatOrgBusbarVoltageVO> getQstatOrgBusbarVoltageVO(@Param("param") StatSubstationBizBaseParam param);
}

View File

@@ -0,0 +1,28 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatOrgBusbarVoltageY;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RStatOrgBusbarVoltageVO;
import com.njcn.harmonic.pojo.vo.RStatOrgIndexVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-19
*/
public interface RStatOrgBusbarVoltageYMapper extends BaseMapper<RStatOrgBusbarVoltageY> {
/**
* 获取年区域电站母线电压类指标超标计
* @param param
* @return
*/
List<RStatOrgBusbarVoltageVO> getYstatOrgBusbarVoltageVO(@Param("param") StatSubstationBizBaseParam param);
}

View File

@@ -0,0 +1,49 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatOrgM;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.PwRStatOrgVO;
import com.njcn.harmonic.pojo.vo.RStatOrgIndexVO;
import com.njcn.harmonic.pojo.vo.RStatSubstationOrgVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* 区域分类统计月表 Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-17
*/
public interface RStatOrgMMapper extends BaseMapper<RStatOrgM> {
/**
* 区域稳态指标超标分类统计表--月表数据
* @param param
* @param dataType
* @return
*/
List<RStatSubstationOrgVO> getMonthRStatHarmonicOrgInfo(@Param("param") StatSubstationBizBaseParam param
,@Param("dataType") String dataType);
/**
* 获取月区域稳态指标合格率统计表
* @param param
* @param dataType
* @return
*/
List<RStatOrgIndexVO.RStatOrgIndexInfoVO> getMonthRStatOrgIndex(@Param("param") StatSubstationBizBaseParam param
,@Param("dataType") String dataType);
/**
* 配网获取月区域稳态指标合格率统计表
* @param param
* @param dataType
* @return
*/
List<PwRStatOrgVO> getPwMonthRStatOrgIndex(@Param("param") StatSubstationBizBaseParam param
,@Param("dataType") String dataType);
}

View File

@@ -0,0 +1,49 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatOrgQ;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.PwRStatOrgVO;
import com.njcn.harmonic.pojo.vo.RStatOrgIndexVO;
import com.njcn.harmonic.pojo.vo.RStatSubstationOrgVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* 区域分类统计季表 Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-17
*/
public interface RStatOrgQMapper extends BaseMapper<RStatOrgQ> {
/**
* 区域稳态指标超标分类统计表--年表数据
* @param param
* @param dataType
* @return
*/
List<RStatSubstationOrgVO> getQuarterRStatHarmonicOrgInfo(@Param("param") StatSubstationBizBaseParam param
,@Param("dataType") String dataType);
/**
* 主网获取季区域稳态指标合格率统计表
* @param param
* @param dataType
* @return
*/
List<RStatOrgIndexVO.RStatOrgIndexInfoVO> getQuarterRStatOrgIndex(@Param("param") StatSubstationBizBaseParam param
,@Param("dataType") String dataType);
/**
* 配网获取季区域稳态指标合格率统计表
* @param param
* @param dataType
* @return
*/
List<PwRStatOrgVO> getPwQuarterRStatOrgIndex(@Param("param") StatSubstationBizBaseParam param
,@Param("dataType") String dataType);
}

View File

@@ -0,0 +1,49 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatOrgY;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.PwRStatOrgVO;
import com.njcn.harmonic.pojo.vo.RStatOrgIndexVO;
import com.njcn.harmonic.pojo.vo.RStatSubstationOrgVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* 区域分类统计年表 Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-17
*/
public interface RStatOrgYMapper extends BaseMapper<RStatOrgY> {
/**
* 区域稳态指标超标分类统计表--年表数据
* @param param
* @param dataType
* @return
*/
List<RStatSubstationOrgVO> getYearRStatHarmonicOrgInfo(@Param("param") StatSubstationBizBaseParam param
,@Param("dataType") String dataType);
/**
* 主网获取年区域稳态指标合格率统计表
* @param param
* @param dataType
* @return
*/
List<RStatOrgIndexVO.RStatOrgIndexInfoVO> getYearRStatOrgIndex(@Param("param") StatSubstationBizBaseParam param
,@Param("dataType") String dataType);
/**
* 配网获取年区域稳态指标合格率统计表
* @param param
* @param dataType
* @return
*/
List<PwRStatOrgVO> getPwYearRStatOrgIndex(@Param("param") StatSubstationBizBaseParam param
, @Param("dataType") String dataType);
}

View File

@@ -0,0 +1,35 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatSubstationM;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RSubstationIcon2VO;
import com.njcn.harmonic.pojo.vo.RSubstationIconVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-18
*/
public interface RStatSubstationMMapper extends BaseMapper<RStatSubstationM> {
/**
* 变电站稳态指标超标分布(按超标天数)
* @param param
* @return
*/
RSubstationIconVO getStatSubstationIconM(@Param("param") StatSubstationBizBaseParam param);
/**
* 变电站稳态指标平均超标天数
* @param param
* @return
*/
List<RSubstationIcon2VO> getStatSubstationIcon2M(@Param("param") StatSubstationBizBaseParam param);
}

View File

@@ -0,0 +1,35 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatSubstationQ;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RSubstationIcon2VO;
import com.njcn.harmonic.pojo.vo.RSubstationIconVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-18
*/
public interface RStatSubstationQMapper extends BaseMapper<RStatSubstationQ> {
/**
* 变电站稳态指标超标分布(按超标天数)
* @param param
* @return
*/
RSubstationIconVO getStatSubstationIconQ(@Param("param") StatSubstationBizBaseParam param);
/**
* 变电站稳态指标平均超标天数
* @param param
* @return
*/
List<RSubstationIcon2VO> getStatSubstationIcon2Q(@Param("param") StatSubstationBizBaseParam param);
}

View File

@@ -0,0 +1,30 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatSubstationVoltageM;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RSubstationIconVO;
import com.njcn.harmonic.pojo.vo.RVoltageIconVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-18
*/
public interface RStatSubstationVoltageMMapper extends BaseMapper<RStatSubstationVoltageM> {
/**
* 变电站稳态指标超标分布(按电压等级)
* @param param
* @return
*/
List<RVoltageIconVO> getStatSubstationIcon(@Param("param") StatSubstationBizBaseParam param);
}

View File

@@ -0,0 +1,36 @@
package com.njcn.harmonic.mapper.majornetwork;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatSubstationY;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.harmonic.pojo.vo.RSubstationIcon2VO;
import com.njcn.harmonic.pojo.vo.RSubstationIconVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author rui.wu
* @since 2022-10-18
*/
public interface RStatSubstationYMapper extends BaseMapper<RStatSubstationY> {
/**
* 变电站稳态指标超标分布(按超标天数)
* @param param
* @return
*/
RSubstationIconVO getStatSubstationIconY(@Param("param") StatSubstationBizBaseParam param);
/**
* 变电站稳态指标平均超标天数
* @param param
* @return
*/
List<RSubstationIcon2VO> getStatSubstationIcon2Y(@Param("param") StatSubstationBizBaseParam param);
}

View File

@@ -0,0 +1,154 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RMpPartHarmonicDetailDMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailD">
<id column="measurement_point_id" property="measurementPointId" />
<result column="data_date" property="dataDate" />
<result column="is_harmonic" property="isHarmonic" />
<result column="is_freq" property="isFreq" />
<result column="freq_times" property="freqTimes" />
<result column="is_v_dev_up" property="isVDevUp" />
<result column="is_v_dev_low" property="isVDevLow" />
<result column="is_v_dev" property="isVDev" />
<result column="is_v_thd" property="isVThd" />
<result column="v_dev_times" property="vDevTimes" />
<result column="is_v" property="isV" />
<result column="v_times" property="vTimes" />
<result column="is_i" property="isI" />
<result column="i_times" property="iTimes" />
<result column="is_v_2" property="isV2" />
<result column="is_v_3" property="isV3" />
<result column="is_v_4" property="isV4" />
<result column="is_v_5" property="isV5" />
<result column="is_v_6" property="isV6" />
<result column="is_v_7" property="isV7" />
<result column="is_v_8" property="isV8" />
<result column="is_v_9" property="isV9" />
<result column="is_v_10" property="isV10" />
<result column="is_v_11" property="isV11" />
<result column="is_v_12" property="isV12" />
<result column="is_v_13" property="isV13" />
<result column="is_v_14" property="isV14" />
<result column="is_v_15" property="isV15" />
<result column="is_v_16" property="isV16" />
<result column="is_v_17" property="isV17" />
<result column="is_v_18" property="isV18" />
<result column="is_v_19" property="isV19" />
<result column="is_v_20" property="isV20" />
<result column="is_v_21" property="isV21" />
<result column="is_v_22" property="isV22" />
<result column="is_v_23" property="isV23" />
<result column="is_v_24" property="isV24" />
<result column="is_v_25" property="isV25" />
<result column="is_v_26" property="isV26" />
<result column="is_v_27" property="isV27" />
<result column="is_v_28" property="isV28" />
<result column="is_v_29" property="isV29" />
<result column="is_v_30" property="isV30" />
<result column="is_v_31" property="isV31" />
<result column="is_v_32" property="isV32" />
<result column="is_v_33" property="isV33" />
<result column="is_v_34" property="isV34" />
<result column="is_v_35" property="isV35" />
<result column="is_v_36" property="isV36" />
<result column="is_v_37" property="isV37" />
<result column="is_v_38" property="isV38" />
<result column="is_v_39" property="isV39" />
<result column="is_v_40" property="isV40" />
<result column="is_v_41" property="isV41" />
<result column="is_v_42" property="isV42" />
<result column="is_v_43" property="isV43" />
<result column="is_v_44" property="isV44" />
<result column="is_v_45" property="isV45" />
<result column="is_v_46" property="isV46" />
<result column="is_v_47" property="isV47" />
<result column="is_v_48" property="isV48" />
<result column="is_v_49" property="isV49" />
<result column="is_v_50" property="isV50" />
<result column="is_i_2" property="isI2" />
<result column="is_i_3" property="isI3" />
<result column="is_i_4" property="isI4" />
<result column="is_i_5" property="isI5" />
<result column="is_i_6" property="isI6" />
<result column="is_i_7" property="isI7" />
<result column="is_i_8" property="isI8" />
<result column="is_i_9" property="isI9" />
<result column="is_i_10" property="isI10" />
<result column="is_i_11" property="isI11" />
<result column="is_i_12" property="isI12" />
<result column="is_i_13" property="isI13" />
<result column="is_i_14" property="isI14" />
<result column="is_i_15" property="isI15" />
<result column="is_i_16" property="isI16" />
<result column="is_i_17" property="isI17" />
<result column="is_i_18" property="isI18" />
<result column="is_i_19" property="isI19" />
<result column="is_i_20" property="isI20" />
<result column="is_i_21" property="isI21" />
<result column="is_i_22" property="isI22" />
<result column="is_i_23" property="isI23" />
<result column="is_i_24" property="isI24" />
<result column="is_i_25" property="isI25" />
<result column="is_i_26" property="isI26" />
<result column="is_i_27" property="isI27" />
<result column="is_i_28" property="isI28" />
<result column="is_i_29" property="isI29" />
<result column="is_i_30" property="isI30" />
<result column="is_i_31" property="isI31" />
<result column="is_i_32" property="isI32" />
<result column="is_i_33" property="isI33" />
<result column="is_i_34" property="isI34" />
<result column="is_i_35" property="isI35" />
<result column="is_i_36" property="isI36" />
<result column="is_i_37" property="isI37" />
<result column="is_i_38" property="isI38" />
<result column="is_i_39" property="isI39" />
<result column="is_i_40" property="isI40" />
<result column="is_i_41" property="isI41" />
<result column="is_i_42" property="isI42" />
<result column="is_i_43" property="isI43" />
<result column="is_i_44" property="isI44" />
<result column="is_i_45" property="isI45" />
<result column="is_i_46" property="isI46" />
<result column="is_i_47" property="isI47" />
<result column="is_i_48" property="isI48" />
<result column="is_i_49" property="isI49" />
<result column="is_i_50" property="isI50" />
<result column="is_unbalance" property="isUnbalance" />
<result column="is_i_neg" property="isINeg" />
<result column="unbalance_times" property="unbalanceTimes" />
<result column="i_neg_times" property="iNegTimes" />
</resultMap>
<select id="getRMpPartHarmonicDetailIcon"
resultType="com.njcn.harmonic.pojo.vo.RMpPartHarmonicDetailIconVO">
SELECT
rmphd.data_date,
rmphd.freq_times,
rmphd.v_dev_times,
rmphd.v_times,
rmphd.i_times,
rmphd.unbalance_times,
rmphd.i_neg_times,
rmshd.flicker_times,
rmshd.inuharm_times
FROM
r_mp_part_harmonic_detail_d rmphd
LEFT JOIN r_mp_surplus_harmonic_detail_d rmshd ON rmshd.measurement_point_id = rmphd.measurement_point_id
AND rmshd.data_date = rmphd.data_date
<where>
<if test="param != null and param.id">
AND rmphd.measurement_point_id = #{param.id}
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND rmphd.data_date >= #{param.startTime} AND rmshd.data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND rmphd.data_date &lt;= #{param.endTime} AND rmshd.data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,122 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RMpPartHarmonicDetailMMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailM">
<id column="measurement_point_id" property="measurementPointId" />
<result column="data_date" property="dataDate" />
<result column="measurement_over_day" property="measurementOverDay" />
<result column="freq_over_day" property="freqOverDay" />
<result column="v_dev_up_over_day" property="vDevUpOverDay" />
<result column="v_dev_low_over_day" property="vDevLowOverDay" />
<result column="v_dev_over_day" property="vDevOverDay" />
<result column="v_thd_over_day" property="vThdOverDay" />
<result column="v_over_day" property="vOverDay" />
<result column="i_over_day" property="iOverDay" />
<result column="v_2_over_day" property="v2OverDay" />
<result column="v_3_over_day" property="v3OverDay" />
<result column="v_4_over_day" property="v4OverDay" />
<result column="v_5_over_day" property="v5OverDay" />
<result column="v_6_over_day" property="v6OverDay" />
<result column="v_7_over_day" property="v7OverDay" />
<result column="v_8_over_day" property="v8OverDay" />
<result column="v_9_over_day" property="v9OverDay" />
<result column="v_10_over_day" property="v10OverDay" />
<result column="v_11_over_day" property="v11OverDay" />
<result column="v_12_over_day" property="v12OverDay" />
<result column="v_13_over_day" property="v13OverDay" />
<result column="v_14_over_day" property="v14OverDay" />
<result column="v_15_over_day" property="v15OverDay" />
<result column="v_16_over_day" property="v16OverDay" />
<result column="v_17_over_day" property="v17OverDay" />
<result column="v_18_over_day" property="v18OverDay" />
<result column="v_19_over_day" property="v19OverDay" />
<result column="v_20_over_day" property="v20OverDay" />
<result column="v_21_over_day" property="v21OverDay" />
<result column="v_22_over_day" property="v22OverDay" />
<result column="v_23_over_day" property="v23OverDay" />
<result column="v_24_over_day" property="v24OverDay" />
<result column="v_25_over_day" property="v25OverDay" />
<result column="v_26_over_day" property="v26OverDay" />
<result column="v_27_over_day" property="v27OverDay" />
<result column="v_28_over_day" property="v28OverDay" />
<result column="v_29_over_day" property="v29OverDay" />
<result column="v_30_over_day" property="v30OverDay" />
<result column="v_31_over_day" property="v31OverDay" />
<result column="v_32_over_day" property="v32OverDay" />
<result column="v_33_over_day" property="v33OverDay" />
<result column="v_34_over_day" property="v34OverDay" />
<result column="v_35_over_day" property="v35OverDay" />
<result column="v_36_over_day" property="v36OverDay" />
<result column="v_37_over_day" property="v37OverDay" />
<result column="v_38_over_day" property="v38OverDay" />
<result column="v_39_over_day" property="v39OverDay" />
<result column="v_40_over_day" property="v40OverDay" />
<result column="v_41_over_day" property="v41OverDay" />
<result column="v_42_over_day" property="v42OverDay" />
<result column="v_43_over_day" property="v43OverDay" />
<result column="v_44_over_day" property="v44OverDay" />
<result column="v_45_over_day" property="v45OverDay" />
<result column="v_46_over_day" property="v46OverDay" />
<result column="v_47_over_day" property="v47OverDay" />
<result column="v_48_over_day" property="v48OverDay" />
<result column="v_49_over_day" property="v49OverDay" />
<result column="v_50_over_day" property="v50OverDay" />
<result column="i_2_over_day" property="i2OverDay" />
<result column="i_3_over_day" property="i3OverDay" />
<result column="i_4_over_day" property="i4OverDay" />
<result column="i_5_over_day" property="i5OverDay" />
<result column="i_6_over_day" property="i6OverDay" />
<result column="i_7_over_day" property="i7OverDay" />
<result column="i_8_over_day" property="i8OverDay" />
<result column="i_9_over_day" property="i9OverDay" />
<result column="i_10_over_day" property="i10OverDay" />
<result column="i_11_over_day" property="i11OverDay" />
<result column="i_12_over_day" property="i12OverDay" />
<result column="i_13_over_day" property="i13OverDay" />
<result column="i_14_over_day" property="i14OverDay" />
<result column="i_15_over_day" property="i15OverDay" />
<result column="i_16_over_day" property="i16OverDay" />
<result column="i_17_over_day" property="i17OverDay" />
<result column="i_18_over_day" property="i18OverDay" />
<result column="i_19_over_day" property="i19OverDay" />
<result column="i_20_over_day" property="i20OverDay" />
<result column="i_21_over_day" property="i21OverDay" />
<result column="i_22_over_day" property="i22OverDay" />
<result column="i_23_over_day" property="i23OverDay" />
<result column="i_24_over_day" property="i24OverDay" />
<result column="i_25_over_day" property="i25OverDay" />
<result column="i_26_over_day" property="i26OverDay" />
<result column="i_27_over_day" property="i27OverDay" />
<result column="i_28_over_day" property="i28OverDay" />
<result column="i_29_over_day" property="i29OverDay" />
<result column="i_30_over_day" property="i30OverDay" />
<result column="i_31_over_day" property="i31OverDay" />
<result column="i_32_over_day" property="i32OverDay" />
<result column="i_33_over_day" property="i33OverDay" />
<result column="i_34_over_day" property="i34OverDay" />
<result column="i_35_over_day" property="i35OverDay" />
<result column="i_36_over_day" property="i36OverDay" />
<result column="i_37_over_day" property="i37OverDay" />
<result column="i_38_over_day" property="i38OverDay" />
<result column="i_39_over_day" property="i39OverDay" />
<result column="i_40_over_day" property="i40OverDay" />
<result column="i_41_over_day" property="i41OverDay" />
<result column="i_42_over_day" property="i42OverDay" />
<result column="i_43_over_day" property="i43OverDay" />
<result column="i_44_over_day" property="i44OverDay" />
<result column="i_45_over_day" property="i45OverDay" />
<result column="i_46_over_day" property="i46OverDay" />
<result column="i_47_over_day" property="i47OverDay" />
<result column="i_48_over_day" property="i48OverDay" />
<result column="i_49_over_day" property="i49OverDay" />
<result column="i_50_over_day" property="i50OverDay" />
<result column="unbalance_over_day" property="unbalanceOverDay" />
<result column="i_neg_over_day" property="iNegOverDay" />
<result column="i_neg_over_day" property="iNegOverDay" />
<result column="i_neg_over_day" property="iNegOverDay" />
<result column="i_neg_over_day" property="iNegOverDay" />
</resultMap>
</mapper>

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RMpPassRateMMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RMpPassRateM">
<id column="measurement_point_id" property="measurementPointId" />
<result column="data_date" property="dataDate" />
<result column="freq_pass_rate" property="freqPassRate" />
<result column="v_dev_pass_rate" property="vDevPassRate" />
<result column="flicker_pass_rate" property="flickerPassRate" />
</resultMap>
<select id="getMonthPassRate" resultType="com.njcn.harmonic.pojo.vo.RStatOrgIndexVO">
SELECT
measurement_point_id,
data_date,
freq_pass_rate,
v_dev_pass_rate,
flicker_pass_rate
FROM
r_mp_pass_rate_m
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND measurement_point_id IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RMpPassRateQMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RMpPassRateQ">
<id column="measurement_point_id" property="measurementPointId" />
<result column="data_date" property="dataDate" />
<result column="freq_pass_rate" property="freqPassRate" />
<result column="v_dev_pass_rate" property="vDevPassRate" />
<result column="flicker_pass_rate" property="flickerPassRate" />
</resultMap>
<select id="getQuarterPassRate" resultType="com.njcn.harmonic.pojo.vo.RStatOrgIndexVO">
SELECT
measurement_point_id,
data_date,
freq_pass_rate,
v_dev_pass_rate,
flicker_pass_rate
FROM
r_mp_pass_rate_q
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND measurement_point_id IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RMpPassRateYMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RMpPassRateY">
<id column="measurement_point_id" property="measurementPointId" />
<result column="data_date" property="dataDate" />
<result column="freq_pass_rate" property="freqPassRate" />
<result column="v_dev_pass_rate" property="vDevPassRate" />
<result column="flicker_pass_rate" property="flickerPassRate" />
</resultMap>
<select id="getYearPassRate" resultType="com.njcn.harmonic.pojo.vo.RStatOrgIndexVO">
SELECT
measurement_point_id,
data_date,
freq_pass_rate,
v_dev_pass_rate,
flicker_pass_rate
FROM
r_mp_pass_rate_y
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND measurement_point_id IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,65 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RMpSurplusHarmonicDetailDMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RMpSurplusHarmonicDetailD">
<id column="measurement_point_id" property="measurementPointId" />
<result column="data_date" property="dataDate" />
<result column="flicker_times" property="flickerTimes" />
<result column="is_flicker" property="isFlicker" />
<result column="inuharm_times" property="inuharmTimes" />
<result column="is_inuharm" property="isInuharm" />
<result column="is_inuharm_1" property="isInuharm1" />
<result column="is_inuharm_2" property="isInuharm2" />
<result column="is_inuharm_3" property="isInuharm3" />
<result column="is_inuharm_4" property="isInuharm4" />
<result column="is_inuharm_5" property="isInuharm5" />
<result column="is_inuharm_6" property="isInuharm6" />
<result column="is_inuharm_7" property="isInuharm7" />
<result column="is_inuharm_8" property="isInuharm8" />
<result column="is_inuharm_9" property="isInuharm9" />
<result column="is_inuharm_10" property="isInuharm10" />
<result column="is_inuharm_11" property="isInuharm11" />
<result column="is_inuharm_12" property="isInuharm12" />
<result column="is_inuharm_13" property="isInuharm13" />
<result column="is_inuharm_14" property="isInuharm14" />
<result column="is_inuharm_15" property="isInuharm15" />
<result column="is_inuharm_16" property="isInuharm16" />
<result column="is_inuharm_17" property="isInuharm17" />
<result column="is_inuharm_18" property="isInuharm18" />
<result column="is_inuharm_19" property="isInuharm19" />
<result column="is_inuharm_20" property="isInuharm20" />
<result column="is_inuharm_21" property="isInuharm21" />
<result column="is_inuharm_22" property="isInuharm22" />
<result column="is_inuharm_23" property="isInuharm23" />
<result column="is_inuharm_24" property="isInuharm24" />
<result column="is_inuharm_25" property="isInuharm25" />
<result column="is_inuharm_26" property="isInuharm26" />
<result column="is_inuharm_27" property="isInuharm27" />
<result column="is_inuharm_28" property="isInuharm28" />
<result column="is_inuharm_29" property="isInuharm29" />
<result column="is_inuharm_30" property="isInuharm30" />
<result column="is_inuharm_31" property="isInuharm31" />
<result column="is_inuharm_32" property="isInuharm32" />
<result column="is_inuharm_33" property="isInuharm33" />
<result column="is_inuharm_34" property="isInuharm34" />
<result column="is_inuharm_35" property="isInuharm35" />
<result column="is_inuharm_36" property="isInuharm36" />
<result column="is_inuharm_37" property="isInuharm37" />
<result column="is_inuharm_38" property="isInuharm38" />
<result column="is_inuharm_39" property="isInuharm39" />
<result column="is_inuharm_40" property="isInuharm40" />
<result column="is_inuharm_41" property="isInuharm41" />
<result column="is_inuharm_42" property="isInuharm42" />
<result column="is_inuharm_43" property="isInuharm43" />
<result column="is_inuharm_44" property="isInuharm44" />
<result column="is_inuharm_45" property="isInuharm45" />
<result column="is_inuharm_46" property="isInuharm46" />
<result column="is_inuharm_47" property="isInuharm47" />
<result column="is_inuharm_48" property="isInuharm48" />
<result column="is_inuharm_49" property="isInuharm49" />
<result column="is_inuharm_50" property="isInuharm50" />
</resultMap>
</mapper>

View File

@@ -0,0 +1,170 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RMpSurplusHarmonicDetailMMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RMpSurplusHarmonicDetailM">
<id column="measurement_point_id" property="measurementPointId" />
<result column="data_date" property="dataDate" />
<result column="inuharm_over_day" property="inuharmOverDay" />
<result column="inuharm_1_over_day" property="inuharm1OverDay" />
<result column="inuharm_2_over_day" property="inuharm2OverDay" />
<result column="inuharm_3_over_day" property="inuharm3OverDay" />
<result column="inuharm_4_over_day" property="inuharm4OverDay" />
<result column="inuharm_5_over_day" property="inuharm5OverDay" />
<result column="inuharm_6_over_day" property="inuharm6OverDay" />
<result column="inuharm_7_over_day" property="inuharm7OverDay" />
<result column="inuharm_8_over_day" property="inuharm8OverDay" />
<result column="inuharm_9_over_day" property="inuharm9OverDay" />
<result column="inuharm_10_over_day" property="inuharm10OverDay" />
<result column="inuharm_11_over_day" property="inuharm11OverDay" />
<result column="inuharm_12_over_day" property="inuharm12OverDay" />
<result column="inuharm_13_over_day" property="inuharm13OverDay" />
<result column="inuharm_14_over_day" property="inuharm14OverDay" />
<result column="inuharm_15_over_day" property="inuharm15OverDay" />
<result column="inuharm_16_over_day" property="inuharm16OverDay" />
<result column="inuharm_17_over_day" property="inuharm17OverDay" />
<result column="inuharm_18_over_day" property="inuharm18OverDay" />
<result column="inuharm_19_over_day" property="inuharm19OverDay" />
<result column="inuharm_20_over_day" property="inuharm20OverDay" />
<result column="inuharm_21_over_day" property="inuharm21OverDay" />
<result column="inuharm_22_over_day" property="inuharm22OverDay" />
<result column="inuharm_23_over_day" property="inuharm23OverDay" />
<result column="inuharm_24_over_day" property="inuharm24OverDay" />
<result column="inuharm_25_over_day" property="inuharm25OverDay" />
<result column="inuharm_26_over_day" property="inuharm26OverDay" />
<result column="inuharm_27_over_day" property="inuharm27OverDay" />
<result column="inuharm_28_over_day" property="inuharm28OverDay" />
<result column="inuharm_29_over_day" property="inuharm29OverDay" />
<result column="inuharm_30_over_day" property="inuharm30OverDay" />
<result column="inuharm_31_over_day" property="inuharm31OverDay" />
<result column="inuharm_32_over_day" property="inuharm32OverDay" />
<result column="inuharm_33_over_day" property="inuharm33OverDay" />
<result column="inuharm_34_over_day" property="inuharm34OverDay" />
<result column="inuharm_35_over_day" property="inuharm35OverDay" />
<result column="inuharm_36_over_day" property="inuharm36OverDay" />
<result column="inuharm_37_over_day" property="inuharm37OverDay" />
<result column="inuharm_38_over_day" property="inuharm38OverDay" />
<result column="inuharm_39_over_day" property="inuharm39OverDay" />
<result column="inuharm_40_over_day" property="inuharm40OverDay" />
<result column="inuharm_41_over_day" property="inuharm41OverDay" />
<result column="inuharm_42_over_day" property="inuharm42OverDay" />
<result column="inuharm_43_over_day" property="inuharm43OverDay" />
<result column="inuharm_44_over_day" property="inuharm44OverDay" />
<result column="inuharm_45_over_day" property="inuharm45OverDay" />
<result column="inuharm_46_over_day" property="inuharm46OverDay" />
<result column="inuharm_47_over_day" property="inuharm47OverDay" />
<result column="inuharm_48_over_day" property="inuharm48OverDay" />
<result column="inuharm_49_over_day" property="inuharm49OverDay" />
<result column="inuharm_50_over_day" property="inuharm50OverDay" />
<result column="flicker_over_day" property="flickerOverDay" />
</resultMap>
<select id="getRMpPartHarmonicDetail" resultType="com.njcn.harmonic.pojo.vo.RMpPartHarmonicDetailVO">
select
rms.measurement_point_id,
rmphdm.data_date,
rms.inuharm_over_day,
rms.inuharm_1_over_day,
rms.inuharm_2_over_day,
rms.inuharm_3_over_day,
rms.inuharm_4_over_day,
rms.inuharm_5_over_day,
rms.inuharm_6_over_day,
rms.inuharm_7_over_day,
rms.inuharm_8_over_day,
rms.inuharm_9_over_day,
rms.inuharm_10_over_day,
rms.inuharm_11_over_day,
rms.inuharm_12_over_day,
rms.inuharm_13_over_day,
rms.inuharm_14_over_day,
rms.inuharm_15_over_day,
rms.inuharm_16_over_day,
rms.inuharm_17_over_day,
rms.inuharm_18_over_day,
rms.inuharm_19_over_day,
rms.inuharm_20_over_day,
rms.inuharm_21_over_day,
rms.inuharm_22_over_day,
rms.inuharm_23_over_day,
rms.inuharm_24_over_day,
rms.flicker_over_day,
rmphdm.measurement_point_id,
rmphdm.measurement_over_day,
rmphdm.freq_over_day,
rmphdm.v_dev_up_over_day,
rmphdm.v_dev_low_over_day,
rmphdm.v_dev_over_day,
rmphdm.v_thd_over_day,
rmphdm.v_over_day,
rmphdm.i_over_day,
rmphdm.v_2_over_day,
rmphdm.v_3_over_day,
rmphdm.v_4_over_day,
rmphdm.v_5_over_day,
rmphdm.v_6_over_day,
rmphdm.v_7_over_day,
rmphdm.v_8_over_day,
rmphdm.v_9_over_day,
rmphdm.v_10_over_day,
rmphdm.v_11_over_day,
rmphdm.v_12_over_day,
rmphdm.v_13_over_day,
rmphdm.v_14_over_day,
rmphdm.v_15_over_day,
rmphdm.v_16_over_day,
rmphdm.v_17_over_day,
rmphdm.v_18_over_day,
rmphdm.v_19_over_day,
rmphdm.v_20_over_day,
rmphdm.v_21_over_day,
rmphdm.v_22_over_day,
rmphdm.v_23_over_day,
rmphdm.v_24_over_day,
rmphdm.v_25_over_day,
rmphdm.i_2_over_day,
rmphdm.i_3_over_day,
rmphdm.i_4_over_day,
rmphdm.i_5_over_day,
rmphdm.i_6_over_day,
rmphdm.i_7_over_day,
rmphdm.i_8_over_day,
rmphdm.i_9_over_day,
rmphdm.i_10_over_day,
rmphdm.i_11_over_day,
rmphdm.i_12_over_day,
rmphdm.i_13_over_day,
rmphdm.i_14_over_day,
rmphdm.i_15_over_day,
rmphdm.i_16_over_day,
rmphdm.i_17_over_day,
rmphdm.i_18_over_day,
rmphdm.i_19_over_day,
rmphdm.i_20_over_day,
rmphdm.i_21_over_day,
rmphdm.i_22_over_day,
rmphdm.i_23_over_day,
rmphdm.i_24_over_day,
rmphdm.i_25_over_day,
rmphdm.unbalance_over_day,
rmphdm.i_neg_over_day
from r_mp_surplus_harmonic_detail_m rms
right join r_mp_part_harmonic_detail_m rmphdm on rms.measurement_point_id = rmphdm.measurement_point_id
and rms.data_date=rmphdm.data_date
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND rmphdm.measurement_point_id IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND rmphdm.data_date >= #{param.startTime} AND rms.data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND rmphdm.data_date &lt;= #{param.endTime} AND rms.data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatHarmonicDMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatHarmonicD">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="measurement_type_class" property="measurementTypeClass" />
<result column="harmonic_type" property="harmonicType" />
<result column="over_limit_measurement" property="overLimitMeasurement" />
<result column="over_limit_measurement_ratio" property="overLimitMeasurementRatio" />
<result column="data_type" property="dataType" />
</resultMap>
</mapper>

View File

@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatHarmonicMMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatHarmonicM">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="measurement_type_class" property="measurementTypeClass" />
<result column="harmonic_type" property="harmonicType" />
<result column="over_limit_measurement_average" property="overLimitMeasurementAverage" />
<result column="over_limit_measurement_accrued" property="overLimitMeasurementAccrued" />
<result column="over_day" property="overDay" />
<result column="over_limit_measurement_ratio_average" property="overLimitMeasurementRatioAverage" />
<result column="over_limit_measurement_ratio_accrued" property="overLimitMeasurementRatioAccrued" />
<result column="data_type" property="dataType" />
</resultMap>
</mapper>

View File

@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatHarmonicQMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatHarmonicQ">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="measurement_type_class" property="measurementTypeClass" />
<result column="harmonic_type" property="harmonicType" />
<result column="over_limit_measurement_average" property="overLimitMeasurementAverage" />
<result column="over_limit_measurement_accrued" property="overLimitMeasurementAccrued" />
<result column="average_over_day" property="averageOverDay" />
<result column="over_limit_measurement_ratio_average" property="overLimitMeasurementRatioAverage" />
<result column="over_limit_measurement_ratio_accrued" property="overLimitMeasurementRatioAccrued" />
<result column="data_type" property="dataType" />
</resultMap>
</mapper>

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatHarmonicVoltageDMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatHarmonicVoltageD">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="measurement_type_class" property="measurementTypeClass" />
<result column="harmonic_type" property="harmonicType" />
<result column="voltage_type" property="voltageType" />
<result column="over_limit_measurement_average" property="overLimitMeasurementAverage" />
<result column="over_limit_measurement_ratio_average" property="overLimitMeasurementRatioAverage" />
<result column="data_type" property="dataType" />
</resultMap>
</mapper>

View File

@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatHarmonicVoltageMMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatHarmonicVoltageM">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="measurement_type_class" property="measurementTypeClass" />
<result column="harmonic_type" property="harmonicType" />
<result column="voltage_type" property="voltageType" />
<result column="over_limit_measurement_average" property="overLimitMeasurementAverage" />
<result column="over_limit_measurement_accrued" property="overLimitMeasurementAccrued" />
<result column="over_day" property="overDay" />
<result column="over_limit_measurement_ratio_average" property="overLimitMeasurementRatioAverage" />
<result column="over_limit_measurement_ratio_accrued" property="overLimitMeasurementRatioAccrued" />
<result column="data_type" property="dataType" />
</resultMap>
</mapper>

View File

@@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatHarmonicYMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatHarmonicY">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="measurement_type_class" property="measurementTypeClass" />
<result column="harmonic_type" property="harmonicType" />
<result column="over_limit_measurement_average" property="overLimitMeasurementAverage" />
<result column="over_limit_measurement_accrued" property="overLimitMeasurementAccrued" />
<result column="average_over_day" property="averageOverDay" />
<result column="over_limit_measurement_ratio_average" property="overLimitMeasurementRatioAverage" />
<result column="over_limit_measurement_ratio_accrued" property="overLimitMeasurementRatioAccrued" />
<result column="data_type" property="dataType" />
</resultMap>
</mapper>

View File

@@ -0,0 +1,54 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatLoadTypeMMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatLoadTypeM">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="load_type" property="loadType" />
<result column="effective_measurement" property="effectiveMeasurement" />
<result column="v_average" property="vAverage" />
<result column="v_count" property="vCount" />
<result column="i_average" property="iAverage" />
<result column="i_count" property="iCount" />
<result column="unbalance_average" property="unbalanceAverage" />
<result column="unbalance_count" property="unbalanceCount" />
<result column="i_neg_average" property="iNegAverage" />
<result column="i_neg_count" property="iNegCount" />
<result column="flicker_average" property="flickerAverage" />
<result column="flicker_count" property="flickerCount" />
</resultMap>
<select id="getMonthStatLoadType" resultType="com.njcn.harmonic.pojo.vo.RStatLoadTypeVO">
select
org_no,
load_type,
v_average,
v_count/effective_measurement as vAccrued,
i_average,
i_count/effective_measurement as iAccrued,
unbalance_average,
unbalance_count/effective_measurement as unbalanceAccrued,
i_neg_average,
i_neg_count/effective_measurement as iNegAccrued,
flicker_average,
flicker_count/effective_measurement as flickerAccrued
from
r_stat_load_type_m
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,54 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatLoadTypeQMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatLoadTypeQ">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="load_type" property="loadType" />
<result column="effective_measurement" property="effectiveMeasurement" />
<result column="v_average" property="vAverage" />
<result column="v_count" property="vCount" />
<result column="i_average" property="iAverage" />
<result column="i_count" property="iCount" />
<result column="unbalance_average" property="unbalanceAverage" />
<result column="unbalance_count" property="unbalanceCount" />
<result column="i_neg_average" property="iNegAverage" />
<result column="i_neg_count" property="iNegCount" />
<result column="flicker_average" property="flickerAverage" />
<result column="flicker_count" property="flickerCount" />
</resultMap>
<select id="getQuarterStatLoadType" resultType="com.njcn.harmonic.pojo.vo.RStatLoadTypeVO">
select
org_no,
load_type,
v_average,
v_count/effective_measurement as vAccrued,
i_average,
i_count/effective_measurement as iAccrued,
unbalance_average,
unbalance_count/effective_measurement as unbalanceAccrued,
i_neg_average,
i_neg_count/effective_measurement as iNegAccrued,
flicker_average,
flicker_count/effective_measurement as flickerAccrued
from
r_stat_load_type_q
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,54 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatLoadTypeYMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatLoadTypeY">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="load_type" property="loadType" />
<result column="effective_measurement" property="effectiveMeasurement" />
<result column="v_average" property="vAverage" />
<result column="v_count" property="vCount" />
<result column="i_average" property="iAverage" />
<result column="i_count" property="iCount" />
<result column="unbalance_average" property="unbalanceAverage" />
<result column="unbalance_count" property="unbalanceCount" />
<result column="i_neg_average" property="iNegAverage" />
<result column="i_neg_count" property="iNegCount" />
<result column="flicker_average" property="flickerAverage" />
<result column="flicker_count" property="flickerCount" />
</resultMap>
<select id="getYearStatLoadType" resultType="com.njcn.harmonic.pojo.vo.RStatLoadTypeVO">
select
org_no,
load_type,
v_average,
v_count/effective_measurement as vAccrued,
i_average,
i_count/effective_measurement as iAccrued,
unbalance_average,
unbalance_count/effective_measurement as unbalanceAccrued,
i_neg_average,
i_neg_count/effective_measurement as iNegAccrued,
flicker_average,
flicker_count/effective_measurement as flickerAccrued
from
r_stat_load_type_y
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,63 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatOrgBusbarVoltageMMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatOrgBusbarVoltageM">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="busbar_id" property="busbarId" />
<result column="measurement_count" property="measurementCount" />
<result column="v_average" property="vAverage" />
<result column="v_accrued" property="vAccrued" />
<result column="unbalance_average" property="unbalanceAverage" />
<result column="unbalance_accrued" property="unbalanceAccrued" />
<result column="flicker_average" property="flickerAverage" />
<result column="flicker_accrued" property="flickerAccrued" />
</resultMap>
<select id="getMstatOrgBusbarVoltageVO" resultType="com.njcn.harmonic.pojo.vo.RStatOrgBusbarVoltageVO">
SELECT
thisOrg.org_no,
thisOrg.data_date,
thisOrg.busbar_id,
thisOrg.measurement_count,
thisOrg.v_average as average,
thisOrg.v_accrued as accrued,
thisOrg.unbalance_average,
thisOrg.unbalance_accrued,
thisOrg.flicker_average,
thisOrg.flicker_accrued,
lastOrg.v_average as averageSame,
lastOrg.v_accrued as accruedSame,
lastOrg.unbalance_average as unbalanceAverageSame,
lastOrg.unbalance_accrued as unbalanceAccruedSame,
lastOrg.flicker_average as flickerAverageSame,
lastOrg.flicker_accrued as flickerAccruedSame
FROM
r_stat_org_busbar_voltage_m thisOrg
LEFt JOIN r_stat_org_busbar_voltage_m lastOrg on thisOrg.org_no=lastOrg.org_no and thisOrg.busbar_id=lastOrg.busbar_id
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (lastOrg.data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 1 YEAR )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (lastOrg.data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 1 YEAR )))
</if>
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND thisOrg.org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND thisOrg.data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND thisOrg.data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,64 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatOrgBusbarVoltageQMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatOrgBusbarVoltageQ">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="busbar_id" property="busbarId" />
<result column="measurement_count" property="measurementCount" />
<result column="v_average" property="vAverage" />
<result column="v_accrued" property="vAccrued" />
<result column="unbalance_average" property="unbalanceAverage" />
<result column="unbalance_accrued" property="unbalanceAccrued" />
<result column="flicker_average" property="flickerAverage" />
<result column="flicker_accrued" property="flickerAccrued" />
</resultMap>
<select id="getQstatOrgBusbarVoltageVO" resultType="com.njcn.harmonic.pojo.vo.RStatOrgBusbarVoltageVO">
SELECT
thisOrg.org_no,
thisOrg.data_date,
thisOrg.busbar_id,
thisOrg.measurement_count,
thisOrg.v_average as average,
thisOrg.v_accrued as accrued,
thisOrg.unbalance_average,
thisOrg.unbalance_accrued,
thisOrg.flicker_average,
thisOrg.flicker_accrued,
lastOrg.v_average as averageSame,
lastOrg.v_accrued as accruedSame,
lastOrg.unbalance_average as unbalanceAverageSame,
lastOrg.unbalance_accrued as unbalanceAccruedSame,
lastOrg.flicker_average as flickerAverageSame,
lastOrg.flicker_accrued as flickerAccruedSame
FROM
r_stat_org_busbar_voltage_q thisOrg
LEFt JOIN r_stat_org_busbar_voltage_q lastOrg on thisOrg.org_no=lastOrg.org_no and thisOrg.busbar_id=lastOrg.busbar_id
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (lastOrg.data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 1 YEAR )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (lastOrg.data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 1 YEAR )))
</if>
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND thisOrg.org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND thisOrg.data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND thisOrg.data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,64 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatOrgBusbarVoltageYMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatOrgBusbarVoltageY">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="busbar_id" property="busbarId" />
<result column="measurement_count" property="measurementCount" />
<result column="v_average" property="vAverage" />
<result column="v_accrued" property="vAccrued" />
<result column="unbalance_average" property="unbalanceAverage" />
<result column="unbalance_accrued" property="unbalanceAccrued" />
<result column="flicker_average" property="flickerAverage" />
<result column="flicker_accrued" property="flickerAccrued" />
</resultMap>
<select id="getYstatOrgBusbarVoltageVO" resultType="com.njcn.harmonic.pojo.vo.RStatOrgBusbarVoltageVO">
SELECT
thisOrg.org_no,
thisOrg.data_date,
thisOrg.busbar_id,
thisOrg.measurement_count,
thisOrg.v_average as average,
thisOrg.v_accrued as accrued,
thisOrg.unbalance_average,
thisOrg.unbalance_accrued,
thisOrg.flicker_average,
thisOrg.flicker_accrued,
lastOrg.v_average as averageSame,
lastOrg.v_accrued as accruedSame,
lastOrg.unbalance_average as unbalanceAverageSame,
lastOrg.unbalance_accrued as unbalanceAccruedSame,
lastOrg.flicker_average as flickerAverageSame,
lastOrg.flicker_accrued as flickerAccruedSame
FROM
r_stat_org_busbar_voltage_y thisOrg
LEFt JOIN r_stat_org_busbar_voltage_y lastOrg on thisOrg.org_no=lastOrg.org_no and thisOrg.busbar_id=lastOrg.busbar_id
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (lastOrg.data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 1 YEAR )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (lastOrg.data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 1 YEAR )))
</if>
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND thisOrg.org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND thisOrg.data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND thisOrg.data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,190 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatOrgMMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatOrgM">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="measurement_type_class" property="measurementTypeClass" />
<result column="all_count" property="allCount" />
<result column="effective_measurement_average" property="effectiveMeasurementAverage" />
<result column="effective_measurement_accrued" property="effectiveMeasurementAccrued" />
<result column="harmonic_measurement_average" property="harmonicMeasurementAverage" />
<result column="harmonic_measurement_accrued" property="harmonicMeasurementAccrued" />
<result column="harmonic_measurement_ratio_average" property="harmonicMeasurementRatioAverage" />
<result column="over_day_accrued" property="overDayAccrued" />
<result column="freq_pass_rate" property="freqPassRate" />
<result column="v_dev_pass_rate" property="vDevPassRate" />
<result column="flicker_pass_rate" property="flickerPassRate" />
<result column="event_measurement_average" property="eventMeasurementAverage" />
<result column="event_measurement_accrued" property="eventMeasurementAccrued" />
<result column="event_measurement_ratio_average" property="eventMeasurementRatioAverage" />
<result column="event_freq" property="eventFreq" />
<result column="event_count" property="eventCount" />
<result column="should_count" property="shouldCount" />
<result column="warn_count" property="warnCount" />
<result column="data_type" property="dataType" />
</resultMap>
<select id="getMonthRStatHarmonicOrgInfo" resultType="com.njcn.harmonic.pojo.vo.RStatSubstationOrgVO">
SELECT
rso.org_no AS orgNo,
rso.data_date AS dataDate,
rso.effective_measurement_average AS effectiveMeasurementAverage,
rso.effective_measurement_accrued AS effectiveMeasurementAccrued,
rso.harmonic_measurement_average AS harmonicMeasurementAverage,
rso.harmonic_measurement_accrued AS harmonicMeasurementAccrued,
rso.harmonic_measurement_ratio_average as harmonicMeasurementRatioAverage,
TRUNCATE(rso.event_measurement_accrued/rso.effective_measurement_accrued ,2)as harmonicMeasurementRatioAccrued,
c.harmonic_type,
c.over_limit_measurement_average,
c.over_limit_measurement_accrued,
c.over_limit_measurement_ratio_average,
c.over_limit_measurement_ratio_accrued,
(
SELECT
over_limit_measurement_average
FROM
r_stat_harmonic_org_m a
WHERE
a.org_no=c.org_no and
a.harmonic_type=c.harmonic_type
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 1 YEAR )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 1 YEAR )))
</if>
) chainAverage ,
(
SELECT
over_limit_measurement_accrued
FROM
r_stat_harmonic_org_m a
WHERE
a.org_no=c.org_no and
a.harmonic_type=c.harmonic_type
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 1 YEAR )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 1 YEAR )))
</if>
) chainAccrued ,
(
SELECT
over_limit_measurement_accrued
FROM
r_stat_harmonic_org_m a
WHERE
a.org_no=c.org_no and
a.harmonic_type=c.harmonic_type
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 1 MONTH )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 1 MONTH )))
</if>
) sameAverage,
(
SELECT
over_limit_measurement_accrued
FROM
r_stat_harmonic_org_m a
WHERE
a.org_no=c.org_no and
a.harmonic_type=c.harmonic_type
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 1 MONTH )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 1 MONTH )))
</if>
) sameAccrued ,
TRUNCATE( c.over_day / c.over_limit_measurement_accrued, 2)as averageOverDay
FROM
r_stat_harmonic_org_m c
RIGHT JOIN r_stat_org_m AS rso ON rso.org_no = c.org_no
<where>
c.data_Type=#{dataType} and rso.data_Type=#{dataType}
<if test="param != null and param.ids != null and param.ids.size > 0">
AND rso.org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND rso.data_date >= #{param.startTime} AND c.data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND rso.data_date &lt;= #{param.endTime} AND c.data_date &lt;= #{param.endTime}
</if>
</where>
</select>
<select id="getMonthRStatOrgIndex" resultType="com.njcn.harmonic.pojo.vo.RStatOrgIndexVO$RStatOrgIndexInfoVO">
select
rso.org_no,
rso.effective_measurement_accrued as allCount,
rso.freq_pass_rate,
ry.freq_pass_rate as freqPassRateYear,
rso.v_dev_pass_rate,
ry.v_dev_pass_rate as vDevPassRateYear,
rso.flicker_pass_rate,
ry.flicker_pass_rate as flickerPassRateYear
from
r_stat_org_m rso
LEFT JOIN r_stat_org_y ry on rso.org_no=ry.org_no
<where>
and rso.data_Type=#{dataType} and ry.data_Type=#{dataType}
<if test="param != null and param.ids != null and param.ids.size > 0">
AND rso.org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND rso.data_date >= #{param.startTime} AND YEAR(ry.data_Date) = YEAR(#{param.startTime})
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND rso.data_date &lt;= #{param.endTime} AND YEAR(ry.data_Date) = YEAR(#{param.endTime})
</if>
</where>
</select>
<select id="getPwMonthRStatOrgIndex" resultType="com.njcn.harmonic.pojo.vo.PwRStatOrgVO">
select
org_no,
measurement_type_class,
effective_measurement_accrued as allCount,
freq_pass_rate,
v_dev_pass_rate,
flicker_pass_rate
from
r_stat_org_m
<where>
and data_Type=#{dataType}
<if test="param != null and param.ids != null and param.ids.size > 0">
AND org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,191 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatOrgQMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatOrgQ">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="measurement_type_class" property="measurementTypeClass" />
<result column="all_count" property="allCount" />
<result column="effective_measurement_average" property="effectiveMeasurementAverage" />
<result column="effective_measurement_accrued" property="effectiveMeasurementAccrued" />
<result column="harmonic_measurement_average" property="harmonicMeasurementAverage" />
<result column="harmonic_measurement_accrued" property="harmonicMeasurementAccrued" />
<result column="harmonic_measurement_ratio_average" property="harmonicMeasurementRatioAverage" />
<result column="average_over_day" property="averageOverDay" />
<result column="freq_pass_rate" property="freqPassRate" />
<result column="v_dev_pass_rate" property="vDevPassRate" />
<result column="flicker_pass_rate" property="flickerPassRate" />
<result column="event_measurement_average" property="eventMeasurementAverage" />
<result column="event_measurement_accrued" property="eventMeasurementAccrued" />
<result column="event_measurement_ratio_average" property="eventMeasurementRatioAverage" />
<result column="event_freq" property="eventFreq" />
<result column="event_count" property="eventCount" />
<result column="should_count" property="shouldCount" />
<result column="warn_count" property="warnCount" />
<result column="data_type" property="dataType" />
</resultMap>
<select id="getQuarterRStatHarmonicOrgInfo" resultType="com.njcn.harmonic.pojo.vo.RStatSubstationOrgVO">
SELECT
rso.org_no AS orgNo,
rso.data_date AS dataDate,
rso.effective_measurement_average AS effectiveMeasurementAverage,
rso.effective_measurement_accrued AS effectiveMeasurementAccrued,
rso.harmonic_measurement_average AS harmonicMeasurementAverage,
rso.harmonic_measurement_accrued AS harmonicMeasurementAccrued,
rso.harmonic_measurement_ratio_average as harmonicMeasurementRatioAverage,
TRUNCATE(rso.event_measurement_accrued/rso.effective_measurement_accrued ,2)as harmonicMeasurementRatioAccrued,
c.harmonic_type,
c.over_limit_measurement_average,
c.over_limit_measurement_accrued,
c.over_limit_measurement_ratio_average,
c.over_limit_measurement_ratio_accrued,
(
SELECT
over_limit_measurement_average
FROM
r_stat_harmonic_org_q a
WHERE
a.org_no=c.org_no and
a.harmonic_type=c.harmonic_type
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 1 YEAR )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 1 YEAR )))
</if>
) chainAverage ,
(
SELECT
over_limit_measurement_accrued
FROM
r_stat_harmonic_org_q a
WHERE
a.org_no=c.org_no and
a.harmonic_type=c.harmonic_type
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 1 YEAR )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 1 YEAR )))
</if>
) chainAccrued ,
(
SELECT
over_limit_measurement_accrued
FROM
r_stat_harmonic_org_q a
WHERE
a.org_no=c.org_no and
a.harmonic_type=c.harmonic_type
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 3 MONTH )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 3 MONTH )))
</if>
) sameAverage,
(
SELECT
over_limit_measurement_accrued
FROM
r_stat_harmonic_org_q a
WHERE
a.org_no=c.org_no and
a.harmonic_type=c.harmonic_type
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 3 MONTH )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 3 MONTH )))
</if>
) sameAccrued,
c.average_over_day
FROM
r_stat_harmonic_org_q c
RIGHT JOIN r_stat_org_q AS rso ON rso.org_no = c.org_no
<where>
c.data_Type=#{dataType} and rso.data_Type=#{dataType}
<if test="param != null and param.ids != null and param.ids.size > 0">
AND rso.org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND rso.data_date >= #{param.startTime} AND c.data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND rso.data_date &lt;= #{param.endTime} AND c.data_date &lt;= #{param.endTime}
</if>
</where>
</select>
<select id="getQuarterRStatOrgIndex" resultType="com.njcn.harmonic.pojo.vo.RStatOrgIndexVO$RStatOrgIndexInfoVO">
select
rso.org_no,
rso.effective_measurement_accrued as allCount,
rso.freq_pass_rate,
ry.freq_pass_rate as freqPassRateYear,
rso.v_dev_pass_rate,
ry.v_dev_pass_rate as vDevPassRateYear,
rso.flicker_pass_rate,
ry.flicker_pass_rate as flickerPassRateYear
from
r_stat_org_q rso
LEFT JOIN r_stat_org_y ry on rso.org_no=ry.org_no
<where>
and rso.data_Type=#{dataType} and ry.data_Type=#{dataType}
<if test="param != null and param.ids != null and param.ids.size > 0">
AND rso.org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND rso.data_date >= #{param.startTime} AND YEAR(ry.data_Date) = YEAR(#{param.startTime})
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND rso.data_date &lt;= #{param.endTime} AND YEAR(ry.data_Date) = YEAR(#{param.endTime})
</if>
</where>
</select>
<select id="getPwQuarterRStatOrgIndex" resultType="com.njcn.harmonic.pojo.vo.PwRStatOrgVO">
select
org_no,
measurement_type_class,
effective_measurement_accrued as allCount,
freq_pass_rate,
v_dev_pass_rate,
flicker_pass_rate
from
r_stat_org_y
<where>
and data_Type=#{dataType}
<if test="param != null and param.ids != null and param.ids.size > 0">
AND org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,190 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatOrgYMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatOrgY">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="measurement_type_class" property="measurementTypeClass" />
<result column="all_count" property="allCount" />
<result column="effective_measurement_average" property="effectiveMeasurementAverage" />
<result column="effective_measurement_accrued" property="effectiveMeasurementAccrued" />
<result column="over_limit_measurement_average" property="overLimitMeasurementAverage" />
<result column="over_limit_measurement_accrued" property="overLimitMeasurementAccrued" />
<result column="harmonic_measurement_ratio_average" property="harmonicMeasurementRatioAverage" />
<result column="average_over_day" property="averageOverDay" />
<result column="freq_pass_rate" property="freqPassRate" />
<result column="v_dev_pass_rate" property="vDevPassRate" />
<result column="flicker_pass_rate" property="flickerPassRate" />
<result column="event_measurement_average" property="eventMeasurementAverage" />
<result column="event_measurement_accrued" property="eventMeasurementAccrued" />
<result column="event_measurement_ratio_average" property="eventMeasurementRatioAverage" />
<result column="event_freq" property="eventFreq" />
<result column="event_count" property="eventCount" />
<result column="should_count" property="shouldCount" />
<result column="warn_count" property="warnCount" />
<result column="data_type" property="dataType" />
</resultMap>
<select id="getYearRStatHarmonicOrgInfo" resultType="com.njcn.harmonic.pojo.vo.RStatSubstationOrgVO">
SELECT
rso.org_no AS orgNo,
rso.data_date AS dataDate,
rso.effective_measurement_average AS effectiveMeasurementAverage,
rso.effective_measurement_accrued AS effectiveMeasurementAccrued,
rso.over_limit_measurement_average AS harmonicMeasurementAverage,
rso.over_limit_measurement_accrued AS harmonicMeasurementAccrued,
rso.harmonic_measurement_ratio_average as harmonicMeasurementRatioAverage,
TRUNCATE(rso.event_measurement_accrued/rso.effective_measurement_accrued ,2)as harmonicMeasurementRatioAccrued,
c.harmonic_type,
c.over_limit_measurement_average,
c.over_limit_measurement_accrued,
c.over_limit_measurement_ratio_average,
c.over_limit_measurement_ratio_accrued,
(
SELECT
over_limit_measurement_average
FROM
r_stat_harmonic_org_y a
WHERE
a.org_no=c.org_no and
a.harmonic_type=c.harmonic_type
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 1 YEAR )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 1 YEAR )))
</if>
) chainAverage ,
(
SELECT
over_limit_measurement_accrued
FROM
r_stat_harmonic_org_y a
WHERE
a.org_no=c.org_no and
a.harmonic_type=c.harmonic_type
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 1 YEAR )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 1 YEAR )))
</if>
) chainAccrued ,
(
SELECT
over_limit_measurement_accrued
FROM
r_stat_harmonic_org_y a
WHERE
a.org_no=c.org_no and
a.harmonic_type=c.harmonic_type
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 1 YEAR )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 1 YEAR )))
</if>
) sameAverage,
(
SELECT
over_limit_measurement_accrued
FROM
r_stat_harmonic_org_y a
WHERE
a.org_no=c.org_no and
a.harmonic_type=c.harmonic_type
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND (data_date >= date(
DATE_ADD( #{param.startTime}, INTERVAL - 1 YEAR )))
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND (data_date &lt;= date(
DATE_ADD( #{param.endTime}, INTERVAL - 1 YEAR )))
</if>
) sameAccrued,
c.average_over_day
FROM
r_stat_harmonic_org_y c
RIGHT JOIN r_stat_org_y AS rso ON rso.org_no = c.org_no
<where>
c.data_Type=#{dataType} and rso.data_Type=#{dataType}
<if test="param != null and param.ids != null and param.ids.size > 0">
AND rso.org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND rso.data_date >= #{param.startTime} and c.data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND rso.data_date &lt;= #{param.endTime} and c.data_date &lt;= #{param.endTime}
</if>
</where>
</select>
<select id="getYearRStatOrgIndex" resultType="com.njcn.harmonic.pojo.vo.RStatOrgIndexVO$RStatOrgIndexInfoVO">
select
org_no,
effective_measurement_accrued as allCount,
freq_pass_rate,
freq_pass_rate as freqPassRateYear,
v_dev_pass_rate,
v_dev_pass_rate as vDevPassRateYear,
flicker_pass_rate,
flicker_pass_rate as flickerPassRateYear
from
r_stat_org_y rso
<where>
and rso.data_Type=#{dataType}
<if test="param != null and param.ids != null and param.ids.size > 0">
AND rso.org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND rso.data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND rso.data_date &lt;= #{param.endTime}
</if>
</where>
</select>
<select id="getPwYearRStatOrgIndex" resultType="com.njcn.harmonic.pojo.vo.PwRStatOrgVO">
select
org_no,
measurement_type_class,
effective_measurement_accrued as allCount,
freq_pass_rate,
v_dev_pass_rate,
flicker_pass_rate
from
r_stat_org_y
<where>
and data_Type=#{dataType}
<if test="param != null and param.ids != null and param.ids.size > 0">
AND org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND data_date &lt;= #{param.endTime}
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,113 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatSubstationMMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatSubstationM">
<id column="data_date" property="dataDate" />
<result column="substation_id" property="substationId" />
<result column="effective_measurement_average" property="effectiveMeasurementAverage" />
<result column="effective_measurement_accrued" property="effectiveMeasurementAccrued" />
<result column="harmonic_over_day" property="harmonicOverDay" />
<result column="harmonic_count" property="harmonicCount" />
<result column="freq_over_day" property="freqOverDay" />
<result column="freq_count" property="freqCount" />
<result column="v_dev_over_day" property="vDevOverDay" />
<result column="v_dev_count" property="vDevCount" />
<result column="v_over_day" property="vOverDay" />
<result column="v_count" property="vCount" />
<result column="i_over_day" property="iOverDay" />
<result column="i_count" property="iCount" />
<result column="unbalance_over_day" property="unbalanceOverDay" />
<result column="unbalance_count" property="unbalanceCount" />
<result column="i_neg_over_day" property="iNegOverDay" />
<result column="i_neg_count" property="iNegCount" />
<result column="flicker_over_day" property="flickerOverDay" />
<result column="flicker_count" property="flickerCount" />
<result column="inuharm_over_day" property="inuharmOverDay" />
<result column="inuharm_count" property="inuharmCount" />
<result column="event_count" property="eventCount" />
<result column="event_freq" property="eventFreq" />
<result column="sag_count" property="sagCount" />
<result column="sag_freq" property="sagFreq" />
<result column="swell_count" property="swellCount" />
<result column="swell_freq" property="swellFreq" />
<result column="interrupt_count" property="interruptCount" />
<result column="interrupt_freq" property="interruptFreq" />
</resultMap>
<select id="getStatSubstationIconM" resultType="com.njcn.harmonic.pojo.vo.RSubstationIconVO">
SELECT
COALESCE( sum( CASE WHEN X.harmonic_over_day BETWEEN 0 AND 10 THEN 1 ELSE 0 END ), 0 ) "num_1",
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 11 AND 20 THEN 1 ELSE 0 END ), 0 ) "num_2" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 21 AND 30 THEN 1 ELSE 0 END ), 0 ) "num_3" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 31 AND 40 THEN 1 ELSE 0 END ), 0 ) "num_4" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 41 AND 50 THEN 1 ELSE 0 END ), 0 ) "num_5" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 51 AND 60 THEN 1 ELSE 0 END ), 0 ) "num_6" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 61 AND 70 THEN 1 ELSE 0 END ), 0 ) "num_7" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 71 AND 80 THEN 1 ELSE 0 END ), 0 ) "num_8" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 81 AND 90 THEN 1 ELSE 0 END ), 0 ) "num_9" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 91 AND 100 THEN 1 ELSE 0 END ), 0 ) "num_10" ,
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 0 AND 10 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_1",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 11 AND 20 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_2",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 21 AND 30 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_3",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 31 AND 40 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_4",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 41 AND 50 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_5",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 51 AND 60 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_6",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 61 AND 70 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_7",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 71 AND 80 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_8",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 81 AND 90 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_9",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 91 AND 100 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_10"
FROM
(
SELECT
substation_id,
harmonic_over_day
FROM
r_stat_substation_m
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND substation_id IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND #{param.endTime}>= data_date
</if>
</where>
) X
</select>
<select id="getStatSubstationIcon2M" resultType="com.njcn.harmonic.pojo.vo.RSubstationIcon2VO">
SELECT
substation_id,
effective_measurement_accrued,
freq_over_day / freq_count as 'freqAverageOverDay',
v_dev_over_day / v_dev_count as 'vDevAverageOverDay',
v_over_day / v_count as 'vAverageOverDay',
i_over_day / i_count as 'iAverageOverDay',
unbalance_over_day / unbalance_count as 'unbalanceAverageOverDay',
i_neg_over_day / i_neg_count as 'iNegAverageOverDay',
flicker_over_day / flicker_count as 'flickerAverageOverDay',
inuharm_over_day / inuharm_count as 'inuharmAverageOverDay'
FROM
r_stat_substation_m
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND substation_id IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND #{param.endTime}>= data_date
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,106 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatSubstationQMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatSubstationQ">
<id column="data_date" property="dataDate" />
<result column="substation_id" property="substationId" />
<result column="effective_measurement_average" property="effectiveMeasurementAverage" />
<result column="effective_measurement_accrued" property="effectiveMeasurementAccrued" />
<result column="harmonic_average_over_day" property="harmonicAverageOverDay" />
<result column="freq_average_over_day" property="freqAverageOverDay" />
<result column="v_dev_average_over_day" property="vDevAverageOverDay" />
<result column="v_average_over_day" property="vAverageOverDay" />
<result column="i_average_over_day" property="iAverageOverDay" />
<result column="unbalance_average_over_day" property="unbalanceAverageOverDay" />
<result column="i_neg_average_over_day" property="iNegAverageOverDay" />
<result column="flicker_average_over_day" property="flickerAverageOverDay" />
<result column="inuharm_average_over_day" property="inuharmAverageOverDay" />
<result column="event_count" property="eventCount" />
<result column="event_freq" property="eventFreq" />
<result column="sag_count" property="sagCount" />
<result column="sag_freq" property="sagFreq" />
<result column="swell_count" property="swellCount" />
<result column="swell_freq" property="swellFreq" />
<result column="interrupt_count" property="interruptCount" />
<result column="interrupt_freq" property="interruptFreq" />
</resultMap>
<select id="getStatSubstationIconQ" resultType="com.njcn.harmonic.pojo.vo.RSubstationIconVO">
SELECT
COALESCE( sum( CASE WHEN X.harmonic_average_over_day BETWEEN 0 AND 10 THEN 1 ELSE 0 END ), 0 ) "num_1",
COALESCE ( sum( CASE WHEN X.harmonic_average_over_day BETWEEN 11 AND 20 THEN 1 ELSE 0 END ), 0 ) "num_2" ,
COALESCE ( sum( CASE WHEN X.harmonic_average_over_day BETWEEN 21 AND 30 THEN 1 ELSE 0 END ), 0 ) "num_3" ,
COALESCE ( sum( CASE WHEN X.harmonic_average_over_day BETWEEN 31 AND 40 THEN 1 ELSE 0 END ), 0 ) "num_4" ,
COALESCE ( sum( CASE WHEN X.harmonic_average_over_day BETWEEN 41 AND 50 THEN 1 ELSE 0 END ), 0 ) "num_5" ,
COALESCE ( sum( CASE WHEN X.harmonic_average_over_day BETWEEN 51 AND 60 THEN 1 ELSE 0 END ), 0 ) "num_6" ,
COALESCE ( sum( CASE WHEN X.harmonic_average_over_day BETWEEN 61 AND 70 THEN 1 ELSE 0 END ), 0 ) "num_7" ,
COALESCE ( sum( CASE WHEN X.harmonic_average_over_day BETWEEN 71 AND 80 THEN 1 ELSE 0 END ), 0 ) "num_8" ,
COALESCE ( sum( CASE WHEN X.harmonic_average_over_day BETWEEN 81 AND 90 THEN 1 ELSE 0 END ), 0 ) "num_9" ,
COALESCE ( sum( CASE WHEN X.harmonic_average_over_day BETWEEN 91 AND 100 THEN 1 ELSE 0 END ), 0 ) "num_10" ,
COALESCE ( round(sum(CASE WHEN X.harmonic_average_over_day BETWEEN 0 AND 10 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_1",
COALESCE ( round(sum(CASE WHEN X.harmonic_average_over_day BETWEEN 11 AND 20 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_2",
COALESCE ( round(sum(CASE WHEN X.harmonic_average_over_day BETWEEN 21 AND 30 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_3",
COALESCE ( round(sum(CASE WHEN X.harmonic_average_over_day BETWEEN 31 AND 40 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_4",
COALESCE ( round(sum(CASE WHEN X.harmonic_average_over_day BETWEEN 41 AND 50 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_5",
COALESCE ( round(sum(CASE WHEN X.harmonic_average_over_day BETWEEN 51 AND 60 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_6",
COALESCE ( round(sum(CASE WHEN X.harmonic_average_over_day BETWEEN 61 AND 70 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_7",
COALESCE ( round(sum(CASE WHEN X.harmonic_average_over_day BETWEEN 71 AND 80 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_8",
COALESCE ( round(sum(CASE WHEN X.harmonic_average_over_day BETWEEN 81 AND 90 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_9",
COALESCE ( round(sum(CASE WHEN X.harmonic_average_over_day BETWEEN 91 AND 100 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_10"
FROM
(
SELECT
substation_id,
harmonic_average_over_day
FROM
r_stat_substation_q
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND substation_id IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND #{param.endTime}>= data_date
</if>
</where>
) X
</select>
<select id="getStatSubstationIcon2Q" resultType="com.njcn.harmonic.pojo.vo.RSubstationIcon2VO">
SELECT
substation_id,
effective_measurement_accrued,
freq_average_over_day,
v_dev_average_over_day,
v_average_over_day,
i_average_over_day,
unbalance_average_over_day,
i_neg_average_over_day,
flicker_average_over_day,
inuharm_average_over_day
FROM
r_stat_substation_q
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND substation_id IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND #{param.endTime}>= data_date
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatSubstationVoltageMMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatSubstationVoltageM">
<id column="org_no" property="orgNo" />
<result column="data_date" property="dataDate" />
<result column="substation_voltage" property="substationVoltage" />
<result column="substation_count" property="substationCount" />
<result column="harmonic_count" property="harmonicCount" />
<result column="event_count" property="eventCount" />
</resultMap>
<select id="getStatSubstationIcon" resultType="com.njcn.harmonic.pojo.vo.RVoltageIconVO">
SELECT
substation_voltage as 'substationVoltage',
sum( substation_count ) as 'substationCount',
sum( harmonic_count ) as 'harmonicCount'
FROM
r_stat_substation_voltage_m
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND org_no IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime !=''">
AND #{param.endTime} >= data_date
</if>
</where>
GROUP BY substation_voltage
</select>
</mapper>

View File

@@ -0,0 +1,106 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.majornetwork.RStatSubstationYMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatSubstationY">
<id column="data_date" property="dataDate" />
<result column="substation_id" property="substationId" />
<result column="effective_measurement_average" property="effectiveMeasurementAverage" />
<result column="effective_measurement_accrued" property="effectiveMeasurementAccrued" />
<result column="harmonic_over_day" property="harmonicOverDay" />
<result column="freq_average_over_day" property="freqAverageOverDay" />
<result column="v_dev_average_over_day" property="vDevAverageOverDay" />
<result column="v_average_over_day" property="vAverageOverDay" />
<result column="i_average_over_day" property="iAverageOverDay" />
<result column="unbalance_average_over_day" property="unbalanceAverageOverDay" />
<result column="i_neg_average_over_day" property="iNegAverageOverDay" />
<result column="flicker_average_over_day" property="flickerAverageOverDay" />
<result column="inuharm_average_over_day" property="inuharmAverageOverDay" />
<result column="event_count" property="eventCount" />
<result column="event_freq" property="eventFreq" />
<result column="sag_count" property="sagCount" />
<result column="sag_freq" property="sagFreq" />
<result column="swell_count" property="swellCount" />
<result column="swell_freq" property="swellFreq" />
<result column="interrupt_count" property="interruptCount" />
<result column="interrupt_freq" property="interruptFreq" />
</resultMap>
<select id="getStatSubstationIconY" resultType="com.njcn.harmonic.pojo.vo.RSubstationIconVO">
SELECT
COALESCE( sum( CASE WHEN X.harmonic_over_day BETWEEN 0 AND 10 THEN 1 ELSE 0 END ), 0 ) "num_1",
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 11 AND 20 THEN 1 ELSE 0 END ), 0 ) "num_2" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 21 AND 30 THEN 1 ELSE 0 END ), 0 ) "num_3" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 31 AND 40 THEN 1 ELSE 0 END ), 0 ) "num_4" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 41 AND 50 THEN 1 ELSE 0 END ), 0 ) "num_5" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 51 AND 60 THEN 1 ELSE 0 END ), 0 ) "num_6" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 61 AND 70 THEN 1 ELSE 0 END ), 0 ) "num_7" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 71 AND 80 THEN 1 ELSE 0 END ), 0 ) "num_8" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 81 AND 90 THEN 1 ELSE 0 END ), 0 ) "num_9" ,
COALESCE ( sum( CASE WHEN X.harmonic_over_day BETWEEN 91 AND 100 THEN 1 ELSE 0 END ), 0 ) "num_10" ,
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 0 AND 10 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_1",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 11 AND 20 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_2",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 21 AND 30 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_3",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 31 AND 40 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_4",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 41 AND 50 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_5",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 51 AND 60 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_6",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 61 AND 70 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_7",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 71 AND 80 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_8",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 81 AND 90 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_9",
COALESCE ( round(sum(CASE WHEN X.harmonic_over_day BETWEEN 91 AND 100 THEN 1 ELSE 0 END) / COUNT(X.substation_id),4)*100 , 0 ) "upRatio_10"
FROM
(
SELECT
substation_id,
harmonic_over_day
FROM
r_stat_substation_y
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND substation_id IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND #{param.endTime}>= data_date
</if>
</where>
) X
</select>
<select id="getStatSubstationIcon2Y" resultType="com.njcn.harmonic.pojo.vo.RSubstationIcon2VO">
SELECT
substation_id,
effective_measurement_accrued,
freq_average_over_day,
v_dev_average_over_day,
v_average_over_day,
i_average_over_day,
unbalance_average_over_day,
i_neg_average_over_day,
flicker_average_over_day,
inuharm_average_over_day
FROM
r_stat_substation_y
<where>
<if test="param != null and param.ids != null and param.ids.size > 0">
AND substation_id IN
<foreach collection='param.ids' item='item' index="index" open='(' separator=',' close=')'>
#{item}
</foreach>
</if>
<if test="param!=null and param.startTime != null and param.startTime !=''">
AND data_date >= #{param.startTime}
</if>
<if test="param!=null and param.endTime != null and param.endTime != ''">
AND #{param.endTime}>= data_date
</if>
</where>
</select>
</mapper>

View File

@@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.RStatPollutionOrgDPOMapper">
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatPollutionOrgDPO">
<!--@mbg.generated-->
<!--@Table r_stat_pollution_org_d-->
<id column="org_id" jdbcType="VARCHAR" property="orgId" />
<id column="data_date" jdbcType="TIMESTAMP" property="dataDate" />
<id column="pollution_type" jdbcType="VARCHAR" property="pollutionType" />
<result column="value" jdbcType="FLOAT" property="value" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
org_id, data_date, pollution_type, `value`
</sql>
<update id="updateBatch" parameterType="java.util.List">
<!--@mbg.generated-->
update r_stat_pollution_org_d
<trim prefix="set" suffixOverrides=",">
<trim prefix="`value` = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when org_id = #{item.orgId,jdbcType=VARCHAR} then #{item.value,jdbcType=FLOAT}
</foreach>
</trim>
</trim>
where org_id in
<foreach close=")" collection="list" item="item" open="(" separator=", ">
#{item.orgId,jdbcType=VARCHAR}
</foreach>
</update>
<insert id="batchInsert" parameterType="map">
<!--@mbg.generated-->
insert into r_stat_pollution_org_d
(org_id, data_date, pollution_type, `value`)
values
<foreach collection="list" item="item" separator=",">
(#{item.orgId,jdbcType=VARCHAR}, #{item.dataDate,jdbcType=TIMESTAMP}, #{item.pollutionType,jdbcType=VARCHAR},
#{item.value,jdbcType=FLOAT})
</foreach>
</insert>
<insert id="insertOrUpdate" parameterType="com.njcn.harmonic.pojo.po.RStatPollutionOrgDPO">
<!--@mbg.generated-->
insert into r_stat_pollution_org_d
(org_id, data_date, pollution_type, `value`)
values
(#{orgId,jdbcType=VARCHAR}, #{dataDate,jdbcType=TIMESTAMP}, #{pollutionType,jdbcType=VARCHAR},
#{value,jdbcType=FLOAT})
on duplicate key update
org_id = #{orgId,jdbcType=VARCHAR},
data_date = #{dataDate,jdbcType=TIMESTAMP},
pollution_type = #{pollutionType,jdbcType=VARCHAR},
`value` = #{value,jdbcType=FLOAT}
</insert>
<insert id="insertOrUpdateSelective" parameterType="com.njcn.harmonic.pojo.po.RStatPollutionOrgDPO">
<!--@mbg.generated-->
insert into r_stat_pollution_org_d
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="orgId != null">
org_id,
</if>
<if test="dataDate != null">
data_date,
</if>
<if test="pollutionType != null">
pollution_type,
</if>
<if test="value != null">
`value`,
</if>
</trim>
values
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="orgId != null">
#{orgId,jdbcType=VARCHAR},
</if>
<if test="dataDate != null">
#{dataDate,jdbcType=TIMESTAMP},
</if>
<if test="pollutionType != null">
#{pollutionType,jdbcType=VARCHAR},
</if>
<if test="value != null">
#{value,jdbcType=FLOAT},
</if>
</trim>
on duplicate key update
<trim suffixOverrides=",">
<if test="orgId != null">
org_id = #{orgId,jdbcType=VARCHAR},
</if>
<if test="dataDate != null">
data_date = #{dataDate,jdbcType=TIMESTAMP},
</if>
<if test="pollutionType != null">
pollution_type = #{pollutionType,jdbcType=VARCHAR},
</if>
<if test="value != null">
`value` = #{value,jdbcType=FLOAT},
</if>
</trim>
</insert>
</mapper>

View File

@@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.RStatPollutionOrgQPOMapper">
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatPollutionOrgQPO">
<!--@mbg.generated-->
<!--@Table r_stat_pollution_org_q-->
<id column="org_id" jdbcType="VARCHAR" property="orgId" />
<id column="data_date" jdbcType="TIMESTAMP" property="dataDate" />
<id column="pollution_type" jdbcType="VARCHAR" property="pollutionType" />
<result column="value" jdbcType="FLOAT" property="value" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
org_id, data_date, pollution_type, `value`
</sql>
<update id="updateBatch" parameterType="java.util.List">
<!--@mbg.generated-->
update r_stat_pollution_org_q
<trim prefix="set" suffixOverrides=",">
<trim prefix="`value` = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when org_id = #{item.orgId,jdbcType=VARCHAR} then #{item.value,jdbcType=FLOAT}
</foreach>
</trim>
</trim>
where org_id in
<foreach close=")" collection="list" item="item" open="(" separator=", ">
#{item.orgId,jdbcType=VARCHAR}
</foreach>
</update>
<insert id="batchInsert" parameterType="map">
<!--@mbg.generated-->
insert into r_stat_pollution_org_q
(org_id, data_date, pollution_type, `value`)
values
<foreach collection="list" item="item" separator=",">
(#{item.orgId,jdbcType=VARCHAR}, #{item.dataDate,jdbcType=TIMESTAMP}, #{item.pollutionType,jdbcType=VARCHAR},
#{item.value,jdbcType=FLOAT})
</foreach>
</insert>
<insert id="insertOrUpdate" parameterType="com.njcn.harmonic.pojo.po.RStatPollutionOrgQPO">
<!--@mbg.generated-->
insert into r_stat_pollution_org_q
(org_id, data_date, pollution_type, `value`)
values
(#{orgId,jdbcType=VARCHAR}, #{dataDate,jdbcType=TIMESTAMP}, #{pollutionType,jdbcType=VARCHAR},
#{value,jdbcType=FLOAT})
on duplicate key update
org_id = #{orgId,jdbcType=VARCHAR},
data_date = #{dataDate,jdbcType=TIMESTAMP},
pollution_type = #{pollutionType,jdbcType=VARCHAR},
`value` = #{value,jdbcType=FLOAT}
</insert>
<insert id="insertOrUpdateSelective" parameterType="com.njcn.harmonic.pojo.po.RStatPollutionOrgQPO">
<!--@mbg.generated-->
insert into r_stat_pollution_org_q
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="orgId != null">
org_id,
</if>
<if test="dataDate != null">
data_date,
</if>
<if test="pollutionType != null">
pollution_type,
</if>
<if test="value != null">
`value`,
</if>
</trim>
values
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="orgId != null">
#{orgId,jdbcType=VARCHAR},
</if>
<if test="dataDate != null">
#{dataDate,jdbcType=TIMESTAMP},
</if>
<if test="pollutionType != null">
#{pollutionType,jdbcType=VARCHAR},
</if>
<if test="value != null">
#{value,jdbcType=FLOAT},
</if>
</trim>
on duplicate key update
<trim suffixOverrides=",">
<if test="orgId != null">
org_id = #{orgId,jdbcType=VARCHAR},
</if>
<if test="dataDate != null">
data_date = #{dataDate,jdbcType=TIMESTAMP},
</if>
<if test="pollutionType != null">
pollution_type = #{pollutionType,jdbcType=VARCHAR},
</if>
<if test="value != null">
`value` = #{value,jdbcType=FLOAT},
</if>
</trim>
</insert>
</mapper>

View File

@@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.RStatPollutionOrgYPOMapper">
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatPollutionOrgYPO">
<!--@mbg.generated-->
<!--@Table r_stat_pollution_org_y-->
<id column="org_id" jdbcType="VARCHAR" property="orgId" />
<id column="data_date" jdbcType="TIMESTAMP" property="dataDate" />
<id column="pollution_type" jdbcType="VARCHAR" property="pollutionType" />
<result column="value" jdbcType="FLOAT" property="value" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
org_id, data_date, pollution_type, `value`
</sql>
<update id="updateBatch" parameterType="java.util.List">
<!--@mbg.generated-->
update r_stat_pollution_org_y
<trim prefix="set" suffixOverrides=",">
<trim prefix="`value` = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when org_id = #{item.orgId,jdbcType=VARCHAR} then #{item.value,jdbcType=FLOAT}
</foreach>
</trim>
</trim>
where org_id in
<foreach close=")" collection="list" item="item" open="(" separator=", ">
#{item.orgId,jdbcType=VARCHAR}
</foreach>
</update>
<insert id="batchInsert" parameterType="map">
<!--@mbg.generated-->
insert into r_stat_pollution_org_y
(org_id, data_date, pollution_type, `value`)
values
<foreach collection="list" item="item" separator=",">
(#{item.orgId,jdbcType=VARCHAR}, #{item.dataDate,jdbcType=TIMESTAMP}, #{item.pollutionType,jdbcType=VARCHAR},
#{item.value,jdbcType=FLOAT})
</foreach>
</insert>
<insert id="insertOrUpdate" parameterType="com.njcn.harmonic.pojo.po.RStatPollutionOrgYPO">
<!--@mbg.generated-->
insert into r_stat_pollution_org_y
(org_id, data_date, pollution_type, `value`)
values
(#{orgId,jdbcType=VARCHAR}, #{dataDate,jdbcType=TIMESTAMP}, #{pollutionType,jdbcType=VARCHAR},
#{value,jdbcType=FLOAT})
on duplicate key update
org_id = #{orgId,jdbcType=VARCHAR},
data_date = #{dataDate,jdbcType=TIMESTAMP},
pollution_type = #{pollutionType,jdbcType=VARCHAR},
`value` = #{value,jdbcType=FLOAT}
</insert>
<insert id="insertOrUpdateSelective" parameterType="com.njcn.harmonic.pojo.po.RStatPollutionOrgYPO">
<!--@mbg.generated-->
insert into r_stat_pollution_org_y
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="orgId != null">
org_id,
</if>
<if test="dataDate != null">
data_date,
</if>
<if test="pollutionType != null">
pollution_type,
</if>
<if test="value != null">
`value`,
</if>
</trim>
values
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="orgId != null">
#{orgId,jdbcType=VARCHAR},
</if>
<if test="dataDate != null">
#{dataDate,jdbcType=TIMESTAMP},
</if>
<if test="pollutionType != null">
#{pollutionType,jdbcType=VARCHAR},
</if>
<if test="value != null">
#{value,jdbcType=FLOAT},
</if>
</trim>
on duplicate key update
<trim suffixOverrides=",">
<if test="orgId != null">
org_id = #{orgId,jdbcType=VARCHAR},
</if>
<if test="dataDate != null">
data_date = #{dataDate,jdbcType=TIMESTAMP},
</if>
<if test="pollutionType != null">
pollution_type = #{pollutionType,jdbcType=VARCHAR},
</if>
<if test="value != null">
`value` = #{value,jdbcType=FLOAT},
</if>
</trim>
</insert>
</mapper>

View File

@@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.RStatPollutionSubstationDPOMapper">
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatPollutionSubstationDPO">
<!--@mbg.generated-->
<!--@Table r_stat_pollution_substation_d-->
<id column="substation_id" jdbcType="VARCHAR" property="substationId" />
<id column="data_date" jdbcType="TIMESTAMP" property="dataDate" />
<id column="pollution_type" jdbcType="VARCHAR" property="pollutionType" />
<result column="value" jdbcType="FLOAT" property="value" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
substation_id, data_date, pollution_type, `value`
</sql>
<update id="updateBatch" parameterType="java.util.List">
<!--@mbg.generated-->
update r_stat_pollution_substation_d
<trim prefix="set" suffixOverrides=",">
<trim prefix="`value` = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when substation_id = #{item.substationId,jdbcType=VARCHAR} then #{item.value,jdbcType=FLOAT}
</foreach>
</trim>
</trim>
where substation_id in
<foreach close=")" collection="list" item="item" open="(" separator=", ">
#{item.substationId,jdbcType=VARCHAR}
</foreach>
</update>
<insert id="batchInsert" parameterType="map">
<!--@mbg.generated-->
insert into r_stat_pollution_substation_d
(substation_id, data_date, pollution_type, `value`)
values
<foreach collection="list" item="item" separator=",">
(#{item.substationId,jdbcType=VARCHAR}, #{item.dataDate,jdbcType=TIMESTAMP}, #{item.pollutionType,jdbcType=VARCHAR},
#{item.value,jdbcType=FLOAT})
</foreach>
</insert>
<insert id="insertOrUpdate" parameterType="com.njcn.harmonic.pojo.po.RStatPollutionSubstationDPO">
<!--@mbg.generated-->
insert into r_stat_pollution_substation_d
(substation_id, data_date, pollution_type, `value`)
values
(#{substationId,jdbcType=VARCHAR}, #{dataDate,jdbcType=TIMESTAMP}, #{pollutionType,jdbcType=VARCHAR},
#{value,jdbcType=FLOAT})
on duplicate key update
substation_id = #{substationId,jdbcType=VARCHAR},
data_date = #{dataDate,jdbcType=TIMESTAMP},
pollution_type = #{pollutionType,jdbcType=VARCHAR},
`value` = #{value,jdbcType=FLOAT}
</insert>
<insert id="insertOrUpdateSelective" parameterType="com.njcn.harmonic.pojo.po.RStatPollutionSubstationDPO">
<!--@mbg.generated-->
insert into r_stat_pollution_substation_d
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="substationId != null">
substation_id,
</if>
<if test="dataDate != null">
data_date,
</if>
<if test="pollutionType != null">
pollution_type,
</if>
<if test="value != null">
`value`,
</if>
</trim>
values
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="substationId != null">
#{substationId,jdbcType=VARCHAR},
</if>
<if test="dataDate != null">
#{dataDate,jdbcType=TIMESTAMP},
</if>
<if test="pollutionType != null">
#{pollutionType,jdbcType=VARCHAR},
</if>
<if test="value != null">
#{value,jdbcType=FLOAT},
</if>
</trim>
on duplicate key update
<trim suffixOverrides=",">
<if test="substationId != null">
substation_id = #{substationId,jdbcType=VARCHAR},
</if>
<if test="dataDate != null">
data_date = #{dataDate,jdbcType=TIMESTAMP},
</if>
<if test="pollutionType != null">
pollution_type = #{pollutionType,jdbcType=VARCHAR},
</if>
<if test="value != null">
`value` = #{value,jdbcType=FLOAT},
</if>
</trim>
</insert>
</mapper>

View File

@@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.RStatPollutionSubstationQPOMapper">
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatPollutionSubstationQPO">
<!--@mbg.generated-->
<!--@Table r_stat_pollution_substation_q-->
<id column="substation_id" jdbcType="VARCHAR" property="substationId" />
<id column="data_date" jdbcType="TIMESTAMP" property="dataDate" />
<id column="pollution_type" jdbcType="VARCHAR" property="pollutionType" />
<result column="value" jdbcType="FLOAT" property="value" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
substation_id, data_date, pollution_type, `value`
</sql>
<update id="updateBatch" parameterType="java.util.List">
<!--@mbg.generated-->
update r_stat_pollution_substation_q
<trim prefix="set" suffixOverrides=",">
<trim prefix="`value` = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when substation_id = #{item.substationId,jdbcType=VARCHAR} then #{item.value,jdbcType=FLOAT}
</foreach>
</trim>
</trim>
where substation_id in
<foreach close=")" collection="list" item="item" open="(" separator=", ">
#{item.substationId,jdbcType=VARCHAR}
</foreach>
</update>
<insert id="batchInsert" parameterType="map">
<!--@mbg.generated-->
insert into r_stat_pollution_substation_q
(substation_id, data_date, pollution_type, `value`)
values
<foreach collection="list" item="item" separator=",">
(#{item.substationId,jdbcType=VARCHAR}, #{item.dataDate,jdbcType=TIMESTAMP}, #{item.pollutionType,jdbcType=VARCHAR},
#{item.value,jdbcType=FLOAT})
</foreach>
</insert>
<insert id="insertOrUpdate" parameterType="com.njcn.harmonic.pojo.po.RStatPollutionSubstationQPO">
<!--@mbg.generated-->
insert into r_stat_pollution_substation_q
(substation_id, data_date, pollution_type, `value`)
values
(#{substationId,jdbcType=VARCHAR}, #{dataDate,jdbcType=TIMESTAMP}, #{pollutionType,jdbcType=VARCHAR},
#{value,jdbcType=FLOAT})
on duplicate key update
substation_id = #{substationId,jdbcType=VARCHAR},
data_date = #{dataDate,jdbcType=TIMESTAMP},
pollution_type = #{pollutionType,jdbcType=VARCHAR},
`value` = #{value,jdbcType=FLOAT}
</insert>
<insert id="insertOrUpdateSelective" parameterType="com.njcn.harmonic.pojo.po.RStatPollutionSubstationQPO">
<!--@mbg.generated-->
insert into r_stat_pollution_substation_q
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="substationId != null">
substation_id,
</if>
<if test="dataDate != null">
data_date,
</if>
<if test="pollutionType != null">
pollution_type,
</if>
<if test="value != null">
`value`,
</if>
</trim>
values
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="substationId != null">
#{substationId,jdbcType=VARCHAR},
</if>
<if test="dataDate != null">
#{dataDate,jdbcType=TIMESTAMP},
</if>
<if test="pollutionType != null">
#{pollutionType,jdbcType=VARCHAR},
</if>
<if test="value != null">
#{value,jdbcType=FLOAT},
</if>
</trim>
on duplicate key update
<trim suffixOverrides=",">
<if test="substationId != null">
substation_id = #{substationId,jdbcType=VARCHAR},
</if>
<if test="dataDate != null">
data_date = #{dataDate,jdbcType=TIMESTAMP},
</if>
<if test="pollutionType != null">
pollution_type = #{pollutionType,jdbcType=VARCHAR},
</if>
<if test="value != null">
`value` = #{value,jdbcType=FLOAT},
</if>
</trim>
</insert>
</mapper>

View File

@@ -0,0 +1,102 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.RStatPollutionSubstationYPOMapper">
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatPollutionSubstationYPO">
<!--@mbg.generated-->
<!--@Table r_stat_pollution_substation_y-->
<id column="substation_id" jdbcType="VARCHAR" property="substationId" />
<id column="data_date" jdbcType="TIMESTAMP" property="dataDate" />
<id column="pollution_type" jdbcType="VARCHAR" property="pollutionType" />
<result column="value" jdbcType="FLOAT" property="value" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
substation_id, data_date, pollution_type, `value`
</sql>
<update id="updateBatch" parameterType="java.util.List">
<!--@mbg.generated-->
update r_stat_pollution_substation_y
<trim prefix="set" suffixOverrides=",">
<trim prefix="`value` = case" suffix="end,">
<foreach collection="list" index="index" item="item">
when substation_id = #{item.substationId,jdbcType=VARCHAR} then #{item.value,jdbcType=FLOAT}
</foreach>
</trim>
</trim>
where substation_id in
<foreach close=")" collection="list" item="item" open="(" separator=", ">
#{item.substationId,jdbcType=VARCHAR}
</foreach>
</update>
<insert id="batchInsert" parameterType="map">
<!--@mbg.generated-->
insert into r_stat_pollution_substation_y
(substation_id, data_date, pollution_type, `value`)
values
<foreach collection="list" item="item" separator=",">
(#{item.substationId,jdbcType=VARCHAR}, #{item.dataDate,jdbcType=TIMESTAMP}, #{item.pollutionType,jdbcType=VARCHAR},
#{item.value,jdbcType=FLOAT})
</foreach>
</insert>
<insert id="insertOrUpdate" parameterType="com.njcn.harmonic.pojo.po.RStatPollutionSubstationYPO">
<!--@mbg.generated-->
insert into r_stat_pollution_substation_y
(substation_id, data_date, pollution_type, `value`)
values
(#{substationId,jdbcType=VARCHAR}, #{dataDate,jdbcType=TIMESTAMP}, #{pollutionType,jdbcType=VARCHAR},
#{value,jdbcType=FLOAT})
on duplicate key update
substation_id = #{substationId,jdbcType=VARCHAR},
data_date = #{dataDate,jdbcType=TIMESTAMP},
pollution_type = #{pollutionType,jdbcType=VARCHAR},
`value` = #{value,jdbcType=FLOAT}
</insert>
<insert id="insertOrUpdateSelective" parameterType="com.njcn.harmonic.pojo.po.RStatPollutionSubstationYPO">
<!--@mbg.generated-->
insert into r_stat_pollution_substation_y
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="substationId != null">
substation_id,
</if>
<if test="dataDate != null">
data_date,
</if>
<if test="pollutionType != null">
pollution_type,
</if>
<if test="value != null">
`value`,
</if>
</trim>
values
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="substationId != null">
#{substationId,jdbcType=VARCHAR},
</if>
<if test="dataDate != null">
#{dataDate,jdbcType=TIMESTAMP},
</if>
<if test="pollutionType != null">
#{pollutionType,jdbcType=VARCHAR},
</if>
<if test="value != null">
#{value,jdbcType=FLOAT},
</if>
</trim>
on duplicate key update
<trim suffixOverrides=",">
<if test="substationId != null">
substation_id = #{substationId,jdbcType=VARCHAR},
</if>
<if test="dataDate != null">
data_date = #{dataDate,jdbcType=TIMESTAMP},
</if>
<if test="pollutionType != null">
pollution_type = #{pollutionType,jdbcType=VARCHAR},
</if>
<if test="value != null">
`value` = #{value,jdbcType=FLOAT},
</if>
</trim>
</insert>
</mapper>

View File

@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.harmonic.mapper.RStatPwPermeabilityMMapper">
<resultMap id="BaseResultMap" type="com.njcn.harmonic.pojo.po.RStatPwPermeabilityM">
<id property="orgNo" column="org_no" jdbcType="VARCHAR"/>
<id property="dataDate" column="data_date" jdbcType="DATE"/>
<id property="psrId" column="psr_id" jdbcType="VARCHAR"/>
<result property="voltageAvg" column="voltage_avg" jdbcType="FLOAT"/>
<result property="voltageSd" column="voltage_sd" jdbcType="FLOAT"/>
<result property="unbalanceAvg" column="unbalance_avg" jdbcType="FLOAT"/>
<result property="unbalanceSd" column="unbalance_sd" jdbcType="FLOAT"/>
<result property="vthdAvg" column="vthd_avg" jdbcType="FLOAT"/>
<result property="vthdSd" column="vthd_sd" jdbcType="FLOAT"/>
<result property="flickerAvg" column="flicker_avg" jdbcType="FLOAT"/>
<result property="flickerSd" column="flicker_sd" jdbcType="FLOAT"/>
<result property="permeabilityType" column="permeability_type" jdbcType="VARCHAR"/>
</resultMap>
<sql id="Base_Column_List">
org_no,data_date,psr_id,
voltage_avg,voltage_sd,unbalance_avg,
unbalance_sd,vthd_avg,vthd_sd,
flicker_avg,flicker_sd,permeability_type
</sql>
<select id="getPwPermeabilityList" resultType="com.njcn.harmonic.pojo.vo.RStatPwPermeabilityMVO">
select
rspp25.org_no as orgNO, rspp25.psr_id as psrId,
rspp25.voltage_avg as voltageAvg25,rspp25.voltage_sd as voltageSd25,rspp25.unbalance_avg as unbalanceAvg25,
rspp25.unbalance_sd as unbalanceSd25, rspp25.vthd_avg as vthdAvg25,rspp25.vthd_sd as vthdSd25,
rspp25.flicker_avg as flickerAvg25, rspp25.flicker_sd as flickerSd25,
rspp50.voltage_avg as voltageAvg50,rspp50.voltage_sd as voltageSd50,rspp50.unbalance_avg as unbalanceAvg50,
rspp50.unbalance_sd as unbalanceSd50, rspp50.vthd_avg as vthdAvg50,rspp50.vthd_sd as vthdSd50,
rspp50.flicker_avg as flickerAvg50, rspp50.flicker_sd as flickerSd50,
rspp75.voltage_avg as voltageAvg75,rspp75.voltage_sd as voltageSd75,rspp75.unbalance_avg as unbalanceAvg75,
rspp75.unbalance_sd as unbalanceSd75, rspp75.vthd_avg as vthdAvg75,rspp75.vthd_sd as vthdSd75,
rspp75.flicker_avg as flickerAvg75, rspp75.flicker_sd as flickerSd75,
rspp99.voltage_avg as voltageAvg99,rspp99.voltage_sd as voltageSd99,rspp99.unbalance_avg as unbalanceAvg99,
rspp99.unbalance_sd as unbalanceSd99, rspp99.vthd_avg as vthdAvg99,rspp99.vthd_sd as vthdSd99,
rspp99.flicker_avg as flickerAvg99, rspp99.flicker_sd as flickerSd99,
rspp100.voltage_avg as voltageAvg100,rspp100.voltage_sd as voltageSd100,rspp100.unbalance_avg as unbalanceAvg100,
rspp100.unbalance_sd as unbalanceSd100, rspp100.vthd_avg as vthdAvg100,rspp100.vthd_sd as vthdSd100,
rspp100.flicker_avg as flickerAvg100, rspp100.flicker_sd as flickerSd100
from
r_stat_pw_permeability_m rspp25
left join r_stat_pw_permeability_m rspp50 on rspp25.psr_id = rspp50.psr_id
left join r_stat_pw_permeability_m rspp75 on rspp25.psr_id = rspp75.psr_id
left join r_stat_pw_permeability_m rspp99 on rspp25.psr_id = rspp99.psr_id
left join r_stat_pw_permeability_m rspp100 on rspp25.psr_id = rspp100.psr_id
where 1 = 1
<if test="startTime != null and startTime != ''">
and DATE_FORMAT(rspp25.data_date, '%Y-%m') &gt;= DATE_FORMAT(#{startTime}, '%Y-%m')
</if>
<if test="endTime != null and endTime != ''">
and DATE_FORMAT(rspp25.data_date, '%Y-%m') &lt;= DATE_FORMAT(#{endTime}, '%Y-%m')
</if>
and rspp25.data_date = rspp50.data_date
and rspp25.data_date = rspp75.data_date
and rspp25.data_date = rspp99.data_date
and rspp25.data_date = rspp100.data_date
and rspp25.permeability_type = #{Rate_0_25}
and rspp50.permeability_type = #{Rate_25_50}
and rspp75.permeability_type = #{Rate_50_75}
and rspp99.permeability_type = #{Rate_75_100}
and rspp100.permeability_type = #{Rate_100}
and rspp25.psr_id in
<foreach collection="idList" open="(" close=")" separator="," item="id">
#{id}
</foreach>
</select>
</mapper>

View File

@@ -0,0 +1,26 @@
package com.njcn.harmonic.service;
import com.njcn.harmonic.pojo.param.RStatPwPermeabilityMParam;
import com.njcn.harmonic.pojo.po.RStatPwPermeabilityM;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.harmonic.pojo.vo.RStatPwPermeabilityMVO;
import java.util.List;
/**
* 各渗透率光伏台区基准水平
* @author jianghf
* @description 针对表【r_stat_pw_permeability_m】的数据库操作Service
* @createDate 2022-11-07 10:35:21
*/
public interface RStatPwPermeabilityMService extends IService<RStatPwPermeabilityM> {
/***
* 获取各渗透率光伏台区基准水平
* @author jianghaifei
* @date 2022-11-07 14:38
* @param rStatPwPermeabilityMParam
* @return java.util.List<com.njcn.harmonic.pojo.vo.RStatPwPermeabilityMVO>
*/
List<RStatPwPermeabilityMVO> getPwPermeabilityList(RStatPwPermeabilityMParam rStatPwPermeabilityMParam);
}

View File

@@ -0,0 +1,37 @@
package com.njcn.harmonic.service.distribution;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatOrgQ;
import com.njcn.harmonic.pojo.vo.PwRStatOrgVO;
import com.njcn.harmonic.pojo.vo.RStatOrgIndexVO;
import com.njcn.harmonic.pojo.vo.RStatOrgVO;
import java.util.List;
/**
* <p>
* 配网区域分类统计月表 服务类
* </p>
*
* @author rui.wu
* @since 2022-11-08
*/
public interface PwRStatOrgService extends IService<RStatOrgQ> {
/**
* 配网查询区域超标统计
* @param param
* @return
*/
List<RStatOrgVO.PwRStatOrgVO> getRStatHarmonicAll(StatSubstationBizBaseParam param);
/**
* 配网区域稳态指标合格率统计表
*
* @param param
* @return
*/
List<PwRStatOrgVO> getRStatOrgIndex(StatSubstationBizBaseParam param);
}

View File

@@ -0,0 +1,143 @@
package com.njcn.harmonic.service.distribution.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.device.pms.api.PwMonitorClient;
import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO;
import com.njcn.device.pms.pojo.param.PwPmsMonitorParam;
import com.njcn.harmonic.mapper.distribution.PwRStatOrgMapper;
import com.njcn.harmonic.mapper.majornetwork.RStatOrgMMapper;
import com.njcn.harmonic.mapper.majornetwork.RStatOrgQMapper;
import com.njcn.harmonic.mapper.majornetwork.RStatOrgYMapper;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatOrgQ;
import com.njcn.harmonic.pojo.vo.PwRStatOrgVO;
import com.njcn.harmonic.pojo.vo.RStatOrgVO;
import com.njcn.harmonic.service.distribution.PwRStatOrgService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.pojo.po.DictData;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.dto.DeptDTO;
import com.njcn.web.utils.WebUtil;
import lombok.RequiredArgsConstructor;
import org.apache.commons.compress.utils.Lists;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
* <p>
* 配网区域分类统计月表 服务实现类
* </p>
*
* @author rui.wu
* @since 2022-11-08
*/
@Service
@RequiredArgsConstructor
public class PwRStatOrgServiceImpl extends ServiceImpl<PwRStatOrgMapper, RStatOrgQ> implements PwRStatOrgService {
private final DeptFeignClient deptFeignClient;
private final DicDataFeignClient dicDataFeignClient;
private final PwRStatOrgMapper pwRStatOrgMapper;
private final RStatOrgYMapper rStatOrgYMapper;
private final RStatOrgQMapper rStatOrgQMapper;
private final RStatOrgMMapper rStatOrgMMapper;
private final PwMonitorClient pwMonitorClient;
@Override
public List<RStatOrgVO.PwRStatOrgVO> getRStatHarmonicAll(StatSubstationBizBaseParam param) {
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
//获取部门id集合
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).collect(Collectors.toList());
Map<String, DeptDTO> deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getId, Function.identity()));
//获取配网信息
DictData distributionData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
List<RStatOrgVO.PwRStatOrgVO> info = new ArrayList<>();
List<RStatOrgVO.PwRStatOrgVO> newList = new ArrayList<>();
switch (String.valueOf(param.getType())) {
//查询区域超标统计-年数据
case BizParamConstant.STAT_BIZ_YEAR:
info = pwRStatOrgMapper.selectListY(param,deptIds,distributionData.getId());
break;
//查询区域超标统计-季数据
case BizParamConstant.STAT_BIZ_QUARTER:
info = pwRStatOrgMapper.selectListQ(param,deptIds,distributionData.getId());
break;
//查询各区域超标统计-月数据
case BizParamConstant.STAT_BIZ_MONTH:
info = pwRStatOrgMapper.selectListM(param,deptIds,distributionData.getId());
break;
default:
break;
}
if(CollectionUtil.isNotEmpty(info)){
Map<String, List<RStatOrgVO.PwRStatOrgVO>> collect = info.stream().collect(
Collectors.groupingBy(RStatOrgVO.PwRStatOrgVO::getOrgNo));
collect.forEach((key, value) -> {
if (deptMap.containsKey(key)) {
for (RStatOrgVO.PwRStatOrgVO org : value) {
DeptDTO deptDTO = deptMap.get(key);
org.setOrgName(deptDTO.getName());
newList.add(org);
}
}
});
return newList;
}
return Lists.newArrayList();
}
@Override
public List<PwRStatOrgVO> getRStatOrgIndex(StatSubstationBizBaseParam param) {
// 获取当前用户的部门的子部门信息
PwPmsMonitorParam pwPmsMonitorParam=new PwPmsMonitorParam();
pwPmsMonitorParam.setOrgId(param.getId());
pwPmsMonitorParam.setMonitorSort(param.getIds());
List<PwPmsMonitorDTO> data = pwMonitorClient.getPwMonitorList(pwPmsMonitorParam).getData();
//获取配网信息
DictData distributionData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
List<PwRStatOrgVO> info=new ArrayList<>();
if (CollectionUtil.isNotEmpty(data)) {
// 过滤出部门id
List<String> deptIds = data.stream().map(PwPmsMonitorDTO::getOrgId).collect(Collectors.toList());
StatSubstationBizBaseParam baseParam = BeanUtil.copyProperties(param, StatSubstationBizBaseParam.class);
baseParam.setIds(deptIds);
// 类型1年 2季度 3月份 4日
switch (param.getType().toString()) {
case BizParamConstant.STAT_BIZ_YEAR:
// 获取年区域稳态指标合格率统计表
info = rStatOrgYMapper.getPwYearRStatOrgIndex(baseParam, distributionData.getId());
break;
case BizParamConstant.STAT_BIZ_QUARTER:
// 获取季区域稳态指标合格率统计表
info = rStatOrgQMapper.getPwQuarterRStatOrgIndex(baseParam, distributionData.getId());
break;
case BizParamConstant.STAT_BIZ_MONTH:
// 获取月区域稳态指标合格率统计表
info = rStatOrgMMapper.getPwMonthRStatOrgIndex(baseParam, distributionData.getId());
break;
default:
break;
}
}
//匹配名称
for (PwPmsMonitorDTO dto : data) {
for (PwRStatOrgVO vo : info) {
if (dto.getOrgId().equals(vo.getOrgNo())) {
vo.setOrgNo(dto.getOrgId());
vo.setOrgName(dto.getOrgName());
}
}
}
return info;
}
}

View File

@@ -0,0 +1,85 @@
package com.njcn.harmonic.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.device.pms.api.PwMonitorClient;
import com.njcn.device.pms.pojo.dto.PwPmsMonitorDTO;
import com.njcn.device.pms.pojo.param.PwPmsMonitorParam;
import com.njcn.harmonic.mapper.RStatPwPermeabilityMMapper;
import com.njcn.harmonic.pojo.param.RStatPwPermeabilityMParam;
import com.njcn.harmonic.pojo.po.RStatPwPermeabilityM;
import com.njcn.harmonic.pojo.vo.RStatPwPermeabilityMVO;
import com.njcn.harmonic.service.RStatPwPermeabilityMService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 各渗透率光伏台区基准水平
* @author jianghf
* @description 针对表【r_stat_pw_permeability_m】的数据库操作Service实现
* @createDate 2022-11-07 10:35:21
*/
@Service
@RequiredArgsConstructor
public class RStatPwPermeabilityMServiceImpl extends ServiceImpl<RStatPwPermeabilityMMapper, RStatPwPermeabilityM>
implements RStatPwPermeabilityMService{
private final PwMonitorClient pwMonitorClient;
private final DicDataFeignClient dicDataFeignClient;
/***
* 获取各渗透率光伏台区基准水平
* @author jianghaifei
* @date 2022-11-07 14:38
* @param rStatPwPermeabilityMParam
* @return java.util.List<com.njcn.harmonic.pojo.vo.RStatPwPermeabilityMVO>
*/
@Override
public List<RStatPwPermeabilityMVO> getPwPermeabilityList(RStatPwPermeabilityMParam rStatPwPermeabilityMParam) {
//提起参数
String id = rStatPwPermeabilityMParam.getId(); //单位id
String psrName = rStatPwPermeabilityMParam.getPsrName(); //台区名称
String startTime = rStatPwPermeabilityMParam.getStartTime(); //开始时间
String endTime = rStatPwPermeabilityMParam.getEndTime(); //结束时间
//根据条件查询单位下面的所有配网监测点
PwPmsMonitorParam pwPmsMonitorParam = new PwPmsMonitorParam();
pwPmsMonitorParam.setOrgId(id); //单位id
pwPmsMonitorParam.setMonitorName(psrName); //台区名称(监测点名称)
List<PwPmsMonitorDTO> pwMonitorList = pwMonitorClient.getPwMonitorList(pwPmsMonitorParam).getData();
if (CollUtil.isEmpty(pwMonitorList)) {
return new ArrayList<>();
}
//监测点id集合
List<String> monitorIdList = pwMonitorList.stream().map(PwPmsMonitorDTO::getMonitorId).collect(Collectors.toList());
//监测点map key:监测点id value:监测点实体
Map<String, PwPmsMonitorDTO> monitorMap = pwMonitorList.stream().collect(Collectors.toMap(PwPmsMonitorDTO::getMonitorId, monitor -> monitor));
//获取各渗透率字典
List<DictData> rateList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.PERMEABILITY_TYPE.getCode()).getData();
Map<String, Object> condMap = rateList.stream().collect(Collectors.toMap(DictData::getCode, DictData::getId));
condMap.put("startTime", startTime);
condMap.put("endTime", endTime);
condMap.put("idList", monitorIdList);
List<RStatPwPermeabilityMVO> list = this.baseMapper.getPwPermeabilityList(condMap);
list = list.stream().peek(item -> {
item.setOrgName(monitorMap.get(item.getPsrId()).getOrgName()); //单位名称
item.setPsrName(monitorMap.get(item.getPsrId()).getMonitorName()); //台区名称
}).collect(Collectors.toList());
return list;
}
}

View File

@@ -0,0 +1,27 @@
package com.njcn.harmonic.service.majornetwork;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailD;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.harmonic.pojo.vo.RMpPartHarmonicDetailIconVO;
import java.util.List;
/**
* <p>
* 服务类
* </p>
*
* @author rui.wu
* @since 2022-10-24
*/
public interface RMpPartHarmonicDetailDService extends IService<RMpPartHarmonicDetailD> {
/**
* 稳态指标超标明细表-指标趋势图
*
* @param param
* @return
*/
List<RMpPartHarmonicDetailIconVO> getRMpPartHarmonicDetailIcon(StatisticsBizBaseParam param);
}

View File

@@ -0,0 +1,29 @@
package com.njcn.harmonic.service.majornetwork;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.harmonic.pojo.param.RStatOrgParam;
import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailM;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.harmonic.pojo.vo.RMpPartHarmonicDetailVO;
import java.util.List;
/**
* <p>
* 服务类
* </p>
*
* @author rui.wu
* @since 2022-10-24
*/
public interface RMpPartHarmonicDetailMService extends IService<RMpPartHarmonicDetailM> {
/**
* 稳态指标超标明细表
*
* @param param
* @return
*/
List<RMpPartHarmonicDetailVO> getRMpPartHarmonicDetail(RStatOrgParam param);
}

Some files were not shown because too many files have changed in this diff Show More