Files
Sipro-Marketplaces/pkg/api/yandex/ymclient/model_tariff_dto.go
2025-08-15 11:10:28 +03:00

298 lines
7.4 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
API Яндекс Маркета для продавцов
API Яндекс Маркета помогает продавцам автоматизировать и упростить работу с маркетплейсом. В числе возможностей интеграции: * управление каталогом товаров и витриной, * обработка заказов, * изменение настроек магазина, * получение отчетов.
API version: LATEST
*/
// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
package ymclient
import (
"encoding/json"
"fmt"
)
// checks if the TariffDTO type satisfies the MappedNullable interface at compile time
var _ MappedNullable = &TariffDTO{}
// TariffDTO Информация о тарифах, по которым нужно заплатить за услуги Маркета.
type TariffDTO struct {
Type TariffType `json:"type"`
// Значение тарифа в процентах.
// Deprecated
Percent *float32 `json:"percent,omitempty"`
// Значение тарифа.
Amount float32 `json:"amount"`
Currency CurrencyType `json:"currency"`
// Параметры расчета тарифа.
Parameters []TariffParameterDTO `json:"parameters"`
AdditionalProperties map[string]interface{}
}
type _TariffDTO TariffDTO
// NewTariffDTO instantiates a new TariffDTO object
// This constructor will assign default values to properties that have it defined,
// and makes sure properties required by API are set, but the set of arguments
// will change when the set of required properties is changed
func NewTariffDTO(type_ TariffType, amount float32, currency CurrencyType, parameters []TariffParameterDTO) *TariffDTO {
this := TariffDTO{}
this.Type = type_
this.Amount = amount
this.Currency = currency
this.Parameters = parameters
return &this
}
// NewTariffDTOWithDefaults instantiates a new TariffDTO object
// This constructor will only assign default values to properties that have it defined,
// but it doesn't guarantee that properties required by API are set
func NewTariffDTOWithDefaults() *TariffDTO {
this := TariffDTO{}
return &this
}
// GetType returns the Type field value
func (o *TariffDTO) GetType() TariffType {
if o == nil {
var ret TariffType
return ret
}
return o.Type
}
// GetTypeOk returns a tuple with the Type field value
// and a boolean to check if the value has been set.
func (o *TariffDTO) GetTypeOk() (*TariffType, bool) {
if o == nil {
return nil, false
}
return &o.Type, true
}
// SetType sets field value
func (o *TariffDTO) SetType(v TariffType) {
o.Type = v
}
// GetPercent returns the Percent field value if set, zero value otherwise.
// Deprecated
func (o *TariffDTO) GetPercent() float32 {
if o == nil || IsNil(o.Percent) {
var ret float32
return ret
}
return *o.Percent
}
// GetPercentOk returns a tuple with the Percent field value if set, nil otherwise
// and a boolean to check if the value has been set.
// Deprecated
func (o *TariffDTO) GetPercentOk() (*float32, bool) {
if o == nil || IsNil(o.Percent) {
return nil, false
}
return o.Percent, true
}
// HasPercent returns a boolean if a field has been set.
func (o *TariffDTO) HasPercent() bool {
if o != nil && !IsNil(o.Percent) {
return true
}
return false
}
// SetPercent gets a reference to the given float32 and assigns it to the Percent field.
// Deprecated
func (o *TariffDTO) SetPercent(v float32) {
o.Percent = &v
}
// GetAmount returns the Amount field value
func (o *TariffDTO) GetAmount() float32 {
if o == nil {
var ret float32
return ret
}
return o.Amount
}
// GetAmountOk returns a tuple with the Amount field value
// and a boolean to check if the value has been set.
func (o *TariffDTO) GetAmountOk() (*float32, bool) {
if o == nil {
return nil, false
}
return &o.Amount, true
}
// SetAmount sets field value
func (o *TariffDTO) SetAmount(v float32) {
o.Amount = v
}
// GetCurrency returns the Currency field value
func (o *TariffDTO) GetCurrency() CurrencyType {
if o == nil {
var ret CurrencyType
return ret
}
return o.Currency
}
// GetCurrencyOk returns a tuple with the Currency field value
// and a boolean to check if the value has been set.
func (o *TariffDTO) GetCurrencyOk() (*CurrencyType, bool) {
if o == nil {
return nil, false
}
return &o.Currency, true
}
// SetCurrency sets field value
func (o *TariffDTO) SetCurrency(v CurrencyType) {
o.Currency = v
}
// GetParameters returns the Parameters field value
func (o *TariffDTO) GetParameters() []TariffParameterDTO {
if o == nil {
var ret []TariffParameterDTO
return ret
}
return o.Parameters
}
// GetParametersOk returns a tuple with the Parameters field value
// and a boolean to check if the value has been set.
func (o *TariffDTO) GetParametersOk() ([]TariffParameterDTO, bool) {
if o == nil {
return nil, false
}
return o.Parameters, true
}
// SetParameters sets field value
func (o *TariffDTO) SetParameters(v []TariffParameterDTO) {
o.Parameters = v
}
func (o TariffDTO) MarshalJSON() ([]byte, error) {
toSerialize, err := o.ToMap()
if err != nil {
return []byte{}, err
}
return json.Marshal(toSerialize)
}
func (o TariffDTO) ToMap() (map[string]interface{}, error) {
toSerialize := map[string]interface{}{}
toSerialize["type"] = o.Type
if !IsNil(o.Percent) {
toSerialize["percent"] = o.Percent
}
toSerialize["amount"] = o.Amount
toSerialize["currency"] = o.Currency
toSerialize["parameters"] = o.Parameters
for key, value := range o.AdditionalProperties {
toSerialize[key] = value
}
return toSerialize, nil
}
func (o *TariffDTO) UnmarshalJSON(data []byte) (err error) {
// This validates that all required properties are included in the JSON object
// by unmarshalling the object into a generic map with string keys and checking
// that every required field exists as a key in the generic map.
requiredProperties := []string{
"type",
"amount",
"currency",
"parameters",
}
allProperties := make(map[string]interface{})
err = json.Unmarshal(data, &allProperties)
if err != nil {
return err
}
for _, requiredProperty := range requiredProperties {
if _, exists := allProperties[requiredProperty]; !exists {
return fmt.Errorf("no value given for required property %v", requiredProperty)
}
}
varTariffDTO := _TariffDTO{}
err = json.Unmarshal(data, &varTariffDTO)
if err != nil {
return err
}
*o = TariffDTO(varTariffDTO)
additionalProperties := make(map[string]interface{})
if err = json.Unmarshal(data, &additionalProperties); err == nil {
delete(additionalProperties, "type")
delete(additionalProperties, "percent")
delete(additionalProperties, "amount")
delete(additionalProperties, "currency")
delete(additionalProperties, "parameters")
o.AdditionalProperties = additionalProperties
}
return err
}
type NullableTariffDTO struct {
value *TariffDTO
isSet bool
}
func (v NullableTariffDTO) Get() *TariffDTO {
return v.value
}
func (v *NullableTariffDTO) Set(val *TariffDTO) {
v.value = val
v.isSet = true
}
func (v NullableTariffDTO) IsSet() bool {
return v.isSet
}
func (v *NullableTariffDTO) Unset() {
v.value = nil
v.isSet = false
}
func NewNullableTariffDTO(val *TariffDTO) *NullableTariffDTO {
return &NullableTariffDTO{value: val, isSet: true}
}
func (v NullableTariffDTO) MarshalJSON() ([]byte, error) {
return json.Marshal(v.value)
}
func (v *NullableTariffDTO) UnmarshalJSON(src []byte) error {
v.isSet = true
return json.Unmarshal(src, &v.value)
}