package xiaoqu.home.open.model.db1;

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

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 com.baomidou.mybatisplus.extension.activerecord.Model;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * <p>
 * 代理商表
 * </p>
 *
 * @author wh
 * @since 2022-03-11
 */
@TableName("agent")
@ApiModel(value="Agent对象", description="代理商表")
public class Agent extends Model<Agent> {

    private static final long serialVersionUID = 1L;

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

    @ApiModelProperty(value = "创建id")
    @TableField("create_id")
    private Long createId;

    @ApiModelProperty(value = "创建时间")
    @TableField("create_time")
    private Date createTime;

    @ApiModelProperty(value = "修改id")
    @TableField("modify_id")
    private Long modifyId;

    @ApiModelProperty(value = "修改时间")
    @TableField("modify_time")
    private Date modifyTime;

    @ApiModelProperty(value = "数据状态")
    @TableField("soft_delete")
    private Integer softDelete;

    @ApiModelProperty(value = "类型（0：区域主管1：代理2：物业，3....）")
    @TableField("type")
    private Integer type;

    @ApiModelProperty(value = "企业名称")
    @TableField("name")
    private String name;

    @ApiModelProperty(value = "上级id")
    @TableField("supervisor_id")
    private Long supervisorId;

    @ApiModelProperty(value = "企业地址")
    @TableField("address")
    private String address;

    @ApiModelProperty(value = "企业联系方式")
    @TableField("phone")
    private String phone;

    @ApiModelProperty(value = "省")
    @TableField("province")
    private String province;

    @ApiModelProperty(value = "市")
    @TableField("city")
    private String city;

    @ApiModelProperty(value = "县")
    @TableField("countyseat")
    private String countyseat;

    @ApiModelProperty(value = "备注信息")
    @TableField("memo")
    private String memo;

    @ApiModelProperty(value = "联系人")
    @TableField("contact")
    private String contact;

    @ApiModelProperty(value = "联系人邮箱")
    @TableField("mail")
    private String mail;

    @ApiModelProperty(value = "代理地区")
    @TableField("agencyarea")
    private String agencyarea;

    @ApiModelProperty(value = "上级id")
    @TableField("parents_id")
    private Long parentsId;

    @ApiModelProperty(value = "编号")
    @TableField("serialnumber")
    private String serialnumber;

    @ApiModelProperty(value = "代理级别(0:总部;1:一级代理;2:二级代理)")
    @TableField("level")
    private Integer level;

    @ApiModelProperty(value = "渠道编号(Z:总部;F:分公司;D:代理)")
    @TableField("channel_no")
    private String channelNo;

    @ApiModelProperty(value = "户名")
    @TableField("account_name")
    private String accountName;

    @ApiModelProperty(value = "账户号")
    @TableField("account_no")
    private String accountNo;

    @ApiModelProperty(value = "开户行")
    @TableField("account_bank")
    private String accountBank;

    @ApiModelProperty(value = "纳税人识别号")
    @TableField("identification_number")
    private String identificationNumber;

    @ApiModelProperty(value = "纳税人类型(0:一般纳税人;1:小规模纳税人;2:个人)")
    @TableField("taxpayer_type")
    private Integer taxpayerType;

    @ApiModelProperty(value = "纳税人税点")
    @TableField("taxpayer_point")
    private Double taxpayerPoint;

    @ApiModelProperty(value = "代理商承担手续费")
    @TableField("taxpayer_service_charge")
    private Double taxpayerServiceCharge;

    @ApiModelProperty(value = "订单出库验证0:不验证;1:验证")
    @TableField("order_out_check")
    private Integer orderOutCheck;

    @ApiModelProperty(value = "开票名称")
    @TableField("invoice_name")
    private String invoiceName;


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getCreateId() {
        return createId;
    }

    public void setCreateId(Long createId) {
        this.createId = createId;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Long getModifyId() {
        return modifyId;
    }

    public void setModifyId(Long modifyId) {
        this.modifyId = modifyId;
    }

    public Date getModifyTime() {
        return modifyTime;
    }

    public void setModifyTime(Date modifyTime) {
        this.modifyTime = modifyTime;
    }

    public Integer getSoftDelete() {
        return softDelete;
    }

    public void setSoftDelete(Integer softDelete) {
        this.softDelete = softDelete;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Long getSupervisorId() {
        return supervisorId;
    }

    public void setSupervisorId(Long supervisorId) {
        this.supervisorId = supervisorId;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getProvince() {
        return province;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getCountyseat() {
        return countyseat;
    }

    public void setCountyseat(String countyseat) {
        this.countyseat = countyseat;
    }

    public String getMemo() {
        return memo;
    }

    public void setMemo(String memo) {
        this.memo = memo;
    }

    public String getContact() {
        return contact;
    }

    public void setContact(String contact) {
        this.contact = contact;
    }

    public String getMail() {
        return mail;
    }

    public void setMail(String mail) {
        this.mail = mail;
    }

    public String getAgencyarea() {
        return agencyarea;
    }

    public void setAgencyarea(String agencyarea) {
        this.agencyarea = agencyarea;
    }

    public Long getParentsId() {
        return parentsId;
    }

    public void setParentsId(Long parentsId) {
        this.parentsId = parentsId;
    }

    public String getSerialnumber() {
        return serialnumber;
    }

    public void setSerialnumber(String serialnumber) {
        this.serialnumber = serialnumber;
    }

    public Integer getLevel() {
        return level;
    }

    public void setLevel(Integer level) {
        this.level = level;
    }

    public String getChannelNo() {
        return channelNo;
    }

    public void setChannelNo(String channelNo) {
        this.channelNo = channelNo;
    }

    public String getAccountName() {
        return accountName;
    }

    public void setAccountName(String accountName) {
        this.accountName = accountName;
    }

    public String getAccountNo() {
        return accountNo;
    }

    public void setAccountNo(String accountNo) {
        this.accountNo = accountNo;
    }

    public String getAccountBank() {
        return accountBank;
    }

    public void setAccountBank(String accountBank) {
        this.accountBank = accountBank;
    }

    public String getIdentificationNumber() {
        return identificationNumber;
    }

    public void setIdentificationNumber(String identificationNumber) {
        this.identificationNumber = identificationNumber;
    }

    public Integer getTaxpayerType() {
        return taxpayerType;
    }

    public void setTaxpayerType(Integer taxpayerType) {
        this.taxpayerType = taxpayerType;
    }

    public Double getTaxpayerPoint() {
        return taxpayerPoint;
    }

    public void setTaxpayerPoint(Double taxpayerPoint) {
        this.taxpayerPoint = taxpayerPoint;
    }

    public Double getTaxpayerServiceCharge() {
        return taxpayerServiceCharge;
    }

    public void setTaxpayerServiceCharge(Double taxpayerServiceCharge) {
        this.taxpayerServiceCharge = taxpayerServiceCharge;
    }

    public Integer getOrderOutCheck() {
        return orderOutCheck;
    }

    public void setOrderOutCheck(Integer orderOutCheck) {
        this.orderOutCheck = orderOutCheck;
    }

    public String getInvoiceName() {
        return invoiceName;
    }

    public void setInvoiceName(String invoiceName) {
        this.invoiceName = invoiceName;
    }

    @Override
    protected Serializable pkVal() {
        return this.id;
    }

    @Override
    public String toString() {
        return "Agent{" +
        "id=" + id +
        ", createId=" + createId +
        ", createTime=" + createTime +
        ", modifyId=" + modifyId +
        ", modifyTime=" + modifyTime +
        ", softDelete=" + softDelete +
        ", type=" + type +
        ", name=" + name +
        ", supervisorId=" + supervisorId +
        ", address=" + address +
        ", phone=" + phone +
        ", province=" + province +
        ", city=" + city +
        ", countyseat=" + countyseat +
        ", memo=" + memo +
        ", contact=" + contact +
        ", mail=" + mail +
        ", agencyarea=" + agencyarea +
        ", parentsId=" + parentsId +
        ", serialnumber=" + serialnumber +
        ", level=" + level +
        ", channelNo=" + channelNo +
        ", accountName=" + accountName +
        ", accountNo=" + accountNo +
        ", accountBank=" + accountBank +
        ", identificationNumber=" + identificationNumber +
        ", taxpayerType=" + taxpayerType +
        ", taxpayerPoint=" + taxpayerPoint +
        ", taxpayerServiceCharge=" + taxpayerServiceCharge +
        ", orderOutCheck=" + orderOutCheck +
        ", invoiceName=" + invoiceName +
        "}";
    }
}
