package com.yuchen.saas.park.api.vo.fire.inspect.statistics;

import lombok.Data;

import java.util.List;

/**
 * @author zhouhanwei
 * @create 2024/9/20 10:42
 */
@Data
public class FireInspectTaskBoardChartVO {

    /**
     * 柱状图数据
     */
    private List<TaskChartDataDTO> taskChartDataDTOList;


    @Data
    public static class TaskChartDataDTO {
        /**
         * 年/月/日
         */
        private String taskDateTime;

        /**
         * 逾期未巡检任务数
         */
        private Integer outTimeUnInspectTaskNum;

        /**
         * 逾期已巡检任务数
         */
        private Integer outTimeInspectedTaskNum;

        /**
         * 及时巡检任务数
         */
        private Integer inTimeInspectedTaskNum;

        /**
         * 已关闭任务数
         */
        private Integer closeInspectTaskNum;

    }

    /**
     * 人员排行数据
     */
    private List<TaskUserRankDataDTO> taskUserRankDataDTOList;

    @Data
    public static class TaskUserRankDataDTO {
        /**
         * 人员名称
         */
        private String userName;

        /**
         * 人员id
         */
        private Long userId;

        /**
         * 任务数
         */
        private Integer taskNum;


    }

    /**
     * 巡检点异常排行数据
     */
    private List<TaskLogRankDataDTO> taskLogRankDataDTOList;

    @Data
    public static class TaskLogRankDataDTO {
        /**
         * 巡检点名称
         */
        private String taskConfigName;

        /**
         * 人员id
         */
        private Long taskConfigId;

        /**
         * 异常数
         */
        private Integer AbnormalNum;


    }

    /**
     * 巡检点异常排行数据
     */
    private List<InspectTypeChartDataDTO> inspectTypeChartDataDTOList;

    @Data
    public static class InspectTypeChartDataDTO {
        /**
         * 巡检类型名称
         */
        private String inspectTypeName;

        /**
         * 巡检类型id
         */
        private Long inspectTypeId;

        /**
         * 任务数
         */
        private Integer taskNum;


    }
}
