package com.iotechn.unimall.data.domain;

import com.iotechn.unimall.data.domain.SuperDO;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.iotechn.unimall.core.framework.aspectj.lang.annotaion.Excel;
import com.iotechn.unimall.core.framework.aspectj.lang.annotaion.Excel.ColumnType;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import lombok.Data;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.enums.FieldFill;
import com.iotechn.unimall.core.util.StringUtils;
import java.util.Date;

/**
 * 名片夹对象 card_holder_info
 * 
 * @author jlb
 * @date 2023-04-10
 */
@Data
@TableName("card_holder_info")
public class CardHolderInfo extends SuperDO {
    private static final long serialVersionUID = 1L;

    /**  */
    @TableId("id")
    private Long id;

    /** 个人id */
    @Excel(name = "个人id")
    @TableField("common_id")
    private Long commonId;

    /** 名片id */
    @Excel(name = "名片id")
    @TableField("card_id")
    private String cardId;

    /** 备注 */
    @Excel(name = "备注")
    @TableField("remark")
    private String remark;

    /** 客户分类 */
    @Excel(name = "客户分类")
    @TableField("classify")
    private String classify;

    /**  */
    @Excel(name = "", width = 30, dateFormat = "yyyy-MM-dd")
    @TableField("gmt_create")
    private Date gmtCreate;

    /**  */
    @Excel(name = "", width = 30, dateFormat = "yyyy-MM-dd")
    @TableField("gmt_update")
    private Date gmtUpdate;

    /** 删除标识 */
    @Excel(name = "删除标识")
    @TableField("delete_flag")
    private Long deleteFlag;
    @TableField(exist = false)
    private CardManagementInfo cardManagementInfo;
    /** 允许他人分享名片(1允许) */
    @TableField(exist = false)
    private Long shareCard;
    /** 扫码名片归属人id */
    @TableField(exist = false)
    private Long cardCommonId;
    /** 我的名片id */
    @TableField(exist = false)
    private String myCardId;
    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("commonId", getCommonId())
            .append("cardId", getCardId())
            .append("remark", getRemark())
            .append("classify", getClassify())
            .append("gmtCreate", getGmtCreate())
            .append("gmtUpdate", getGmtUpdate())
            .append("deleteFlag", getDeleteFlag())
            .toString();
    }
}
