package cn.cecep.talroad.domain.analysis;


import cn.cecep.talroad.common.core.annotation.Excel;
import cn.cecep.talroad.common.core.web.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;


/**
 * 装煤推焦次数分析对象 s_ra_real_time_analysis_coal
 *
 * @author szhpt
 * @date 2023-03-24
 */
@ApiModel(value = "装煤推焦次数分析")
@Data
@ToString
@EqualsAndHashCode(callSuper = false)
@TableName("s_ra_real_time_analysis_coal")
public class SRaRealTimeAnalysisCoal extends BaseEntity {
    private static final long serialVersionUID = 1L;


    @ApiModelProperty(value = "数据主键")
    /** 数据主键 */
    @TableId(value = "data_id", type = IdType.ASSIGN_UUID)
    private String dataId;

    @ApiModelProperty(value = "企业主键")
    /** 企业主键 */
    private String factoryId;

    @ApiModelProperty(value = "企业名称")
    /** 企业名称 */
    @Excel(name = "企业名称")
    private String factoryName;

    @ApiModelProperty(value = "行业类别名称(多个使用'、'拼接)")
    /** 行业类别名称(多个使用'、'拼接) */
    @Excel(name = "行业类别")
    private String industryCategoryName;

    @ApiModelProperty(value = "行业类别编码(多个使用'、'拼接)")
    /** 行业类别编码(多个使用'、'拼接) */
    private String industryCategoryCode;

    @ApiModelProperty(value = "所在区县名称")
    /** 所在区县名称 */
    @Excel(name = "所在区县")
    private String districtName;

    @ApiModelProperty(value = "所在区县编码")
    /** 所在区县编码 */
    private String districtCode;

    @ApiModelProperty(value = "设备名称")
    /** 设备名称 */
    @Excel(name = "设备名称")
    private String deviceName;

    @ApiModelProperty(value = "设备编号")
    /** 设备编号 */
    private String deviceId;

    @ApiModelProperty(value = "统计时间")
    /** 统计时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH")
    @Excel(name = "统计时间", dateFormat = "yyyy-MM-dd HH")
    private Date analyseTime;

    @ApiModelProperty(value = "装煤次数")
    /** 装煤次数 */
    @Excel(name = "装煤次数")
    private Long coalNumber;

    @ApiModelProperty(value = "推焦次数")
    /** 推焦次数 */
    @Excel(name = "推焦次数")
    private Long cokeNumber;
    @ApiModelProperty(value = "统计时间列表展示")
    @TableField(exist = false)
    private String analyseTimeStr;

    public static class SRaRealTimeAnalysisFactoryCoal{
        /** 企业名称 */
        @Excel(name = "企业名称")
        private String factoryName;

        /** 行业类别名称(多个使用'、'拼接) */
        @Excel(name = "行业类别")
        private String industryCategoryName;

        /** 所在区县名称 */
        @Excel(name = "所在区县")
        private String districtName;

        /** 统计时间 */
        @Excel(name = "统计时间")
        private String analyseTime;

        /** 装煤次数 */
        @Excel(name = "装煤次数")
        private Long coalNumber;

        /** 推焦次数 */
        @Excel(name = "推焦次数")
        private Long cokeNumber;

        public String getFactoryName() {
            return factoryName;
        }

        public void setFactoryName(String factoryName) {
            this.factoryName = factoryName;
        }

        public String getIndustryCategoryName() {
            return industryCategoryName;
        }

        public void setIndustryCategoryName(String industryCategoryName) {
            this.industryCategoryName = industryCategoryName;
        }

        public String getDistrictName() {
            return districtName;
        }

        public void setDistrictName(String districtName) {
            this.districtName = districtName;
        }

        public String getAnalyseTime() {
            return analyseTime;
        }

        public void setAnalyseTime(String analyseTime) {
            this.analyseTime = analyseTime;
        }

        public Long getCoalNumber() {
            return coalNumber;
        }

        public void setCoalNumber(Long coalNumber) {
            this.coalNumber = coalNumber;
        }

        public Long getCokeNumber() {
            return cokeNumber;
        }

        public void setCokeNumber(Long cokeNumber) {
            this.cokeNumber = cokeNumber;
        }
    }
    public static class SRaRealTimeAnalysisDeviceCoal{
        /** 企业名称 */
        @Excel(name = "企业名称")
        private String factoryName;

        /** 行业类别名称(多个使用'、'拼接) */
        @Excel(name = "行业类别")
        private String industryCategoryName;

        /** 所在区县名称 */
        @Excel(name = "所在区县")
        private String districtName;

        /** 设备名称 */
        @Excel(name = "设备名称")
        private String deviceName;
        /** 统计时间 */
        @Excel(name = "统计时间")
        private String analyseTime;

        /** 装煤次数 */
        @Excel(name = "装煤次数")
        private Long coalNumber;

        /** 推焦次数 */
        @Excel(name = "推焦次数")
        private Long cokeNumber;

        public String getFactoryName() {
            return factoryName;
        }

        public void setFactoryName(String factoryName) {
            this.factoryName = factoryName;
        }

        public String getIndustryCategoryName() {
            return industryCategoryName;
        }

        public void setIndustryCategoryName(String industryCategoryName) {
            this.industryCategoryName = industryCategoryName;
        }

        public String getDistrictName() {
            return districtName;
        }

        public void setDistrictName(String districtName) {
            this.districtName = districtName;
        }

        public String getDeviceName() {
            return deviceName;
        }

        public void setDeviceName(String deviceName) {
            this.deviceName = deviceName;
        }

        public String getAnalyseTime() {
            return analyseTime;
        }

        public void setAnalyseTime(String analyseTime) {
            this.analyseTime = analyseTime;
        }

        public Long getCoalNumber() {
            return coalNumber;
        }

        public void setCoalNumber(Long coalNumber) {
            this.coalNumber = coalNumber;
        }

        public Long getCokeNumber() {
            return cokeNumber;
        }

        public void setCokeNumber(Long cokeNumber) {
            this.cokeNumber = cokeNumber;
        }
    }
}
