package com.sqx.modules.app.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sqx.modules.app.entity.UserBrowse;
import com.sqx.modules.app.entity.UserEntity;
import com.sqx.modules.app.response.UserFollowResponse;
import com.sqx.modules.app.vo.ResumesBrowseVo;
import com.sqx.modules.app.vo.UserPostPushBrowseVo;
import com.sqx.modules.resumes.entity.Resumes;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface UserBrowseDao extends BaseMapper<UserBrowse> {

    IPage<UserFollowResponse> selectMyBrowse(IPage iPage, Long userId);

    List<UserFollowResponse> selectMyVisitor1(Long userId);

    List<UserFollowResponse> selectMyBrowse1(Long userId);

    Integer selectUserBrowseCountByUserId(Long userId,String startTime,String endTime);

    IPage<UserEntity> getUserByBrowse(@Param("pages") Page<UserEntity> pages, @Param("postPushId") Long postPushId);

    IPage<UserPostPushBrowseVo> selectBrowseList(@Param("pages") Page<UserPostPushBrowseVo> pages, @Param("userBrowse") UserBrowse userBrowse, @Param("industry") String[] industry, @Param("education") String[] education, @Param("experience") String[] experience, @Param("companyPeople") String[] companyPeople, @Param("salaryRange") String[] salaryRange);

    IPage<ResumesBrowseVo> selectCompanyBrowse(@Param("pages") Page<ResumesBrowseVo> pages, @Param("userBrowse") UserBrowse userBrowse, @Param("resumes") Resumes resumes, @Param("startTime") String startTime, @Param("endTime") String endTime, @Param("resumesCompensation") String[] resumesCompensation, @Param("resumesEducation") String[] resumesEducation, @Param("resumesWorkExperience") String[] resumesWorkExperience, @Param("industryName") String[] industryName);
}
