com.huaweicloud.sdk.iotdm.v5.model.ChangeInstanceChargeMode Maven / Gradle / Ivy
package com.huaweicloud.sdk.iotdm.v5.model;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.Objects;
/**
* ChangeInstanceChargeMode
*/
public class ChangeInstanceChargeMode {
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "period_type")
private String periodType;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "period_num")
private Integer periodNum;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "is_auto_renew")
private Boolean isAutoRenew;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonProperty(value = "is_auto_pay")
private Boolean isAutoPay;
public ChangeInstanceChargeMode withPeriodType(String periodType) {
this.periodType = periodType;
return this;
}
/**
* **参数说明**:订购设备接入实例的周期类型(包年、包月等)。charge_mode为prePaid时生效,且为必选值。 **取值范围**: - month:包月 - year:包年
* @return periodType
*/
public String getPeriodType() {
return periodType;
}
public void setPeriodType(String periodType) {
this.periodType = periodType;
}
public ChangeInstanceChargeMode withPeriodNum(Integer periodNum) {
this.periodNum = periodNum;
return this;
}
/**
* **参数说明**:订购设备接入实例的周期数。charge_mode为prePaid时生效,且为必选值。 **取值范围**:period_type=month(周期类型为月)时,取值为[1,9];period_type=year(周期类型为年)时,取值为[1,3]\"
* minimum: 1
* maximum: 9
* @return periodNum
*/
public Integer getPeriodNum() {
return periodNum;
}
public void setPeriodNum(Integer periodNum) {
this.periodNum = periodNum;
}
public ChangeInstanceChargeMode withIsAutoRenew(Boolean isAutoRenew) {
this.isAutoRenew = isAutoRenew;
return this;
}
/**
* **参数说明**:创建包年/包月实例时可指定,表示是否自动续订,续订的周期和原周期相同,且续订时会自动支付。 **取值范围**: - true:自动续订 - false:默认值,不自动续订
* @return isAutoRenew
*/
public Boolean getIsAutoRenew() {
return isAutoRenew;
}
public void setIsAutoRenew(Boolean isAutoRenew) {
this.isAutoRenew = isAutoRenew;
}
public ChangeInstanceChargeMode withIsAutoPay(Boolean isAutoPay) {
this.isAutoPay = isAutoPay;
return this;
}
/**
* **参数说明**:创建包年/包月实例时可指定,表示是否自动从客户的账户中支付,此字段不影响自动续订的支付方式。 **取值范围**:true - 自动支付,从账户余额自动扣费; false - 默认值,只提交订单不支付。[需要客户参考[\"支付包年/包月产品订单\"](https://support.huaweicloud.com/api-bpconsole/api_order_00016.html#section0)进行支付,或者在华为云官网页面使用进行支付。](tag:hws)
* @return isAutoPay
*/
public Boolean getIsAutoPay() {
return isAutoPay;
}
public void setIsAutoPay(Boolean isAutoPay) {
this.isAutoPay = isAutoPay;
}
@Override
public boolean equals(java.lang.Object obj) {
if (this == obj) {
return true;
}
if (obj == null || getClass() != obj.getClass()) {
return false;
}
ChangeInstanceChargeMode that = (ChangeInstanceChargeMode) obj;
return Objects.equals(this.periodType, that.periodType) && Objects.equals(this.periodNum, that.periodNum)
&& Objects.equals(this.isAutoRenew, that.isAutoRenew) && Objects.equals(this.isAutoPay, that.isAutoPay);
}
@Override
public int hashCode() {
return Objects.hash(periodType, periodNum, isAutoRenew, isAutoPay);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class ChangeInstanceChargeMode {\n");
sb.append(" periodType: ").append(toIndentedString(periodType)).append("\n");
sb.append(" periodNum: ").append(toIndentedString(periodNum)).append("\n");
sb.append(" isAutoRenew: ").append(toIndentedString(isAutoRenew)).append("\n");
sb.append(" isAutoPay: ").append(toIndentedString(isAutoPay)).append("\n");
sb.append("}");
return sb.toString();
}
/**
* Convert the given object to string with each line indented by 4 spaces
* (except the first line).
*/
private String toIndentedString(java.lang.Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}
}