package org.dromara.system.domain.vo;

import cn.hutool.core.date.DateTime;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;

@Data
public class SysTenantExtendVo {

    @Schema(description = "id")
    @TableId(value = "id")
    private Long id;

    @Schema(description = "租户编号")
    private String tenantId;

    @Schema(description = "企业名称")
    private String companyName;

    @Schema(description = "统一社会信用代码")
    private String licenseNumber;

    @Schema(description = "地址")
    private String address;

    @Schema(description = "域名")
    private String domain;

    @Schema(description = "企业简介")
    private String intro;

    @Schema(description = "用户数量（-1不限制）")
    private Long accountCount;

    @Schema(description = "租户状态（0正常 1停用）")
    private String status;

    @Schema(description = "删除标志（0代表存在 1代表删除）")
    @TableLogic
    private String delFlag;

    @Schema(description = "营业执照编号")
    private String businessLicense;

    @Schema(description = "入驻时间")
    private LocalDateTime joinTime;

    @Schema(description = "营业执照附件")
    private String attachment;

    @Schema(description = "推广附件")
    private String promoteList;

    @Schema(description = "营业执照有效期")
    private DateTime expireTime;

    @Schema(description = "店铺名称")
    private String storeName;

    @Schema(description = "企业类型")
    private String companyType;

    @Schema(description = "经营类型")
    private String businessType;

    @Schema(description = "相关资质名称及附件")
    private String related;

    @Schema(description = "店铺id")
    private Long storeId;

    @Schema(description = "证件信息")
    private String idCard;

    @Schema(description = "负责人证件类型")
    private String idCardType;

    @Schema(description = "证件图片")
    private String certificate;

    @Schema(description = "负责人姓名")
    private String personName;

    @Schema(description = "负责人手机号")
    private String personPhone;

    @Schema(description = "银行卡类型")
    private String bankCardType;

    @Schema(description = "开户行全称")
    private String bankName;

    @Schema(description = "开户行账号")
    private String bankCard;

    @Schema(description = "开户行预留手机号")
    private String bankPhone;

    @Schema(description = "用户名")
    private String username;

    @Schema(description = "用户密码")
    private String password;

    @Schema(description = "联系人")
    private String contactUserName;

    @Schema(description = "联系人手机号")
    private String contactUserPhone;

    @Schema(description = "企业套餐")
    private String packageId;

    @Schema(description = "备注")
    private String remark;

    @Schema(description = "邀请人")
    private Long inviteUserId;

    @Schema(description = "签约日期")
    private LocalDateTime signDate;

    @Schema(description = "分成比例")
    private String splitRatio;

    @Schema(description = "签约人")
    private Long signer;

    @Schema(description = "合同年限")
    private String contractYear;

    @Schema(description = "签约附件")
    private String contractAttachment;

    @Schema(description = "签约状态(0.待审核1.有效 2.无效 3.编辑 4.过期)")
    private String signStatus;

    @Schema(description = "易生分配的商户编码")
    private String mchtCode;

}
