package com.lutao.cloud.admin.mapper;

import com.lutao.cloud.admin.api.dto.DataSearchDTO;
import com.lutao.cloud.admin.api.entity.SysFile;
import com.lutao.cloud.admin.api.vo.DataStatistics;
import com.lutao.cloud.common.data.datascope.CloudBaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 文件管理
 *
 * @author guoyc
 * @date 2019-06-18 17:18:42
 */
@Mapper
public interface SysFileMapper extends CloudBaseMapper<SysFile>{

    /**
     * 文档分类统计
     * @return
     */
    List<DataStatistics> getDocTypeData();

    /**
     * 文档分类下载统计
     * @return
     */
    List<DataStatistics> getDocTypeDownData();

    /**
     * 文档每日新增
     * @return
     */
    List<DataStatistics> getDocTypeNewlyAdded(@Param("query") DataSearchDTO searchDTO);

    /**
     * 试点 根据状态统计
     * @param searchDTO
     * @return
     */
    List<DataStatistics> getpilotStatus(@Param("query") DataSearchDTO searchDTO);

    /**
     * 试点 每日新增
     * @param searchDTO
     * @return
     */
    List<DataStatistics> getpilotDailyAdd(@Param("query") DataSearchDTO searchDTO);


    /**
     * 成效 申请数量、已评估数量、未评估数量
     * @param searchDTO
     * @return
     */
    List<DataStatistics> getEffectApplyData(@Param("query") DataSearchDTO searchDTO);

    /**
     * 成效 已评估数量、
     * @param searchDTO
     * @return
     */
    List<DataStatistics> getEffectAccessData(@Param("query") DataSearchDTO searchDTO);


    /**
     * 成效 未评估数量
     * @param searchDTO
     * @return
     */
    List<DataStatistics> getEffectNotAccessData(@Param("query") DataSearchDTO searchDTO);


    /**
     * 成效 评估分级数量
     * @param searchDTO
     * @return
     */
    List<DataStatistics> getEffectLevelData(@Param("query") DataSearchDTO searchDTO);


    /**
     * 成效 评估分级数量
     * @param searchDTO
     * @return
     */
    List<DataStatistics> getEffectDailyData(@Param("query") DataSearchDTO searchDTO);

    /**
     * 知识沉淀-分类数量
     * @return
     */
    List<DataStatistics> getKnowledgeTypeData();

    /**
     * 知识沉淀-等级数量
     * @return
     */
    List<DataStatistics> getKnowledgeLevelData();

    /**
     * 知识沉淀-每日新增
     * @return
     */
    List<DataStatistics> getKnowledgeDailyData(@Param("query") DataSearchDTO searchDTO);


    /**
     * 成果推广-月度数量曲线
     * @return
     */
    List<DataStatistics> getSpreadMonthData(@Param("query") DataSearchDTO searchDTO);


    /**
     * 成果推广-每日新增成果推广数量
     * @return
     */
    List<DataStatistics> getSpreadDailyData(@Param("query") DataSearchDTO searchDTO);



    /**
     * 需求每天新增数量
     * @return
     */
    List<DataStatistics> getDemandDailyAddData(@Param("query") DataSearchDTO searchDTO);

    /**
     * 需求每天发布数量
     * @return
     */
    List<DataStatistics> getDemandDailyReleaseData(@Param("query") DataSearchDTO searchDTO);

    /**
     * 需求每天对接数量
     * @return
     */
    List<DataStatistics> getDemandDailyDockingData(@Param("query") DataSearchDTO searchDTO);


    /**
     * 设备库数量
     * @return
     */
    List<DataStatistics> getEquimentData();


    /**
     * 三方人员数量
     * @return
     */
    List<DataStatistics> getPersonnelData();

    /**
     * 三方机构数据
     * @return
     */
    List<DataStatistics> getOrganData();

    /**
     * 设备库每日新增
     * @return
     */
    List<DataStatistics> getEquimentDailyData(@Param("query") DataSearchDTO searchDTO);


    /**
     * 每日新闻新增数量
     * @return
     */
    List<DataStatistics> getNewsDailyData(@Param("query") DataSearchDTO searchDTO);
}
