package com.gxwebsoft.app.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.gxwebsoft.app.entity.AppResource;
import com.gxwebsoft.app.param.AppResourceParam;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 开发者资源 Mapper
 *
 * @author 科技小王子
 * @since 2026-03-31
 */
public interface AppResourceMapper extends BaseMapper<AppResource> {

    /**
     * 分页查询（关联应用名称）
     */
    List<AppResource> selectPageRel(@Param("page") IPage<AppResource> page,
                                    @Param("param") AppResourceParam param);

    /**
     * 查询全部列表（关联应用名称）
     */
    List<AppResource> selectListRel(@Param("param") AppResourceParam param);

    /**
     * 统计各类型资源数量，返回 [{resourceType, cnt}]
     */
    List<java.util.Map<String, Object>> countByType(@Param("userId") Integer userId,
                                                     @Param("tenantId") Integer tenantId);
}
