package com.benyun.core.entity;

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 com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

@Data
@TableName("ddt_enterprise")
public class Enterprise {
    @TableId("enterprise_usci")
    private String enterpriseUsci;
    @TableField("enterprise_img")
    private String enterpriseImg;
    @TableField("enterprise_name")
    private String enterpriseName;
    @TableField("enterprise_name_short")
    private String enterpriseNameShort;
    @TableField("addr_info")
    private String addrInfo;
    @TableField("addr_code")
    private String addrCode;
    @TableField("enterprise_info")
    private String enterpriseInfo;
    @TableField("manage_range_info")
    private String manageRangeInfo;
    @TableField("enterprise_scale")
    private String enterpriseScale;
    @TableField("registered_capital")
    private BigDecimal registeredCapital;
    @TableField("linkmen_id")
    private String linkmenId;
    @TableField("linkmen_name")
    private String linkmenName;
    @TableField("create_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonSerialize(using = LocalDateTimeSerializer.class)
    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
    private LocalDate createTime;
    @TableField("enterprise_itin")
    private String enterpriseItin;
    @TableField("business_status")
    private String businessStatus;
    @TableField("industry_code")
    private String industryCode;
    @TableField("enterprise_type")
    private String enterpriseType;
    @TableField("credit_score")
    private int creditScore;
    @TableField("audit")
    private int audit;
    @TableField("collect_user_id")
    private String collectUserId;
    @TableField("collect_person")
    private String collectPerson;
    @TableField("collect_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonSerialize(using = LocalDateTimeSerializer.class)
    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
    private LocalDateTime collectTime;
    @TableField("enter_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonSerialize(using = LocalDateTimeSerializer.class)
    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
    private LocalDateTime enterTime;
    @TableField("update_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonSerialize(using = LocalDateTimeSerializer.class)
    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
    private LocalDateTime updateTime;
    @TableField("hash")
    private String hash;
    @TableField("telephone")
    private String telephone;
    @TableField("website")
    private String website;
}
