package com.yeejoin.amos.boot.module.tcm.api.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.tcm.api.dto.TzsTwoStaffingCompanyCheckDto;
import com.yeejoin.amos.boot.module.tcm.api.dto.TzsTwoStaffingCompanyDto;
import com.yeejoin.amos.boot.module.tcm.api.entity.TzsTwoStaffing;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 *  Mapper 接口
 *
 * @author system_generator
 * @date 2023-10-27
 */
public interface TzsTwoStaffingMapper extends BaseMapper<TzsTwoStaffing> {

    Page<TzsTwoStaffingCompanyDto> getCompanyList(@Param("page")Page<TzsTwoStaffingCompanyDto> page,
                                                  @Param("companyDto") TzsTwoStaffingCompanyDto companyDto,
                                                  @Param("orgCode") String orgCode);
    List<TzsTwoStaffing> getListByOrgCode(@Param("orgCode")String orgCode, @Param("type")String type);

    List<TzsTwoStaffingCompanyDto> getListAll();

    void truncateTwoStaffingStatistics();
    List<TzsTwoStaffing> getListByOrgCode(@Param("orgCode")String orgCode, @Param("type")String type, @Param("level")String level);

    Page<TzsTwoStaffingCompanyCheckDto> getCompanyCheckList(@Param("page")Page<TzsTwoStaffingCompanyCheckDto> page,
                                                            @Param("orgCode") String orgCode,
                                                            @Param("staticTableName") String staticTableName,
                                                            @Param("companyDto")TzsTwoStaffingCompanyCheckDto companyDto);
}
