package com.yc.ship.module.ota.api.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

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


/**
 * 分销商 Distributor 信息 Response DTO
 */
@Schema(description = "RPC 服务 - Distributor 分销商 Response DTO")
@Data
public class DistributorRespDTO {

    @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "9072")
    private Long id;

    @Schema(description = "是否启用")
    private Integer isUse;

    @Schema(description = "经销类型", example = "2")
    private Integer type;

    @Schema(description = "结算方式", example = "2")
    private String payType;

    @Schema(description = "分销商类型", example = "23448")
    private Long otaTypeId;

    @Schema(description = "全称", example = "王五")
    private String name;

    @Schema(description = "简称", example = "张三")
    private String shortName;

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

    @Schema(description = "联系电话")
    private String contactPhone;

    @Schema(description = "开始使用时间")
    private LocalDateTime startTime;

    @Schema(description = "结束使用时间")
    private LocalDateTime stopTime;

    @Schema(description = "是否自营")
    private Integer selfSupport;

    @Schema(description = "创建时间")
    private LocalDateTime createTime;

    @Schema(description = "登录账户所在租户号")
    private Long accountTenantId;

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

    @Schema(description = "分销商IP")
    private String otaIp;

    @Schema(description = "AppId", example = "6830")
    private String appid;

    @Schema(description = "Secret")
    private String secret;

    @Schema(description = "分销商帐号：我方分配给分销商的帐号，区别于appid、appid为分销商分配给我们的帐号")
    private String otaAccount;

    @Schema(description = "服务地址", example = "https://www.iocoder.cn")
    private String serverUrl;

    @Schema(description = "是否开启退票审核")
    private Integer canRefundExamine;

    private String aesSecret;

    private String aesVector;

    private String md5Secret;
    @Schema(description = "余额")
    private BigDecimal balance;
    @Schema(description = "类型编码")
    private String typeCode;
    @Schema(description = "单位地址")
    private String unitAddress;
    @Schema(description = "开户银行")
    private String depositBank;
    @Schema(description = "银行账户")
    private String bankAccount;
    @Schema(description = "税号")
    private String accountNumber;
    @Schema(description = "电话")
    private String phone;
    @Schema(description = "邮箱")
    private String email;
    @Schema(description = "授信额度")
    private BigDecimal payCredit;
    @Schema(description = "支付超时时间")
    private Integer payTimeOut;
    @Schema(description = "已用授信额度")
    private BigDecimal surplus;


}
