package com.bocloud.cmp.model;

import com.alibaba.fastjson.JSONArray;
import lombok.Data;

import java.util.Date;
import java.util.List;

@Data
public class LbModel {
    private String name;
    private String lbUuid;
    private String remark;
    private Integer feeType;
    private String subnetUuid;
    private String lbMethod;
    private Integer port;
    private String protocol;
    private String listenProtocol;
    private String tenantUuid;
    private String vipAddress;
    private String vipPortUuid;
    private String vipSubnetUuid;
    private Boolean adminStateUp;
    private List<String> listeners;// 监听器
    private List<String> lbPoolUuids;// 监听器
    private String provisioningStatus;// 准备状态
    private String operatingStatus;// 操作状态
    private String provider;
    private List<LbListenerModel> models;
    private String loadBalancerType; // 负载均衡实例的网络类型： OPEN：公网属性， INTERNAL：内网属性。
    private String vpcUuid;
    private String loadBalancerVips;
    private String status;
    private Date createTime;
    private Integer forward; // 负载均衡实例。1：应用型，0：传统型，默认为应用型负载均衡实例。
    private String regionId;
    private String log;
    private String domain;
    private Integer isolation;
    private Boolean snat;

    private String scheme; // internet-facing;internal;
    private String ipAddressType; // dualstack;ipv4
    private JSONArray availabilityZones;
    private List<String> securityGroups;

    private String spec;
    private String resourceGroupUuid;// 资源组id
    private String networkType;
    private String deleteProtection;
    private List<TagModel> tagModels;
    private String internetChargeType; // 公网计费方式
    private Long broadbandValue;// 公网宽带值

    private String modificationProtection;// 配置修改保护状态
    private String modificationProtectionReason;// 配置修改保护描述
    
    private String elasticIpUuid;
    private String afterSubnetUuid;// 后端子网

    //此处字段暂时火山云用到
    private String elasticIpAddress;// 浮动IP
    private String eipUuid; //浮动ip uuid
    private String networkCardUuid; //网卡uuid 只有在查询负载均衡时才能得到关联网卡，此处需要另做处理
    private Date expiredTime;//过期时间
    private String fipBillingType;//公网IP的付费方式。取值：● 2：按量计费（默认值）。
    private String ISP; //公网负载均衡实例的公网IP线路类型
}
