com.nebula.boxes.mould.fetcher.TotalFirmRecruitDataLoader Maven / Gradle / Ivy
The newest version!
package com.nebula.boxes.mould.fetcher;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.google.common.collect.Maps;
import com.nebula.boxes.mould.entity.Recruit;
import com.nebula.boxes.mould.service.IRecruitService;
import com.netflix.graphql.dgs.DgsDataLoader;
import com.spring.boxes.dollar.enums.EnableEnum;
import com.spring.boxes.dollar.enums.YesOrNoEnum;
import com.spring.boxes.dollar.support.ContextAwarePoolExecutor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.dataloader.BatchLoaderEnvironment;
import org.dataloader.MappedBatchLoaderWithContext;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.CompletionStage;
import java.util.stream.Collectors;
/**
* 按照企业统计职位总数 DataLoader
*/
@Slf4j
@Service
@DgsDataLoader(name = "totalFirmRecruitDataLoader")
public class TotalFirmRecruitDataLoader implements MappedBatchLoaderWithContext {
@Autowired
private IRecruitService recruitService;
@Autowired
private ContextAwarePoolExecutor contextAwarePoolExecutor;
@Override
public CompletionStage