78 lines
3.2 KiB
Java

package com.zhgd.xmgl.task;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.zhgd.xmgl.modules.govtapi.GovtOpenApiService;
import com.zhgd.xmgl.modules.realnamestatistics.entity.ProjectOperationsAnalysis;
import com.zhgd.xmgl.modules.realnamestatistics.service.IProjectOperationsAnalysisService;
import com.zhgd.xmgl.modules.worker.entity.WorkerAttendance;
import com.zhgd.xmgl.modules.worker.entity.WorkerInfo;
import com.zhgd.xmgl.modules.worker.entity.WorkerMonthAttendanceStatistics;
import com.zhgd.xmgl.modules.worker.service.IWorkerAttendanceService;
import com.zhgd.xmgl.modules.worker.service.IWorkerInfoService;
import com.zhgd.xmgl.modules.worker.service.IWorkerMonthAttendanceStatisticsService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.time.DateUtils;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
/**
* @author HZI.HUI
*/
@Slf4j
@Component
@RequiredArgsConstructor
public class GovtSyncTask {
private final GovtOpenApiService govtOpenApiService;
private final IWorkerInfoService workerInfoService;
private final IWorkerAttendanceService workerAttendanceService;
private final IProjectOperationsAnalysisService projectOperationsAnalysisService;
private final IWorkerMonthAttendanceStatisticsService workerMonthAttendanceStatisticsService;
//@PostConstruct
public void initSyncWorkerInfoData() {
List<WorkerInfo> list = workerInfoService.list(Wrappers.<WorkerInfo>lambdaQuery()
.in(WorkerInfo::getProjectSn, "29E5B97B246544E0B0EF18534FA7C78D"));
for (WorkerInfo workerInfo : list) {
govtOpenApiService.workerInfoAddSync(workerInfo);
}
initSyncWorkerAttendanceData();
initProjectOperationsAnalysisData();
getMonthAttendanceStatistics();
}
public void initSyncWorkerAttendanceData() {
List<WorkerAttendance> list = workerAttendanceService.list(Wrappers.<WorkerAttendance>lambdaQuery()
.in(WorkerAttendance::getProjectSn, "29E5B97B246544E0B0EF18534FA7C78D"));
for (WorkerAttendance workerAttendance : list) {
govtOpenApiService.workerAttendanceSync(workerAttendance);
}
}
public void initProjectOperationsAnalysisData() {
List<ProjectOperationsAnalysis> list = projectOperationsAnalysisService.list(Wrappers.<ProjectOperationsAnalysis>lambdaQuery()
.in(ProjectOperationsAnalysis::getProjectSn, "29E5B97B246544E0B0EF18534FA7C78D"));
govtOpenApiService.projectOperationsAnalysisUpdateSync(list);
}
public void getMonthAttendanceStatistics() {
List<WorkerMonthAttendanceStatistics> list = workerMonthAttendanceStatisticsService.list(Wrappers.<WorkerMonthAttendanceStatistics>lambdaQuery()
.in(WorkerMonthAttendanceStatistics::getProjectSn, "29E5B97B246544E0B0EF18534FA7C78D"));
for (WorkerMonthAttendanceStatistics workerAttendance : list) {
govtOpenApiService.workerMonthAttendanceStatisticsSync(workerAttendance);
}
}
}