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 java.math.BigDecimal;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;


/**
 * 转炉产量分析对象 s_ra_real_time_analysis_converter
 *
 * @author szhpt
 * @date 2023-03-24
 */
@ApiModel(value = "转炉产量分析")
@Data
@ToString
@EqualsAndHashCode(callSuper = false)
@TableName("s_ra_real_time_analysis_converter")
public class SRaRealTimeAnalysisConverter 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 = "行业类别名称(多个使用'、'拼接)")
    /** 行业类别名称(多个使用'、'拼接) */
    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 converterNumber;


    @ApiModelProperty(value = "公称容量")
    /** 公称容量 */
    @Excel(name = "公称容量(t)")
    private BigDecimal nominalNumber;


    @ApiModelProperty(value = "产量")
    /** 产量 */
    @Excel(name = "产量(t)")
    private BigDecimal outputNumber;


    @ApiModelProperty(value = "出钢量")
    /** 出钢量 */
    @Excel(name = "出钢量")
    private BigDecimal tapNumber;

    @ApiModelProperty(value = "统计时间列表展示")
    @TableField(exist = false)
    private String analyseTimeStr;

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

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

        /** 设备名称 */
        @Excel(name = "设备名称")
        private String deviceName;
        @Excel(name = "统计时间")
        private String analyseTimeStr;
        /** 炉数 */
        @Excel(name = "炉数")
        private Long converterNumber;

        /** 公称容量 */
        @Excel(name = "公称容量(t)")
        private BigDecimal nominalNumber;

        /** 产量 */
        @Excel(name = "产量(t)")
        private BigDecimal outputNumber;

        /** 出钢量 */
        @Excel(name = "出钢量")
        private BigDecimal tapNumber;



        public String getFactoryName() {
            return factoryName;
        }

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

        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 Long getConverterNumber() {
            return converterNumber;
        }

        public void setConverterNumber(Long converterNumber) {
            this.converterNumber = converterNumber;
        }

        public BigDecimal getNominalNumber() {
            return nominalNumber;
        }

        public void setNominalNumber(BigDecimal nominalNumber) {
            this.nominalNumber = nominalNumber;
        }

        public BigDecimal getOutputNumber() {
            return outputNumber;
        }

        public void setOutputNumber(BigDecimal outputNumber) {
            this.outputNumber = outputNumber;
        }

        public BigDecimal getTapNumber() {
            return tapNumber;
        }

        public void setTapNumber(BigDecimal tapNumber) {
            this.tapNumber = tapNumber;
        }

        public String getAnalyseTimeStr() {
            return analyseTimeStr;
        }

        public void setAnalyseTimeStr(String analyseTimeStr) {
            this.analyseTimeStr = analyseTimeStr;
        }
    }
    public static class SRaRealTimeAnalysisFactoryConverter{
        /** 企业名称 */
        @Excel(name = "企业名称")
        private String factoryName;

        /** 所在区县名称 */
        @Excel(name = "所在区县")
        private String districtName;
        @Excel(name = "统计时间")
        private String analyseTimeStr;
        /** 炉数 */
        @Excel(name = "炉数")
        private Long converterNumber;

        /** 公称容量 */
        @Excel(name = "公称容量(t)")
        private BigDecimal nominalNumber;

        /** 产量 */
        @Excel(name = "产量(t)")
        private BigDecimal outputNumber;

        /** 出钢量 */
        @Excel(name = "出钢量")
        private BigDecimal tapNumber;



        public String getFactoryName() {
            return factoryName;
        }

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

        public String getDistrictName() {
            return districtName;
        }

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

        public Long getConverterNumber() {
            return converterNumber;
        }

        public void setConverterNumber(Long converterNumber) {
            this.converterNumber = converterNumber;
        }

        public BigDecimal getNominalNumber() {
            return nominalNumber;
        }

        public void setNominalNumber(BigDecimal nominalNumber) {
            this.nominalNumber = nominalNumber;
        }

        public BigDecimal getOutputNumber() {
            return outputNumber;
        }

        public void setOutputNumber(BigDecimal outputNumber) {
            this.outputNumber = outputNumber;
        }

        public BigDecimal getTapNumber() {
            return tapNumber;
        }

        public void setTapNumber(BigDecimal tapNumber) {
            this.tapNumber = tapNumber;
        }

        public String getAnalyseTimeStr() {
            return analyseTimeStr;
        }

        public void setAnalyseTimeStr(String analyseTimeStr) {
            this.analyseTimeStr = analyseTimeStr;
        }
    }
}
