package cn.com.countrygarden.bi.main.service.eba;
import cn.com.countrygarden.bi.main.model.eba.TbmMaintainTask;
import cn.com.countrygarden.bi.main.core.Service;
import cn.com.countrygarden.bi.main.model.eba.TbmMaintainTaskResult;

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

public interface TbmMaintainTaskService extends Service<TbmMaintainTask> {

    Map<String, Object> aggregate();
    TbmMaintainTaskResult aggregateEngineering();
    int getEngineeringQuatity();
    Map<String, Object> aggregateToday();
    Map<String, Object> aggregateYesterday();
    Map<String, Object> aggregateYesterdayFromCache();
    Map<String, Object> aggregateThisMonth();

    List<Map<String, Object>> aggregateThisMonthByOrgan();
    List<Map<String, Object>> aggregatePreviousMonthByOrgan();
    List<TbmMaintainTaskResult> aggregateThisMonthBySource();
    List<TbmMaintainTaskResult> aggregateThisMonthByCategory();
    List<TbmMaintainTaskResult> aggregateThisYearByMonth();
    List<TbmMaintainTaskResult> realtime(int limit);
    List<TbmMaintainTaskResult> realtime(int taskState, int limit);
}
