package cn.iocoder.yudao.module.staff.service;

import cn.iocoder.yudao.module.staff.entity.CompanyStaffChange;
import cn.iocoder.yudao.module.staff.vo.CompanyStaffChangeReqVO;
import cn.iocoder.yudao.module.staff.vo.CompanyStaffChangeRespVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * 企业管理-员工交接记录 接口
 * @author 小李
 * @date 15:40 2024/8/8
**/
public interface CompanyStaffChangeService extends IService<CompanyStaffChange> {

    /**
     * 创建交接记录
     * @author 小李
     * @date 16:15 2024/8/8
     * @param staffChangeRespVO
    **/
    void createChangeStaff(CompanyStaffChangeRespVO staffChangeRespVO);

    /**
     * @author 小李
     * @date 19:00 2024/8/12
     * @param staffChangeReqVO 分页对象
    **/
    IPage<CompanyStaffChangeRespVO> getStaffChangePage(CompanyStaffChangeReqVO staffChangeReqVO, Page<CompanyStaffChange> page);

    /**
     * 判断交出方工作是否已交接
     * @author 小李
     * @date 18:02 2024/8/12
     * @param userId 交出方ID
     **/
    Boolean checkChangeStatus(Long userId);
}
