package com.doumee.task;
|
|
|
import com.doumee.config.DataSyncConfig;
|
import com.doumee.core.constants.ResponseStatus;
|
import com.doumee.core.exception.BusinessException;
|
import com.doumee.core.utils.Constants;
|
import com.doumee.service.business.InterfaceLogService;
|
import com.doumee.service.business.MemberService;
|
import com.doumee.service.business.impl.hksync.HkSyncEmpowerServiceImpl;
|
import com.doumee.service.business.impl.hksync.HkSyncImgServiceImpl;
|
import com.doumee.service.business.impl.hksync.HkSyncParkServiceImpl;
|
import com.doumee.service.business.impl.hksync.HkSyncVisitServiceImpl;
|
import com.doumee.service.business.impl.hksync.ferp.HkSyncOrgUserToHKServiceImpl;
|
import com.doumee.service.business.impl.hksync.fhk.HkSyncVehicleFromHKServiceImpl;
|
import com.doumee.service.business.impl.hksync.fhk.HkSyncVisitFromHKServiceImpl;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.scheduling.annotation.EnableScheduling;
|
import org.springframework.scheduling.annotation.Scheduled;
|
import org.springframework.stereotype.Component;
|
|
import java.util.Date;
|
|
/**
|
* 定时任务(废弃)
|
* @author jiangping
|
* @date 2021-10-10 14:40:35
|
* https://www.bejson.com/othertools/cron/ cron 表达式生成地址
|
*/
|
//@Component
|
//@EnableScheduling
|
public class ScheduleAdminTool {
|
|
@Autowired
|
private HkSyncVisitFromHKServiceImpl hkSyncVisitFromHKService;
|
@Autowired
|
private HkSyncVehicleFromHKServiceImpl hkSyncVehicleFromHKService;
|
@Autowired
|
private InterfaceLogService interfaceLogService;
|
/**
|
* 是否开发者
|
*/
|
@Autowired
|
private DataSyncConfig dataSyncConfig;
|
|
/**
|
* 每天增量拉取车辆数据
|
* @throws Exception
|
*/
|
@Scheduled(cron= "0 0 23 * * ?")
|
public void syncVehicleUpdateData() throws Exception {
|
if( Constants.formatIntegerNum(dataSyncConfig.getVisitorDataOrigin()) != DataSyncConfig.origin.hk){
|
return;
|
}
|
hkSyncVehicleFromHKService.syncVehicleUpdateData(new Date(System.currentTimeMillis()-24*60*60*1000));
|
}
|
/**
|
* 每分钟拉取一次今日的访客预约数据
|
* @throws Exception
|
*/
|
@Scheduled(fixedRate= 3*60*1000)
|
public void syncVistAppointData() throws Exception {
|
if( Constants.formatIntegerNum(dataSyncConfig.getVisitorDataOrigin()) != DataSyncConfig.origin.hk){
|
return;
|
}
|
if(Constants.DEALING_FROM_HK_VISIT){
|
return ;
|
}
|
try {
|
Constants.DEALING_FROM_HK_VISIT =true;
|
hkSyncVisitFromHKService.syncVistAppointDataIccm(new Date());
|
Constants.DEALING_FROM_HK_VISIT =false;
|
}catch (Exception e){
|
// throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "对不起,海康同步数据失败~");
|
}finally {
|
Constants.DEALING_FROM_HK_VISIT =false;
|
}
|
}
|
/**
|
* 每天清理超过一周的接口日志数据(清除和安防平台对接的接口数据)
|
* @throws Exception
|
*/
|
@Scheduled(cron= "0 0 23 * * ?")
|
public void remainLastLogs() throws Exception {
|
if( Constants.formatIntegerNum(dataSyncConfig.getVisitorDataOrigin()) != DataSyncConfig.origin.hk){
|
return;
|
}
|
interfaceLogService.remainLastLogs();
|
}
|
|
|
}
|