2023年8月13日 修改定时任务(定时同步用户)

This commit is contained in:
bai 2023-08-13 01:18:17 +08:00
parent 5d4a66de00
commit 48b7ab9cf9
2 changed files with 74 additions and 5 deletions

View File

@ -1,13 +1,21 @@
package org.jeecg.modules.kc.grab.SynchronizationService;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.google.common.collect.Maps;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.compress.utils.Lists;
import org.jeecg.modules.kc.config.entity.KcExportConfigTpkwcqkjzglx;
import org.jeecg.modules.kc.config.service.IKcExportConfigTpkwcqkjzglxService;
import org.jeecg.modules.kc.grab.SynchronizationService.base.BaseSync;
import org.jeecg.modules.kc.grab.exports.entity.TJzgXskc;
import org.jeecg.modules.kc.grab.exports.service.ITJzgXskcService;
import org.jeecg.modules.kc.grab.imports.entity.Xxhbsynclog;
import org.jeecg.modules.kc.grab.imports.entity.Xxhbuser;
import org.jeecg.modules.kc.grab.imports.entity.Xxhbxskc;
import org.jeecg.modules.kc.grab.imports.service.IXxhbuserService;
import org.jeecg.modules.kc.grab.imports.service.IXxhbxskcService;
import org.quartz.JobExecutionContext;
import org.springframework.beans.factory.annotation.Autowired;
@ -24,6 +32,12 @@ public class SyncTJzgXskc extends BaseSync {
@Autowired
private IXxhbxskcService impService;
@Autowired
private IXxhbuserService xxhbuserService;
@Autowired
private IKcExportConfigTpkwcqkjzglxService exportConfigTpkwcqkjzglxService;
/**
* 若参数变量名修改 QuartzJobController中也需对应修改
*/
@ -45,8 +59,25 @@ public class SyncTJzgXskc extends BaseSync {
List<TJzgXskc> inDataList = expService.list();
List<Xxhbxskc> outDataList = Lists.newArrayList();
List<Xxhbuser> outUserDataList = Lists.newArrayList();
Map<String, Xxhbuser> outUserDataMap = Maps.newHashMap();
//List<KcExportConfigTpkwcqkjzglx> outExportConfigTpkwcqkjzglxDataList = Lists.newArrayList();
// Map<String,KcExportConfigTpkwcqkjzglx> outExportConfigTpkwcqkjzglxDataMap = Lists.newArrayList();
//清洗数据
inDataList.forEach(x -> outDataList.add(BeanUtil.toBean(x, Xxhbxskc.class)));
inDataList.forEach(x -> {
String timestamps = DateUtil.format(x.getTimestamps(), DatePattern.NORM_DATETIME_PATTERN);
outDataList.add(BeanUtil.toBean(x, Xxhbxskc.class));
Xxhbuser outUserData = BeanUtil.toBean(x, Xxhbuser.class);
outUserData.setTimestamps(timestamps);
outUserDataList.add(outUserData);
Xxhbuser xxhbuser = BeanUtil.toBean(x, Xxhbuser.class);
xxhbuser.setTimestamps(timestamps);
outUserDataMap.put(xxhbuser.getGh(),xxhbuser);
//outExportConfigTpkwcqkjzglxDataList.add(BeanUtil.toBean(x, KcExportConfigTpkwcqkjzglx.class));
});
//保存到胃
int syncnum=0;
@ -70,9 +101,45 @@ public class SyncTJzgXskc extends BaseSync {
xxhbsynclog.setErrormessage(errorMessage);
saveLog(xxhbsynclog,Xxhbxskc.class);
//todo 同步清洗到xxhbUser表
//同步清洗到xxhbUser表
//删除原数据
QueryWrapper<Xxhbuser> xuQw = new QueryWrapper<>();
xxhbuserService.remove(xuQw);
//保存
xxhbuserService.saveBatch(outUserDataList);
//再同步清洗到kc_export_config_tpkwcqkjzglx表
//筛选
QueryWrapper<KcExportConfigTpkwcqkjzglx> ectQw = new QueryWrapper<>();
List<KcExportConfigTpkwcqkjzglx> oldExportConfigTpkwcqkjzglxList = exportConfigTpkwcqkjzglxService.list(ectQw);
List<KcExportConfigTpkwcqkjzglx> saveList = Lists.newArrayList();
List<KcExportConfigTpkwcqkjzglx> updateList = Lists.newArrayList();
Map<String,KcExportConfigTpkwcqkjzglx> saveMap = Maps.newHashMap();
//outExportConfigTpkwcqkjzglxDataList
oldExportConfigTpkwcqkjzglxList.forEach(x -> {
if(outUserDataMap.containsKey(x.getGh())){
Xxhbuser data = outUserDataMap.get(x.getGh());
x.setXm(data.getXm());
x.setDwmc(data.getDwmc());
updateList.add(x);
saveMap.put(x.getGh(),x);
}
});
exportConfigTpkwcqkjzglxService.updateBatchById(updateList);
outUserDataList.forEach(x -> {
if(!saveMap.containsKey(x.getGh())){
saveList.add(BeanUtil.toBean(x, KcExportConfigTpkwcqkjzglx.class));
}
});
exportConfigTpkwcqkjzglxService.saveBatch(saveList);
//todo 再同步清洗到kc_export_config_tpkwcqkjzglx表
}
/**

View File

@ -35,7 +35,7 @@ public class Xxhbuser implements Serializable {
/**id*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "id")
private java.lang.Integer id;
private java.lang.String id;
/**工号*/
@Excel(name = "工号", width = 15)
@ApiModelProperty(value = "工号")
@ -77,7 +77,9 @@ public class Xxhbuser implements Serializable {
@ApiModelProperty(value = "zzzt")
private java.lang.String zzzt;
/**时间戳*/
@Excel(name = "时间戳", width = 15)
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
@Excel(name = "时间戳", width = 15, format = "yyyy-MM-dd")
@ApiModelProperty(value = "时间戳")
private java.lang.String timestamps;
}