package org.qinan.safetyeval.client.co;

import io.swagger.annotations.ApiModelProperty;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import lombok.Data;

/**
 * 机构信息CO（Client Object）
 *
 * @author safety-eval
 */
@Data
public class OrgInfoCO {

    @ApiModelProperty(value = "主键ID")
    private Long id;

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

    @ApiModelProperty(value = "统一社会信用代码")
    private String creditCode;

    @ApiModelProperty(value = "安全行业类别编码")
    private String safetyIndustryCategoryCode;

    @ApiModelProperty(value = "安全行业类别名称")
    private String safetyIndustryCategoryName;

    @ApiModelProperty(value = "区划编码")
    private String districtCode;

    @ApiModelProperty(value = "区划名称")
    private String districtName;

    @ApiModelProperty(value = "镇街")
    private String townStreet;

    @ApiModelProperty(value = "村社区")
    private String villageCommunity;

    @ApiModelProperty(value = "经度")
    private BigDecimal longitude;

    @ApiModelProperty(value = "纬度")
    private BigDecimal latitude;

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

    @ApiModelProperty(value = "经营地址")
    private String businessAddress;

    @ApiModelProperty(value = "所有制类型编码")
    private String ownershipTypeCode;

    @ApiModelProperty(value = "所有制类型名称")
    private String ownershipTypeName;

    @ApiModelProperty(value = "法定代表人")
    private String legalRepresentative;

    @ApiModelProperty(value = "法定代表人电话")
    private String legalRepresentativePhone;

    @ApiModelProperty(value = "负责人姓名")
    private String principalName;

    @ApiModelProperty(value = "负责人电话")
    private String principalPhone;

    @ApiModelProperty(value = "安全部门负责人")
    private String safetyDeptManager;

    @ApiModelProperty(value = "安全部门负责人电话")
    private String safetyDeptManagerPhone;

    @ApiModelProperty(value = "安全副职电话")
    private String safetyDeputyPhone;

    @ApiModelProperty(value = "投产日期")
    private LocalDate productionDate;

    @ApiModelProperty(value = "经营状态编码")
    private Integer businessStatusCode;

    @ApiModelProperty(value = "经营状态名称")
    private String businessStatusName;

    @ApiModelProperty(value = "信息公开网址")
    private String infoDisclosureUrl;

    @ApiModelProperty(value = "办公场所面积")
    private BigDecimal workplaceArea;

    @ApiModelProperty(value = "档案室面积")
    private BigDecimal archiveRoomArea;

    @ApiModelProperty(value = "专职评价人员数量")
    private Integer fulltimeEvaluatorCount;

    @ApiModelProperty(value = "注册安全工程师数量")
    private Integer registeredEngineerCount;

    @ApiModelProperty(value = "经济行业编码")
    private String economyIndustryCode;

    @ApiModelProperty(value = "经济行业名称")
    private String economyIndustryName;

    @ApiModelProperty(value = "认证状态编码(1填写信息2审核中3通过)")
    private Integer authStatusCode;

    @ApiModelProperty(value = "认证状态名称")
    private String authStatusName;

    @ApiModelProperty(value = "企业状态编码(1正常2停业3注销)")
    private Integer enterpriseStatusCode;

    @ApiModelProperty(value = "企业状态名称")
    private String enterpriseStatusName;

    @ApiModelProperty(value = "企业规模编码")
    private String enterpriseScaleCode;

    @ApiModelProperty(value = "企业规模名称")
    private String enterpriseScaleName;

    @ApiModelProperty(value = "备案类型编码(1审核备案2确认备案)")
    private String filingTypeCode;

    @ApiModelProperty(value = "备案类型名称")
    private String filingTypeName;

    @ApiModelProperty(value = "备案状态编码(1已备案2未备案)")
    private Integer filingRecordStatusCode;

    @ApiModelProperty(value = "备案记录状态名称")
    private String filingRecordStatusName;

    @ApiModelProperty(value = "附件地址列表")
    private String attachmentUrls;

    @ApiModelProperty(value = "状态(0启用1禁用)")
    private Integer state;

    @ApiModelProperty(value = "租户ID")
    private Long tenantId;

    @ApiModelProperty(value = "单位ID")
    private Long orgId;

    @ApiModelProperty(value = "创建时间（开户时间）")
    private LocalDateTime createTime;
}
