package com.njcn.process.pojo.vo;

import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDate;
import java.util.List;

/**
 * <功能描述>
 *
 * @author wr
 * @createTime: 2023-02-27
 */
@Data
public class TerminalVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "终端编号")
    private String id;

    @ApiModelProperty(value = "终端名称")
    private String name;

    @ApiModelProperty(value = "组织机构名称")
    private String orgName;

    @ApiModelProperty(value = "组织机构编号")
    private String orgNo;

    @ApiModelProperty(value = "生产厂家")
    private String manufacture;

    @ApiModelProperty(value = "安装位置")
    private String installPlace;

    @ApiModelProperty(value = "送检单位")
    private String inspectionUnit;

    @ApiModelProperty(value = "检测结果")
    private String testResults;

    @ApiModelProperty(value = "检测时间")
    private LocalDate inspectionTime;

    @ApiModelProperty(value = "下次检测时间")
    private LocalDate nextInspectionTime;

    @ApiModelProperty(value = "检测报告文件名称")
    private String inspectionName;

    @ApiModelProperty(value = "检测报告")
    private String inspectionReport;

    @ApiModelProperty(value = "原始数据报告文件名称")
    private String originalName;

    @ApiModelProperty(value = "原始数据报告")
    private String originalReport;

    @Data
    public static class TerminalStatistics implements Serializable {

        @ApiModelProperty(value = "单位统计")
        List<OrgStatistics> orgStatistics;

        @ApiModelProperty(value = "年度统计")
        List<?> dateStatistics;

    }

    @Data
    public static class OrgStatistics implements Serializable {
        @ApiModelProperty(value = "单位id")
        private String orgNo;

        @ApiModelProperty(value = "单位名称")
        private String orgName;

        @ApiModelProperty(value = "统计数量")
        private Integer count;
    }

    @Data
    public static class DateStatistics implements Serializable {

        @ApiModelProperty(value = "时间")
        private String statisticsDate;

        @ApiModelProperty(value = "统计数量")
        private Integer count;
    }
    @Data
    public static class ResultsStatistics implements Serializable {

        @ApiModelProperty(value = "单位名称")
        private String orgName;

        @ApiModelProperty(value = "未展开")
        private Integer notExpanded;

        @ApiModelProperty(value = "已展开")
        private Integer expanded;


    }


}
