package com.bs.df.domain;

import com.bs.common.annotation.Excel;
import com.bs.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
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 io.swagger.annotations.ApiModelProperty;

import java.util.List;

/**
 * 代理商经纪对象 df_broker
 *
 * @author bs
 * @date 2024-04-06
 */
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("df_broker")
@Data
public class DfBroker extends BaseEntity{
    private static final long serialVersionUID = 1L;

    /** id */
    @TableId(value = "id",type = IdType.AUTO)
    @ApiModelProperty(value = "id")
    private Long id;

    /** 父级id */

    //@Excel(name = "上级代理商")
    @ApiModelProperty(value = "父级id")
    private Long parentId;

    @Excel(name = "上级代理商")
    @ApiModelProperty(value = "代理商名称")
    @TableField(exist = false)
    private String parentName;

    /** 代理商名称 */

    @Excel(name = "代理商名称")
    @ApiModelProperty(value = "代理商名称")
    private String brokerName;

    /** 地址 */

    @Excel(name = "地址")
    @ApiModelProperty(value = "地址")
    private String brokerAddress;

    /** 简介 */

    @Excel(name = "简介")
    @ApiModelProperty(value = "简介")
    private String brokerDesc;

    /** 显示顺序 */

    @Excel(name = "显示顺序")
    @ApiModelProperty(value = "显示顺序")
    private Long orderNum;

    /** 负责人 */

    @Excel(name = "负责人")
    @ApiModelProperty(value = "负责人")
    private String chargePerson;

    /** 联系电话 */

    @Excel(name = "联系电话")
    @ApiModelProperty(value = "联系电话")
    private String contactPhone;

    /** 邮箱 */

    @Excel(name = "邮箱")
    @ApiModelProperty(value = "邮箱")
    private String email;

    /** 是否机构 */

    @Excel(name = "是否机构",dictType = "sys_yes_no")
    @ApiModelProperty(value = "是否机构")
    private String isInstitution;

    /** 状态 */

    @Excel(name = "状态",dictType = "df_broker_staus")
    @ApiModelProperty(value = "状态")
    private String staus;

    /** 备注 */

    @Excel(name = "备注")
    @ApiModelProperty(value = "备注")
    private String remark;

    @TableField(exist = false)
    private List<DfBroker> children;


    @TableField(exist = false)
    private Boolean isTopLevel;


}
