package com.qmth.themis.business.bean.admin;

import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.util.List;
import java.util.Objects;

/**
 * @Description: 数据统计
 * @Param:
 * @return:
 * @Author: wangliang
 * @Date: 2022/8/19
 */
public class DataCountBean implements Serializable {

    @ApiModelProperty(name = "当前在线人数")
    private Long onlineCount = 0L;

    @ApiModelProperty(name = "当前考试人数")
    private Long examCount = 0L;

    @ApiModelProperty(name = "累计考试科次")
    private Long examRecordCount = 0L;

    @ApiModelProperty(name = "累计服务考生")
    private Long examStudentCount = 0L;

    @ApiModelProperty(name = "机构考生分布")
    private List<OrgDataCountBean> orgDataCountBeanList;

    @ApiModelProperty(name = "在线考生地域分布")
    private List<MapDataCountBean> mapDataCountBeanList;

    public DataCountBean() {

    }

    public DataCountBean(List<Long> list, List<OrgDataCountBean> orgDataCountBeanList, List<MapDataCountBean> mapDataCountBeanList) {
        this.onlineCount = Objects.nonNull(list.get(0)) ? list.get(0) : 0L;
        this.examCount = Objects.nonNull(list.get(1)) ? list.get(1) : 0L;
        this.examRecordCount = Objects.nonNull(list.get(2)) ? list.get(2) : 0L;
        this.examStudentCount = Objects.nonNull(list.get(3)) ? list.get(3) : 0L;
        this.orgDataCountBeanList = orgDataCountBeanList;
        this.mapDataCountBeanList = mapDataCountBeanList;
    }

    public DataCountBean(List<OrgDataCountBean> orgDataCountBeanList, List<MapDataCountBean> mapDataCountBeanList) {
        this.orgDataCountBeanList = orgDataCountBeanList;
        this.mapDataCountBeanList = mapDataCountBeanList;
    }

    public Long getOnlineCount() {
        return onlineCount;
    }

    public void setOnlineCount(Long onlineCount) {
        this.onlineCount = onlineCount;
    }

    public Long getExamCount() {
        return examCount;
    }

    public void setExamCount(Long examCount) {
        this.examCount = examCount;
    }

    public Long getExamRecordCount() {
        return examRecordCount;
    }

    public void setExamRecordCount(Long examRecordCount) {
        this.examRecordCount = examRecordCount;
    }

    public Long getExamStudentCount() {
        return examStudentCount;
    }

    public void setExamStudentCount(Long examStudentCount) {
        this.examStudentCount = examStudentCount;
    }

    public List<OrgDataCountBean> getOrgDataCountBeanList() {
        return orgDataCountBeanList;
    }

    public void setOrgDataCountBeanList(List<OrgDataCountBean> orgDataCountBeanList) {
        this.orgDataCountBeanList = orgDataCountBeanList;
    }

    public List<MapDataCountBean> getMapDataCountBeanList() {
        return mapDataCountBeanList;
    }

    public void setMapDataCountBeanList(List<MapDataCountBean> mapDataCountBeanList) {
        this.mapDataCountBeanList = mapDataCountBeanList;
    }
}
