1
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
package com.njcn.mysql.mapper;
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||
import com.njcn.mysql.bo.po.RStatLimitTargetD;
|
||||
|
||||
public interface RStatLimitTargetDMapper extends MppBaseMapper<RStatLimitTargetD> {
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package com.njcn.mysql.service;
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.service.IMppService;
|
||||
import com.njcn.mysql.bo.po.RStatLimitTargetD;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface IRStatLimitTargetDService extends IMppService<RStatLimitTargetD> {
|
||||
|
||||
void insert(List<RStatLimitTargetD> list);
|
||||
}
|
||||
@@ -6,10 +6,7 @@ import com.njcn.mysql.bo.enums.TargetEnum;
|
||||
import com.njcn.mysql.bo.po.*;
|
||||
import com.njcn.mysql.service.*;
|
||||
import com.njcn.mysql.util.PubUtils;
|
||||
import com.njcn.oracle.bo.po.DayHarmrateV;
|
||||
import com.njcn.oracle.bo.po.DayV;
|
||||
import com.njcn.oracle.bo.po.LimitRate;
|
||||
import com.njcn.oracle.bo.po.PqsIntegrity;
|
||||
import com.njcn.oracle.bo.po.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -38,6 +35,9 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
|
||||
private final IRStatLimitRateDService rLimitRateDService;
|
||||
|
||||
private final IRStatLimitTargetDService rStatLimitTargetDService;
|
||||
|
||||
|
||||
@Override
|
||||
public void insertDayHarmRateV(String startTime, String endTime) {
|
||||
List<String> timeList = PubUtils.getTimeList(startTime,endTime);
|
||||
@@ -194,6 +194,7 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
|
||||
@Override
|
||||
public void insertLimitRate(String startTime, String endTime) {
|
||||
ZoneId zoneId = ZoneId.systemDefault();
|
||||
List<String> timeList = PubUtils.getTimeList(startTime,endTime);
|
||||
List<PqLineBak> bakList = pqLineBakService.list();
|
||||
//lineId:Oracle监测点ID id:Mysql监测点ID
|
||||
@@ -207,8 +208,10 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
list.forEach(data->{
|
||||
if (ObjUtil.isNotNull(oracleRelationMysql.get(data.getMyindex().toString()))) {
|
||||
RStatLimitRateD po = new RStatLimitRateD();
|
||||
po.setTime(data.getTimeid().toLocalDate());
|
||||
po.setTime(data.getTimeid().toInstant().atZone(zoneId).toLocalDate());
|
||||
po.setLineId(oracleRelationMysql.get(data.getMyindex().toString()));
|
||||
po.setAllTime(data.getAlltime());
|
||||
po.setFlickerAllTime(data.getFlicketAlltime());
|
||||
BeanUtils.copyProperties(data,po);
|
||||
result.add(po);
|
||||
}
|
||||
@@ -227,10 +230,38 @@ public class OracleToMysqlServiceImpl implements OracleToMysqlService {
|
||||
|
||||
@Override
|
||||
public void insertLimitTarget(String startTime, String endTime) {
|
||||
|
||||
|
||||
|
||||
|
||||
ZoneId zoneId = ZoneId.systemDefault();
|
||||
List<String> timeList = PubUtils.getTimeList(startTime,endTime);
|
||||
List<PqLineBak> bakList = pqLineBakService.list();
|
||||
//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);
|
||||
List<RStatLimitTargetD> result = new ArrayList<>();
|
||||
long system1 = System.currentTimeMillis();
|
||||
List<LimitTarget> list = oracleDataService.getLimitTarget(item);
|
||||
if(CollUtil.isNotEmpty(list)){
|
||||
list.forEach(data->{
|
||||
if (ObjUtil.isNotNull(oracleRelationMysql.get(data.getMyindex().toString()))) {
|
||||
RStatLimitTargetD po = new RStatLimitTargetD();
|
||||
po.setTime(data.getTimeid().toInstant().atZone(zoneId).toLocalDate());
|
||||
po.setLineId(oracleRelationMysql.get(data.getMyindex().toString()));
|
||||
po.setAllTime(data.getAlltime());
|
||||
po.setFlickerAllTime(data.getFlicketAlltime());
|
||||
BeanUtils.copyProperties(data,po);
|
||||
result.add(po);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
long system2 = System.currentTimeMillis();
|
||||
System.out.println("查询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");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public RStatDataHarmrateVD getData1(DayHarmrateV data, Map<String, String> oracleRelationMysql, String valueType) {
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
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.RStatLimitTargetD;
|
||||
import com.njcn.mysql.mapper.RStatLimitTargetDMapper;
|
||||
import com.njcn.mysql.service.IRStatLimitTargetDService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 类的介绍:
|
||||
*
|
||||
* @author xuyang
|
||||
* @version 1.0.0
|
||||
* @createTime 2023/3/24 9:53
|
||||
*/
|
||||
@DS("target")
|
||||
@Service
|
||||
public class RStatLimitTargetDServiceImpl extends MppServiceImpl<RStatLimitTargetDMapper, RStatLimitTargetD> implements IRStatLimitTargetDService {
|
||||
|
||||
@Override
|
||||
public void insert(List<RStatLimitTargetD> list) {
|
||||
this.saveOrUpdateBatchByMultiId(list,50);
|
||||
}
|
||||
}
|
||||
@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.annotation.TableName;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Date;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@@ -24,7 +26,7 @@ public class LimitRate implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableField("TIMEID")
|
||||
private LocalDateTime timeid;
|
||||
private Date timeid;
|
||||
|
||||
@TableField("PHASIC_TYPE")
|
||||
private String phasicType;
|
||||
|
||||
@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.annotation.TableName;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Date;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@@ -24,7 +26,7 @@ public class LimitTarget implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableField("TIMEID")
|
||||
private LocalDateTime timeid;
|
||||
private Date timeid;
|
||||
|
||||
@TableField("PHASIC_TYPE")
|
||||
private String phasicType;
|
||||
|
||||
Reference in New Issue
Block a user