package com.gz.service.welcome;

import com.alibaba.fastjson.JSONObject;
import com.gz.rvo.welcome.BorrowCountRVO;
import com.gz.rvo.welcome.BorrowRecordRVO;

import java.util.List;
import java.util.Map;

public interface StatisticsService {

    /**
     * @description 查询待处理记录
     * @author LiuChangLan
     * @since 2021/3/2 10:33
     */
    List<BorrowRecordRVO> selectWaitHandleRecord();

    /**
     * @description 查询待归还记录
     * @author LiuChangLan
     * @since 2021/3/2 10:33
     */
    List<BorrowRecordRVO> selectWaitReturnRecord();

    /**
     * @description 根据类别统计存档数
     * @author LiuChangLan
     * @since 2021/3/2 10:35
     */
    JSONObject selectArchiveByType();

    /**
     * @description 根据年度统计存档数
     * @author LiuChangLan
     * @since 2021/3/2 10:35
     */
    JSONObject selectArchiveByYear();

    /**
     * @description 根据日期统计借阅数
     * @author LiuChangLan
     * @since 2021/3/2 10:36
     */
    Map selectBorrowCountByDate();

    /**
     * @description 个人统计数量
     * @author LiuChangLan
     * @since 2021/3/2 12:55
     */
    JSONObject selectMyCount();


    /**
     * @description 查询我的到期未归还记录
     * @author LiuChangLan
     * @since 2021/3/2 11:50
     */
    List<BorrowRecordRVO> selectMyWaitReturnRecord();

    /**
     * @description 查询我的三天内到期的记录
     * @author LiuChangLan
     * @since 2021/3/2 11:50
     */
    List<BorrowRecordRVO> selectMyDueSoonRecord();
}
