同步数据

This commit is contained in:
yangjun 2023-10-30 22:51:58 +08:00
parent f120181f88
commit 06d806d9c2
10 changed files with 292 additions and 0 deletions

View File

@ -0,0 +1,70 @@
package org.jeecg.modules.kc.grab.SynchronizationService;
import cn.hutool.core.bean.BeanUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.compress.utils.Lists;
import org.jeecg.modules.kc.grab.SynchronizationService.base.BaseSync;
import org.jeecg.modules.kc.grab.exports.entity.TBks;
import org.jeecg.modules.kc.grab.exports.entity.Tdmjzgdqzt;
import org.jeecg.modules.kc.grab.exports.service.ITBksService;
import org.jeecg.modules.kc.grab.exports.service.ITdmjzgdqztService;
import org.jeecg.modules.kc.grab.imports.entity.Xxhbbks;
import org.jeecg.modules.kc.grab.imports.entity.Xxhbjzgdqzt;
import org.jeecg.modules.kc.grab.imports.entity.Xxhbsynclog;
import org.jeecg.modules.kc.grab.imports.service.IXxhbbksService;
import org.jeecg.modules.kc.grab.imports.service.IXxhbxjzgdqztService;
import org.quartz.JobExecutionContext;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.List;
import java.util.Map;
@Slf4j
public class SyncTdmjzgdqzt extends BaseSync {
@Autowired
private ITdmjzgdqztService tdmjzgdqztService;
@Autowired
private IXxhbxjzgdqztService xxhbxjzgdqztService;
/**
* 若参数变量名修改 QuartzJobController中也需对应修改
*/
@Override
public void execute(JobExecutionContext jobExecutionContext) {
start();
run(getParamMap());
end();
}
/**
* 有参定时任务实现
* @param param
*/
public void run(Map<String, Object> param){
//查询数据
List<Tdmjzgdqzt> inDataList = tdmjzgdqztService.list();
List<Xxhbjzgdqzt> outDataList = Lists.newArrayList();
//清洗数据
inDataList.forEach(x -> outDataList.add(BeanUtil.toBean(x, Xxhbjzgdqzt.class)));
//保存到胃
try {
xxhbxjzgdqztService.syncList(outDataList);
}catch (Exception e){
e.printStackTrace();
}
}
/**
* 无参定时任务实现
*/
public void run(){
run(null);
}
}

View File

@ -0,0 +1,33 @@
package org.jeecg.modules.kc.grab.exports.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
/**
* @Description: T_BKS-抓取
* @Author: jeecg-boot
* @Date: 2023-04-10
* @Version: V1.0
*/
@Data
@TableName("T_DM_JZGDQZT")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="T_DM_JZGDQZT对象", description="T_DM_JZGDQZT-抓取")
public class Tdmjzgdqzt {
/**xh*/
@ApiModelProperty(value = "dm")
private String dm;
/**xm*/
@ApiModelProperty(value = "mc")
private String mc;
}

View File

@ -0,0 +1,15 @@
package org.jeecg.modules.kc.grab.exports.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.kc.grab.exports.entity.TBks;
import org.jeecg.modules.kc.grab.exports.entity.Tdmjzgdqzt;
/**
* @Description: T_BKS-抓取
* @Author: jeecg-boot
* @Date: 2023-04-10
* @Version: V1.0
*/
public interface TdmjzgdqztMapper extends BaseMapper<Tdmjzgdqzt> {
}

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.kc.grab.exports.mapper.TBksMapper">
</mapper>

View File

@ -0,0 +1,15 @@
package org.jeecg.modules.kc.grab.exports.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.kc.grab.exports.entity.TBks;
import org.jeecg.modules.kc.grab.exports.entity.Tdmjzgdqzt;
/**
* @Description: T_BKS-抓取
* @Author: jeecg-boot
* @Date: 2023-04-10
* @Version: V1.0
*/
public interface ITdmjzgdqztService extends IService<Tdmjzgdqzt> {
}

View File

@ -0,0 +1,23 @@
package org.jeecg.modules.kc.grab.exports.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.modules.kc.grab.exports.entity.TBks;
import org.jeecg.modules.kc.grab.exports.entity.Tdmjzgdqzt;
import org.jeecg.modules.kc.grab.exports.mapper.TBksMapper;
import org.jeecg.modules.kc.grab.exports.mapper.TdmjzgdqztMapper;
import org.jeecg.modules.kc.grab.exports.service.ITBksService;
import org.jeecg.modules.kc.grab.exports.service.ITdmjzgdqztService;
import org.springframework.stereotype.Service;
/**
* @Description: T_BKS-抓取
* @Author: jeecg-boot
* @Date: 2023-04-10
* @Version: V1.0
*/
@DS("multi-oracle")
@Service
public class TdmjzgdqztServiceImpl extends ServiceImpl<TdmjzgdqztMapper, Tdmjzgdqzt> implements ITdmjzgdqztService {
}

View File

@ -0,0 +1,44 @@
package org.jeecg.modules.kc.grab.imports.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
/**
* @Description: 同步数据表bks
* @Author: jeecg-boot
* @Date: 2023-04-10
* @Version: V1.0
*/
@Data
@TableName("xxhbjzgdqzt")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="xxhbjzgdqzt", description="同步数据表jzgdqzt")
public class Xxhbjzgdqzt implements Serializable {
private static final long serialVersionUID = 1L;
/**id*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private String id;
/**学号*/
@Excel(name = "学号", width = 15)
@ApiModelProperty(value = "学号")
private String dm;
/**姓名*/
@Excel(name = "姓名", width = 15)
@ApiModelProperty(value = "姓名")
private String mc;
}

View File

@ -0,0 +1,15 @@
package org.jeecg.modules.kc.grab.imports.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.kc.grab.imports.entity.Xxhbbks;
import org.jeecg.modules.kc.grab.imports.entity.Xxhbjzgdqzt;
/**
* @Description: 同步数据表bks
* @Author: jeecg-boot
* @Date: 2023-04-10
* @Version: V1.0
*/
public interface XxhbjzgdqztMapper extends BaseMapper<Xxhbjzgdqzt> {
}

View File

@ -0,0 +1,32 @@
package org.jeecg.modules.kc.grab.imports.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.kc.grab.imports.entity.Xxhbbks;
import org.jeecg.modules.kc.grab.imports.entity.Xxhbjzgdqzt;
import java.util.Collection;
/**
* @Description: 同步数据表bks
* @Author: jeecg-boot
* @Date: 2023-04-10
* @Version: V1.0
*/
public interface IXxhbxjzgdqztService extends IService<Xxhbjzgdqzt> {
/**
* 同步数据
* @param entityList
* @return
*/
boolean syncList(Collection<Xxhbjzgdqzt> entityList);
/**
*
* @param entityList
* @param isDelete
* @return
*/
boolean syncList(Collection<Xxhbjzgdqzt> entityList, boolean isDelete);
}

View File

@ -0,0 +1,40 @@
package org.jeecg.modules.kc.grab.imports.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.modules.kc.grab.imports.entity.Xxhbbks;
import org.jeecg.modules.kc.grab.imports.entity.Xxhbjzgdqzt;
import org.jeecg.modules.kc.grab.imports.mapper.XxhbbksMapper;
import org.jeecg.modules.kc.grab.imports.mapper.XxhbjzgdqztMapper;
import org.jeecg.modules.kc.grab.imports.service.IXxhbbksService;
import org.jeecg.modules.kc.grab.imports.service.IXxhbxjzgdqztService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collection;
/**
* @Description: 同步数据表bks
* @Author: jeecg-boot
* @Date: 2023-04-10
* @Version: V1.0
*/
@Service
public class XxhbjzgdqztServiceImpl extends ServiceImpl<XxhbjzgdqztMapper, Xxhbjzgdqzt> implements IXxhbxjzgdqztService {
@Override
@Transactional(rollbackFor = {Exception.class})
public boolean syncList(Collection<Xxhbjzgdqzt> entityList) {
return syncList(entityList, true);
}
@Override
@Transactional(rollbackFor = {Exception.class})
public boolean syncList(Collection<Xxhbjzgdqzt> entityList, boolean isDelete) {
QueryWrapper dqw = new QueryWrapper();
if(isDelete){
baseMapper.delete(dqw);
}
return this.saveBatch(entityList, 1000);
}
}