diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RDnOperatingIndexMPO.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RDnOperatingIndexMPO.java new file mode 100644 index 000000000..87635d268 --- /dev/null +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RDnOperatingIndexMPO.java @@ -0,0 +1,103 @@ +package com.njcn.prepare.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 com.github.jeffreyning.mybatisplus.anno.MppMultiId; +import lombok.Data; + +import java.util.Date; + +/** + * + * Description: + * Date: 2023/10/7 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Data +@TableName(value = "r_dn_operating_index_m") +public class RDnOperatingIndexMPO { + /** + * 单位ID + */ + @MppMultiId(value = "org_no") + private String orgNo; + + /** + * 时间 + */ + @MppMultiId(value = "data_date") + private Date dataDate; + + /** + * 监测点类型 + */ + @MppMultiId(value = "measurement_point_type") + private String measurementPointType; + + /** + * 在运监测点数 + */ + @TableField(value = "measurement_run_points") + private Integer measurementRunPoints; + + /** + * 在线监测点数 + */ + @TableField(value = "transit_measurement_points") + private Integer transitMeasurementPoints; + + /** + * 有效接入监测点数量 + */ + @TableField(value = "effective_access_measurement_count") + private Integer effectiveAccessMeasurementCount; + + /** + * 有效接入率:有效接入监测点数量/在运监测点数 + */ + @TableField(value = "effective_access_rate") + private Double effectiveAccessRate; + + /** + * 应设点数 + */ + @TableField(value = "should_count") + private Integer shouldCount; + + /** + * 应设点覆盖率 + */ + @TableField(value = "should_point_coverage") + private Integer shouldPointCoverage; + + /** + * 数据完整率 + */ + @TableField(value = "data_integrity_rate") + private Double dataIntegrityRate; + + /** + * 数据准确率 + */ + @TableField(value = "data_right_rate") + private Double dataRightRate; + + /** + * 指标完整率 + */ + @TableField(value = "index_integrity_rate") + private Double indexIntegrityRate; + + /** + * 数据是否异常(0:正常 1:异常) + */ + @TableField(value = "is_unusual") + private Integer isUnusual; + + +} \ No newline at end of file diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RDnOperatingQPO.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RDnOperatingQPO.java new file mode 100644 index 000000000..a89367827 --- /dev/null +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RDnOperatingQPO.java @@ -0,0 +1,101 @@ +package com.njcn.prepare.harmonic.pojo.po; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.github.jeffreyning.mybatisplus.anno.MppMultiId; +import lombok.Data; + +import java.util.Date; + +/** + * + * Description: + * Date: 2023/10/7 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Data +@TableName(value = "r_dn_operating_q") +public class RDnOperatingQPO { + /** + * 单位ID + */ + @MppMultiId(value = "org_no") + private String orgNo; + + /** + * 时间 + */ + @MppMultiId(value = "data_date") + private Date dataDate; + + /** + * 监测点类型 + */ + @MppMultiId(value = "measurement_point_type") + private String measurementPointType; + + /** + * 在运监测点数 + */ + @TableField(value = "measurement_run_points") + private Integer measurementRunPoints; + + /** + * 在线监测点数 + */ + @TableField(value = "transit_measurement_points") + private Integer transitMeasurementPoints; + + /** + * 有效接入监测点数量 + */ + @TableField(value = "effective_access_measurement_count") + private Integer effectiveAccessMeasurementCount; + + /** + * 有效接入率 + */ + @TableField(value = "effective_access_rate") + private Double effectiveAccessRate; + + /** + * 应设点数 + */ + @TableField(value = "should_count") + private Integer shouldCount; + + /** + * 应设点覆盖率 + */ + @TableField(value = "should_point_coverage") + private Integer shouldPointCoverage; + + /** + * 数据完整率 + */ + @TableField(value = "data_integrity_rate") + private Double dataIntegrityRate; + + /** + * 数据准确率 + */ + @TableField(value = "data_right_rate") + private Double dataRightRate; + + /** + * 指标完整率 + */ + @TableField(value = "index_integrity_rate") + private Double indexIntegrityRate; + + /** + * 数据是否异常(0:正常 1:异常) + */ + @TableField(value = "is_unusual") + private Integer isUnusual; + + +} \ No newline at end of file diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RDnOperatingYPO.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RDnOperatingYPO.java new file mode 100644 index 000000000..20124d407 --- /dev/null +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RDnOperatingYPO.java @@ -0,0 +1,100 @@ +package com.njcn.prepare.harmonic.pojo.po; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.github.jeffreyning.mybatisplus.anno.MppMultiId; +import lombok.Data; + +import java.util.Date; + +/** + * + * Description: + * Date: 2023/10/7 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Data +@TableName(value = "r_dn_operating_y") +public class RDnOperatingYPO { + /** + * 单位ID + */ + @MppMultiId(value = "org_no") + private String orgNo; + + /** + * 时间 + */ + @MppMultiId(value = "data_date") + private Date dataDate; + + /** + * 监测点类型 + */ + @MppMultiId(value = "measurement_point_type") + private String measurementPointType; + + /** + * 在运监测点数 + */ + @TableField(value = "measurement_run_points") + private Integer measurementRunPoints; + + /** + * 在线监测点数 + */ + @TableField(value = "transit_measurement_points") + private Integer transitMeasurementPoints; + + /** + * 有效接入监测点数量 + */ + @TableField(value = "effective_access_measurement_count") + private Integer effectiveAccessMeasurementCount; + + /** + * 有效接入率 + */ + @TableField(value = "effective_access_rate") + private Double effectiveAccessRate; + + /** + * 应设点数 + */ + @TableField(value = "should_count") + private Integer shouldCount; + + /** + * 应设点覆盖率 + */ + @TableField(value = "should_point_coverage") + private Integer shouldPointCoverage; + + /** + * 数据完整率 + */ + @TableField(value = "data_integrity_rate") + private Double dataIntegrityRate; + + /** + * 数据准确率 + */ + @TableField(value = "data_right_rate") + private Double dataRightRate; + + /** + * 指标完整率 + */ + @TableField(value = "index_integrity_rate") + private Double indexIntegrityRate; + + /** + * 数据是否异常(0:正常 1:异常) + */ + @TableField(value = "is_unusual") + private Integer isUnusual; + +} \ No newline at end of file diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/ROperatingIndexMPO.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/ROperatingIndexMPO.java new file mode 100644 index 000000000..33bdd4447 --- /dev/null +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/ROperatingIndexMPO.java @@ -0,0 +1,101 @@ +package com.njcn.prepare.harmonic.pojo.po; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.github.jeffreyning.mybatisplus.anno.MppMultiId; +import lombok.Data; + +import java.util.Date; + +/** + * + * Description: + * Date: 2023/10/7 14:08【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Data +@TableName(value = "r_operating_index_m") +public class ROperatingIndexMPO { + /** + * 单位ID + */ + @MppMultiId(value = "org_no") + private String orgNo; + + /** + * 时间 + */ + @MppMultiId(value = "data_date") + private Date dataDate; + + /** + * 在运监测点数 + */ + @TableField(value = "measurement_run_points") + private Integer measurementRunPoints; + + /** + * 在线监测点数 + */ + @TableField(value = "transit_measurement_points") + private Integer transitMeasurementPoints; + + /** + * 有效接入监测点数量 + */ + @TableField(value = "effective_access_measurement_count") + private Integer effectiveAccessMeasurementCount; + + /** + * 监测终端数 + */ + @TableField(value = "online_measurement_points") + private Integer onlineMeasurementPoints; + + /** + * 在线终端数 + */ + @TableField(value = "online_measurement_count") + private Integer onlineMeasurementCount; + + /** + * 应设点数 + */ + @TableField(value = "should_count") + private Integer shouldCount; + + /** + * 应设点覆盖率 + */ + @TableField(value = "should_point_coverage") + private Double shouldPointCoverage; + + /** + * 数据完整率 + */ + @TableField(value = "data_integrity_rate") + private Double dataIntegrityRate; + + /** + * 数据准确率 + */ + @TableField(value = "data_right_rate") + private Double dataRightRate; + + /** + * 指标完整率 + */ + @TableField(value = "index_integrity_rate") + private Double indexIntegrityRate; + + /** + * 数据否异常(0:正常 1:异常) + */ + @TableField(value = "is_unusual") + private Integer isUnusual; + + +} \ No newline at end of file diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/ROperatingIndexQPO.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/ROperatingIndexQPO.java new file mode 100644 index 000000000..2fbc20f44 --- /dev/null +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/ROperatingIndexQPO.java @@ -0,0 +1,101 @@ +package com.njcn.prepare.harmonic.pojo.po; + + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.github.jeffreyning.mybatisplus.anno.MppMultiId; +import lombok.Data; + +import java.util.Date; + +/** + * + * Description: + * Date: 2023/10/7 14:15【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Data +@TableName(value = "r_operating_index_q") +public class ROperatingIndexQPO { + /** + * 单位ID + */ + @MppMultiId(value = "org_no") + private String orgNo; + + /** + * 时间 + */ + @MppMultiId(value = "data_date") + private Date dataDate; + + /** + * 在运监测点数 + */ + @TableField(value = "measurement_run_points") + private Integer measurementRunPoints; + + /** + * 在线监测点数 + */ + @TableField(value = "transit_measurement_points") + private Integer transitMeasurementPoints; + + /** + * 有效接入监测点数量 + */ + @TableField(value = "effective_access_measurement_count") + private Integer effectiveAccessMeasurementCount; + + /** + * 监测终端数 + */ + @TableField(value = "online_measurement_points") + private Integer onlineMeasurementPoints; + + /** + * 在线终端数 + */ + @TableField(value = "online_measurement_count") + private Integer onlineMeasurementCount; + + /** + * 应设点数 + */ + @TableField(value = "should_count") + private Integer shouldCount; + + /** + * 应设点覆盖率 + */ + @TableField(value = "should_point_coverage") + private Double shouldPointCoverage; + + /** + * 数据完整率 + */ + @TableField(value = "data_integrity_rate") + private Double dataIntegrityRate; + + /** + * 数据准确率 + */ + @TableField(value = "data_right_rate") + private Double dataRightRate; + + /** + * 指标完整率 + */ + @TableField(value = "index_integrity_rate") + private Double indexIntegrityRate; + + /** + * 数据是否异常(0:正常 1:异常) + */ + @TableField(value = "is_unusual") + private Integer isUnusual; + + +} \ No newline at end of file diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/ROperatingIndexYPO.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/ROperatingIndexYPO.java new file mode 100644 index 000000000..549257176 --- /dev/null +++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/ROperatingIndexYPO.java @@ -0,0 +1,100 @@ +package com.njcn.prepare.harmonic.pojo.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.github.jeffreyning.mybatisplus.anno.MppMultiId; +import lombok.Data; + +import java.util.Date; + +/** + * + * Description: + * Date: 2023/10/7 14:15【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Data +@TableName(value = "r_operating_index_y") +public class ROperatingIndexYPO { + /** + * 单位ID + */ + @MppMultiId(value = "org_no") + private String orgNo; + + /** + * 时间 + */ + @MppMultiId(value = "data_date") + private Date dataDate; + + /** + * 在运监测点数 + */ + @TableField(value = "measurement_run_points") + private Integer measurementRunPoints; + + /** + * 在线监测点数 + */ + @TableField(value = "transit_measurement_points") + private Integer transitMeasurementPoints; + + /** + * 有效接入监测点数量 + */ + @TableField(value = "effective_access_measurement_count") + private Integer effectiveAccessMeasurementCount; + + /** + * 监测终端数 + */ + @TableField(value = "online_measurement_points") + private Integer onlineMeasurementPoints; + + /** + * 在线终端数 + */ + @TableField(value = "online_measurement_count") + private Integer onlineMeasurementCount; + + /** + * 应设点数 + */ + @TableField(value = "should_count") + private Integer shouldCount; + + /** + * 应设点覆盖率 + */ + @TableField(value = "should_point_coverage") + private Double shouldPointCoverage; + + /** + * 数据完整率 + */ + @TableField(value = "data_integrity_rate") + private Double dataIntegrityRate; + + /** + * 数据准确率 + */ + @TableField(value = "data_right_rate") + private Double dataRightRate; + + /** + * 指标完整率 + */ + @TableField(value = "index_integrity_rate") + private Double indexIntegrityRate; + + /** + * 数据是否异常(0:正常 1:异常) + */ + @TableField(value = "is_unusual") + private Integer isUnusual; + + +} \ No newline at end of file diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/ROperatingIndexController.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/ROperatingIndexController.java new file mode 100644 index 000000000..e0b9ebbc0 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/ROperatingIndexController.java @@ -0,0 +1,75 @@ +package com.njcn.prepare.harmonic.controller.newalgorithm; + +import com.njcn.common.pojo.annotation.OperateInfo; +import com.njcn.common.pojo.constant.ServerInfo; +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.device.biz.commApi.CommTerminalGeneralClient; +import com.njcn.device.biz.pojo.dto.DeptGetChildrenMoreDTO; +import com.njcn.device.biz.pojo.param.DeptGetLineParam; +import com.njcn.prepare.harmonic.pojo.param.OrgParam; +import com.njcn.prepare.harmonic.service.mysql.area.RStatHarmonicService; +import com.njcn.prepare.harmonic.service.mysql.newalgorithm.ROperatingIndexService; +import com.njcn.user.api.DeptFeignClient; +import com.njcn.user.pojo.po.Dept; +import com.njcn.web.controller.BaseController; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.util.StringUtils; +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; + +import java.time.LocalDateTime; +import java.util.List; + +/** + * Description: + * 接口文档访问地址:http://serverIP:port/swagger-ui.html + * Date: 2022/12/28 13:47【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Slf4j +@Api(tags = "3.3.2.\t单位标数据质量") +@RestController +@RequestMapping("/roperatingindex") +@RequiredArgsConstructor +public class ROperatingIndexController extends BaseController { + + + private final ROperatingIndexService service; + private final CommTerminalGeneralClient commTerminalGeneralClient; + private final DeptFeignClient deptFeignClient; + @OperateInfo(info = LogEnum.BUSINESS_COMMON) + @PostMapping("/Handler") + @ApiOperation("单位监测点稳态指标统计") + @ApiImplicitParam(name = "orgParam", value = "参数", required = true) + public HttpResult handler(@RequestBody @Validated OrgParam orgParam ){ + log.info(LocalDateTime.now()+"dayHandler始执行"); + String methodDescribe = getMethodDescribe("dayHandler"); + /** + * 支持补录 + */ + DeptGetLineParam deptGetLineParam = new DeptGetLineParam(); + + if(StringUtils.isEmpty(orgParam.getOrgId())){ + Dept data = deptFeignClient.getRootDept().getData(); + deptGetLineParam.setDeptId(data.getId()); + }else { + deptGetLineParam.setDeptId(orgParam.getOrgId()); + } + deptGetLineParam.setServerName(ServerInfo.PREPARE_BOOT); + List data = commTerminalGeneralClient.deptGetLine(deptGetLineParam).getData(); + service.handler (data,orgParam.getDataDate(),orgParam.getType()); + return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); + } +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RDnOperatingIndexMPOMapper.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RDnOperatingIndexMPOMapper.java new file mode 100644 index 000000000..991ec5be7 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RDnOperatingIndexMPOMapper.java @@ -0,0 +1,15 @@ +package com.njcn.prepare.harmonic.mapper.mysql.newalgorithm; + +import com.github.jeffreyning.mybatisplus.base.MppBaseMapper; +import com.njcn.prepare.harmonic.pojo.po.RDnOperatingIndexMPO; + +/** + * + * Description: + * Date: 2023/10/7 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface RDnOperatingIndexMPOMapper extends MppBaseMapper { +} \ No newline at end of file diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RDnOperatingQPOMapper.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RDnOperatingQPOMapper.java new file mode 100644 index 000000000..570f17f95 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RDnOperatingQPOMapper.java @@ -0,0 +1,15 @@ +package com.njcn.prepare.harmonic.mapper.mysql.newalgorithm; + +import com.github.jeffreyning.mybatisplus.base.MppBaseMapper; +import com.njcn.prepare.harmonic.pojo.po.RDnOperatingQPO; + +/** + * + * Description: + * Date: 2023/10/7 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface RDnOperatingQPOMapper extends MppBaseMapper { +} \ No newline at end of file diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RDnOperatingYPOMapper.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RDnOperatingYPOMapper.java new file mode 100644 index 000000000..e270308e9 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RDnOperatingYPOMapper.java @@ -0,0 +1,15 @@ +package com.njcn.prepare.harmonic.mapper.mysql.newalgorithm; + +import com.github.jeffreyning.mybatisplus.base.MppBaseMapper; +import com.njcn.prepare.harmonic.pojo.po.RDnOperatingYPO; + +/** + * + * Description: + * Date: 2023/10/7 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface RDnOperatingYPOMapper extends MppBaseMapper { +} \ No newline at end of file diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/ROperatingIndexMPOMapper.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/ROperatingIndexMPOMapper.java new file mode 100644 index 000000000..bd52a69eb --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/ROperatingIndexMPOMapper.java @@ -0,0 +1,15 @@ +package com.njcn.prepare.harmonic.mapper.mysql.newalgorithm; + +import com.github.jeffreyning.mybatisplus.base.MppBaseMapper; +import com.njcn.prepare.harmonic.pojo.po.ROperatingIndexMPO; + +/** + * + * Description: + * Date: 2023/10/7 14:08【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface ROperatingIndexMPOMapper extends MppBaseMapper { +} \ No newline at end of file diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/ROperatingIndexQPOMapper.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/ROperatingIndexQPOMapper.java new file mode 100644 index 000000000..f09c7df86 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/ROperatingIndexQPOMapper.java @@ -0,0 +1,15 @@ +package com.njcn.prepare.harmonic.mapper.mysql.newalgorithm; + +import com.github.jeffreyning.mybatisplus.base.MppBaseMapper; +import com.njcn.prepare.harmonic.pojo.po.ROperatingIndexQPO; + +/** + * + * Description: + * Date: 2023/10/7 14:15【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface ROperatingIndexQPOMapper extends MppBaseMapper { +} \ No newline at end of file diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/ROperatingIndexYPOMapper.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/ROperatingIndexYPOMapper.java new file mode 100644 index 000000000..20ddc9960 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/ROperatingIndexYPOMapper.java @@ -0,0 +1,15 @@ +package com.njcn.prepare.harmonic.mapper.mysql.newalgorithm; + +import com.github.jeffreyning.mybatisplus.base.MppBaseMapper; +import com.njcn.prepare.harmonic.pojo.po.ROperatingIndexYPO; + +/** + * + * Description: + * Date: 2023/10/7 14:15【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface ROperatingIndexYPOMapper extends MppBaseMapper { +} \ No newline at end of file diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/RDnOperatingIndexMPOMapper.xml b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/RDnOperatingIndexMPOMapper.xml new file mode 100644 index 000000000..f88b6a067 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/RDnOperatingIndexMPOMapper.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + org_no, data_date, measurement_point_type, measurement_run_points, transit_measurement_points, + effective_access_measurement_count, effective_access_rate, should_count, should_point_coverage, + data_integrity_rate, data_right_rate, index_integrity_rate, is_unusual + + \ No newline at end of file diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/RDnOperatingQPOMapper.xml b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/RDnOperatingQPOMapper.xml new file mode 100644 index 000000000..f281b1088 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/RDnOperatingQPOMapper.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + org_no, data_date, measurement_point_type, measurement_run_points, transit_measurement_points, + effective_access_measurement_count, effective_access_rate, should_count, should_point_coverage, + data_integrity_rate, data_right_rate, index_integrity_rate, is_unusual + + \ No newline at end of file diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/RDnOperatingYPOMapper.xml b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/RDnOperatingYPOMapper.xml new file mode 100644 index 000000000..894bc1ad9 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/RDnOperatingYPOMapper.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + org_no, data_date, measurement_point_type, measurement_run_points, transit_measurement_points, + effective_access_measurement_count, effective_access_rate, should_count, should_point_coverage, + data_integrity_rate, data_right_rate, index_integrity_rate, is_unusual + + \ No newline at end of file diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/ROperatingIndexMPOMapper.xml b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/ROperatingIndexMPOMapper.xml new file mode 100644 index 000000000..e0aae11f0 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/ROperatingIndexMPOMapper.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + org_no, data_date, measurement_run_points, transit_measurement_points, effective_access_measurement_count, + online_measurement_points, online_measurement_count, should_count, should_point_coverage, + data_integrity_rate, data_right_rate, index_integrity_rate, is_unusual + + \ No newline at end of file diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/ROperatingIndexQPOMapper.xml b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/ROperatingIndexQPOMapper.xml new file mode 100644 index 000000000..bc89296df --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/ROperatingIndexQPOMapper.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + org_no, data_date, measurement_run_points, transit_measurement_points, effective_access_measurement_count, + online_measurement_points, online_measurement_count, should_count, should_point_coverage, + data_integrity_rate, data_right_rate, index_integrity_rate, is_unusual + + \ No newline at end of file diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/ROperatingIndexYPOMapper.xml b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/ROperatingIndexYPOMapper.xml new file mode 100644 index 000000000..73ccf05a2 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/ROperatingIndexYPOMapper.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + org_no, data_date, measurement_run_points, transit_measurement_points, effective_access_measurement_count, + online_measurement_points, online_measurement_count, should_count, should_point_coverage, + data_integrity_rate, data_right_rate, index_integrity_rate, is_unusual + + \ No newline at end of file diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RDnOperatingIndexMPOService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RDnOperatingIndexMPOService.java new file mode 100644 index 000000000..292011a48 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RDnOperatingIndexMPOService.java @@ -0,0 +1,16 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm; + +import com.github.jeffreyning.mybatisplus.service.IMppService; +import com.njcn.prepare.harmonic.pojo.po.RDnOperatingIndexMPO; + /** + * + * Description: + * Date: 2023/10/7 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface RDnOperatingIndexMPOService extends IMppService { + + +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RDnOperatingQPOService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RDnOperatingQPOService.java new file mode 100644 index 000000000..d9c964205 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RDnOperatingQPOService.java @@ -0,0 +1,16 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm; + +import com.github.jeffreyning.mybatisplus.service.IMppService; +import com.njcn.prepare.harmonic.pojo.po.RDnOperatingQPO; + /** + * + * Description: + * Date: 2023/10/7 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface RDnOperatingQPOService extends IMppService { + + +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RDnOperatingYPOService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RDnOperatingYPOService.java new file mode 100644 index 000000000..457b4accf --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RDnOperatingYPOService.java @@ -0,0 +1,16 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm; + +import com.github.jeffreyning.mybatisplus.service.IMppService; +import com.njcn.prepare.harmonic.pojo.po.RDnOperatingYPO; + /** + * + * Description: + * Date: 2023/10/7 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface RDnOperatingYPOService extends IMppService { + + +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/ROperatingIndexMPOService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/ROperatingIndexMPOService.java new file mode 100644 index 000000000..692dfc712 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/ROperatingIndexMPOService.java @@ -0,0 +1,16 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm; + +import com.github.jeffreyning.mybatisplus.service.IMppService; +import com.njcn.prepare.harmonic.pojo.po.ROperatingIndexMPO; + /** + * + * Description: + * Date: 2023/10/7 14:08【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface ROperatingIndexMPOService extends IMppService { + + +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/ROperatingIndexQPOService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/ROperatingIndexQPOService.java new file mode 100644 index 000000000..d2171a9c5 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/ROperatingIndexQPOService.java @@ -0,0 +1,16 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm; + +import com.github.jeffreyning.mybatisplus.service.IMppService; +import com.njcn.prepare.harmonic.pojo.po.ROperatingIndexQPO; + /** + * + * Description: + * Date: 2023/10/7 14:15【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface ROperatingIndexQPOService extends IMppService { + + +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/ROperatingIndexService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/ROperatingIndexService.java new file mode 100644 index 000000000..444359b23 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/ROperatingIndexService.java @@ -0,0 +1,16 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm; + +import com.njcn.device.biz.pojo.dto.DeptGetChildrenMoreDTO; + +import java.util.List; + +/** + * Description: + * Date: 2023/10/7 14:36【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface ROperatingIndexService { + void handler(List data, String dataDate, Integer type); +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/ROperatingIndexYPOService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/ROperatingIndexYPOService.java new file mode 100644 index 000000000..cd8ac5a84 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/ROperatingIndexYPOService.java @@ -0,0 +1,17 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.github.jeffreyning.mybatisplus.service.IMppService; +import com.njcn.prepare.harmonic.pojo.po.ROperatingIndexYPO; + /** + * + * Description: + * Date: 2023/10/7 14:15【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +public interface ROperatingIndexYPOService extends IMppService { + + +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RDnOperatingIndexMPOServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RDnOperatingIndexMPOServiceImpl.java new file mode 100644 index 000000000..fc4b6871d --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RDnOperatingIndexMPOServiceImpl.java @@ -0,0 +1,20 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm.impl; + +import com.github.jeffreyning.mybatisplus.service.MppServiceImpl; +import org.springframework.stereotype.Service; + +import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RDnOperatingIndexMPOMapper; +import com.njcn.prepare.harmonic.pojo.po.RDnOperatingIndexMPO; +import com.njcn.prepare.harmonic.service.mysql.newalgorithm.RDnOperatingIndexMPOService; +/** + * + * Description: + * Date: 2023/10/7 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Service +public class RDnOperatingIndexMPOServiceImpl extends MppServiceImpl implements RDnOperatingIndexMPOService{ + +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RDnOperatingQPOServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RDnOperatingQPOServiceImpl.java new file mode 100644 index 000000000..849823bcb --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RDnOperatingQPOServiceImpl.java @@ -0,0 +1,19 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm.impl; + +import com.github.jeffreyning.mybatisplus.service.MppServiceImpl; +import org.springframework.stereotype.Service; +import com.njcn.prepare.harmonic.pojo.po.RDnOperatingQPO; +import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RDnOperatingQPOMapper; +import com.njcn.prepare.harmonic.service.mysql.newalgorithm.RDnOperatingQPOService; +/** + * + * Description: + * Date: 2023/10/7 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Service +public class RDnOperatingQPOServiceImpl extends MppServiceImpl implements RDnOperatingQPOService{ + +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RDnOperatingYPOServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RDnOperatingYPOServiceImpl.java new file mode 100644 index 000000000..58909ce5d --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RDnOperatingYPOServiceImpl.java @@ -0,0 +1,19 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm.impl; + +import com.github.jeffreyning.mybatisplus.service.MppServiceImpl; +import org.springframework.stereotype.Service; +import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RDnOperatingYPOMapper; +import com.njcn.prepare.harmonic.pojo.po.RDnOperatingYPO; +import com.njcn.prepare.harmonic.service.mysql.newalgorithm.RDnOperatingYPOService; +/** + * + * Description: + * Date: 2023/10/7 14:14【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Service +public class RDnOperatingYPOServiceImpl extends MppServiceImpl implements RDnOperatingYPOService{ + +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/ROperatingIndexMPOServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/ROperatingIndexMPOServiceImpl.java new file mode 100644 index 000000000..ddbc301f9 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/ROperatingIndexMPOServiceImpl.java @@ -0,0 +1,20 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm.impl; + +import com.github.jeffreyning.mybatisplus.service.MppServiceImpl; +import org.springframework.stereotype.Service; + +import com.njcn.prepare.harmonic.pojo.po.ROperatingIndexMPO; +import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.ROperatingIndexMPOMapper; +import com.njcn.prepare.harmonic.service.mysql.newalgorithm.ROperatingIndexMPOService; +/** + * + * Description: + * Date: 2023/10/7 14:08【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Service +public class ROperatingIndexMPOServiceImpl extends MppServiceImpl implements ROperatingIndexMPOService{ + +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/ROperatingIndexQPOServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/ROperatingIndexQPOServiceImpl.java new file mode 100644 index 000000000..00d4a826a --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/ROperatingIndexQPOServiceImpl.java @@ -0,0 +1,20 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm.impl; + +import com.github.jeffreyning.mybatisplus.service.MppServiceImpl; +import org.springframework.stereotype.Service; + +import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.ROperatingIndexQPOMapper; +import com.njcn.prepare.harmonic.pojo.po.ROperatingIndexQPO; +import com.njcn.prepare.harmonic.service.mysql.newalgorithm.ROperatingIndexQPOService; +/** + * + * Description: + * Date: 2023/10/7 14:15【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Service +public class ROperatingIndexQPOServiceImpl extends MppServiceImpl implements ROperatingIndexQPOService{ + +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/ROperatingIndexServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/ROperatingIndexServiceImpl.java new file mode 100644 index 000000000..39adc9c84 --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/ROperatingIndexServiceImpl.java @@ -0,0 +1,511 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm.impl; + +import cn.hutool.core.date.DateUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.njcn.device.biz.pojo.dto.DeptGetChildrenMoreDTO; +import com.njcn.device.biz.pojo.dto.LineDevGetDTO; +import com.njcn.device.pms.pojo.po.RDnOperatingIndexY; +import com.njcn.device.pms.pojo.po.RDnOperatingPO; +import com.njcn.prepare.harmonic.pojo.mysql.ROperatingMonitorDPO; +import com.njcn.prepare.harmonic.pojo.mysql.ROperatingMonitorMPO; +import com.njcn.prepare.harmonic.pojo.param.OrgParam; +import com.njcn.prepare.harmonic.pojo.po.*; +import com.njcn.prepare.harmonic.service.mysql.Impl.line.ROperatingMonitorDServiceImpl; +import com.njcn.prepare.harmonic.service.mysql.line.ROperatingMonitorMService; +import com.njcn.prepare.harmonic.service.mysql.line.ROperatingMonitorService; +import com.njcn.prepare.harmonic.service.mysql.newalgorithm.*; +import com.njcn.prepare.harmonic.utils.PublicUtil; +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 org.springframework.util.CollectionUtils; + +import javax.management.Query; +import java.text.DecimalFormat; +import java.util.*; +import java.util.stream.Collectors; + +/** + * Description: + * Date: 2023/10/7 14:37【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@RequiredArgsConstructor +@Service +public class ROperatingIndexServiceImpl implements ROperatingIndexService { + + private final ROperatingMonitorService rOperatingMonitorDService; + private final ROperatingMonitorMService rOperatingMonitorMService; + + private final ROperatingIndexMPOService rOperatingIndexMPOService; + private final ROperatingIndexQPOService rOperatingIndexQPOService; + private final ROperatingIndexYPOService rOperatingIndexYPOService; + + private final RDnOperatingIndexMPOService rDnOperatingIndexMPOService; + private final RDnOperatingQPOService rDnOperatingQPOService; + private final RDnOperatingYPOService rDnOperatingYPOService; + private final + DicDataFeignClient dicDataFeignClient; + private final DecimalFormat df = new DecimalFormat("0.00"); + + + @Override + public void handler(List data, String dataDate, Integer type) { + switch (type) { + case 1: + this.hanlderYear (data, dataDate, type); + break; + case 2: + this.hanlderQtr (data, dataDate, type); + break; + case 3: + this.hanlderM ( data, dataDate, type); + break; + default: + break; + } + } + + private void hanlderYear(List data, String dataDate, Integer type) { + + List rdnOperatingIndexYPOList = new ArrayList<>(); + List rOperatingIndexYPOList = new ArrayList<>(); + QueryWrapper queryWrapperD = new QueryWrapper<>(); + QueryWrapper queryWrapperM = new QueryWrapper<>(); + Date date = DateUtil.parse(dataDate); + /*获取监测点类型类型*/ + + List lineSortList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.LINE_SORT.getCode()).getData(); + Map lineSortMap = lineSortList.stream().collect(Collectors.toMap(DictData::getCode, dictData -> dictData)); + + for (DeptGetChildrenMoreDTO deptGetChildrenMoreDTO : data) { + if (!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getLineBaseList())) { + List collect = deptGetChildrenMoreDTO.getLineBaseList().stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList()); + queryWrapperD.clear(); + queryWrapperM.clear(); + queryWrapperD.in("measurement_point_id", collect). + eq("YEAR( data_date)", dataDate.substring(0,4)); + queryWrapperM.in("measurement_point_id", collect). + eq("YEAR( data_date)", dataDate.substring(0,4)); + List rOperatingMonitorDPOList = rOperatingMonitorDService.list(queryWrapperD); + List roperatingMonitorMPOList = rOperatingMonitorMService.list(queryWrapperM); + ROperatingIndexYPO rOperatingIndexYPO = new ROperatingIndexYPO(); + rOperatingIndexYPO.setOrgNo(deptGetChildrenMoreDTO.getUnitId()); + rOperatingIndexYPO.setDataDate(date); + List collect1 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1). + map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + List monitorList = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1).collect(Collectors.toList()); + + List collect2 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getDataIntegrityRate().doubleValue() > 0.95 && temp.getIsUnusual() == 1). + map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + Map> collect3 = rOperatingMonitorDPOList.stream().collect(Collectors.groupingBy(ROperatingMonitorDPO::getDevId)); + + Map> collect4 = monitorList.stream().collect(Collectors.groupingBy(ROperatingMonitorDPO::getDevId)); + + rOperatingIndexYPO.setEffectiveAccessMeasurementCount(collect2.size()); + rOperatingIndexYPO.setMeasurementRunPoints(collect.size()); + rOperatingIndexYPO.setOnlineMeasurementCount(collect4.size()); + rOperatingIndexYPO.setTransitMeasurementPoints(collect1.size()); + rOperatingIndexYPO.setOnlineMeasurementPoints(collect3.size()); +// rOperatingIndexMPO.setShouldCount(); + + List collect5 = roperatingMonitorMPOList.stream().filter(temp -> temp.getIsUnusual() == 0).map(ROperatingMonitorMPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + + double v = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getIndexIntegrityRate().doubleValue(); + }).average().orElse(0.0); + double v1 = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getDataRightRate().doubleValue(); + }).average().orElse(0.0); + double v2 = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getDataIntegrityRate().doubleValue(); + }).average().orElse(0.0); + rOperatingIndexYPO.setIndexIntegrityRate(v); + rOperatingIndexYPO.setDataIntegrityRate(v2); + rOperatingIndexYPO.setIsUnusual(collect5.size()); + rOperatingIndexYPO.setDataRightRate(v1); + rOperatingIndexYPOList.add(rOperatingIndexYPO); + + } + if (!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getPwMonitorIds())) { + if (!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getPwMonitorIds())) { + Map> collect3 = deptGetChildrenMoreDTO.getPwMonitorIds().stream().collect(Collectors.groupingBy(LineDevGetDTO::getLineType)); + collect3.forEach((k,m)->{ + List collect = m.stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList()); + queryWrapperD.clear(); + queryWrapperM.clear(); + queryWrapperD.in("measurement_point_id", collect). + eq("DATE_FORMAT( data_date ,'%Y-%m')", dataDate.substring(0, 7)); + + queryWrapperM.in("measurement_point_id", collect). + eq("DATE_FORMAT( data_date ,'%Y-%m')", dataDate.substring(0, 7)); + + List rOperatingMonitorDPOList = rOperatingMonitorDService.list(queryWrapperD); + List roperatingMonitorMPOList = rOperatingMonitorMService.list(queryWrapperM); + RDnOperatingYPO rDnOperatingYPO = new RDnOperatingYPO(); + rDnOperatingYPO.setOrgNo(deptGetChildrenMoreDTO.getUnitId()); + rDnOperatingYPO.setDataDate(date); + List collect1 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1). + map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + List monitorList = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1).collect(Collectors.toList()); + + List collect2 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getDataIntegrityRate().doubleValue() > 0.95 && temp.getIsUnusual() == 1). + map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + + rDnOperatingYPO.setEffectiveAccessMeasurementCount(collect2.size()); + rDnOperatingYPO.setMeasurementRunPoints(collect.size()); + rDnOperatingYPO.setTransitMeasurementPoints(collect1.size()); + if (collect.size()==0){ + rDnOperatingYPO.setEffectiveAccessRate(0.00); + + } + else { + double v = Double.parseDouble(df.format((collect2.size()) / Double.valueOf(collect.size()))); + rDnOperatingYPO.setEffectiveAccessRate(v); + + } +// rOperatingIndexMPO.setShouldCount(); + + List collect5 = roperatingMonitorMPOList.stream().filter(temp -> temp.getIsUnusual() == 0).map(ROperatingMonitorMPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + + double v = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getIndexIntegrityRate().doubleValue(); + }).average().orElse(0.0); + double v1 = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getDataRightRate().doubleValue(); + }).average().orElse(0.0); + double v2 = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getDataIntegrityRate().doubleValue(); + }).average().orElse(0.0); + rDnOperatingYPO.setMeasurementPointType(getmeasurementType(k, lineSortMap)); + rDnOperatingYPO.setIndexIntegrityRate(v); + rDnOperatingYPO.setDataIntegrityRate(v2); + rDnOperatingYPO.setIsUnusual(collect5.size()); + rDnOperatingYPO.setDataRightRate(v1); + rdnOperatingIndexYPOList.add(rDnOperatingYPO); + }); + + } + + } + } + + if (!CollectionUtils.isEmpty(rdnOperatingIndexYPOList)){ + rDnOperatingYPOService.saveOrUpdateBatchByMultiId(rdnOperatingIndexYPOList); + } + if (!CollectionUtils.isEmpty(rOperatingIndexYPOList)){ + rOperatingIndexYPOService.saveOrUpdateBatchByMultiId(rOperatingIndexYPOList); + + } + + } + + private void hanlderQtr(List data, String dataDate, Integer type) { + List rdnOperatingIndexQPOList = new ArrayList<>(); + List rOperatingIndexQPOList = new ArrayList<>(); + QueryWrapper queryWrapperD = new QueryWrapper<>(); + QueryWrapper queryWrapperM = new QueryWrapper<>(); + Date date = DateUtil.parse(dataDate); + /*获取监测点类型类型*/ + + List lineSortList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.LINE_SORT.getCode()).getData(); + Map lineSortMap = lineSortList.stream().collect(Collectors.toMap(DictData::getCode, dictData -> dictData)); + + for (DeptGetChildrenMoreDTO deptGetChildrenMoreDTO : data) { + if (!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getLineBaseList())) { + List collect = deptGetChildrenMoreDTO.getLineBaseList().stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList()); + queryWrapperD.clear(); + queryWrapperM.clear(); + queryWrapperD.in("measurement_point_id", collect). + eq("QUARTER( data_date)", PublicUtil.getNowQuarter (dataDate)); + queryWrapperM.in("measurement_point_id", collect). + eq("QUARTER( data_date)", PublicUtil.getNowQuarter (dataDate)); + List rOperatingMonitorDPOList = rOperatingMonitorDService.list(queryWrapperD); + List roperatingMonitorMPOList = rOperatingMonitorMService.list(queryWrapperM); + ROperatingIndexQPO rOperatingIndexQPO = new ROperatingIndexQPO(); + rOperatingIndexQPO.setOrgNo(deptGetChildrenMoreDTO.getUnitId()); + rOperatingIndexQPO.setDataDate(date); + List collect1 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1). + map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + List monitorList = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1).collect(Collectors.toList()); + + List collect2 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getDataIntegrityRate().doubleValue() > 0.95 && temp.getIsUnusual() == 1). + map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + Map> collect3 = rOperatingMonitorDPOList.stream().collect(Collectors.groupingBy(ROperatingMonitorDPO::getDevId)); + + Map> collect4 = monitorList.stream().collect(Collectors.groupingBy(ROperatingMonitorDPO::getDevId)); + + rOperatingIndexQPO.setEffectiveAccessMeasurementCount(collect2.size()); + rOperatingIndexQPO.setMeasurementRunPoints(collect.size()); + rOperatingIndexQPO.setOnlineMeasurementCount(collect4.size()); + rOperatingIndexQPO.setTransitMeasurementPoints(collect1.size()); + rOperatingIndexQPO.setOnlineMeasurementPoints(collect3.size()); +// rOperatingIndexMPO.setShouldCount(); + + List collect5 = roperatingMonitorMPOList.stream().filter(temp -> temp.getIsUnusual() == 0).map(ROperatingMonitorMPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + + double v = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getIndexIntegrityRate().doubleValue(); + }).average().orElse(0.0); + double v1 = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getDataRightRate().doubleValue(); + }).average().orElse(0.0); + double v2 = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getDataIntegrityRate().doubleValue(); + }).average().orElse(0.0); + rOperatingIndexQPO.setIndexIntegrityRate(v); + rOperatingIndexQPO.setDataIntegrityRate(v2); + rOperatingIndexQPO.setIsUnusual(collect5.size()); + rOperatingIndexQPO.setDataRightRate(v1); + rOperatingIndexQPOList.add(rOperatingIndexQPO); + + } + if (!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getPwMonitorIds())) { + if (!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getPwMonitorIds())) { + Map> collect3 = deptGetChildrenMoreDTO.getPwMonitorIds().stream().collect(Collectors.groupingBy(LineDevGetDTO::getLineType)); + collect3.forEach((k,m)->{ + List collect = m.stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList()); + queryWrapperD.clear(); + queryWrapperM.clear(); + queryWrapperD.in("measurement_point_id", collect). + eq("DATE_FORMAT( data_date ,'%Y-%m')", dataDate.substring(0, 7)); + + queryWrapperM.in("measurement_point_id", collect). + eq("DATE_FORMAT( data_date ,'%Y-%m')", dataDate.substring(0, 7)); + + List rOperatingMonitorDPOList = rOperatingMonitorDService.list(queryWrapperD); + List roperatingMonitorMPOList = rOperatingMonitorMService.list(queryWrapperM); + RDnOperatingQPO rDnOperatingQPO = new RDnOperatingQPO(); + rDnOperatingQPO.setOrgNo(deptGetChildrenMoreDTO.getUnitId()); + rDnOperatingQPO.setDataDate(date); + List collect1 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1). + map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + List monitorList = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1).collect(Collectors.toList()); + + List collect2 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getDataIntegrityRate().doubleValue() > 0.95 && temp.getIsUnusual() == 1). + map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + + rDnOperatingQPO.setEffectiveAccessMeasurementCount(collect2.size()); + rDnOperatingQPO.setMeasurementRunPoints(collect.size()); + rDnOperatingQPO.setTransitMeasurementPoints(collect1.size()); + if (collect.size()==0){ + rDnOperatingQPO.setEffectiveAccessRate(0.00); + + } + else { + double v = Double.parseDouble(df.format((collect2.size()) / Double.valueOf(collect.size()))); + rDnOperatingQPO.setEffectiveAccessRate(v); + + } +// rOperatingIndexMPO.setShouldCount(); + + List collect5 = roperatingMonitorMPOList.stream().filter(temp -> temp.getIsUnusual() == 0).map(ROperatingMonitorMPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + + double v = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getIndexIntegrityRate().doubleValue(); + }).average().orElse(0.0); + double v1 = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getDataRightRate().doubleValue(); + }).average().orElse(0.0); + double v2 = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getDataIntegrityRate().doubleValue(); + }).average().orElse(0.0); + rDnOperatingQPO.setMeasurementPointType(getmeasurementType(k, lineSortMap)); + rDnOperatingQPO.setIndexIntegrityRate(v); + rDnOperatingQPO.setDataIntegrityRate(v2); + rDnOperatingQPO.setIsUnusual(collect5.size()); + rDnOperatingQPO.setDataRightRate(v1); + rdnOperatingIndexQPOList.add(rDnOperatingQPO); + }); + + } + + } + } + + if (!CollectionUtils.isEmpty(rdnOperatingIndexQPOList)){ + rDnOperatingQPOService.saveOrUpdateBatchByMultiId(rdnOperatingIndexQPOList); + } + if (!CollectionUtils.isEmpty(rOperatingIndexQPOList)){ + rOperatingIndexQPOService.saveOrUpdateBatchByMultiId(rOperatingIndexQPOList); + + } + + } + + private void hanlderM(List data, String dataDate, Integer type) { + List rdnOperatingIndexMPOList = new ArrayList<>(); + List rOperatingIndexMPOList = new ArrayList<>(); + QueryWrapper queryWrapperD = new QueryWrapper<>(); + QueryWrapper queryWrapperM = new QueryWrapper<>(); + Date date = DateUtil.parse(dataDate); + /*获取监测点类型类型*/ + + List lineSortList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.LINE_SORT.getCode()).getData(); + Map lineSortMap = lineSortList.stream().collect(Collectors.toMap(DictData::getCode, dictData -> dictData)); + + for (DeptGetChildrenMoreDTO deptGetChildrenMoreDTO : data) { + if (!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getLineBaseList())) { + List collect = deptGetChildrenMoreDTO.getLineBaseList().stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList()); + queryWrapperD.clear(); + queryWrapperM.clear(); + queryWrapperD.in("measurement_point_id", collect). + eq("DATE_FORMAT( data_date ,'%Y-%m')", dataDate.substring(0, 7)); + + queryWrapperM.in("measurement_point_id", collect). + eq("DATE_FORMAT( data_date ,'%Y-%m')", dataDate.substring(0, 7)); + + List rOperatingMonitorDPOList = rOperatingMonitorDService.list(queryWrapperD); + List roperatingMonitorMPOList = rOperatingMonitorMService.list(queryWrapperM); + ROperatingIndexMPO rOperatingIndexMPO = new ROperatingIndexMPO(); + rOperatingIndexMPO.setOrgNo(deptGetChildrenMoreDTO.getUnitId()); + rOperatingIndexMPO.setDataDate(date); + List collect1 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1). + map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + List monitorList = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1).collect(Collectors.toList()); + + List collect2 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getDataIntegrityRate().doubleValue() > 0.95 && temp.getIsUnusual() == 1). + map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + Map> collect3 = rOperatingMonitorDPOList.stream().collect(Collectors.groupingBy(ROperatingMonitorDPO::getDevId)); + + Map> collect4 = monitorList.stream().collect(Collectors.groupingBy(ROperatingMonitorDPO::getDevId)); + + rOperatingIndexMPO.setEffectiveAccessMeasurementCount(collect2.size()); + rOperatingIndexMPO.setMeasurementRunPoints(collect.size()); + rOperatingIndexMPO.setOnlineMeasurementCount(collect4.size()); + rOperatingIndexMPO.setTransitMeasurementPoints(collect1.size()); + rOperatingIndexMPO.setOnlineMeasurementPoints(collect3.size()); +// rOperatingIndexMPO.setShouldCount(); + + List collect5 = roperatingMonitorMPOList.stream().filter(temp -> temp.getIsUnusual() == 0).map(ROperatingMonitorMPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + + double v = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getIndexIntegrityRate().doubleValue(); + }).average().orElse(0.0); + double v1 = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getDataRightRate().doubleValue(); + }).average().orElse(0.0); + double v2 = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getDataIntegrityRate().doubleValue(); + }).average().orElse(0.0); + rOperatingIndexMPO.setIndexIntegrityRate(v); + rOperatingIndexMPO.setDataIntegrityRate(v2); + rOperatingIndexMPO.setIsUnusual(collect5.size()); + rOperatingIndexMPO.setDataRightRate(v1); + rOperatingIndexMPOList.add(rOperatingIndexMPO); + + } + if (!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getPwMonitorIds())) { + if (!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getPwMonitorIds())) { + Map> collect3 = deptGetChildrenMoreDTO.getPwMonitorIds().stream().collect(Collectors.groupingBy(LineDevGetDTO::getLineType)); + + collect3.forEach((k,v)->{ + List collect = v.stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList()); + queryWrapperD.clear(); + queryWrapperM.clear(); + queryWrapperD.in("measurement_point_id", collect). + eq("DATE_FORMAT( data_date ,'%Y-%m')", dataDate.substring(0, 7)); + + queryWrapperM.in("measurement_point_id", collect). + eq("DATE_FORMAT( data_date ,'%Y-%m')", dataDate.substring(0, 7)); + + List rOperatingMonitorDPOList = rOperatingMonitorDService.list(queryWrapperD); + List roperatingMonitorMPOList = rOperatingMonitorMService.list(queryWrapperM); + RDnOperatingIndexMPO rDnOperatingIndexMPO = new RDnOperatingIndexMPO(); + rDnOperatingIndexMPO.setOrgNo(deptGetChildrenMoreDTO.getUnitId()); + rDnOperatingIndexMPO.setDataDate(date); + List collect1 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1). + map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + List monitorList = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1).collect(Collectors.toList()); + + List collect2 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getDataIntegrityRate().doubleValue() > 0.95 && temp.getIsUnusual() == 1). + map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + + rDnOperatingIndexMPO.setEffectiveAccessMeasurementCount(collect2.size()); + rDnOperatingIndexMPO.setMeasurementRunPoints(collect.size()); + rDnOperatingIndexMPO.setTransitMeasurementPoints(collect1.size()); + if (collect.size()==0){ + rDnOperatingIndexMPO.setEffectiveAccessRate(0.00); + + } + else { + double rate = Double.parseDouble(df.format((collect2.size()) / Double.valueOf(collect.size()))); + rDnOperatingIndexMPO.setEffectiveAccessRate(rate); + + } +// rOperatingIndexMPO.setShouldCount(); + + List collect5 = roperatingMonitorMPOList.stream().filter(temp -> temp.getIsUnusual() == 0).map(ROperatingMonitorMPO::getMeasurementPointId).distinct().collect(Collectors.toList()); + + + double integrity = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getIndexIntegrityRate().doubleValue(); + }).average().orElse(0.0); + double v1 = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getDataRightRate().doubleValue(); + }).average().orElse(0.0); + double v2 = roperatingMonitorMPOList.stream().mapToDouble(temp -> { + return temp.getDataIntegrityRate().doubleValue(); + }).average().orElse(0.0); + rDnOperatingIndexMPO.setMeasurementPointType(getmeasurementType(k, lineSortMap)); + rDnOperatingIndexMPO.setIndexIntegrityRate(integrity); + rDnOperatingIndexMPO.setDataIntegrityRate(v2); + rDnOperatingIndexMPO.setIsUnusual(collect5.size()); + rDnOperatingIndexMPO.setDataRightRate(v1); + rdnOperatingIndexMPOList.add(rDnOperatingIndexMPO); + }); + + } + + } + } + + if (!CollectionUtils.isEmpty(rdnOperatingIndexMPOList)){ + rDnOperatingIndexMPOService.saveOrUpdateBatchByMultiId(rdnOperatingIndexMPOList); + } + if (!CollectionUtils.isEmpty(rOperatingIndexMPOList)){ + rOperatingIndexMPOService.saveOrUpdateBatchByMultiId(rOperatingIndexMPOList); + + } + } + + private String getmeasurementType(Integer k, Map lineSortMap) { + String value =""; + switch (k) { + case 1: + value =lineSortMap.get(DicDataEnum.ONE_LINE.getCode()).getId(); + break; + case 2: + value =lineSortMap.get(DicDataEnum.TWO_LINE.getCode()).getId(); + break; + case 3: + value =lineSortMap.get(DicDataEnum.THREE_LINE.getCode()).getId(); + break; + default: + break; + } + return value; + } +} diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/ROperatingIndexYPOServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/ROperatingIndexYPOServiceImpl.java new file mode 100644 index 000000000..1ff3d72ad --- /dev/null +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/ROperatingIndexYPOServiceImpl.java @@ -0,0 +1,19 @@ +package com.njcn.prepare.harmonic.service.mysql.newalgorithm.impl; + +import com.github.jeffreyning.mybatisplus.service.MppServiceImpl; +import org.springframework.stereotype.Service; +import com.njcn.prepare.harmonic.pojo.po.ROperatingIndexYPO; +import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.ROperatingIndexYPOMapper; +import com.njcn.prepare.harmonic.service.mysql.newalgorithm.ROperatingIndexYPOService; +/** + * + * Description: + * Date: 2023/10/7 14:15【需求编号】 + * + * @author clam + * @version V1.0.0 + */ +@Service +public class ROperatingIndexYPOServiceImpl extends MppServiceImpl implements ROperatingIndexYPOService{ + +}