package com.ruoyi.cms.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.List;
import java.util.Map;

import com.ruoyi.common.core.domain.entity.AppUser;
import com.ruoyi.common.core.domain.entity.Company;
import com.ruoyi.cms.domain.Job;
import com.ruoyi.cms.domain.RowWork;
import com.ruoyi.cms.domain.VectorJob;
import com.ruoyi.cms.domain.query.ESJobSearch;

/**
 * 岗位Mapper接口
 * @author lishundong
 * @date 2024-09-03
 */
public interface JobMapper extends BaseMapper<Job>
{
    /**
     * 查询岗位列表
     * 
     * @param job 岗位
     * @return 岗位集合
     */
    public List<Job> selectJobList(Job job);

    void isHot();

    List<Job> selectAppJobList(ESJobSearch jobQuery);

    void insertBatchRowWork(RowWork rowWorks);

    List<RowWork> selectAllRowWork();

    List<Company> selectRowCompany();



    void batchInsert(List<Job> jobBatch);

    List<Job> selectAllJob(Map<String, Object> params);

    void insertBatchRowWork(List<RowWork> batchList);

    List<RowWork> selectAllInsertRowWork();

    void insertBatchRowWorkTmp(List<RowWork> batchList);

    VectorJob selectVectorJob(Long jobId);

    List<AppUser> selectApplyJobUserList(Long jobId);

    /**
     *查询单条岗位信息
     * @param jobId
     * @return
     */
    Job getJobInfo(Long jobId);

    Integer getTotals(Job job);

    void updateFileBatchInsert(List<Job> list);

    public int updateStatus(Job job);

    List<Job> getJobDownList();

    void updateJobDown(List<Long> list);
}
