1.oracle同步mysql代码
2.编写最大最小限值,赋值注解
This commit is contained in:
@@ -2,11 +2,14 @@ package com.njcn.mysql.controller;
|
||||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import cn.hutool.core.date.LocalDateTimeUtil;
|
||||
import com.njcn.mysql.bo.po.RStatDataPltD;
|
||||
import com.njcn.mysql.service.OracleToMysqlService;
|
||||
import com.njcn.mysql.util.MaxValueProcessor;
|
||||
import com.njcn.oracle.bo.param.DataAsynParam;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
@@ -95,7 +98,7 @@ public class OracleToMysqlController {
|
||||
}
|
||||
|
||||
@GetMapping("/dayISync")
|
||||
@ApiOperation("day_v转成r_stat_data_i_d")
|
||||
@ApiOperation("day_i转成r_stat_data_i_d")
|
||||
public Boolean dayISync(@RequestParam("startDateTime")String startDateTime, @RequestParam("endDateTime")String endDateTime) {
|
||||
DataAsynParam dataAsynParam = new DataAsynParam();
|
||||
dataAsynParam.setStartDateTime(LocalDateTimeUtil.parse(startDateTime, DatePattern.NORM_DATE_PATTERN));
|
||||
@@ -103,4 +106,49 @@ public class OracleToMysqlController {
|
||||
oracleToMysqlService.insertDataI(startDateTime,endDateTime);
|
||||
return true;// HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, "数据同步");
|
||||
}
|
||||
|
||||
@GetMapping("/dayPltSync")
|
||||
@ApiOperation("day_plt转成r_stat_data_plt_d")
|
||||
public Boolean dayPltSync(@RequestParam("startDateTime")String startDateTime, @RequestParam("endDateTime")String endDateTime) {
|
||||
DataAsynParam dataAsynParam = new DataAsynParam();
|
||||
dataAsynParam.setStartDateTime(LocalDateTimeUtil.parse(startDateTime, DatePattern.NORM_DATE_PATTERN));
|
||||
dataAsynParam.setEndDateTime(LocalDateTimeUtil.parse(endDateTime, DatePattern.NORM_DATE_PATTERN));
|
||||
oracleToMysqlService.insertPlt(startDateTime,endDateTime);
|
||||
return true;// HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, "数据同步");
|
||||
}
|
||||
|
||||
@GetMapping("/dayFlickerSync")
|
||||
@ApiOperation("day_flicker转成r_stat_data_flicker_d")
|
||||
public Boolean dayFlickerSync(@RequestParam("startDateTime")String startDateTime, @RequestParam("endDateTime")String endDateTime) {
|
||||
DataAsynParam dataAsynParam = new DataAsynParam();
|
||||
dataAsynParam.setStartDateTime(LocalDateTimeUtil.parse(startDateTime, DatePattern.NORM_DATE_PATTERN));
|
||||
dataAsynParam.setEndDateTime(LocalDateTimeUtil.parse(endDateTime, DatePattern.NORM_DATE_PATTERN));
|
||||
oracleToMysqlService.insertFlicker(startDateTime,endDateTime);
|
||||
return true;// HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, "数据同步");
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("/dayInHarmVSync")
|
||||
@ApiOperation("day_inharm_v转成r_stat_data_inharm_v_d")
|
||||
public Boolean dayInHarmVSync(@RequestParam("startDateTime")String startDateTime, @RequestParam("endDateTime")String endDateTime) {
|
||||
DataAsynParam dataAsynParam = new DataAsynParam();
|
||||
dataAsynParam.setStartDateTime(LocalDateTimeUtil.parse(startDateTime, DatePattern.NORM_DATE_PATTERN));
|
||||
dataAsynParam.setEndDateTime(LocalDateTimeUtil.parse(endDateTime, DatePattern.NORM_DATE_PATTERN));
|
||||
oracleToMysqlService.insertInHarmV(startDateTime,endDateTime);
|
||||
return true;// HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, "数据同步");
|
||||
}
|
||||
|
||||
|
||||
public static void main(String[] args) {
|
||||
RStatDataPltD user = new RStatDataPltD();
|
||||
user.setPlt(1101111.0f);
|
||||
try {
|
||||
MaxValueProcessor.process(user);
|
||||
System.out.println(user.getPlt());
|
||||
} catch (Exception e) {
|
||||
System.out.println("Validation failed: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
package com.njcn.mysql.job;
|
||||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.date.LocalDateTimeUtil;
|
||||
import com.njcn.mysql.service.OracleToMysqlService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.scheduling.annotation.EnableScheduling;
|
||||
import org.springframework.scheduling.annotation.Scheduled;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.temporal.ChronoUnit;
|
||||
|
||||
|
||||
/**
|
||||
* Description:
|
||||
* Date: 2024/1/18 10:15【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
@Component
|
||||
@EnableScheduling
|
||||
@RequiredArgsConstructor
|
||||
@Slf4j
|
||||
public class OracleToMysqlDBJob {
|
||||
|
||||
private final OracleToMysqlService oracleToMysqlService;
|
||||
|
||||
|
||||
@Scheduled(cron="0 0 7 * * ?")
|
||||
public void executeEvent() {
|
||||
// 获取当前时间
|
||||
String date = DateUtil.format(LocalDateTime.now(), DatePattern.NORM_DATE_PATTERN);
|
||||
System.out.println("-----------------------------------------------------------------------");
|
||||
oracleToMysqlService.insertDayHarmRateV(date,date);
|
||||
oracleToMysqlService.insertPqsIntegrity(date,date);
|
||||
oracleToMysqlService.insertDayV(date,date);
|
||||
oracleToMysqlService.insertLimitRate(date,date);
|
||||
oracleToMysqlService.insertLimitTarget(date,date);
|
||||
oracleToMysqlService.insertComAsses(date,date);
|
||||
oracleToMysqlService.insertAsses(date,date);
|
||||
oracleToMysqlService.insertDataI(date,date);
|
||||
oracleToMysqlService.insertPlt(date,date);
|
||||
oracleToMysqlService.insertFlicker(date,date);
|
||||
oracleToMysqlService.insertInHarmV(date,date);
|
||||
System.out.println("-----------------------------------------------------------------------\n");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -5,6 +5,7 @@ import cn.hutool.core.util.ObjUtil;
|
||||
import com.njcn.mysql.bo.enums.TargetEnum;
|
||||
import com.njcn.mysql.bo.po.*;
|
||||
import com.njcn.mysql.service.*;
|
||||
import com.njcn.mysql.util.MaxValueProcessor;
|
||||
import com.njcn.mysql.util.PubUtils;
|
||||
import com.njcn.oracle.bo.po.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
@@ -32,8 +33,10 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
private final IRStatAssesDService statAssesDService;
|
||||
private final IRStatDataIDService statDataIDService;
|
||||
private final IRStatLimitRateDService rLimitRateDService;
|
||||
|
||||
private final IRStatLimitTargetDService rStatLimitTargetDService;
|
||||
private final IRStatDataPltDService statDataPltDService;
|
||||
private final IRStatDataFlickerDService statDataFlickerDService;
|
||||
private final IRStatDataInharmVDService statDataInharmVDService;
|
||||
|
||||
|
||||
@Override
|
||||
@@ -43,7 +46,7 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
//lineId:Oracle监测点ID id:Mysql监测点ID
|
||||
Map<String, String> oracleRelationMysql = bakList.stream().collect(Collectors.toMap(PqLineBak::getLineId, PqLineBak::getId));
|
||||
timeList.forEach(item->{
|
||||
System.out.println("当前执行日期:"+ item);
|
||||
System.out.println("insertDayHarmRateV->当前执行日期:"+ item);
|
||||
List<RStatDataHarmrateVD> result = new ArrayList<>();
|
||||
long system1 = System.currentTimeMillis();
|
||||
List<DayHarmrateV> list = oracleDataService.getDayHarmRate(item);
|
||||
@@ -61,17 +64,21 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
|
||||
RStatDataHarmrateVD po4 = getData1(data,oracleRelationMysql,"CP95");
|
||||
PubUtils.setValuesUsingReflection(po4,data,true,"getV","setV","Cp95");
|
||||
MaxValueProcessor.process(po1);
|
||||
MaxValueProcessor.process(po2);
|
||||
MaxValueProcessor.process(po3);
|
||||
MaxValueProcessor.process(po4);
|
||||
result.addAll(Arrays.asList(po1,po2,po3,po4));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertDayHarmRateV->查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
if(CollUtil.isNotEmpty(result)){
|
||||
rStatDataHarmRateVDService.insert(result);
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertDayHarmRateV->查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -84,7 +91,7 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
Map<String, String> oracleRelationMysql = bakList.stream().collect(Collectors.toMap(PqLineBak::getLineId, PqLineBak::getId));
|
||||
ZoneId zoneId = ZoneId.systemDefault();
|
||||
timeList.forEach(item->{
|
||||
System.out.println("当前执行日期:"+ item);
|
||||
System.out.println("insertPqsIntegrity->当前执行日期:"+ item);
|
||||
List<RStatIntegrityD> result = new ArrayList<>();
|
||||
long system1 = System.currentTimeMillis();
|
||||
List<PqsIntegrity> list = oracleDataService.getPqsIntegrity(item);
|
||||
@@ -96,17 +103,18 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
po.setLineIndex(oracleRelationMysql.get(data.getLineIndex()));
|
||||
po.setDueTime(data.getDue());
|
||||
po.setRealTime(data.getReal());
|
||||
MaxValueProcessor.process(po);
|
||||
result.add(po);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertPqsIntegrity->查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
if(CollUtil.isNotEmpty(result)){
|
||||
integrityService.insert(result);
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertPqsIntegrity->查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -118,7 +126,7 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
//lineId:Oracle监测点ID id:Mysql监测点ID
|
||||
Map<String, String> oracleRelationMysql = bakList.stream().collect(Collectors.toMap(PqLineBak::getLineId, PqLineBak::getId));
|
||||
timeList.forEach(item->{
|
||||
System.out.println("当前执行日期:"+ item);
|
||||
System.out.println("insertDayV->当前执行日期:"+ item);
|
||||
List<RStatDataVD> result = new ArrayList<>();
|
||||
long system1 = System.currentTimeMillis();
|
||||
List<DayV> list = oracleDataService.getDayV(item);
|
||||
@@ -175,17 +183,21 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
po4.setRmsLvr(0.0f);
|
||||
}
|
||||
PubUtils.setValuesUsingReflection(po4,data,true,"getV","setV","Cp95");
|
||||
MaxValueProcessor.process(po1);
|
||||
MaxValueProcessor.process(po2);
|
||||
MaxValueProcessor.process(po3);
|
||||
MaxValueProcessor.process(po4);
|
||||
result.addAll(Arrays.asList(po1,po2,po3,po4));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertDayV->查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
if(CollUtil.isNotEmpty(result)){
|
||||
rStatDataVDService.insert(result);
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertDayV->查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -198,7 +210,7 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
//lineId:Oracle监测点ID id:Mysql监测点ID
|
||||
Map<String, String> oracleRelationMysql = bakList.stream().collect(Collectors.toMap(PqLineBak::getLineId, PqLineBak::getId));
|
||||
timeList.forEach(item->{
|
||||
System.out.println("当前执行日期:"+ item);
|
||||
System.out.println("insertLimitRate->当前执行日期:"+ item);
|
||||
List<RStatLimitRateD> result = new ArrayList<>();
|
||||
long system1 = System.currentTimeMillis();
|
||||
List<LimitRate> list = oracleDataService.getLimitRate(item);
|
||||
@@ -211,17 +223,18 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
po.setAllTime(data.getAlltime());
|
||||
po.setFlickerAllTime(data.getFlicketAlltime());
|
||||
BeanUtils.copyProperties(data,po);
|
||||
MaxValueProcessor.process(po);
|
||||
result.add(po);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertLimitRate->查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
if(CollUtil.isNotEmpty(result)){
|
||||
rLimitRateDService.insert(result);
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertLimitRate->查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -234,7 +247,7 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
//lineId:Oracle监测点ID id:Mysql监测点ID
|
||||
Map<String, String> oracleRelationMysql = bakList.stream().collect(Collectors.toMap(PqLineBak::getLineId, PqLineBak::getId));
|
||||
timeList.forEach(item->{
|
||||
System.out.println("当前执行日期:"+ item);
|
||||
System.out.println("insertLimitTarget->当前执行日期:"+ item);
|
||||
List<RStatLimitTargetD> result = new ArrayList<>();
|
||||
long system1 = System.currentTimeMillis();
|
||||
List<LimitTarget> list = oracleDataService.getLimitTarget(item);
|
||||
@@ -247,17 +260,18 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
po.setAllTime(data.getAlltime());
|
||||
po.setFlickerAllTime(data.getFlicketAlltime());
|
||||
BeanUtils.copyProperties(data,po);
|
||||
MaxValueProcessor.process(po);
|
||||
result.add(po);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertLimitTarget->查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
if(CollUtil.isNotEmpty(result)){
|
||||
rStatLimitTargetDService.insert(result);
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertLimitTarget->查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -269,7 +283,7 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
//lineId:Oracle监测点ID id:Mysql监测点ID
|
||||
Map<String, String> oracleRelationMysql = bakList.stream().collect(Collectors.toMap(PqLineBak::getLineId, PqLineBak::getId));
|
||||
timeList.forEach(item-> {
|
||||
System.out.println("当前执行日期:"+ item);
|
||||
System.out.println("insertComAsses->当前执行日期:"+ item);
|
||||
List<RStatComassesD> result = new ArrayList<>();
|
||||
long system1 = System.currentTimeMillis();
|
||||
List<PqsComAsses> pqsComAsses = oracleDataService.getPqsComAsses(item);
|
||||
@@ -309,17 +323,18 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
comAsses.setEvent3(data.getEvent3());
|
||||
comAsses.setEvent4(data.getEvent4());
|
||||
comAsses.setEvent5(data.getEvent5());
|
||||
MaxValueProcessor.process(comAsses);
|
||||
result.add(comAsses);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertComAsses->查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
if(CollUtil.isNotEmpty(result)){
|
||||
statComassesDService.insert(result);
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:"+(CollUtil.isNotEmpty(pqsComAsses)?pqsComAsses.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertComAsses->查询oracle数据:"+(CollUtil.isNotEmpty(pqsComAsses)?pqsComAsses.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -331,7 +346,7 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
//lineId:Oracle监测点ID id:Mysql监测点ID
|
||||
Map<String, String> oracleRelationMysql = bakList.stream().collect(Collectors.toMap(PqLineBak::getLineId, PqLineBak::getId));
|
||||
timeList.forEach(item-> {
|
||||
System.out.println("当前执行日期:"+ item);
|
||||
System.out.println("insertAsses->当前执行日期:"+ item);
|
||||
List<RStatAssesD> result = new ArrayList<>();
|
||||
long system1 = System.currentTimeMillis();
|
||||
List<PqsAsses> pqsComAsses = oracleDataService.getPqsAsses(item);
|
||||
@@ -346,17 +361,18 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
assesD.setDataPlt(data.getDataPlt());
|
||||
assesD.setVUnbalanceCp95(data.getVUnbalanceCP95());
|
||||
assesD.setVThdCp95(data.getVThdCP95());
|
||||
MaxValueProcessor.process(assesD);
|
||||
result.add(assesD);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertAsses->查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
if(CollUtil.isNotEmpty(result)){
|
||||
statAssesDService.insert(result);
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:"+(CollUtil.isNotEmpty(pqsComAsses)?pqsComAsses.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertAsses->查询oracle数据:"+(CollUtil.isNotEmpty(pqsComAsses)?pqsComAsses.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -368,7 +384,7 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
//lineId:Oracle监测点ID id:Mysql监测点ID
|
||||
Map<String, String> oracleRelationMysql = bakList.stream().collect(Collectors.toMap(PqLineBak::getLineId, PqLineBak::getId));
|
||||
timeList.forEach(item-> {
|
||||
System.out.println("当前执行日期:"+ item);
|
||||
System.out.println("insertDataI->当前执行日期:"+ item);
|
||||
List<RStatDataID> result = new ArrayList<>();
|
||||
long system1 = System.currentTimeMillis();
|
||||
List<DayI> list = oracleDataService.getDayI(item);
|
||||
@@ -386,17 +402,21 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
|
||||
RStatDataID po4 = getDataI(data,oracleRelationMysql,"CP95");
|
||||
PubUtils.setValuesUsingReflection(po4,data,true,"getI","setI","Cp95");
|
||||
MaxValueProcessor.process(po1);
|
||||
MaxValueProcessor.process(po2);
|
||||
MaxValueProcessor.process(po3);
|
||||
MaxValueProcessor.process(po4);
|
||||
result.addAll(Arrays.asList(po1,po2,po3,po4));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertDataI->查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
if(CollUtil.isNotEmpty(result)){
|
||||
statDataIDService.insert(result);
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
System.out.println("insertDataI->查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -408,7 +428,29 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
//lineId:Oracle监测点ID id:Mysql监测点ID
|
||||
Map<String, String> oracleRelationMysql = bakList.stream().collect(Collectors.toMap(PqLineBak::getLineId, PqLineBak::getId));
|
||||
timeList.forEach(item-> {
|
||||
|
||||
System.out.println("insertPlt->当前执行日期:"+ item);
|
||||
List<RStatDataPltD> result = new ArrayList<>();
|
||||
long system1 = System.currentTimeMillis();
|
||||
List<DayPlt> list = oracleDataService.getDayPlt(item);
|
||||
if(CollUtil.isNotEmpty(list)){
|
||||
list.forEach(data->{
|
||||
if (ObjUtil.isNotNull(oracleRelationMysql.get(data.getLineid()))) {
|
||||
RStatDataPltD po1 = getDataPlt(data,oracleRelationMysql,"AVG");
|
||||
RStatDataPltD po2 = getDataPlt(data,oracleRelationMysql,"MAX");
|
||||
RStatDataPltD po3 = getDataPlt(data,oracleRelationMysql,"MIN");
|
||||
RStatDataPltD po4 = getDataPlt(data,oracleRelationMysql,"CP95");
|
||||
result.addAll(Arrays.asList(po1,po2,po3,po4));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("insertPlt->查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
if(CollUtil.isNotEmpty(result)){
|
||||
statDataPltDService.insert(result);
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("insertPlt->查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -419,7 +461,29 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
//lineId:Oracle监测点ID id:Mysql监测点ID
|
||||
Map<String, String> oracleRelationMysql = bakList.stream().collect(Collectors.toMap(PqLineBak::getLineId, PqLineBak::getId));
|
||||
timeList.forEach(item-> {
|
||||
|
||||
System.out.println("insertFlicker->当前执行日期:"+ item);
|
||||
List<RStatDataFlickerD> result = new ArrayList<>();
|
||||
long system1 = System.currentTimeMillis();
|
||||
List<DayFlicker> list = oracleDataService.getDayFlicker(item);
|
||||
if(CollUtil.isNotEmpty(list)){
|
||||
list.forEach(data->{
|
||||
if (ObjUtil.isNotNull(oracleRelationMysql.get(data.getLineid()))) {
|
||||
RStatDataFlickerD po1 = getDataFlicker(data,oracleRelationMysql,"AVG");
|
||||
RStatDataFlickerD po2 = getDataFlicker(data,oracleRelationMysql,"MAX");
|
||||
RStatDataFlickerD po3 = getDataFlicker(data,oracleRelationMysql,"MIN");
|
||||
RStatDataFlickerD po4 = getDataFlicker(data,oracleRelationMysql,"CP95");
|
||||
result.addAll(Arrays.asList(po1,po2,po3,po4));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("insertFlicker->查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
if(CollUtil.isNotEmpty(result)){
|
||||
statDataFlickerDService.insert(result);
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("insertFlicker->查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -430,6 +494,29 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
//lineId:Oracle监测点ID id:Mysql监测点ID
|
||||
Map<String, String> oracleRelationMysql = bakList.stream().collect(Collectors.toMap(PqLineBak::getLineId, PqLineBak::getId));
|
||||
timeList.forEach(item-> {
|
||||
System.out.println("insertInHarmV->当前执行日期:"+ item);
|
||||
List<RStatDataInharmVD> result = new ArrayList<>();
|
||||
long system1 = System.currentTimeMillis();
|
||||
List<DayInharmV> list = oracleDataService.getDayInHarmV(item);
|
||||
if(CollUtil.isNotEmpty(list)){
|
||||
list.forEach(data->{
|
||||
if (ObjUtil.isNotNull(oracleRelationMysql.get(data.getLineid()))) {
|
||||
RStatDataInharmVD po1 = getDataInHarmV(data,oracleRelationMysql,"AVG");
|
||||
RStatDataInharmVD po2 = getDataInHarmV(data,oracleRelationMysql,"MAX");
|
||||
RStatDataInharmVD po3 = getDataInHarmV(data,oracleRelationMysql,"MIN");
|
||||
RStatDataInharmVD po4 = getDataInHarmV(data,oracleRelationMysql,"CP95");
|
||||
result.addAll(Arrays.asList(po1,po2,po3,po4));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("insertInHarmV->查询oracle数据:0,执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
if(CollUtil.isNotEmpty(result)){
|
||||
statDataInharmVDService.insert(result);
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("insertInHarmV->查询oracle数据:"+(CollUtil.isNotEmpty(list)?list.size():0)+",插入mysql数据:"+ result.size() + ",执行时间:" + (system2-system1)/1000.0 + "s");
|
||||
}
|
||||
|
||||
});
|
||||
}
|
||||
@@ -443,6 +530,7 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
po1.setValueType(valueType);
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_HARM_RATE_V.getCode(),data,null));
|
||||
MaxValueProcessor.process(po1);
|
||||
return po1;
|
||||
}
|
||||
|
||||
@@ -506,13 +594,14 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_V.getCode(),data,"Cp95"));
|
||||
}
|
||||
MaxValueProcessor.process(po1);
|
||||
return po1;
|
||||
}
|
||||
|
||||
public RStatDataID getDataI(DayI data, Map<String, String> oracleRelationMysql, String valueType) {
|
||||
ZoneId zoneId = ZoneId.systemDefault();
|
||||
RStatDataID po1 = new RStatDataID();
|
||||
po1.setTime(data.getTimeid().atZone(zoneId).toLocalDate());
|
||||
po1.setTime(data.getTimeid().toInstant().atZone(zoneId).toLocalDate());
|
||||
po1.setLineId(oracleRelationMysql.get(data.getLineid()));
|
||||
po1.setPhaseType(data.getPhasicType());
|
||||
po1.setValueType(valueType);
|
||||
@@ -523,6 +612,8 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
po1.setIThd(data.getIThd());
|
||||
po1.setIUnbalance(data.getIUnbalance());
|
||||
po1.setIZero(data.getIZero());
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_I.getCode(),data,null));
|
||||
} else if (Objects.equals(valueType,"MAX")) {
|
||||
po1.setRms(data.getRmsMax());
|
||||
po1.setINeg(data.getINegMax());
|
||||
@@ -531,6 +622,7 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
po1.setIUnbalance(data.getIUnbalanceMax());
|
||||
po1.setIZero(data.getIZeroMax());
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_I.getCode(),data,"Max"));
|
||||
} else if (Objects.equals(valueType,"MIN")) {
|
||||
po1.setRms(data.getRmsMin());
|
||||
po1.setINeg(data.getINegMin());
|
||||
@@ -538,6 +630,8 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
po1.setIThd(data.getIThdMin());
|
||||
po1.setIUnbalance(data.getIUnbalanceMin());
|
||||
po1.setIZero(data.getIZeroMin());
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_I.getCode(),data,"Min"));
|
||||
} else if (Objects.equals(valueType,"CP95")) {
|
||||
po1.setRms(data.getRmsCp95());
|
||||
po1.setINeg(data.getINegCp95());
|
||||
@@ -545,27 +639,102 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
po1.setIThd(data.getIThdCp95());
|
||||
po1.setIUnbalance(data.getIUnbalanceCp95());
|
||||
po1.setIZero(data.getIZeroCp95());
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_I.getCode(),data,"Cp95"));
|
||||
}
|
||||
MaxValueProcessor.process(po1);
|
||||
return po1;
|
||||
}
|
||||
public void getRmsLvrData(List<DayV> list) {
|
||||
Map<String,List<Float>> map = new HashMap<>();
|
||||
Map<String, List<DayV>> dayMap = list.stream().collect(Collectors.groupingBy(DayV::getLineid));
|
||||
List<DayV> tList = list.stream().filter(type ->Objects.equals(type.getPhasicType(),"T")).collect(Collectors.toList());
|
||||
tList.forEach(item->{
|
||||
if (CollUtil.isNotEmpty(dayMap.get(item.getLineid()))){
|
||||
DayV dayV = dayMap.get(item.getLineid()).stream().filter(type ->Objects.equals(type.getPhasicType(),"T")).collect(Collectors.toList()).get(0);
|
||||
dayMap.get(item.getLineid()).forEach(day->{
|
||||
if (Objects.equals(day.getPhasicType(),"A")) {
|
||||
|
||||
} else if (Objects.equals(day.getPhasicType(),"B")) {
|
||||
|
||||
} else if (Objects.equals(day.getPhasicType(),"C")) {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
public RStatDataPltD getDataPlt(DayPlt data, Map<String, String> oracleRelationMysql, String valueType) {
|
||||
ZoneId zoneId = ZoneId.systemDefault();
|
||||
RStatDataPltD po1 = new RStatDataPltD();
|
||||
po1.setTime(data.getTimeid().toInstant().atZone(zoneId).toLocalDate());
|
||||
po1.setLineId(oracleRelationMysql.get(data.getLineid()));
|
||||
po1.setPhaseType(data.getPhasicType());
|
||||
po1.setValueType(valueType);
|
||||
if (Objects.equals(valueType,"AVG")) {
|
||||
po1.setPlt(data.getPlt());
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_PLT.getCode(),data,null));
|
||||
} else if (Objects.equals(valueType,"MAX")) {
|
||||
po1.setPlt(data.getPltMax());
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_PLT.getCode(),data,"Max"));
|
||||
} else if (Objects.equals(valueType,"MIN")) {
|
||||
po1.setPlt(data.getPltMin());
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_PLT.getCode(),data,"Min"));
|
||||
} else if (Objects.equals(valueType,"CP95")) {
|
||||
po1.setPlt(data.getPltCp95());
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_PLT.getCode(),data,"Cp95"));
|
||||
}
|
||||
MaxValueProcessor.process(po1);
|
||||
return po1;
|
||||
}
|
||||
|
||||
public RStatDataFlickerD getDataFlicker(DayFlicker data, Map<String, String> oracleRelationMysql, String valueType) {
|
||||
ZoneId zoneId = ZoneId.systemDefault();
|
||||
RStatDataFlickerD po1 = new RStatDataFlickerD();
|
||||
po1.setTime(data.getTimeid().toInstant().atZone(zoneId).toLocalDate());
|
||||
po1.setLineId(oracleRelationMysql.get(data.getLineid()));
|
||||
po1.setPhaseType(data.getPhasicType());
|
||||
po1.setValueType(valueType);
|
||||
if (Objects.equals(valueType,"AVG")) {
|
||||
po1.setFluc(data.getFluc());
|
||||
po1.setPlt(data.getPlt());
|
||||
po1.setPst(data.getPst());
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_FLICKER.getCode(),data,null));
|
||||
} else if (Objects.equals(valueType,"MAX")) {
|
||||
po1.setFluc(data.getFlucMax());
|
||||
po1.setPlt(data.getPltMax());
|
||||
po1.setPst(data.getPstMax());
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_FLICKER.getCode(),data,"Max"));
|
||||
} else if (Objects.equals(valueType,"MIN")) {
|
||||
po1.setFluc(data.getFlucMin());
|
||||
po1.setPlt(data.getPltMin());
|
||||
po1.setPst(data.getPstMin());
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_FLICKER.getCode(),data,"Min"));
|
||||
} else if (Objects.equals(valueType,"CP95")) {
|
||||
po1.setFluc(data.getFlucCp95());
|
||||
po1.setPlt(data.getPltCp95());
|
||||
po1.setPst(data.getPstCp95());
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_FLICKER.getCode(),data,"Cp95"));
|
||||
}
|
||||
MaxValueProcessor.process(po1);
|
||||
return po1;
|
||||
}
|
||||
|
||||
public RStatDataInharmVD getDataInHarmV(DayInharmV data, Map<String, String> oracleRelationMysql, String valueType) {
|
||||
ZoneId zoneId = ZoneId.systemDefault();
|
||||
RStatDataInharmVD po1 = new RStatDataInharmVD();
|
||||
po1.setTime(data.getTimeid().toInstant().atZone(zoneId).toLocalDate());
|
||||
po1.setLineId(oracleRelationMysql.get(data.getLineid()));
|
||||
po1.setPhaseType(data.getPhasicType());
|
||||
po1.setValueType(valueType);
|
||||
if (Objects.equals(valueType,"AVG")) {
|
||||
PubUtils.setValuesUsingReflection(po1,data,false,"getV","setV",null);
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_IN_HARM_V.getCode(),data,null));
|
||||
} else if (Objects.equals(valueType,"MAX")) {
|
||||
PubUtils.setValuesUsingReflection(po1,data,true,"getV","setV","Max");
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_IN_HARM_V.getCode(),data,"Max"));
|
||||
} else if (Objects.equals(valueType,"MIN")) {
|
||||
PubUtils.setValuesUsingReflection(po1,data,true,"getV","setV","Min");
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_IN_HARM_V.getCode(),data,"Min"));
|
||||
} else if (Objects.equals(valueType,"CP95")) {
|
||||
PubUtils.setValuesUsingReflection(po1,data,true,"getV","setV","Cp95");
|
||||
//异常数据判断
|
||||
po1.setQualityFlag(PubUtils.judgeData(TargetEnum.DAY_IN_HARM_V.getCode(),data,"Cp95"));
|
||||
}
|
||||
MaxValueProcessor.process(po1);
|
||||
return po1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.njcn.mysql.service.impl;
|
||||
|
||||
import com.baomidou.dynamic.datasource.annotation.DS;
|
||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||
import com.njcn.mysql.bo.po.RStatDataFlickerD;
|
||||
import com.njcn.mysql.mapper.RStatDataFlickerDMapper;
|
||||
@@ -16,6 +17,7 @@ import java.util.List;
|
||||
* @createTime 2023/3/24 9:53
|
||||
*/
|
||||
@Service
|
||||
@DS("target")
|
||||
public class RStatDataFlickerDServiceImpl extends MppServiceImpl<RStatDataFlickerDMapper, RStatDataFlickerD> implements IRStatDataFlickerDService {
|
||||
@Override
|
||||
public void insert(List<RStatDataFlickerD> list) {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.njcn.mysql.service.impl;
|
||||
|
||||
import com.baomidou.dynamic.datasource.annotation.DS;
|
||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||
import com.njcn.mysql.bo.po.RStatDataInharmVD;
|
||||
import com.njcn.mysql.mapper.RStatDataInHarmVDMapper;
|
||||
@@ -16,6 +17,7 @@ import java.util.List;
|
||||
* @createTime 2023/3/24 9:53
|
||||
*/
|
||||
@Service
|
||||
@DS("target")
|
||||
public class RStatDataInharmVDServiceImpl extends MppServiceImpl<RStatDataInHarmVDMapper, RStatDataInharmVD> implements IRStatDataInharmVDService {
|
||||
|
||||
@Override
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.njcn.mysql.service.impl;
|
||||
|
||||
import com.baomidou.dynamic.datasource.annotation.DS;
|
||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||
import com.njcn.mysql.bo.po.RStatDataPltD;
|
||||
import com.njcn.mysql.mapper.RStatDataPltDMapper;
|
||||
@@ -16,6 +17,7 @@ import java.util.List;
|
||||
* @createTime 2023/3/24 9:53
|
||||
*/
|
||||
@Service
|
||||
@DS("target")
|
||||
public class RStatDataPltDServiceImpl extends MppServiceImpl<RStatDataPltDMapper, RStatDataPltD> implements IRStatDataPltDService {
|
||||
|
||||
@Override
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
package com.njcn.mysql.util;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.njcn.mysql.bo.util.CompareValue;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
|
||||
//防止数据过大
|
||||
public class MaxValueProcessor {
|
||||
public static void process(Object obj) {
|
||||
Field[] fields = obj.getClass().getDeclaredFields();
|
||||
for (Field field : fields) {
|
||||
if (field.isAnnotationPresent(CompareValue.class)) {
|
||||
CompareValue compareValue = field.getAnnotation(CompareValue.class);
|
||||
field.setAccessible(true);
|
||||
Class<?> type = field.getType();
|
||||
try {
|
||||
if (type == Float.class) {
|
||||
Float fieldValue = (Float) field.get(obj);
|
||||
float minValue = compareValue.minValue();
|
||||
float maxValue = compareValue.maxValue();
|
||||
if(ObjectUtil.isNotNull(fieldValue)){
|
||||
if (fieldValue > maxValue) {
|
||||
field.set(obj, maxValue);
|
||||
}
|
||||
if (fieldValue < minValue) {
|
||||
field.set(obj, minValue);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (type == Double.class) {
|
||||
Double fieldValue = (Double) field.get(obj);
|
||||
double minValue = compareValue.minValue();
|
||||
double maxValue = compareValue.maxValue();
|
||||
if(ObjectUtil.isNotNull(fieldValue)){
|
||||
if (fieldValue > maxValue) {
|
||||
field.set(obj, maxValue);
|
||||
}
|
||||
if (fieldValue < minValue) {
|
||||
field.set(obj, minValue);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (type == Integer.class) {
|
||||
Integer fieldValue = (Integer) field.get(obj);
|
||||
int minValue = (int) compareValue.minValue();
|
||||
int maxValue = (int) compareValue.maxValue();
|
||||
if(ObjectUtil.isNotNull(fieldValue)){
|
||||
if (fieldValue > maxValue) {
|
||||
field.set(obj, maxValue);
|
||||
}
|
||||
if (fieldValue < minValue) {
|
||||
field.set(obj, minValue);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -2,9 +2,9 @@ package com.njcn.mysql.util;
|
||||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.njcn.oracle.bo.po.DayHarmrateV;
|
||||
import com.njcn.oracle.bo.po.DayV;
|
||||
import com.njcn.oracle.bo.po.*;
|
||||
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.lang.reflect.Method;
|
||||
import java.math.BigDecimal;
|
||||
import java.text.SimpleDateFormat;
|
||||
@@ -111,6 +111,53 @@ public class PubUtils {
|
||||
e.getMessage();
|
||||
}
|
||||
return result;
|
||||
case 2:
|
||||
try {
|
||||
DayFlicker data2 = new ObjectMapper().convertValue(object, DayFlicker.class);
|
||||
String methodName1 = "getFluc" + (Objects.isNull(type)?"":type);
|
||||
Method method1=data2.getClass().getMethod(methodName1);
|
||||
float value = (Float) method1.invoke(data2);
|
||||
|
||||
String methodName2 = "getPlt" + (Objects.isNull(type)?"":type);
|
||||
Method method2=data2.getClass().getMethod(methodName2);
|
||||
float value2 = (Float) method2.invoke(data2);
|
||||
|
||||
String methodName3 = "getPst" + (Objects.isNull(type)?"":type);
|
||||
Method method3=data2.getClass().getMethod(methodName3);
|
||||
float value3 = (Float) method3.invoke(data2);
|
||||
|
||||
//电压波动值判断
|
||||
if ( (value > 40.0|| value < 0)){
|
||||
result = 1;
|
||||
}
|
||||
//短时闪变值判断
|
||||
if ( (value2 > 20.0|| value2 < 0)){
|
||||
result = 1;
|
||||
}
|
||||
//长时闪变值判断
|
||||
if ( (value3 > 20.0|| value3 < 0)){
|
||||
result = 1;
|
||||
}
|
||||
} catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException e) {
|
||||
e.getMessage();
|
||||
}
|
||||
return result;
|
||||
case 3:
|
||||
//长时闪变
|
||||
DayPlt data3 = new ObjectMapper().convertValue(object, DayPlt.class);
|
||||
String methodName1 = "getPlt" + (Objects.isNull(type)?"":type);
|
||||
Method method1 = null;
|
||||
try {
|
||||
method1 = data3.getClass().getMethod(methodName1);
|
||||
float value = (Float) method1.invoke(data3);
|
||||
//长时闪变值判断
|
||||
if ( (value > 20.0|| value < 0)){
|
||||
result = 1;
|
||||
}
|
||||
} catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException e) {
|
||||
e.getMessage();
|
||||
}
|
||||
return result;
|
||||
case 4:
|
||||
DayHarmrateV data4 = new ObjectMapper().convertValue(object, DayHarmrateV.class);
|
||||
List<Float> avgData4 = getData(data4);
|
||||
|
||||
Reference in New Issue
Block a user