diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpPartHarmonicDetailD.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpPartHarmonicDetailD.java index c481b045c..7cfad86a4 100644 --- a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpPartHarmonicDetailD.java +++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpPartHarmonicDetailD.java @@ -93,7 +93,7 @@ public class RMpPartHarmonicDetailD implements Serializable { /** * 谐波电压超标次数 */ - @TableField(value = "v_times") + @TableField(value = "v_times", exist = false) private Integer vTimes; /** @@ -105,14 +105,14 @@ public class RMpPartHarmonicDetailD implements Serializable { /** * 谐波电流超标次数 */ - @TableField(value = "i_times") + @TableField(value = "i_times", exist = false) private Integer iTimes; /** * 2次谐波电压含有率是否超标(0:否 1:是) */ @TableField(value = "is_v_2") - private Integer isV2; + private Integer isV2; /** * 3次谐波电压含有率是否超标(0:否 1:是) @@ -711,17 +711,22 @@ public class RMpPartHarmonicDetailD implements Serializable { /** * 三相电压不平衡度超标次数 */ - @TableField(value = "unbalance_times") + @TableField(value = "unbalance_times", exist = false) private Integer unbalanceTimes; /** * 负序电流超标次数 */ - @TableField(value = "i_neg_times") + @TableField(value = "i_neg_times", exist = false) private Integer iNegTimes; @TableField(exist = false) private static final long serialVersionUID = 1L; + @TableField(exist = false) + private Integer isFlicker; + + @TableField(exist = false) + private Integer isInuharm; } diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpSurplusHarmonicDetailD.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpSurplusHarmonicDetailD.java index ce6ee70e3..8e8ddd293 100644 --- a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpSurplusHarmonicDetailD.java +++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpSurplusHarmonicDetailD.java @@ -51,7 +51,7 @@ public class RMpSurplusHarmonicDetailD implements Serializable { /** * 间谐波电压超标次数 */ - @TableField(value = "inuharm_times") + @TableField(value = "inuharm_times", exist = false) private Integer inuharmTimes; /** diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/HarmonicOverLimitController.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/HarmonicOverLimitController.java new file mode 100644 index 000000000..8c54635aa --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/HarmonicOverLimitController.java @@ -0,0 +1,64 @@ +package com.njcn.prepare.harmonic.controller.line; + +import com.njcn.common.pojo.annotation.OperateInfo; +import com.njcn.common.pojo.constant.OperateType; +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.prepare.harmonic.pojo.param.LineParam; +import com.njcn.prepare.harmonic.service.mysql.line.IRMpPartHarmonicDetailDService; +import com.njcn.prepare.harmonic.service.mysql.line.IRMpSurplusHarmonicDetailDService; +import com.njcn.web.controller.BaseController; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.annotation.Validated; +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; + +/** + * 类的介绍: + * + * @author xuyang + * @version 1.0.0 + * @createTime 2023/4/20 16:05 + */ +@Validated +@Slf4j +@RestController +@RequestMapping("/harmonicOverLimit") +@Api(tags = "监测点稳态指标统计") +@AllArgsConstructor +public class HarmonicOverLimitController extends BaseController { + + private final IRMpPartHarmonicDetailDService mpPartHarmonicDetailDService; + + private final IRMpSurplusHarmonicDetailDService mpSurplusHarmonicDetailDService; + + @OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD) + @PostMapping("/harmonicDetailDay1") + @ApiOperation("监测点稳态指标超标明细日表1") + @ApiImplicitParam(name = "lineParam", value = "算法通用查询参数", required = true) + public HttpResult harmonicDetailDay1(@RequestBody @Validated LineParam lineParam) { + String methodDescribe = getMethodDescribe("harmonicDetailDay1"); + mpPartHarmonicDetailDService.insertHarmonicDetailDayOne(lineParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); + } + + @OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD) + @PostMapping("/harmonicDetailDay2") + @ApiOperation("监测点稳态指标超标明细日表2") + @ApiImplicitParam(name = "lineParam", value = "算法通用查询参数", required = true) + public HttpResult harmonicDetailDay2(@RequestBody @Validated LineParam lineParam) { + String methodDescribe = getMethodDescribe("harmonicDetailDay2"); + mpSurplusHarmonicDetailDService.insertHarmonicDetailDayTwo(lineParam); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); + } + + +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/SteadyIndexExceedController.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/SteadyIndexExceedController.java index c3855a219..faeb20ea2 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/SteadyIndexExceedController.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/line/SteadyIndexExceedController.java @@ -35,6 +35,7 @@ public class SteadyIndexExceedController extends BaseController { private final SteadyIndexExceedService steadyIndexExceedService; + @Deprecated @OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD) @PostMapping("/isValueExceedID") @ApiOperation("日统计I、II、III类监测点是否超标限值") @@ -50,6 +51,7 @@ public class SteadyIndexExceedController extends BaseController { } + @Deprecated @OperateInfo(info = LogEnum.BUSINESS_COMMON,operateType = OperateType.ADD) @PostMapping("/isValueExceedIID") @ApiOperation("日统计I、II类监测点是否超标限值") diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/RMpPartHarmonicDetailDMapper.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/RMpPartHarmonicDetailDMapper.java index 88ac204da..1fff2600f 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/RMpPartHarmonicDetailDMapper.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/RMpPartHarmonicDetailDMapper.java @@ -1,11 +1,12 @@ package com.njcn.prepare.harmonic.mapper.mysql.line; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.github.jeffreyning.mybatisplus.base.MppBaseMapper; import com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailD; import com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailM; import org.apache.ibatis.annotations.Param; import java.time.LocalDate; +import java.util.List; /** * RMpPartHarmonicDetailDMapper @@ -14,7 +15,14 @@ import java.time.LocalDate; * @version 1.0.0 * @createTime 2022/12/5 - 15:21 */ -public interface RMpPartHarmonicDetailDMapper extends BaseMapper { +public interface RMpPartHarmonicDetailDMapper extends MppBaseMapper { RMpPartHarmonicDetailM getPartSumByData(@Param("lineId") String lineId, @Param("startTime") LocalDate startTime, @Param("endTime") LocalDate endTime); + + /** + * 获取监测点稳态指标超标明细日表1数据 + * @param time 时间 + * @return 集合 + */ + List getHarmonicDetailDayOne(String time); } diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/RMpSurplusHarmonicDetailDMapper.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/RMpSurplusHarmonicDetailDMapper.java index 3ad681390..9e364e605 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/RMpSurplusHarmonicDetailDMapper.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/RMpSurplusHarmonicDetailDMapper.java @@ -1,11 +1,14 @@ package com.njcn.prepare.harmonic.mapper.mysql.line; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.github.jeffreyning.mybatisplus.base.MppBaseMapper; +import com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailD; import com.njcn.harmonic.pojo.po.RMpSurplusHarmonicDetailD; import com.njcn.harmonic.pojo.po.RMpSurplusHarmonicDetailM; import org.apache.ibatis.annotations.Param; import java.time.LocalDate; +import java.util.List; /** * RMpSurplusHarmonicDetailDMapper @@ -14,7 +17,14 @@ import java.time.LocalDate; * @version 1.0.0 * @createTime 2022/12/8 - 15:21 */ -public interface RMpSurplusHarmonicDetailDMapper extends BaseMapper { +public interface RMpSurplusHarmonicDetailDMapper extends MppBaseMapper { RMpSurplusHarmonicDetailM getSurplusSumByData(@Param("lineId") String lineId, @Param("startTime") LocalDate startTime, @Param("endTime") LocalDate endTime); + + /** + * 获取监测点稳态指标超标明细日表2数据 + * @param time 时间 + * @return 集合 + */ + List getHarmonicDetailDayTwo(String time); } diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/mapping/RMpPartHarmonicDetailDMapper.xml b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/mapping/RMpPartHarmonicDetailDMapper.xml index bba508b66..77265e0b4 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/mapping/RMpPartHarmonicDetailDMapper.xml +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/mapping/RMpPartHarmonicDetailDMapper.xml @@ -73,4 +73,342 @@ measurement_point_id + + diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/mapping/RMpSurplusHarmonicDetailDMapper.xml b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/mapping/RMpSurplusHarmonicDetailDMapper.xml index d0a06ac9a..e7c5a29de 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/mapping/RMpSurplusHarmonicDetailDMapper.xml +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/line/mapping/RMpSurplusHarmonicDetailDMapper.xml @@ -33,4 +33,105 @@ measurement_point_id + + diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/RMpPartHarmonicDetailDServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/RMpPartHarmonicDetailDServiceImpl.java new file mode 100644 index 000000000..c1e0ff204 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/RMpPartHarmonicDetailDServiceImpl.java @@ -0,0 +1,41 @@ +package com.njcn.prepare.harmonic.service.mysql.Impl.line; + +import com.github.jeffreyning.mybatisplus.service.MppServiceImpl; +import com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailD; +import com.njcn.prepare.harmonic.mapper.mysql.line.RMpPartHarmonicDetailDMapper; +import com.njcn.prepare.harmonic.pojo.param.LineParam; +import com.njcn.prepare.harmonic.service.mysql.line.IRMpPartHarmonicDetailDService; +import org.springframework.scheduling.annotation.Async; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; + +import java.util.List; + +/** + * 类的介绍: + * + * @author xuyang + * @version 1.0.0 + * @createTime 2023/4/23 15:08 + */ +@Service +public class RMpPartHarmonicDetailDServiceImpl extends MppServiceImpl implements IRMpPartHarmonicDetailDService { + + @Override + @Transactional(rollbackFor = {Exception.class}) + @Async("asyncExecutor") + public void insertHarmonicDetailDayOne(LineParam lineParam) { + List list = this.baseMapper.getHarmonicDetailDayOne(lineParam.getDataDate()); + if (!CollectionUtils.isEmpty(list)){ + list.forEach(item->{ + if (item.getIsFreq()>0 || item.getIsVDev()>0 || item.getIsV()>0 || item.getIsI()>0 || item.getIsUnbalance()>0 || item.getIsINeg()>0 || item.getIsFlicker()>0 || item.getIsInuharm()>0){ + item.setIsHarmonic(1); + } else { + item.setIsHarmonic(0); + } + }); + this.saveOrUpdateBatchByMultiId(list,50); + } + } +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/RMpSurplusHarmonicDetailDServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/RMpSurplusHarmonicDetailDServiceImpl.java new file mode 100644 index 000000000..8e51181f3 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/line/RMpSurplusHarmonicDetailDServiceImpl.java @@ -0,0 +1,37 @@ +package com.njcn.prepare.harmonic.service.mysql.Impl.line; + +import com.github.jeffreyning.mybatisplus.service.MppServiceImpl; +import com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailD; +import com.njcn.harmonic.pojo.po.RMpSurplusHarmonicDetailD; +import com.njcn.prepare.harmonic.mapper.mysql.line.RMpPartHarmonicDetailDMapper; +import com.njcn.prepare.harmonic.mapper.mysql.line.RMpSurplusHarmonicDetailDMapper; +import com.njcn.prepare.harmonic.pojo.param.LineParam; +import com.njcn.prepare.harmonic.service.mysql.line.IRMpPartHarmonicDetailDService; +import com.njcn.prepare.harmonic.service.mysql.line.IRMpSurplusHarmonicDetailDService; +import org.springframework.scheduling.annotation.Async; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; + +import java.util.List; + +/** + * 类的介绍: + * + * @author xuyang + * @version 1.0.0 + * @createTime 2023/4/23 15:08 + */ +@Service +public class RMpSurplusHarmonicDetailDServiceImpl extends MppServiceImpl implements IRMpSurplusHarmonicDetailDService { + + @Override + @Transactional(rollbackFor = {Exception.class}) + @Async("asyncExecutor") + public void insertHarmonicDetailDayTwo(LineParam lineParam) { + List list = this.baseMapper.getHarmonicDetailDayTwo(lineParam.getDataDate()); + if (!CollectionUtils.isEmpty(list)){ + this.saveOrUpdateBatchByMultiId(list,50); + } + } +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/IRMpPartHarmonicDetailDService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/IRMpPartHarmonicDetailDService.java new file mode 100644 index 000000000..7084af5b7 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/IRMpPartHarmonicDetailDService.java @@ -0,0 +1,17 @@ +package com.njcn.prepare.harmonic.service.mysql.line; + +import com.njcn.prepare.harmonic.pojo.param.LineParam; + +/** + * @author xy + */ +public interface IRMpPartHarmonicDetailDService { + + /** + * 计算监测点稳态指标超标明细日表1数据 + * @param lineParam + */ + void insertHarmonicDetailDayOne(LineParam lineParam); + + +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/IRMpSurplusHarmonicDetailDService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/IRMpSurplusHarmonicDetailDService.java new file mode 100644 index 000000000..6453e4ebd --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/line/IRMpSurplusHarmonicDetailDService.java @@ -0,0 +1,16 @@ +package com.njcn.prepare.harmonic.service.mysql.line; + +import com.njcn.prepare.harmonic.pojo.param.LineParam; + +/** + * @author xy + */ +public interface IRMpSurplusHarmonicDetailDService { + + /** + * 计算监测点稳态指标超标明细日表2数据 + * @param lineParam + */ + void insertHarmonicDetailDayTwo(LineParam lineParam); + +}