StatisticsService.java 1.73 KB
Newer Older
nie'hong's avatar
nie'hong committed
1 2
package cn.wisenergy.service;

nie'hong's avatar
nie'hong committed
3
import cn.wisenergy.model.dto.GetMonthlyCollectParam;
4
import cn.wisenergy.model.dto.ProjectStatisticsByMonth;
nie'hong's avatar
nie'hong committed
5
import cn.wisenergy.model.dto.UserWorkTimeStatisticsByProject;
nie'hong's avatar
nie'hong committed
6
import cn.wisenergy.model.dto.WorkTimeAndCostCollect;
nie'hong's avatar
nie'hong committed
7
import com.github.pagehelper.PageInfo;
nie'hong's avatar
nie'hong committed
8
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
nie'hong's avatar
nie'hong committed
9

nie'hong's avatar
nie'hong committed
10 11
import java.util.List;

nie'hong's avatar
nie'hong committed
12 13 14 15
public interface StatisticsService {

    /**
     * 获取部门所有员工每天工时
16
     *
nie'hong's avatar
nie'hong committed
17
     * @param param 参数对象
nie'hong's avatar
nie'hong committed
18 19
     * @return
     */
nie'hong's avatar
nie'hong committed
20
    PageInfo getDayWorkTimeOfMonth(GetMonthlyCollectParam param);
nie'hong's avatar
nie'hong committed
21 22 23

    /**
     * 获取用户本月填报和审批情况,权限为填报时只有填报情况
24
     *
nie'hong's avatar
nie'hong committed
25 26 27 28
     * @param userId
     * @return
     */
    List<Object> getMonthlyStatistics(Integer userId);
nie'hong's avatar
nie'hong committed
29 30

    /**
31
     * 获取负责项目的工时汇总:花费工时,工时成本
32
     *
nie'hong's avatar
nie'hong committed
33 34
     * @param userId
     */
nie'hong's avatar
nie'hong committed
35
    List<WorkTimeAndCostCollect> getCurrentMonthWorkTimeCollect(Integer userId, String startTime);
nie'hong's avatar
nie'hong committed
36 37 38 39


    /**
     * 导出一个部门下员工一个月中每天的工时
40
     *
nie'hong's avatar
nie'hong committed
41 42 43 44
     * @param param
     * @return
     */
    HSSFWorkbook exportWorkTimeExcel(GetMonthlyCollectParam param);
nie'hong's avatar
nie'hong committed
45 46

    /**
47
     * 获取用户管理项目人员工时统计
48
     *
nie'hong's avatar
nie'hong committed
49 50 51 52 53 54
     * @param startDate
     * @param endDate
     * @param status
     * @return
     */
    List<UserWorkTimeStatisticsByProject> getUserWorkTimeStatisticsReport(Integer userId, String startDate, String endDate, Integer status);
55 56 57 58 59 60

    /**
     * 获取项目统计
     *
     * @param userId
     * @param deptId
61 62
     * @param year
     * @param projectId
63 64 65
     * @return
     */
    List<ProjectStatisticsByMonth> getProjectStatistics(Integer userId, Integer deptId, Integer year, Integer projectId);
nie'hong's avatar
nie'hong committed
66
}