package com.zcloud.primeport.persistence.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jjb.saas.framework.datascope.annotation.DataScope;
import com.jjb.saas.framework.datascope.annotation.DataScopes;
import com.zcloud.primeport.persistence.dataobject.PersonCountDto;
import com.zcloud.primeport.persistence.dataobject.VehicleApplyDO;
import com.zcloud.primeport.persistence.dataobject.XgfApplyPersonDO;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Param;

/**
 * web-infrastructure
 *
 * @Author makejava
 * @Date 2026-03-05 11:33:23
 */
@Mapper
@DataScopes({
        @DataScope(method = "listPage", menuPerms = ""),
        @DataScope(method = "xgfPersonAuditList", menuPerms = ""),
        @DataScope(method = "personnelVehicleManagementList", menuPerms = ""),
}
)
public interface XgfApplyPersonMapper extends BaseMapper<XgfApplyPersonDO> {
    IPage<XgfApplyPersonDO> listPage(Page<Map<String, Object>> page, @Param("params") Map<String, Object> params, String menuPerms);

    IPage<XgfApplyPersonDO> xgfPersonAuditList(Page<Map<String, Object>> page, @Param("params") Map<String, Object> params, String menuPerms);

    IPage<PersonCountDto> personnelVehicleManagementList(Page<Map<String, Object>> page, @Param("params") Map<String, Object> params, String menuPerms);

    List<XgfApplyPersonDO> listTodayHasPort();
}

