From acd746a28009376b324b4fbfd6b6d341fdb09a0a Mon Sep 17 00:00:00 2001
From: zhangbaojian <1065122561@qq.com>
Date: Thu, 15 Jun 2023 10:06:54 +0800
Subject: [PATCH] =?UTF-8?q?zbj//1.=E5=8D=95=E4=BD=8D=E6=9A=82=E6=80=81?=
=?UTF-8?q?=E6=8C=87=E6=A0=87=E6=95=B0=E6=8D=AE=E7=BB=9F=E8=AE=A1=5F?=
=?UTF-8?q?=E6=97=A5=E7=BB=9F=E8=AE=A1=20=E7=AE=97=E6=B3=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../harmonic/pojo/po/RStatEventDVO.java | 33 ++++
.../harmonic/pojo/po/RStatEventOrgDPO.java | 42 +++++
.../prepare/harmonic/pojo/po/RStatOrgDVO.java | 24 +++
.../newalgorithm/RStatEventOrgController.java | 79 ++++++++++
.../mapper/mysql/area/RStatOrgDMapper.java | 8 +
.../mysql/area/mapping/RStatOrgDMapper.xml | 8 +
.../newalgorithm/RStatEventDPOMapper.java | 7 +
.../newalgorithm/RStatEventOrgDPOMapper.java | 18 +++
.../mapping/RStatEventDMapper.xml | 19 +++
.../newalgorithm/RStatEventOrgDPOService.java | 14 ++
.../newalgorithm/RStatEventOrgService.java | 16 ++
.../impl/RStatEventOrgDPOServiceImpl.java | 24 +++
.../impl/RStatEventOrgServiceImpl.java | 149 ++++++++++++++++++
13 files changed, 441 insertions(+)
create mode 100644 pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatEventDVO.java
create mode 100644 pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatEventOrgDPO.java
create mode 100644 pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatOrgDVO.java
create mode 100644 pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/RStatEventOrgController.java
create mode 100644 pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RStatEventOrgDPOMapper.java
create mode 100644 pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/RStatEventDMapper.xml
create mode 100644 pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RStatEventOrgDPOService.java
create mode 100644 pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RStatEventOrgService.java
create mode 100644 pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RStatEventOrgDPOServiceImpl.java
create mode 100644 pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RStatEventOrgServiceImpl.java
diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatEventDVO.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatEventDVO.java
new file mode 100644
index 000000000..d2a633246
--- /dev/null
+++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatEventDVO.java
@@ -0,0 +1,33 @@
+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.time.LocalDate;
+
+/**
+ *
+ *
+ *
+ *
+ * @author zbj
+ * @since 2023-06-14
+ */
+@Data
+public class RStatEventDVO {
+
+ private String orgNo;
+
+ private LocalDate dataDate;
+
+ private String eventType;
+
+ private Integer emSum;
+
+ private Integer ecSum;
+
+ private String dataType;
+
+}
diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatEventOrgDPO.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatEventOrgDPO.java
new file mode 100644
index 000000000..70bbb6f00
--- /dev/null
+++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatEventOrgDPO.java
@@ -0,0 +1,42 @@
+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.time.LocalDate;
+
+/**
+ *
+ *
+ *
+ *
+ * @author zbj
+ * @since 2023-06-15
+ */
+@Data
+@TableName("r_stat_event_org_d")
+public class RStatEventOrgDPO {
+
+ @MppMultiId(value = "org_no")
+ private String orgNo;
+
+ @MppMultiId(value = "data_date")
+ private LocalDate dataDate;
+
+ @MppMultiId(value = "event_type")
+ private String eventType;
+
+ @TableField(value = "event_measurement")
+ private Integer eventMeasurement;
+
+ @TableField(value = "event_count")
+ private Integer eventCount;
+
+ @TableField(value = "event_measurement_ratio")
+ private Float eventMeasurementRatio;
+
+ @MppMultiId(value = "data_type")
+ private String dataType;
+}
diff --git a/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatOrgDVO.java b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatOrgDVO.java
new file mode 100644
index 000000000..a39ea2658
--- /dev/null
+++ b/pqs-prepare/prepare-api/src/main/java/com/njcn/prepare/harmonic/pojo/po/RStatOrgDVO.java
@@ -0,0 +1,24 @@
+package com.njcn.prepare.harmonic.pojo.po;
+
+import lombok.Data;
+
+import java.time.LocalDate;
+
+/**
+ *
+ *
+ *
+ *
+ * @author zbj
+ * @since 2023-06-14
+ */
+@Data
+public class RStatOrgDVO {
+
+ private String orgNo;
+
+ private Integer effectiveMeasurement;
+
+ private String dataType;
+
+}
diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/RStatEventOrgController.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/RStatEventOrgController.java
new file mode 100644
index 000000000..ac954c39d
--- /dev/null
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/controller/newalgorithm/RStatEventOrgController.java
@@ -0,0 +1,79 @@
+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.newalgorithm.RStatEventOrgService;
+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 = "单位暂态指标数据统计")
+@RestController
+@RequestMapping("/rStartEventOrg")
+@RequiredArgsConstructor
+public class RStatEventOrgController extends BaseController {
+
+ private final RStatEventOrgService rStatEventOrgService;
+
+ private final CommTerminalGeneralClient commTerminalGeneralClient;
+
+ private final DeptFeignClient deptFeignClient;
+
+
+ @OperateInfo(info = LogEnum.BUSINESS_COMMON)
+ @PostMapping("/rStartEventOrgHandler")
+ @ApiOperation("单位暂态指标数据统计")
+ @ApiImplicitParam(name = "orgParam", value = "参数", required = true)
+ public HttpResult rStartEventOrgHandler(@RequestBody @Validated OrgParam orgParam) {
+ log.info(LocalDateTime.now() + "rStartEventOrgHandler开始执行");
+ String methodDescribe = getMethodDescribe("rStartEventOrgHandler");
+ /**
+ * 支持补录
+ */
+ 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();
+
+ rStatEventOrgService.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/area/RStatOrgDMapper.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/area/RStatOrgDMapper.java
index be60d3c48..cc9db8fcb 100644
--- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/area/RStatOrgDMapper.java
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/area/RStatOrgDMapper.java
@@ -2,7 +2,12 @@ package com.njcn.prepare.harmonic.mapper.mysql.area;
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
import com.njcn.harmonic.pojo.po.RStatOrgDPO;
+import com.njcn.prepare.harmonic.pojo.po.RStatEventDVO;
+import com.njcn.prepare.harmonic.pojo.po.RStatOrgDVO;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -15,4 +20,7 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface RStatOrgDMapper extends MppBaseMapper {
+
+ List listAll(@Param("date") String date, @Param("orgId") String orgId);
+
}
\ No newline at end of file
diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/area/mapping/RStatOrgDMapper.xml b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/area/mapping/RStatOrgDMapper.xml
index bffed23a1..285ad9084 100644
--- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/area/mapping/RStatOrgDMapper.xml
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/area/mapping/RStatOrgDMapper.xml
@@ -21,4 +21,12 @@
org_no, data_date, measurement_type_class, data_type, all_count, effective_measurement,
harmonic_measurement, event_measurement, event_count, should_count, warn_count
+
+
+
\ No newline at end of file
diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RStatEventDPOMapper.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RStatEventDPOMapper.java
index c3366e692..25f3be03a 100644
--- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RStatEventDPOMapper.java
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RStatEventDPOMapper.java
@@ -2,7 +2,11 @@ package com.njcn.prepare.harmonic.mapper.mysql.newalgorithm;
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
import com.njcn.prepare.harmonic.pojo.po.RStatEventDPO;
+import com.njcn.prepare.harmonic.pojo.po.RStatEventDVO;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
* Description:
@@ -14,4 +18,7 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface RStatEventDPOMapper extends MppBaseMapper {
+
+ List listAll(@Param("date") String date, @Param("orgId") String orgId);
+
}
\ No newline at end of file
diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RStatEventOrgDPOMapper.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RStatEventOrgDPOMapper.java
new file mode 100644
index 000000000..a0a5c0695
--- /dev/null
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/RStatEventOrgDPOMapper.java
@@ -0,0 +1,18 @@
+package com.njcn.prepare.harmonic.mapper.mysql.newalgorithm;
+
+import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
+import com.njcn.prepare.harmonic.pojo.po.RStatEventMPO;
+import com.njcn.prepare.harmonic.pojo.po.RStatEventOrgDPO;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * Description:
+ * 接口文档访问地址:http://serverIP:port/swagger-ui.html
+ * Date: 2022/12/13 15:39【需求编号】
+ *
+ * @author clam
+ * @version V1.0.0
+ */
+@Mapper
+public interface RStatEventOrgDPOMapper 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/RStatEventDMapper.xml b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/RStatEventDMapper.xml
new file mode 100644
index 000000000..447b2a6fc
--- /dev/null
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/mapper/mysql/newalgorithm/mapping/RStatEventDMapper.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RStatEventOrgDPOService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RStatEventOrgDPOService.java
new file mode 100644
index 000000000..81b98c8a0
--- /dev/null
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RStatEventOrgDPOService.java
@@ -0,0 +1,14 @@
+package com.njcn.prepare.harmonic.service.mysql.newalgorithm;
+
+
+import com.github.jeffreyning.mybatisplus.service.IMppService;
+import com.njcn.prepare.harmonic.pojo.po.RStatEventOrgDPO;
+
+
+/**
+ * @author zbj
+ * @since 2023-06-14
+ */
+
+public interface RStatEventOrgDPOService extends IMppService {
+}
diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RStatEventOrgService.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RStatEventOrgService.java
new file mode 100644
index 000000000..4f6714649
--- /dev/null
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/RStatEventOrgService.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;
+
+/**
+ * @author zbj
+ * @since 2023-06-14
+ */
+
+public interface RStatEventOrgService {
+
+ 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/impl/RStatEventOrgDPOServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RStatEventOrgDPOServiceImpl.java
new file mode 100644
index 000000000..eef24e233
--- /dev/null
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RStatEventOrgDPOServiceImpl.java
@@ -0,0 +1,24 @@
+package com.njcn.prepare.harmonic.service.mysql.newalgorithm.impl;
+
+import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
+import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatEventMPOMapper;
+import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatEventOrgDPOMapper;
+import com.njcn.prepare.harmonic.pojo.po.RStatEventMPO;
+import com.njcn.prepare.harmonic.pojo.po.RStatEventOrgDPO;
+import com.njcn.prepare.harmonic.service.mysql.newalgorithm.RStatEventMPOService;
+import com.njcn.prepare.harmonic.service.mysql.newalgorithm.RStatEventOrgDPOService;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+/**
+ *
+ * 终端检测监督
+ *
+ *
+ * @author zbj
+ * @since 2023-06-14
+ */
+@Service
+@RequiredArgsConstructor
+public class RStatEventOrgDPOServiceImpl extends MppServiceImpl implements RStatEventOrgDPOService {
+}
diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RStatEventOrgServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RStatEventOrgServiceImpl.java
new file mode 100644
index 000000000..a5dd53e65
--- /dev/null
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/newalgorithm/impl/RStatEventOrgServiceImpl.java
@@ -0,0 +1,149 @@
+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.harmonic.pojo.po.RMpEventDetailDPO;
+import com.njcn.harmonic.pojo.po.RMpEventDetailMPO;
+import com.njcn.harmonic.pojo.po.RStatOrgDPO;
+import com.njcn.harmonic.pojo.po.RStatOrgMPO;
+import com.njcn.prepare.harmonic.mapper.mysql.area.RStatOrgDMapper;
+import com.njcn.prepare.harmonic.mapper.mysql.area.RStatOrgMMapper;
+import com.njcn.prepare.harmonic.mapper.mysql.area.RStatOrgQMapper;
+import com.njcn.prepare.harmonic.mapper.mysql.area.RStatOrgYMapper;
+import com.njcn.prepare.harmonic.mapper.mysql.line.RMpEventDetailDMapper;
+import com.njcn.prepare.harmonic.mapper.mysql.line.RMpEventDetailMMapper;
+import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatEventDPOMapper;
+import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatEventMPOMapper;
+import com.njcn.prepare.harmonic.pojo.po.*;
+import com.njcn.prepare.harmonic.service.mysql.newalgorithm.*;
+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 java.text.DecimalFormat;
+import java.time.LocalDate;
+import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
+import java.util.*;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
+/**
+ *
+ * 暂态指标统计
+ *
+ *
+ * @author zbj
+ * @since 2023-06-06
+ */
+@Service
+@RequiredArgsConstructor
+public class RStatEventOrgServiceImpl implements RStatEventOrgService {
+
+ private final DicDataFeignClient dicDataFeignClient;
+
+ private final RStatEventOrgDPOService rStatEventOrgDPOService;
+
+ private final RStatEventDPOMapper rStatEventDPOMapper;
+
+ private final RStatOrgDMapper rStatOrgDMapper;
+
+ @Override
+ public void handler(List data, String dataDate, Integer type) {
+ switch (type) {
+ /* case 1:
+ this.rStartEventYHandler (data, dataDate, type);
+ break;
+ case 2:
+ this.rStartEventQHandler(data, dataDate, type);
+ break;
+ case 3:
+ this.rStartEventMHandler(data, dataDate, type);
+ break;*/
+ case 5:
+ this.rStartEventDHandler(data, dataDate, type);
+ break;
+ default:
+ break;
+ }
+ }
+
+ //天表
+ public void rStartEventDHandler(List data, String dataDate, Integer type) {
+ List rStatEventOrgDPOS = new ArrayList<>();
+ DecimalFormat df = new DecimalFormat("0.00");
+ Date date = DateUtil.parse(dataDate);
+ LocalDate localDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
+
+ /*获取数据类型*/
+ List dataTypeList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DATA_TYPE.getCode()).getData();
+ Map dataTypeMap = dataTypeList.stream().collect(Collectors.toMap(DictData::getCode, dictData -> dictData));
+
+ data.forEach(deptGetChildrenMoreDTO -> {
+
+ List rStatEventDVO = rStatEventDPOMapper.listAll(dataDate, deptGetChildrenMoreDTO.getUnitId());
+
+ List rStatOrgDVOS = rStatOrgDMapper.listAll(dataDate, deptGetChildrenMoreDTO.getUnitId());
+
+ //集合判空
+ if (!CollectionUtils.isEmpty(rStatEventDVO)) {
+ //list转为map
+ Map emMap = new HashMap<>();
+ if (!CollectionUtils.isEmpty(rStatOrgDVOS)) {
+ if (rStatOrgDVOS.size() == 1) {
+ if (Objects.equals(rStatOrgDVOS.get(0).getDataType(), dataTypeMap.get(DicDataEnum.MAINNET_POINT.getCode()).getId())) {
+ emMap.put(rStatOrgDVOS.get(0).getDataType(), rStatOrgDVOS.get(0).getEffectiveMeasurement());
+ emMap.put(dataTypeMap.get(DicDataEnum.DISTRIBUTION_POINT.getCode()).getId(), 0);
+ } else {
+ emMap.put(rStatOrgDVOS.get(0).getDataType(), rStatOrgDVOS.get(0).getEffectiveMeasurement());
+ emMap.put(dataTypeMap.get(DicDataEnum.MAINNET_POINT.getCode()).getId(), 0);
+ }
+ } else {
+ emMap.put(rStatOrgDVOS.get(0).getDataType(), rStatOrgDVOS.get(0).getEffectiveMeasurement());
+ emMap.put(rStatOrgDVOS.get(1).getDataType(), rStatOrgDVOS.get(1).getEffectiveMeasurement());
+ }
+ } else {
+ emMap.put(dataTypeMap.get(DicDataEnum.MAINNET_POINT.getCode()).getId(), 0);
+ emMap.put(dataTypeMap.get(DicDataEnum.DISTRIBUTION_POINT.getCode()).getId(), 0);
+ }
+
+ //循环
+ rStatEventDVO.forEach(o -> {
+ RStatEventOrgDPO rStatEventOrgDPO = new RStatEventOrgDPO();
+ rStatEventOrgDPO.setOrgNo(o.getOrgNo());
+ rStatEventOrgDPO.setDataDate(localDate);
+ rStatEventOrgDPO.setEventType(o.getEventType());
+ rStatEventOrgDPO.setEventMeasurement(o.getEmSum());
+ rStatEventOrgDPO.setEventCount(o.getEcSum());
+ rStatEventOrgDPO.setDataType(o.getDataType());
+
+ if (Objects.equals(o.getDataType(), dataTypeMap.get(DicDataEnum.MAINNET_POINT.getCode()).getId())) {
+ if (emMap.get(o.getDataType()) == 0) {
+ rStatEventOrgDPO.setEventMeasurementRatio(1.00f);
+ } else {
+ String value = df.format(o.getEmSum() / emMap.get(o.getDataType()));
+ rStatEventOrgDPO.setEventMeasurementRatio(Float.parseFloat(value));
+ }
+ } else {
+ if (emMap.get(o.getDataType()) == 0) {
+ rStatEventOrgDPO.setEventMeasurementRatio(1.00f);
+ } else {
+ String value = df.format(o.getEmSum() / emMap.get(o.getDataType()));
+ rStatEventOrgDPO.setEventMeasurementRatio(Float.parseFloat(value));
+ }
+ }
+ rStatEventOrgDPOS.add(rStatEventOrgDPO);
+ });
+ }
+ });
+ if (!CollectionUtils.isEmpty(rStatEventOrgDPOS)) {
+ rStatEventOrgDPOService.saveOrUpdateBatchByMultiId(rStatEventOrgDPOS, 500);
+ }
+ }
+}