package jnpf.cultivate.service;

import jnpf.model.cultivate.dto.storestatistics.*;
import jnpf.model.cultivate.vo.position.FtbCultivateStoreCountVO;
import jnpf.model.cultivate.vo.position.FtbCultivateWorkerCountVO;
import jnpf.model.cultivate.vo.position.FtbPersonTrainingStatisticsVO;
import jnpf.model.cultivate.vo.position.FtbStoreManagerTrainingStatisticsVO;
import jnpf.model.thousandsfaces.TodayWorkVo;

import java.util.List;

public interface FtbCultivateStoreStatisticService {


    FtbCultivateStoreCountVO getCultivateCount(FtbCultivateStoreStatisticsReq req);

    /**
     * 我的考试列表
     *
     * @param req
     * @return
     */
    List<TodayWorkVo> queryMyExamList(StoreStatisticsMyExamReq req);

    /**
     * 待我批阅
     *
     * @param req
     * @return
     */
    List<TodayWorkVo> queryWaitMyReadOver(StoreStatisticsWaitMyCheckExamReq req);

    List<TodayWorkVo> queryOfflineTrainList(StoreOfflineTrainReq req);

    List<TodayWorkVo> storeMyTaskList(StoreOfflineTrainReq req);

    /**
     * 员工界面-鉴定他人列表
     * @param req
     * @return
     */
    List<TodayWorkVo> storeMyIdentityList(StoreIdentityReq req);

    /**
     * 员工界面统计
     * @param req
     * @return
     */
    FtbCultivateWorkerCountVO getWorkerCultivateCount(FtbCultivateStoreStatisticsReq req);

    /**
     * 工作台-员工界面统计
     * @param req 统计参数
     * @return 统计结果
     */
    FtbPersonTrainingStatisticsVO personTrainingStatistics(FtbCultivateStoreStatisticsReq req);

    /**
     * 工作台-店长界面统计
     * @param req 统计参数
     * @return 统计结果
     */
    FtbStoreManagerTrainingStatisticsVO storeManagerTrainingStatistics(FtbCultivateStoreStatisticsReq req);
}
