package com.nantian.cloud.jly.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;

/**
 * <p>
 * 企业基本信息修改表
 * </p>
 *
 * @author scott
 * @since 2020-08-03
 */
@Data
@TableName("enterprise_info_amend")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "企业基本信息修改表")
public class EnterpriseInfoAmend extends Model<EnterpriseInfoAmend> {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "id")
    @ApiModelProperty(value = "主键")
    private Long id;

    /**
     * 计划id
     */
    @ApiModelProperty(value = "计划id")
    @TableField(value="check_plan_id")
    private String checkPlanId;
    /**
     * 统一社会信用代码
     */
    @ApiModelProperty(value = "统一社会信用代码")
    @TableField(value="enterprise_code")
    private String enterpriseCode;
    /**
     * 计划报告编号
     */
    @ApiModelProperty(value = "计划报告编号")
    @TableField(value="report_number")
    private String reportNumber;

    /**
     * 组织审查单位
     */
    @ApiModelProperty(value = "组织审查单位")
    @TableField(value="check_dept")
    private String checkDept;

    /**
     * 审查日期
     */
    @ApiModelProperty(value = "审查日期")
    @TableField(value="review_date")
    private String reviewDate;
    /**
     * 签发日期
     */
    @ApiModelProperty(value = "签发日期")
    @TableField(value="issue_date")
    private String issueDate;


    /**
     * 是否是公共机构
     */
    @ApiModelProperty(value = "是否是公共机构")
    private String isorg;

    /**
     * 机构类型
     */
    @ApiModelProperty("机构类型")
    private String orgType;

    /**
     * 组织机构代码
     */
    @ApiModelProperty(value = "组织机构代码")
    private String orgCode;

    /**
     * 初设密码
     */
    @ApiModelProperty(value ="初设密码" )
    private String password;

    /**
     * 单位名称
     */
    @ApiModelProperty(value = "单位名称")
    private String cmpName;

    /**
     * 联系人
     */
    @ApiModelProperty(value = "联系人")
    private String linkman;

    /**
     * 地址
     */
    @ApiModelProperty(value = "地址")
    private String address;

    /**
     * 邮编
     */
    @ApiModelProperty(value = "邮编")
    private String zipCode;

    /**
     * 法人代表
     */
    @ApiModelProperty(value = "法人代表")
    private String corporationName;

    /**
     * 行政区划代码，具体到县级
     */
    @ApiModelProperty(value = "行政区划代码，具体到县级")
    private String regionCode;

    /**
     * 营业执照
     */
    @ApiModelProperty(value = "营业执照")
    private String license;

    /**
     * 组织结构
     */
    @ApiModelProperty(value = "组织结构")
    private String organization;

    /**
     * 注册地址
     */
    @ApiModelProperty(value = "注册地址")
    private String registerAddress;

    /**
     * 注册日期
     */
    @ApiModelProperty(value = "注册日期")
    private LocalDateTime registerDate;

    /**
     * 注册资金，万元
     */
    @ApiModelProperty(value = "注册资金，万元")
    private String registerPrincipal;

    /**
     * 单位类型
     */
    @ApiModelProperty(value = "单位类型")
    private String typeCode;

    /**
     * 行业编码
     */
    @ApiModelProperty(value = "行业编码")
    private String industryCode;

    /**
     * 领域编码
     */
    @ApiModelProperty(value = "领域编码")
    private String fieldCode;

    /**
     * 企业耗能级别
     */
    @ApiModelProperty(value = "企业耗能级别")
    private String energyConsumeLevel;

    /**
     * 是否央企
     */
    @ApiModelProperty(value = "是否央企")
    private String center;

    /**
     * 是否能源加工转换类企业
     */
    @ApiModelProperty(value = "是否能源加工转换类企业")
    private String jgzh;

    /**
     * 用能单位主要厂址中心纬度
     */
    @ApiModelProperty(value = "用能单位主要厂址中心纬度")
    private String latitude;

    /**
     * 用能单位主要厂址中心经度
     */
    @ApiModelProperty(value = "用能单位主要厂址中心经度")
    private String longitude;

    /**
     * 联系电话(法人)
     */
    @ApiModelProperty(value = "联系电话(法人)")
    private String phone;

    /**
     * 传真
     */
    @ApiModelProperty(value = "传真")
    private String fax;

    /**
     * 电子邮箱（法人）
     */
    @ApiModelProperty(value = "电子邮箱（法人）")
    private String email;

    /**
     * 用能单位网站地址
     */
    @ApiModelProperty(value = "用能单位网站地址")
    private String url;

    /**
     * 企业主要生产线名称
     */
    @ApiModelProperty(value = "企业主要生产线名称")
    private String productionLine;

    /**
     * 企业主导产品
     */
    @ApiModelProperty(value = " 企业主导产品")
    private String leadingProduct;

    /**
     * 集团名称
     */
    @ApiModelProperty(value = "集团名称")
    private String groupName;

    /**
     * 集团地址
     */
    @ApiModelProperty(value = "集团名称")
    private String groupAddress;

    /**
     * 申请时间
     */
    @ApiModelProperty(value = "申请时间")
    private LocalDateTime applyDate;

    /**
     * 审核时间
     */
    @ApiModelProperty(value = "审核时间")
    private LocalDateTime approvalDate;

    /**
     * 最近一次登陆时间
     */
    @ApiModelProperty(value = "最近一次登陆时间")
    private LocalDateTime lastLoginDate;

    /**
     * 状态
     */
    @ApiModelProperty(value = "状态")
    private String state;
    /**
     * 企业能耗数据交换时间
     */
    @ApiModelProperty(value = "企业能耗数据交换时间")
    private String uploadTime;
    /**
     * 状态
     */
    @ApiModelProperty(value = "null")
    private String checkUploadTime;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String remark;


    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id")
    private Integer userid;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;

    /**
     * 注销状态
     */
    @ApiModelProperty(value = "注销状态（1：未删除，4：已删除）")
    private String delFlag;

    /**
     * 部门id
     */
    @ApiModelProperty(value = "部门id")
    private Integer deptId;


    /**
     * 主键值
     */
    @Override
    protected Serializable pkVal() {
        return this.id;
    }
}
