From b13e0c22de35b72eb11d8f2bea5d0ad3b964d612 Mon Sep 17 00:00:00 2001
From: cdf <857448963@qq.com>
Date: Wed, 12 Jun 2024 08:33:37 +0800
Subject: [PATCH] =?UTF-8?q?=E6=B2=B3=E5=8C=97=E4=B8=A4=E7=BA=A7=E8=B4=AF?=
=?UTF-8?q?=E9=80=9A=E6=8E=A5=E5=8F=A3=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../device/biz/pojo/dto/LineDevGetDTO.java | 5 +
.../impl/CommTerminalServiceImpl.java | 13 +-
.../njcn/harmonic/pojo/dto/LineDataDto.java | 2 +
.../harmonic/pojo/po/dim/RDimVoltageD.java | 6 +
.../pojo/po/upload/RUploadDataLog.java | 63 ++++
.../upload/RUploadDataLogController.java | 22 ++
.../mapper/upload/RUploadDataLogMapper.java | 18 ++
.../RMpPartHarmonicDetailDServiceImpl.java | 4 +-
.../upload/IRUploadDataLogService.java | 18 ++
.../impl/REvaluationDataServiceImpl.java | 49 ++-
.../impl/RUploadDataLogServiceImpl.java | 22 ++
.../dim/impl/RDimVoltageDServiceImpl.java | 289 ++++++++++++------
.../RUploadEvaluationDataDServiceImpl.java | 202 ++++--------
.../process/pojo/param/SupvPlanParam.java | 7 +
.../com/njcn/process/pojo/po/SupvPlan.java | 5 +
.../com/njcn/process/pojo/vo/SupvPlanVO.java | 5 +
.../service/impl/SupvPlanServiceImpl.java | 2 +-
.../service/impl/SupvPushGwServiceImpl.java | 19 +-
18 files changed, 487 insertions(+), 264 deletions(-)
create mode 100644 pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/upload/RUploadDataLog.java
create mode 100644 pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/upload/RUploadDataLogController.java
create mode 100644 pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/upload/RUploadDataLogMapper.java
create mode 100644 pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/upload/IRUploadDataLogService.java
create mode 100644 pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/upload/impl/RUploadDataLogServiceImpl.java
diff --git a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/LineDevGetDTO.java b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/LineDevGetDTO.java
index 5b8effe2b..f89bdb9a6 100644
--- a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/LineDevGetDTO.java
+++ b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/LineDevGetDTO.java
@@ -96,4 +96,9 @@ public class LineDevGetDTO {
* oracle监测点id
*/
private Integer oracleLineId;
+
+ /**
+ * 接线方式 0.星型 1.星三角 2.三角
+ */
+ private String wiringMethod;
}
diff --git a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/ledgerManger/impl/CommTerminalServiceImpl.java b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/ledgerManger/impl/CommTerminalServiceImpl.java
index 62bbe0c81..f4bc1856d 100644
--- a/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/ledgerManger/impl/CommTerminalServiceImpl.java
+++ b/pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/ledgerManger/impl/CommTerminalServiceImpl.java
@@ -123,16 +123,22 @@ public class CommTerminalServiceImpl implements CommTerminalService {
//电压等级
// List voltageDic = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_VOLTAGE.getCode()).getData();
//Map mapVoltage = voltageDic.stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
+ //接线方式
+ List wireList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_CONNECT.getCode()).getData();
+ Map wireMap = wireList.stream().collect(Collectors.toMap(DictData::getId,Function.identity()));
+
//监测点状态
DictData dictData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.LINE_STATE.getName(), DicDataEnum.RUN.getName()).getData();
- Map> map = new HashMap<>();
+ Map> finalMap;
if (deptGetLineParam.getSystemType() == 0 || deptGetLineParam.getSystemType() == 2) {
List monitorList = monitorMapper.selectList(new LambdaQueryWrapper()
.eq(Monitor::getStatus, DataStateEnum.ENABLE.getCode())
.eq(Objects.nonNull(deptGetLineParam.getIsUpToGrid()), Monitor::getIsUpToGrid, deptGetLineParam.getIsUpToGrid())
.eq(deptGetLineParam.getMonitorStateRunning(), Monitor::getMonitorState, dictData.getId()));
- map = monitorList.stream().collect(Collectors.groupingBy(Monitor::getOrgId));
+ finalMap = monitorList.stream().collect(Collectors.groupingBy(Monitor::getOrgId));
+ }else {
+ finalMap = new HashMap<>();
}
//TODO 配网数据量巨大,暂时注释
/* Map> mapPms = new HashMap<>();
@@ -141,7 +147,7 @@ public class CommTerminalServiceImpl implements CommTerminalService {
mapPms = pmsMonitorBaseDTOList.stream().collect(Collectors.groupingBy(PmsMonitorBaseDTO::getOrgId));
}
Map> finalMapPms = mapPms;*/
- Map> finalMap = map;
+
temDept.forEach(item -> {
DeptGetChildrenMoreDTO deptGetChildrenMoreDTO = new DeptGetChildrenMoreDTO();
deptGetChildrenMoreDTO.setUnitId(item.getUnitId());
@@ -172,6 +178,7 @@ public class CommTerminalServiceImpl implements CommTerminalService {
lineDevGetDTO.setIsUpToGrid(it.getIsUpToGrid());
lineDevGetDTO.setIsUploadHead(it.getIsUploadHead());
lineDevGetDTO.setMonitorUploadStatus(it.getMonitorUploadStatus());
+ lineDevGetDTO.setWiringMethod(wireMap.get(it.getTerminalWiringMethod()).getValue());
lineList.add(lineDevGetDTO);
});
}
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/dto/LineDataDto.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/dto/LineDataDto.java
index 1065994d6..91d73c7e9 100644
--- a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/dto/LineDataDto.java
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/dto/LineDataDto.java
@@ -18,6 +18,8 @@ public class LineDataDto {
private String lineId;
+ private Integer terminalWiringMethod;
+
private Double rms;
private Double vUnbalance;
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/dim/RDimVoltageD.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/dim/RDimVoltageD.java
index f5d8f60fc..7d9f7e288 100644
--- a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/dim/RDimVoltageD.java
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/dim/RDimVoltageD.java
@@ -27,6 +27,12 @@ public class RDimVoltageD {
@MppMultiId
private LocalDate statisDate;
+ /**
+ * 数据类型(avg:平均值 sd:标准差)
+ */
+ @MppMultiId
+ private String dataType;
+
/**
* 单位id
*/
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/upload/RUploadDataLog.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/upload/RUploadDataLog.java
new file mode 100644
index 000000000..5d00f71f1
--- /dev/null
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/upload/RUploadDataLog.java
@@ -0,0 +1,63 @@
+package com.njcn.harmonic.pojo.po.upload;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
+import com.njcn.db.bo.BaseEntity;
+import java.io.Serializable;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ *
+ * 调度算法执行结果记录表
+ *
+ *
+ * @author hongawen
+ * @since 2024-06-06
+ */
+@Getter
+@Setter
+@TableName("r_upload_data_log")
+public class RUploadDataLog {
+
+ private static final long serialVersionUID = 1L;
+
+
+
+ /**
+ * 统计日期
+ */
+ @MppMultiId
+ private LocalDate statisticDate;
+
+ /**
+ * 大类 0.国网上送数据
+ */
+ @MppMultiId
+ private Integer bigType;
+
+ /**
+ * 小类 0.基准水平 1.主网监测点 2.电站 3.干扰源
+ */
+ @MppMultiId
+ private Integer smallType;
+
+ /**
+ * 0.失败 1.成功
+ */
+ private Integer result;
+
+ /**
+ * 上送结果描述
+ */
+ private String resultMsg;
+
+ /**
+ * 创建时间
+ */
+ private LocalDateTime createTime;
+
+
+}
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/upload/RUploadDataLogController.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/upload/RUploadDataLogController.java
new file mode 100644
index 000000000..72919b57b
--- /dev/null
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/upload/RUploadDataLogController.java
@@ -0,0 +1,22 @@
+package com.njcn.harmonic.controller.upload;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+import com.njcn.web.controller.BaseController;
+
+/**
+ *
+ * 调度算法执行结果记录表 前端控制器
+ *
+ *
+ * @author hongawen
+ * @since 2024-06-06
+ */
+@RestController
+@RequestMapping("/rUploadDataLog")
+public class RUploadDataLogController extends BaseController {
+
+}
+
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/upload/RUploadDataLogMapper.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/upload/RUploadDataLogMapper.java
new file mode 100644
index 000000000..01720efcc
--- /dev/null
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/upload/RUploadDataLogMapper.java
@@ -0,0 +1,18 @@
+package com.njcn.harmonic.mapper.upload;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
+import com.njcn.harmonic.pojo.po.upload.RUploadDataLog;
+
+/**
+ *
+ * 调度算法执行结果记录表 Mapper 接口
+ *
+ *
+ * @author hongawen
+ * @since 2024-06-06
+ */
+public interface RUploadDataLogMapper extends MppBaseMapper {
+
+}
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RMpPartHarmonicDetailDServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RMpPartHarmonicDetailDServiceImpl.java
index 0380c74eb..586552720 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RMpPartHarmonicDetailDServiceImpl.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RMpPartHarmonicDetailDServiceImpl.java
@@ -60,7 +60,7 @@ public class RMpPartHarmonicDetailDServiceImpl extends ServiceImpl getRMpPartHarmonicDetail(RMpPartHarmonicDetailQueryParam param) {
- String start = DateUtil.format(DateUtil.offsetDay(DateUtil.parse(param.getEndTime(), DatePattern.NORM_DATE_PATTERN),-15),DatePattern.NORM_DATE_PATTERN);
+ //String start = DateUtil.format(DateUtil.offsetDay(DateUtil.parse(param.getEndTime(), DatePattern.NORM_DATE_PATTERN),-15),DatePattern.NORM_DATE_PATTERN);
List lineIdLists = deptLineFeignClient.getLineNodeByDeptId(param.getOrgNo()).getData();
if (CollectionUtils.isEmpty(lineIdLists)){
@@ -70,7 +70,7 @@ public class RMpPartHarmonicDetailDServiceImpl extends ServiceImpl rStatLimitRateDPOs = irStatLimitRateDService.lambdaQuery()
.in(RStatLimitRateDPO::getLineId,lineIdLists)
.eq(RStatLimitRateDPO::getPhasicType,"T")
- .between(RStatLimitRateDPO::getTime, start+" 00:00:00", param.getEndTime()+" 23:59:59").list();
+ .between(RStatLimitRateDPO::getTime, param.getStartTime()+" 00:00:00", param.getEndTime()+" 23:59:59").list();
List rMpPartHarmonicDetailDTOS = new ArrayList<>();
LocalDate date = LocalDate.parse(param.getStartTime());
YearMonth yearMonth = YearMonth.from(date);
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/upload/IRUploadDataLogService.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/upload/IRUploadDataLogService.java
new file mode 100644
index 000000000..7efb7ba79
--- /dev/null
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/upload/IRUploadDataLogService.java
@@ -0,0 +1,18 @@
+package com.njcn.harmonic.service.upload;
+
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.github.jeffreyning.mybatisplus.service.IMppService;
+import com.njcn.harmonic.pojo.po.upload.RUploadDataLog;
+
+/**
+ *
+ * 调度算法执行结果记录表 服务类
+ *
+ *
+ * @author hongawen
+ * @since 2024-06-06
+ */
+public interface IRUploadDataLogService extends IMppService {
+
+}
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/upload/impl/REvaluationDataServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/upload/impl/REvaluationDataServiceImpl.java
index 27dcf132e..cf12e1dc9 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/upload/impl/REvaluationDataServiceImpl.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/upload/impl/REvaluationDataServiceImpl.java
@@ -5,6 +5,7 @@ import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.text.StrBuilder;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
@@ -30,6 +31,7 @@ import com.njcn.harmonic.pojo.po.upload.*;
import com.njcn.harmonic.pojo.vo.upload.DimBusBarVO;
import com.njcn.harmonic.pojo.vo.upload.UploadEvaluationDataVo;
import com.njcn.harmonic.service.upload.IEvaluationDataService;
+import com.njcn.harmonic.service.upload.IRUploadDataLogService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.pojo.po.DictData;
@@ -47,7 +49,10 @@ import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
import java.util.*;
+import java.util.concurrent.atomic.AtomicBoolean;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -84,6 +89,8 @@ public class REvaluationDataServiceImpl extends ServiceImpl list;
//指定数据上送,不管之前有没有上送,都重新上送一次
//(预防之前上送过,修改数据后需要再次上送)
@@ -141,6 +149,8 @@ public class REvaluationDataServiceImpl extends ServiceImpl> partition = ListUtils.partition(list, 100);
//分片上传
+ StrBuilder resultLog = new StrBuilder();
+ AtomicBoolean resultFlag = new AtomicBoolean(true);
for (int i = 0; i < partition.size(); i++) {
//处理数据
List collect = partition.get(i).stream().peek(item -> {
@@ -181,11 +191,29 @@ public class REvaluationDataServiceImpl extends ServiceImpl send = GwSendUtil.send(sp, GWSendEnum.EVALUATION);
//获取返回结果
List l = dtoList.stream().map(PqEvaluationCreateDTO::getId).collect(Collectors.toList());
- returnInformation(i, l, send);
+
+ returnInformation(i, l, send,resultLog,resultFlag,localDate);
}
+
+ if(resultFlag.get()){
+ assUploadLog(localDate,resultLog,resultFlag);
+ }
+
+
return "上送成功:成功数据" + list.size() + "条";
}
+ private void assUploadLog(LocalDate statisticDate,StrBuilder msg,AtomicBoolean resultFlag){
+ RUploadDataLog rUploadDataLog = new RUploadDataLog();
+ rUploadDataLog.setStatisticDate(statisticDate);
+ rUploadDataLog.setBigType(0);
+ rUploadDataLog.setSmallType(0);
+ rUploadDataLog.setCreateTime(LocalDateTime.now());
+ rUploadDataLog.setResult(resultFlag.get()?1:0);
+ rUploadDataLog.setResultMsg(msg.toString());
+ irUploadDataLogService.saveOrUpdateByMultiId(rUploadDataLog);
+ }
+
@Override
public Page getBaseEvaOnlineBusDetail(DimBusBarParam param) {
List temBusIds = new ArrayList<>();
@@ -607,7 +635,9 @@ public class REvaluationDataServiceImpl extends ServiceImpl ids, Map send) {
+ private void returnInformation(Integer step, List ids, Map send,StrBuilder resultLog,AtomicBoolean resultFlag,LocalDate localDate) {
+ int start = step * 100;
+ int end = (step + 1) * 100;
if (send.containsKey("succeed")) {
String succeed = send.get("succeed");
if (succeed.contains("\\\"")) {
@@ -615,21 +645,30 @@ public class REvaluationDataServiceImpl extends ServiceImpl
+ * 调度算法执行结果记录表 服务实现类
+ *
+ *
+ * @author hongawen
+ * @since 2024-06-06
+ */
+@Service
+public class RUploadDataLogServiceImpl extends MppServiceImpl implements IRUploadDataLogService {
+
+}
diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/dim/impl/RDimVoltageDServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/dim/impl/RDimVoltageDServiceImpl.java
index 9fc08503d..cc727e608 100644
--- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/dim/impl/RDimVoltageDServiceImpl.java
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/dim/impl/RDimVoltageDServiceImpl.java
@@ -7,11 +7,14 @@ import cn.hutool.core.date.LocalDateTimeUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
+import com.njcn.common.pojo.exception.BusinessException;
+import com.njcn.common.utils.ReflectCommonUtil;
import com.njcn.device.biz.pojo.dto.DeptGetBusBarDTO;
import com.njcn.device.pms.pojo.po.GeneratrixWire;
import com.njcn.device.pms.pojo.po.Monitor;
import com.njcn.device.pq.pojo.po.RStatIntegrityD;
import com.njcn.harmonic.pojo.po.dim.RDimVoltageD;
+import com.njcn.influx.utils.ReflectUitl;
import com.njcn.prepare.harmonic.mapper.mysql.area.PmsMonitorPOMapper;
import com.njcn.prepare.harmonic.mapper.mysql.day.RStatIntegrityDMapper;
import com.njcn.prepare.harmonic.mapper.mysql.dim.GeneratrixWireMapper;
@@ -24,13 +27,17 @@ import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
+import org.checkerframework.checker.units.qual.C;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
import java.time.LocalDate;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
+import java.util.stream.IntStream;
/**
*
@@ -57,36 +64,58 @@ public class RDimVoltageDServiceImpl extends MppServiceImpl calculatedParam) {
List result = new ArrayList<>();
List deptList = calculatedParam.getIdList();
- String beginDay = LocalDateTimeUtil.format(LocalDateTimeUtil.beginOfDay(LocalDateTimeUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN)),DatePattern.NORM_DATETIME_PATTERN);
- String endDay = LocalDateTimeUtil.format(LocalDateTimeUtil.endOfDay(LocalDateTimeUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN)),DatePattern.NORM_DATETIME_PATTERN);
+ String beginDay = LocalDateTimeUtil.format(LocalDateTimeUtil.beginOfDay(LocalDateTimeUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN)), DatePattern.NORM_DATETIME_PATTERN);
+ String endDay = LocalDateTimeUtil.format(LocalDateTimeUtil.endOfDay(LocalDateTimeUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN)), DatePattern.NORM_DATETIME_PATTERN);
Set lineList = new HashSet<>();
Set busBarList = new HashSet<>();
//接线方式
List dictData = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DEV_CONNECT.getCode()).getData();
- Map dictDataMap = dictData.stream().collect(Collectors.toMap(DictData::getId,Function.identity()));
+ Map dictDataMap = dictData.stream().collect(Collectors.toMap(DictData::getId, Function.identity()));
//获取监测点集合
- deptList.forEach(item->{
+ deptList.forEach(item -> {
lineList.addAll(item.getBusBarAndMonitorIDs());
busBarList.addAll(item.getBusBarIds());
});
- if (CollectionUtil.isNotEmpty(lineList)){
+ if (CollectionUtil.isNotEmpty(lineList)) {
//获取监测点信息
List list1 = getMonitorInfo(lineList);
+ Map monitorMap = list1.stream().collect(Collectors.toMap(Monitor::getId, Function.identity()));
+
//获取监测点数据
- List list2 = getLineData(beginDay,endDay,lineList);
+ List list2 = getLineData(beginDay, endDay, lineList);
+
+ for (LineDataDto lineDataDto : list2) {
+ Monitor monitor = monitorMap.get(lineDataDto.getLineId());
+ Double lv;
+ //不同接线类型的线电压反推公式不同
+ if (dictDataMap.get(monitor.getTerminalWiringMethod()).getCode().equals("star")) {
+ lv = Math.sqrt(3);
+ } else {
+ lv = 1.00;
+ }
+ lineDataDto.setRms(lineDataDto.getRms() * lv);
+ }
+
+
//获取数据完整性
QueryWrapper queryWrapper = new QueryWrapper<>();
- queryWrapper.select("time_id","line_index","real_time/due_time as integrityData","real_time","due_time").
- eq("time_id",beginDay);
+ queryWrapper.select("time_id", "line_index", "real_time/due_time as integrityData", "real_time", "due_time").
+ eq("time_id", beginDay);
List rStatIntegrityDList = rStatIntegrityDMapper.selectList(queryWrapper);
//获取母线信息
List list3 = getBusBarInfo(busBarList);
//循环区域信息,筛选符合条件的数据,做统计
- deptList.forEach(item->{
+ deptList.forEach(item -> {
+
+ if(item.getUnitId().equals("13B9B47F251C3324E05338297A0A0595")){
+
+ System.out.println(55);
+ }
+
List list = item.getBusBarIds();
if (CollUtil.isNotEmpty(list)) {
RDimVoltageD rDimVoltageD = new RDimVoltageD();
@@ -98,142 +127,216 @@ public class RDimVoltageDServiceImpl extends MppServiceImpl> map1 = list4.stream().collect(Collectors.groupingBy(GeneratrixWire::getScale));
//循环分组数据,获取母线下监测点数据
map1.forEach((k, v) -> {
- RDimVoltageD dto = assignment(k,rDimVoltageD,v,list1,list2,rStatIntegrityDList,dictDataMap);
- result.add(dto);
+ assignment(k, rDimVoltageD, v, list1, list2, rStatIntegrityDList,result);
});
}
});
}
- if (CollectionUtil.isNotEmpty(result)){
+ if (CollectionUtil.isNotEmpty(result)) {
this.saveOrUpdateBatchByMultiId(result);
}
}
/**
* 获取监测点信息
+ *
* @param lineList 监测点集合
* @return 监测点信息
*/
public List getMonitorInfo(Set lineList) {
LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
- lambdaQueryWrapper.in(Monitor::getId,lineList).eq(Monitor::getStatus,1);
+ lambdaQueryWrapper.in(Monitor::getId, lineList).eq(Monitor::getStatus, 1);
return pmsMonitorPOMapper.selectList(lambdaQueryWrapper);
}
/**
* 获取母线信息
+ *
* @param busBarList 监测点集合
* @return 母线信息
*/
- public List getBusBarInfo(Set busBarList){
+ public List getBusBarInfo(Set busBarList) {
LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
- lambdaQueryWrapper.in(GeneratrixWire::getId,busBarList).eq(GeneratrixWire::getStatus, 1);
+ lambdaQueryWrapper.in(GeneratrixWire::getId, busBarList).eq(GeneratrixWire::getStatus, 1);
return generatrixWireMapper.selectList(lambdaQueryWrapper);
}
/**
* 获取监测点数据
+ *
* @param startTime 开始时间
* @param endTime 结束时间
* @param lineList 监测点集合
* @return 母线信息
*/
- public List getLineData(String startTime, String endTime, Set lineList){
- return this.baseMapper.getLineData(startTime,endTime,lineList);
+ public List getLineData(String startTime, String endTime, Set lineList) {
+ List list2 = this.baseMapper.getLineData(startTime, endTime, lineList);
+ return list2.stream().filter(i -> i.getRms() > 0).collect(Collectors.toList());
}
/**
* 给实体赋值
- * @param rDimVoltageD 对象
+ *
+ * @param rDimVoltageD 对象
*/
- public RDimVoltageD assignment(String voltage, RDimVoltageD rDimVoltageD, List list1, List list2, List list3,List rStatIntegrityDList,Map dictDataMap) {
+ public void assignment(String voltage, RDimVoltageD rDimVoltageD, List list1, List list2, List list3, List rStatIntegrityDList,List resultList) {
RDimVoltageD result = new RDimVoltageD();
- BeanUtils.copyProperties(rDimVoltageD,result);
+ RDimVoltageD resultSd = new RDimVoltageD();
+ BeanUtils.copyProperties(rDimVoltageD, result);
+ result.setDataType("avg");
+ BeanUtils.copyProperties(rDimVoltageD, resultSd);
+ resultSd.setDataType("sd");
result.setVoltageType(voltage);
+ resultSd.setVoltageType(voltage);
//不同电压等级下,母线的id
List l1 = list1.stream().map(GeneratrixWire::getId).collect(Collectors.toList());
//获取这些母线下的监测点
List l2 = list2.stream().filter(obj -> l1.contains(obj.getLineId())).collect(Collectors.toList());
- List rStatIntegrityDS = rStatIntegrityDList.stream().filter(it->l2.stream().map(Monitor::getId).collect(Collectors.toList()).contains(it.getLineIndex())).collect(Collectors.toList());
+ List rStatIntegrityDS = rStatIntegrityDList.stream().filter(it -> l2.stream().map(Monitor::getId).collect(Collectors.toList()).contains(it.getLineIndex())).collect(Collectors.toList());
- Map> mapMonitor = l2.stream().collect(Collectors.groupingBy(Monitor::getLineId));
- mapMonitor.forEach((busId,list)->{
- RStatIntegrityD rStatIntegrityD = rStatIntegrityDS.stream().filter(i->list.stream().map(Monitor::getId).collect(Collectors.toList()).contains(i.getLineIndex())).max(Comparator.comparing(RStatIntegrityD::getIntegrityData)).orElse(null);
- if(Objects.nonNull(rStatIntegrityD)) {
+ Map> mapMonitor = l2.stream().collect(Collectors.groupingBy(Monitor::getLineId));
+
+ List l3 = new ArrayList<>();
+ mapMonitor.forEach((busId, list) -> {
+ RStatIntegrityD rStatIntegrityD = rStatIntegrityDS.stream().filter(i -> list.stream().map(Monitor::getId).collect(Collectors.toList()).contains(i.getLineIndex())).max(Comparator.comparing(RStatIntegrityD::getIntegrityData)).orElse(null);
+ if (Objects.nonNull(rStatIntegrityD)) {
//获取监测点数据
- List l3 = list3.stream().filter(vo -> vo.getLineId().equals(rStatIntegrityD.getLineIndex())).collect(Collectors.toList());
- Monitor monitor = list.stream().filter(it->it.getId().equals(rStatIntegrityD.getLineIndex())).findFirst().orElse(null);
- String method = monitor.getTerminalWiringMethod();
- Double lv;
- if(dictDataMap.get(method).getCode().equals("star")){
- lv = Math.sqrt(3);
- }else {
- lv = 1.00;
- }
-
- if (CollectionUtil.isNotEmpty(l3)) {
- result.setV(l3.stream().mapToDouble(it->it.getRms()*lv).average().orElse(0d));
- result.setVUnbalance(l3.stream().mapToDouble(LineDataDto::getVUnbalance).average().orElse(0d));
- result.setPst(l3.stream().mapToDouble(LineDataDto::getPst).average().orElse(0d));
- result.setVThd(l3.stream().mapToDouble(LineDataDto::getVThd).average().orElse(0d));
- result.setV1(l3.stream().mapToDouble(LineDataDto::getV1).average().orElse(0d));
- result.setV2(l3.stream().mapToDouble(LineDataDto::getV2).average().orElse(0d));
- result.setV3(l3.stream().mapToDouble(LineDataDto::getV3).average().orElse(0d));
- result.setV4(l3.stream().mapToDouble(LineDataDto::getV4).average().orElse(0d));
- result.setV5(l3.stream().mapToDouble(LineDataDto::getV5).average().orElse(0d));
- result.setV6(l3.stream().mapToDouble(LineDataDto::getV6).average().orElse(0d));
- result.setV7(l3.stream().mapToDouble(LineDataDto::getV7).average().orElse(0d));
- result.setV8(l3.stream().mapToDouble(LineDataDto::getV8).average().orElse(0d));
- result.setV9(l3.stream().mapToDouble(LineDataDto::getV9).average().orElse(0d));
- result.setV10(l3.stream().mapToDouble(LineDataDto::getV10).average().orElse(0d));
- result.setV11(l3.stream().mapToDouble(LineDataDto::getV11).average().orElse(0d));
- result.setV12(l3.stream().mapToDouble(LineDataDto::getV12).average().orElse(0d));
- result.setV13(l3.stream().mapToDouble(LineDataDto::getV13).average().orElse(0d));
- result.setV14(l3.stream().mapToDouble(LineDataDto::getV14).average().orElse(0d));
- result.setV15(l3.stream().mapToDouble(LineDataDto::getV15).average().orElse(0d));
- result.setV16(l3.stream().mapToDouble(LineDataDto::getV16).average().orElse(0d));
- result.setV17(l3.stream().mapToDouble(LineDataDto::getV17).average().orElse(0d));
- result.setV18(l3.stream().mapToDouble(LineDataDto::getV18).average().orElse(0d));
- result.setV19(l3.stream().mapToDouble(LineDataDto::getV19).average().orElse(0d));
- result.setV20(l3.stream().mapToDouble(LineDataDto::getV20).average().orElse(0d));
- result.setV21(l3.stream().mapToDouble(LineDataDto::getV21).average().orElse(0d));
- result.setV22(l3.stream().mapToDouble(LineDataDto::getV22).average().orElse(0d));
- result.setV23(l3.stream().mapToDouble(LineDataDto::getV23).average().orElse(0d));
- result.setV24(l3.stream().mapToDouble(LineDataDto::getV24).average().orElse(0d));
- result.setV25(l3.stream().mapToDouble(LineDataDto::getV25).average().orElse(0d));
- result.setV26(l3.stream().mapToDouble(LineDataDto::getV26).average().orElse(0d));
- result.setV27(l3.stream().mapToDouble(LineDataDto::getV27).average().orElse(0d));
- result.setV28(l3.stream().mapToDouble(LineDataDto::getV28).average().orElse(0d));
- result.setV29(l3.stream().mapToDouble(LineDataDto::getV29).average().orElse(0d));
- result.setV30(l3.stream().mapToDouble(LineDataDto::getV30).average().orElse(0d));
- result.setV31(l3.stream().mapToDouble(LineDataDto::getV31).average().orElse(0d));
- result.setV32(l3.stream().mapToDouble(LineDataDto::getV32).average().orElse(0d));
- result.setV33(l3.stream().mapToDouble(LineDataDto::getV33).average().orElse(0d));
- result.setV34(l3.stream().mapToDouble(LineDataDto::getV34).average().orElse(0d));
- result.setV35(l3.stream().mapToDouble(LineDataDto::getV35).average().orElse(0d));
- result.setV36(l3.stream().mapToDouble(LineDataDto::getV36).average().orElse(0d));
- result.setV37(l3.stream().mapToDouble(LineDataDto::getV37).average().orElse(0d));
- result.setV38(l3.stream().mapToDouble(LineDataDto::getV38).average().orElse(0d));
- result.setV39(l3.stream().mapToDouble(LineDataDto::getV39).average().orElse(0d));
- result.setV40(l3.stream().mapToDouble(LineDataDto::getV40).average().orElse(0d));
- result.setV41(l3.stream().mapToDouble(LineDataDto::getV41).average().orElse(0d));
- result.setV42(l3.stream().mapToDouble(LineDataDto::getV42).average().orElse(0d));
- result.setV43(l3.stream().mapToDouble(LineDataDto::getV43).average().orElse(0d));
- result.setV44(l3.stream().mapToDouble(LineDataDto::getV44).average().orElse(0d));
- result.setV45(l3.stream().mapToDouble(LineDataDto::getV45).average().orElse(0d));
- result.setV46(l3.stream().mapToDouble(LineDataDto::getV46).average().orElse(0d));
- result.setV47(l3.stream().mapToDouble(LineDataDto::getV47).average().orElse(0d));
- result.setV48(l3.stream().mapToDouble(LineDataDto::getV48).average().orElse(0d));
- result.setV49(l3.stream().mapToDouble(LineDataDto::getV49).average().orElse(0d));
- result.setV50(l3.stream().mapToDouble(LineDataDto::getV50).average().orElse(0d));
- result.setINeg(l3.stream().mapToDouble(LineDataDto::getINeg).average().orElse(0d));
- }
+ List pointList = list3.stream().filter(vo -> vo.getLineId().equals(rStatIntegrityD.getLineIndex())).collect(Collectors.toList());
+ l3.addAll(pointList);
}
});
+ if (CollectionUtil.isNotEmpty(l3)) {
+ double v_avg = l3.stream().mapToDouble(LineDataDto::getRms).average().orElse(0d);
+ result.setV(v_avg);
+ double v_sdf = 0.0;
+ for (LineDataDto lineDataDto : l3) {
+ try {
+ v_sdf += (lineDataDto.getRms() - v_avg) * (lineDataDto.getRms() - v_avg);
+ } catch (Exception e) {
+ log.error(e.getMessage());
+ }
+ }
+ resultSd.setV(Math.sqrt(v_sdf / l3.size()));
- return result;
+
+ double v_unbalance = l3.stream().mapToDouble(LineDataDto::getVUnbalance).average().orElse(0d);
+ result.setVUnbalance(v_unbalance);
+ double v_unbalance_df = 0.0;
+ for (LineDataDto lineDataDto : l3) {
+ try {
+ v_unbalance_df += (lineDataDto.getVUnbalance() - v_unbalance) * (lineDataDto.getVUnbalance() - v_unbalance);
+ } catch (Exception e) {
+ log.error(e.getMessage());
+ }
+ }
+ resultSd.setVUnbalance(Math.sqrt(v_unbalance_df / l3.size()));
+
+
+ double v_pst = l3.stream().mapToDouble(LineDataDto::getPst).average().orElse(0d);
+ result.setPst(v_pst);
+ double v_pst_df = 0.0;
+ for (LineDataDto lineDataDto : l3) {
+ try {
+ v_pst_df += (lineDataDto.getPst() - v_pst) * (lineDataDto.getPst() - v_pst);
+ } catch (Exception e) {
+ log.error(e.getMessage());
+ }
+ }
+ resultSd.setPst(Math.sqrt(v_pst_df / l3.size()));
+
+
+ double v_thd = l3.stream().mapToDouble(LineDataDto::getVThd).average().orElse(0d);
+ result.setVThd(v_thd);
+ double v_thd_df = 0.0;
+ for (LineDataDto lineDataDto : l3) {
+ try {
+ v_thd_df += (lineDataDto.getVThd() - v_thd) * (lineDataDto.getVThd() - v_thd);
+ } catch (Exception e) {
+ log.error(e.getMessage());
+ }
+ }
+ resultSd.setVThd(Math.sqrt(v_thd_df / l3.size()));
+
+ double v_ineg = l3.stream().mapToDouble(LineDataDto::getINeg).average().orElse(0d);
+ result.setINeg(v_ineg);
+ double v_ineg_df = 0.0;
+ for (LineDataDto lineDataDto : l3) {
+ try {
+ v_ineg_df += (lineDataDto.getINeg() - v_ineg) * (lineDataDto.getINeg() - v_ineg);
+ } catch (Exception e) {
+ log.error(e.getMessage());
+ }
+ }
+ resultSd.setINeg(Math.sqrt(v_ineg_df / l3.size()));
+
+ result.setINeg(l3.stream().mapToDouble(LineDataDto::getINeg).average().orElse(0d));
+ calculateAveragesAndSet(l3,result,resultSd);
+ resultList.add(result);
+ resultList.add(resultSd);
+ }
+
+ }
+
+
+ public void calculateAveragesAndSet(List l3, RDimVoltageD result,RDimVoltageD resultSd) {
+
+ // 从V1到V50,可以使用IntStream来迭代这些索引
+ IntStream.rangeClosed(1, 50)
+ .forEach(i -> {
+ // 构建getter和setter方法的名字
+ String getterName = "getV" + i;
+ String setterName = "setV" + i;
+
+ // 获取getter和setter的Method对象
+ try {
+ Method getter = LineDataDto.class.getMethod(getterName);
+ Method setter = result.getClass().getMethod(setterName, Double.class);
+ Method setterSd = resultSd.getClass().getMethod(setterName, Double.class);
+
+ // 计算平均值
+ OptionalDouble average = l3.stream()
+ .mapToDouble(lineDataDto -> {
+ try {
+ return (double) getter.invoke(lineDataDto);
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ })
+ .average();
+
+ // 设置结果
+ if (average.isPresent()) {
+ double tem = average.getAsDouble();
+ setter.invoke(result,tem);
+
+ double sd = getTemParam(l3, tem, i);
+ setterSd.invoke(resultSd,sd);
+ } else {
+ // 如果列表为空,可以设置默认值或其他逻辑
+ setter.invoke(result, 0d);
+ setterSd.invoke(resultSd,0d);
+ }
+ } catch (Exception e) {
+ log.error(e.getMessage());
+ }
+ });
+
+
+ }
+
+ private Double getTemParam(List l3, Double avg, Integer count) {
+ double tem = 0.0;
+ for (LineDataDto lineDataDto : l3) {
+ try {
+ double vvv = (double) LineDataDto.class.getMethod("getV" + count).invoke(lineDataDto);
+ tem += (vvv - avg) * (vvv - avg);
+ } catch (Exception e) {
+ log.error(e.getMessage());
+ }
+ }
+ return Math.sqrt(tem/l3.size());
}
}
diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/upload/impl/RUploadEvaluationDataDServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/upload/impl/RUploadEvaluationDataDServiceImpl.java
index dbef549d6..c1fcbfbba 100644
--- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/upload/impl/RUploadEvaluationDataDServiceImpl.java
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/upload/impl/RUploadEvaluationDataDServiceImpl.java
@@ -83,12 +83,15 @@ public class RUploadEvaluationDataDServiceImpl extends MppServiceImpl allMidBusBarList = this.getBusBarInfo();
+
+ //获取在运测点
+ List monitorList = this.getRunMonitorList(pmsRunStatisticsListD);
+
+
//获取监测母线
List superviseBusList;
if (CollUtil.isNotEmpty(pmsRunStatisticsListD)) {
- List wireIds = pmsRunStatisticsListD.stream()
- .filter(x -> StrUtil.isNotBlank(x.getOnlineBusIds()))
- .flatMap(x -> CollectionUtil.toList(x.getOnlineBusIds().split(StrUtil.COMMA)).stream()).distinct().collect(Collectors.toList());
+ List wireIds = pmsRunStatisticsListD.stream().filter(x -> StrUtil.isNotBlank(x.getOnlineBusIds())).flatMap(x -> CollectionUtil.toList(x.getOnlineBusIds().split(StrUtil.COMMA)).stream()).distinct().collect(Collectors.toList());
if(CollUtil.isNotEmpty(wireIds)){
LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(GeneratrixWire::getStatus, DataStateEnum.ENABLE.getCode())
@@ -125,8 +128,14 @@ public class RUploadEvaluationDataDServiceImpl extends MppServiceImpl Objects.equals(o.getOrgId(), item.getUnitId())).findFirst().orElse(null);
+ List deptMonitorList = monitorList.stream().filter(t->item.getUnitId().contains(t.getOrgId())).collect(Collectors.toList());
+
if(Objects.isNull(busBarDto) || busBarDto.getAllOnlineBusNum()==0){
return;
}
@@ -157,34 +166,34 @@ public class RUploadEvaluationDataDServiceImpl extends MppServiceImpl {
- RDimVoltageD rDimVoltageD = this.getDimVoltageData(item.getUnitId(), calculatedParam.getDataDate(), item2.getVoltageLevel());
+ RDimVoltageD rDimVoltageD = this.getDimVoltageData(item.getUnitId(), calculatedParam.getDataDate(), item2.getVoltageLevel(),"avg");
+ RDimVoltageD rDimVoltageDSd = this.getDimVoltageData(item.getUnitId(), calculatedParam.getDataDate(), item2.getVoltageLevel(),"sd");
+
+ List voltageMonitor = deptMonitorList.stream().filter(it->it.getVoltageLevel().equals(item2.getVoltageLevel())).collect(Collectors.toList());
RUploadEvaluationDataD dto0 = this.getLineNum(busBarDto, item2.getVoltageLevel());
//电压
- double sd1 = this.getDimVoltageDataSd(item2.getVoltageLevel(), Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getV(), calculatedParam.getDataDate(), item.getLineBaseList(), UploadEnum.INDEX_TYPE_01.getCode(), null);
- RUploadEvaluationDataD dto11 = this.channelData(rUploadEvaluationDataD, Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getV(), sd1, UploadEnum.INDEX_TYPE_01.getCode(), 0, item2.getVoltageLevel(), dto0);
+ RUploadEvaluationDataD dto11 = this.channelData(rUploadEvaluationDataD, Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getV(), Objects.isNull(rDimVoltageDSd) ? defaultValue : rDimVoltageDSd.getV(), UploadEnum.INDEX_TYPE_01.getCode(), 0, item2.getVoltageLevel(), dto0);
result.add(dto11);
//长时间闪变
- double sd2 = this.getDimVoltageDataSd(item2.getVoltageLevel(), Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getPst(), calculatedParam.getDataDate(), item.getLineBaseList(), UploadEnum.INDEX_TYPE_02.getCode(), null);
- RUploadEvaluationDataD dto22 = this.channelData(rUploadEvaluationDataD, Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getPst(), sd2, UploadEnum.INDEX_TYPE_02.getCode(), 0, item2.getVoltageLevel(), dto0);
+ RUploadEvaluationDataD dto22 = this.channelData(rUploadEvaluationDataD, Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getPst(), Objects.isNull(rDimVoltageDSd) ? defaultValue : rDimVoltageDSd.getPst(), UploadEnum.INDEX_TYPE_02.getCode(), 0, item2.getVoltageLevel(), dto0);
result.add(dto22);
//三相电压不平衡
- double sd3 = this.getDimVoltageDataSd(item2.getVoltageLevel(), Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getVUnbalance(), calculatedParam.getDataDate(), item.getLineBaseList(), UploadEnum.INDEX_TYPE_03.getCode(), null);
- RUploadEvaluationDataD dto33 = this.channelData(rUploadEvaluationDataD, Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getVUnbalance(), sd3, UploadEnum.INDEX_TYPE_03.getCode(), 0, item2.getVoltageLevel(), dto0);
+ RUploadEvaluationDataD dto33 = this.channelData(rUploadEvaluationDataD, Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getVUnbalance(), Objects.isNull(rDimVoltageDSd) ? defaultValue : rDimVoltageDSd.getVUnbalance(), UploadEnum.INDEX_TYPE_03.getCode(), 0, item2.getVoltageLevel(), dto0);
result.add(dto33);
//电压总谐波畸变率
- double sd4 = this.getDimVoltageDataSd(item2.getVoltageLevel(), Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getVThd(), calculatedParam.getDataDate(), item.getLineBaseList(), UploadEnum.INDEX_TYPE_04.getCode(), null);
- RUploadEvaluationDataD dto44 = this.channelData(rUploadEvaluationDataD, Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getVThd(), sd4, UploadEnum.INDEX_TYPE_04.getCode(), 0, item2.getVoltageLevel(), dto0);
+ RUploadEvaluationDataD dto44 = this.channelData(rUploadEvaluationDataD, Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getVThd(), Objects.isNull(rDimVoltageDSd) ? defaultValue : rDimVoltageDSd.getVThd(), UploadEnum.INDEX_TYPE_04.getCode(), 0, item2.getVoltageLevel(), dto0);
result.add(dto44);
//各次谐波电压
List valueList = new ArrayList<>();
+ List valueListSd = new ArrayList<>();
if (!Objects.isNull(rDimVoltageD)) {
valueList = Arrays.asList(rDimVoltageD.getV2(), rDimVoltageD.getV3(), rDimVoltageD.getV4(), rDimVoltageD.getV5(), rDimVoltageD.getV6(), rDimVoltageD.getV7(), rDimVoltageD.getV8(), rDimVoltageD.getV9(), rDimVoltageD.getV10()
, rDimVoltageD.getV11(), rDimVoltageD.getV12(), rDimVoltageD.getV13(), rDimVoltageD.getV14(), rDimVoltageD.getV15(), rDimVoltageD.getV16(), rDimVoltageD.getV17(), rDimVoltageD.getV18(), rDimVoltageD.getV19(), rDimVoltageD.getV20()
@@ -192,10 +201,16 @@ public class RUploadEvaluationDataDServiceImpl extends MppServiceImpl calculatedParam) {
- List result = new ArrayList<>();
- final Double defaultValue = 3.1415926;
- //首先获取pms_run_statistic表是否存在执行日期的数据
- List pmsRunStatisticsListD = runStatisticDMapper.selectList(new LambdaQueryWrapper().eq(PmsRunStatisticD::getStatisticDate, calculatedParam.getDataDate()));
-
- //获取中台母线信息
- List allMidBusBarList = this.getBusBarInfo();
- //获取监测母线
- List superviseBusList;
- if (CollUtil.isNotEmpty(pmsRunStatisticsListD)) {
- List wireIds = pmsRunStatisticsListD.stream()
- .filter(x -> StrUtil.isNotBlank(x.getOnlineBusIds()))
- .flatMap(x -> CollectionUtil.toList(x.getOnlineBusIds().split(StrUtil.COMMA)).stream()).distinct().collect(Collectors.toList());
- if(CollUtil.isNotEmpty(wireIds)){
- LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
- lambdaQueryWrapper.eq(GeneratrixWire::getStatus, DataStateEnum.ENABLE.getCode())
- .in(GeneratrixWire::getId, wireIds);
- superviseBusList = generatrixWireMapper.selectList(lambdaQueryWrapper);
- }else{
- List list1 = this.getPmsMonitor();
- superviseBusList = this.getCnBusBarInfo(list1);
- }
- } else {
- //获取监测点信息
- List list1 = this.getPmsMonitor();
- superviseBusList = this.getCnBusBarInfo(list1);
+ private List getRunMonitorList(List pmsRunStatisticsListD) {
+ List monitorIds = pmsRunStatisticsListD.stream().filter(x -> StrUtil.isNotBlank(x.getRunMonitorIds())).flatMap(x -> CollectionUtil.toList(x.getRunMonitorIds().split(StrUtil.COMMA)).stream()).distinct().collect(Collectors.toList());
+ if (CollUtil.isNotEmpty(monitorIds)) {
+ LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
+ lambdaQueryWrapper.select(Monitor::getId, Monitor::getVoltageLevel, Monitor::getName,Monitor::getOrgId).eq(Monitor::getStatus, DataStateEnum.ENABLE.getCode())
+ .in(Monitor::getId, monitorIds);
+ return pmsMonitorMapper.selectList(lambdaQueryWrapper);
+ }else {
+ return new ArrayList<>();
}
- //获取单位下各电压等级数据
-
- Dept rootDept = deptFeignClient.getRootDept().getData();
- DeptGetLineParam deptGetLineParam = new DeptGetLineParam();
- deptGetLineParam.setDeptId(rootDept.getId());
- List barDto = commTerminalGeneralClient.deptBusBar(deptGetLineParam).getData();
-
- List busBarList = this.getBusBarNum(superviseBusList, allMidBusBarList, barDto);
- List allDept = this.getAllDeptLineNum(busBarList, deptGetLineParam);
- //获取省级单位id
- String provinceId = deptFeignClient.getDepSonIdByDeptId(rootDept.getId()).getData().get(0);
- Dept dept = deptFeignClient.getDeptById(provinceId).getData();
- //获取所有单位
- List deptList = deptFeignClient.getAllDept().getData();
- Map> deptMap = deptList.stream().collect(Collectors.groupingBy(Dept::getCode));
-
- List list = calculatedParam.getIdList();
- list.forEach(item -> {
- if (Objects.equals(Integer.parseInt(UploadEnum.NJCN_DEPT_LEVEL_1.getCode()), item.getDeptLevel())) {
- return;
- }
-
- BusBarDto busBarDto = allDept.stream().filter(o -> Objects.equals(o.getOrgId(), item.getUnitId())).findFirst().orElse(null);
-
- if(Objects.isNull(busBarDto) || busBarDto.getAllOnlineBusNum()==0){
- return;
- }
-
- RUploadEvaluationDataD rUploadEvaluationDataD = new RUploadEvaluationDataD();
- rUploadEvaluationDataD.setProvinceId(dept.getCode());
- rUploadEvaluationDataD.setProvinceName(dept.getName());
- rUploadEvaluationDataD.setDataSources(UploadEnum.DATA_SOURCES_01.getCode());
- rUploadEvaluationDataD.setStatisticalDate(calculatedParam.getDataDate());
- rUploadEvaluationDataD.setComputeDate(calculatedParam.getDataDate());
- rUploadEvaluationDataD.setStatisticalType(UploadEnum.STATISTICAL_TYPE_03.getCode());
- rUploadEvaluationDataD.setUploadStatus(Integer.parseInt(UploadEnum.UPLOAD_STATUS_0.getCode()));
- this.judgeLevel(item.getDeptLevel(), rUploadEvaluationDataD, item.getUnitId(), item.getUnitName(), deptList, deptMap);
+ }
- *//*** 计算无电压等级的数据*//*
- RUploadEvaluationDataD dto = this.getLineNum(busBarDto, "0");
- //电压
- RUploadEvaluationDataD dto1 = this.channelData(rUploadEvaluationDataD, defaultValue, defaultValue, UploadEnum.INDEX_TYPE_01.getCode(), 0, "0", dto);
- result.add(dto1);
- //长时间闪变
- RUploadEvaluationDataD dto2 = this.channelData(rUploadEvaluationDataD, defaultValue, defaultValue, UploadEnum.INDEX_TYPE_02.getCode(), 0, "0", dto);
- result.add(dto2);
- //三相电压不平衡
- RUploadEvaluationDataD dto3 = this.channelData(rUploadEvaluationDataD, defaultValue, defaultValue, UploadEnum.INDEX_TYPE_03.getCode(), 0, "0", dto);
- result.add(dto3);
- //电压总谐波畸变率
- RUploadEvaluationDataD dto4 = this.channelData(rUploadEvaluationDataD, defaultValue, defaultValue, UploadEnum.INDEX_TYPE_04.getCode(), 0, "0", dto);
- result.add(dto4);
- //各次谐波电压
- this.channelHarmonicData(rUploadEvaluationDataD, result, null, UploadEnum.INDEX_TYPE_05.getCode(), "0", dto, null);
- //负序电流
- RUploadEvaluationDataD dto6 = this.channelData(rUploadEvaluationDataD, defaultValue, defaultValue, UploadEnum.INDEX_TYPE_06.getCode(), 0, "0", dto);
- result.add(dto6);
- *//*** 计算分电压等级的数据*//*
- if (CollUtil.isNotEmpty(busBarDto.getVoltageChild())) {
- busBarDto.getVoltageChild().forEach(item2 -> {
- RDimVoltageD rDimVoltageD = this.getDimVoltageData(item.getUnitId(), calculatedParam.getDataDate(), item2.getVoltageLevel());
-
- RUploadEvaluationDataD dto0 = this.getLineNum(busBarDto, item2.getVoltageLevel());
- //电压
- double sd1 = this.getDimVoltageDataSd(item2.getVoltageLevel(), Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getV()*Math.sqrt(3), calculatedParam.getDataDate(), item.getLineBaseList(), UploadEnum.INDEX_TYPE_01.getCode(), null);
- RUploadEvaluationDataD dto11 = this.channelData(rUploadEvaluationDataD, Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getV(), sd1, UploadEnum.INDEX_TYPE_01.getCode(), 0, item2.getVoltageLevel(), dto0);
- result.add(dto11);
- //长时间闪变
- double sd2 = this.getDimVoltageDataSd(item2.getVoltageLevel(), Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getPst(), calculatedParam.getDataDate(), item.getLineBaseList(), UploadEnum.INDEX_TYPE_02.getCode(), null);
- RUploadEvaluationDataD dto22 = this.channelData(rUploadEvaluationDataD, Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getPst(), sd2, UploadEnum.INDEX_TYPE_02.getCode(), 0, item2.getVoltageLevel(), dto0);
- result.add(dto22);
- //三相电压不平衡
- double sd3 = this.getDimVoltageDataSd(item2.getVoltageLevel(), Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getVUnbalance(), calculatedParam.getDataDate(), item.getLineBaseList(), UploadEnum.INDEX_TYPE_03.getCode(), null);
- RUploadEvaluationDataD dto33 = this.channelData(rUploadEvaluationDataD, Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getVUnbalance(), sd3, UploadEnum.INDEX_TYPE_03.getCode(), 0, item2.getVoltageLevel(), dto0);
- result.add(dto33);
- //电压总谐波畸变率
- double sd4 = this.getDimVoltageDataSd(item2.getVoltageLevel(), Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getVThd(), calculatedParam.getDataDate(), item.getLineBaseList(), UploadEnum.INDEX_TYPE_04.getCode(), null);
- RUploadEvaluationDataD dto44 = this.channelData(rUploadEvaluationDataD, Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getVThd(), sd4, UploadEnum.INDEX_TYPE_04.getCode(), 0, item2.getVoltageLevel(), dto0);
- result.add(dto44);
- //各次谐波电压
- List valueList = new ArrayList<>();
- if (!Objects.isNull(rDimVoltageD)) {
- valueList = Arrays.asList(rDimVoltageD.getV2(), rDimVoltageD.getV3(), rDimVoltageD.getV4(), rDimVoltageD.getV5(), rDimVoltageD.getV6(), rDimVoltageD.getV7(), rDimVoltageD.getV8(), rDimVoltageD.getV9(), rDimVoltageD.getV10()
- , rDimVoltageD.getV11(), rDimVoltageD.getV12(), rDimVoltageD.getV13(), rDimVoltageD.getV14(), rDimVoltageD.getV15(), rDimVoltageD.getV16(), rDimVoltageD.getV17(), rDimVoltageD.getV18(), rDimVoltageD.getV19(), rDimVoltageD.getV20()
- , rDimVoltageD.getV21(), rDimVoltageD.getV22(), rDimVoltageD.getV23(), rDimVoltageD.getV24(), rDimVoltageD.getV25(), rDimVoltageD.getV26(), rDimVoltageD.getV27(), rDimVoltageD.getV28(), rDimVoltageD.getV29(), rDimVoltageD.getV30()
- , rDimVoltageD.getV31(), rDimVoltageD.getV32(), rDimVoltageD.getV33(), rDimVoltageD.getV34(), rDimVoltageD.getV35(), rDimVoltageD.getV36(), rDimVoltageD.getV37(), rDimVoltageD.getV38(), rDimVoltageD.getV39(), rDimVoltageD.getV40()
- , rDimVoltageD.getV41(), rDimVoltageD.getV42(), rDimVoltageD.getV43(), rDimVoltageD.getV44(), rDimVoltageD.getV45(), rDimVoltageD.getV46(), rDimVoltageD.getV47(), rDimVoltageD.getV48(), rDimVoltageD.getV49(), rDimVoltageD.getV50());
- }
- this.channelHarmonicData(rUploadEvaluationDataD, result, valueList, UploadEnum.INDEX_TYPE_05.getCode(), item2.getVoltageLevel(), dto0, item.getLineBaseList());
- //负序电流
- double sd6 = this.getDimVoltageDataSd(item2.getVoltageLevel(), Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getINeg(), calculatedParam.getDataDate(), item.getLineBaseList(), UploadEnum.INDEX_TYPE_06.getCode(), null);
- RUploadEvaluationDataD dto66 = this.channelData(rUploadEvaluationDataD, Objects.isNull(rDimVoltageD) ? defaultValue : rDimVoltageD.getINeg(), sd6, UploadEnum.INDEX_TYPE_06.getCode(), 0, item2.getVoltageLevel(), dto0);
- result.add(dto66);
- });
- }
- });
- if (CollUtil.isNotEmpty(result)) {
- this.saveOrUpdateBatchByMultiId(result, 1000);
- }
- }*/
/**
* 通过日表取平均值,作为月表数据
@@ -742,7 +640,7 @@ public class RUploadEvaluationDataDServiceImpl extends MppServiceImpl result, List valueList, String indexType, String voltage, RUploadEvaluationDataD rUploadEvaluationDataD2, List line) {
+ public void channelHarmonicData(RUploadEvaluationDataD rUploadEvaluationDataD, List result, List valueList, List valueListSd, String indexType, String voltage, RUploadEvaluationDataD rUploadEvaluationDataD2, List line) {
final Double defaultValue = 3.1415926;
int length;
if (!Objects.isNull(valueList)) {
@@ -760,8 +658,7 @@ public class RUploadEvaluationDataDServiceImpl extends MppServiceImpl lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(RDimVoltageD::getOrgId, orgId)
.eq(RDimVoltageD::getStatisDate, time)
- .eq(RDimVoltageD::getVoltageType, voltage);
+ .eq(RDimVoltageD::getVoltageType, voltage)
+ .eq(RDimVoltageD::getDataType,dataType);
return rDimVoltageDMapper.selectOne(lambdaQueryWrapper);
}
/**
* 获取不同电压等级母线下的监测点数据,用于计算标准差
*/
- public Double getDimVoltageDataSd(String voltage, Double avg, String time, List line, String type, Integer times) {
+ public Double getDimVoltageDataSd(String voltage, Double avg, String time, List line, String type, Integer times) {
double standardDeviation = 3.1415926;
if (Objects.equals(avg, standardDeviation)) {
return standardDeviation;
}
//获取监测点数据
if (CollUtil.isNotEmpty(line)) {
- Map> map = line.stream().collect(Collectors.groupingBy(LineDevGetDTO::getVoltageLevel));
+ Map> map = line.stream().collect(Collectors.groupingBy(Monitor::getVoltageLevel));
if (!Objects.isNull(map.get(voltage))) {
- Set lineSet = map.get(voltage).stream().map(LineDevGetDTO::getPointId).collect(Collectors.toSet());
+ Set lineSet = map.get(voltage).stream().map(Monitor::getId).collect(Collectors.toSet());
List dataList = rDimVoltageDMapper.getLineData(time, time, lineSet);
+
+
//根据平均值计算每个指标的标准差
if (CollUtil.isNotEmpty(dataList)) {
double total = this.getDataByType(type, avg, dataList, times);
diff --git a/pqs-process/process-api/src/main/java/com/njcn/process/pojo/param/SupvPlanParam.java b/pqs-process/process-api/src/main/java/com/njcn/process/pojo/param/SupvPlanParam.java
index 0295e4ee5..def6e9153 100644
--- a/pqs-process/process-api/src/main/java/com/njcn/process/pojo/param/SupvPlanParam.java
+++ b/pqs-process/process-api/src/main/java/com/njcn/process/pojo/param/SupvPlanParam.java
@@ -45,6 +45,13 @@ public class SupvPlanParam extends BaseParam {
@NotBlank(message = "监督单位不可为空")
private String supvOrgId;
+ /**
+ * 计划所属单位
+ */
+ @ApiModelProperty(value = "计划所属单位",required = true)
+ @NotBlank(message = "计划所属单位不可为空")
+ private String planBelongOrg;
+
/**
* 计划编制人id
*/
diff --git a/pqs-process/process-api/src/main/java/com/njcn/process/pojo/po/SupvPlan.java b/pqs-process/process-api/src/main/java/com/njcn/process/pojo/po/SupvPlan.java
index 1cd62f22f..a1a582f10 100644
--- a/pqs-process/process-api/src/main/java/com/njcn/process/pojo/po/SupvPlan.java
+++ b/pqs-process/process-api/src/main/java/com/njcn/process/pojo/po/SupvPlan.java
@@ -64,6 +64,11 @@ public class SupvPlan extends BaseEntity {
*/
private String supvOrgId;
+ /**
+ * 监督单位
+ */
+ private String planBelongOrg;
+
/**
* 监督单位
*/
diff --git a/pqs-process/process-api/src/main/java/com/njcn/process/pojo/vo/SupvPlanVO.java b/pqs-process/process-api/src/main/java/com/njcn/process/pojo/vo/SupvPlanVO.java
index 3feff1add..d42290394 100644
--- a/pqs-process/process-api/src/main/java/com/njcn/process/pojo/vo/SupvPlanVO.java
+++ b/pqs-process/process-api/src/main/java/com/njcn/process/pojo/vo/SupvPlanVO.java
@@ -42,6 +42,11 @@ public class SupvPlanVO {
@ApiModelProperty(value = "计划编制单位id")
private String planOrgId;
+ /**
+ * 监督计划所属单位
+ */
+ private String planBelongOrg;
+
/**
* 计划编制单位名字
*/
diff --git a/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvPlanServiceImpl.java b/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvPlanServiceImpl.java
index 19b0b8a69..a18251910 100644
--- a/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvPlanServiceImpl.java
+++ b/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvPlanServiceImpl.java
@@ -286,7 +286,7 @@ public class SupvPlanServiceImpl extends ServiceImpl i
supvPlanVOList.forEach(item -> {
PvTerminalTreeVO pvTerminalTreeVO = null;
if (mapCode.containsKey(item.getSupvOrgId())) {
- pvTerminalTreeVO = mapCode.get(item.getSupvOrgId());
+ pvTerminalTreeVO = mapCode.get(item.getPlanBelongOrg());
item.setSupvOrgName(pvTerminalTreeVO.getName());
int deptLevel = pvTerminalTreeVO.getPids().split(StrUtil.COMMA).length;
if (deptLevel == 2) {
diff --git a/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvPushGwServiceImpl.java b/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvPushGwServiceImpl.java
index 9ce4f60e5..927ee0d5c 100644
--- a/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvPushGwServiceImpl.java
+++ b/pqs-process/process-boot/src/main/java/com/njcn/process/service/impl/SupvPushGwServiceImpl.java
@@ -30,6 +30,7 @@ import com.njcn.user.api.UserFeignClient;
import com.njcn.user.pojo.po.Dept;
import com.njcn.user.pojo.po.User;
import com.njcn.user.pojo.vo.PvTerminalTreeVO;
+import com.njcn.web.utils.GwSendUtil;
import com.njcn.web.utils.RestTemplateUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@@ -135,8 +136,8 @@ public class SupvPushGwServiceImpl implements SupvPushGwService {
for (SupvPlan supvPlan : supvPlanList) {
checkParam(supvPlan);
PvTerminalTreeVO pvTerminalTreeVO = null;
- if (mapCode.containsKey(supvPlan.getSupvOrgId())) {
- pvTerminalTreeVO = mapCode.get(supvPlan.getSupvOrgId());
+ if (mapCode.containsKey(supvPlan.getPlanBelongOrg())) {
+ pvTerminalTreeVO = mapCode.get(supvPlan.getPlanBelongOrg());
supvPlan.setSupvOrgName(pvTerminalTreeVO.getName());
int deptLevel = pvTerminalTreeVO.getPids().split(StrUtil.COMMA).length;
if (deptLevel == 2) {
@@ -626,7 +627,7 @@ public class SupvPushGwServiceImpl implements SupvPushGwService {
.contentType("application/json; charset=UTF-8") //设置请求content-type
.accessKey("7d4cb2c0afb5468ca56e0654b1a442ef").secretKey("lW2xr6zKjbaqVDOSgQpcGrM6Rg0=");// 设置accessKey 和 设置secretKey
builder.contentBody(cb);
- String token = LoginToken();
+ String token = GwSendUtil.LoginToken();
builder.putHeaderParamsMap("x-token", token);
builder.putHeaderParamsMap("serviceName", "pqSupervisionReject");
//进行调用,返回结果
@@ -679,7 +680,7 @@ public class SupvPushGwServiceImpl implements SupvPushGwService {
builder.contentBody(cb);
- String token = LoginToken();
+ String token = GwSendUtil.LoginToken();
builder.putHeaderParamsMap("x-token", token);
builder.putHeaderParamsMap("serviceName", serviceName);
//进行调用,返回结果
@@ -698,10 +699,10 @@ public class SupvPushGwServiceImpl implements SupvPushGwService {
return map;
}
- public String LoginToken() {
+/* public String LoginToken() {
String token = null;
- String clientId = "942a9278671711eda2e10ae0b5517f6c";
- String clientSecret = "3Psd2VEhsA3dVsSPHW0ll5r/03kAqlA2P4w2IiWPA8UWSadcX0we2wffjyTUYGsK";
+ String clientId = "e512d3940a7d11eeae0cd6fb272b183c";
+ String clientSecret = "k8cF9CgXsj/lnuP2C4Vhx8tuNsPwieBIU8n14vHL1EoWSadcX0we2wffjyTUYGsK";
String userUrl = "http://" + gwUrl + "/psr-auth/oauth/accessToken?grant_type={grant_type}&client_id={client_id}&client_secret={client_secret}";
Map map = new HashMap<>();
@@ -719,7 +720,7 @@ public class SupvPushGwServiceImpl implements SupvPushGwService {
throw new BusinessException("获取数据token出现未知异常!请检查ip端口是否正确!");
}
return token;
- }
+ }*/
public Map sendFile(String url,SupvFile supvFile) throws IOException {
//获取文件服务器地址
@@ -786,7 +787,7 @@ public class SupvPushGwServiceImpl implements SupvPushGwService {
public String requestCommon(String serviceName, String url, Map param) {
String str;
HttpParameters.Builder builder = new HttpParameters.Builder();
- String token = LoginToken();
+ String token = GwSendUtil.LoginToken();
builder.putHeaderParamsMap("x-token", token);
builder.requestURL(url) // 设置请求的URL,可以拼接URL请求参数