From 0ecad4525b21f7014534fe5ef30e2c6edb88f9fa Mon Sep 17 00:00:00 2001 From: baros6647 Date: Tue, 7 Apr 2026 22:30:53 -0400 Subject: [PATCH] Orders v2026-01-01 --- Source/FikaAmazonAPI/AmazonConnection.cs | 3 + .../Models/OrdersV20260101/Address.cs | 350 ++++++++++++++++ .../OrdersV20260101/AddressExtendedFields.cs | 167 ++++++++ .../Models/OrdersV20260101/AddressTypeEnum.cs | 36 ++ .../Models/OrdersV20260101/AliasTypeEnum.cs | 24 ++ .../Models/OrdersV20260101/AssociatedOrder.cs | 133 ++++++ .../Models/OrdersV20260101/BusinessHour.cs | 134 +++++++ .../Models/OrdersV20260101/Buyer.cs | 167 ++++++++ .../Models/OrdersV20260101/Cancellation.cs | 116 ++++++ .../OrdersV20260101/CancellationRequest.cs | 133 ++++++ .../CancellationRequesterEnum.cs | 25 ++ .../Models/OrdersV20260101/ChannelTypeEnum.cs | 29 ++ .../Models/OrdersV20260101/Condition.cs | 151 +++++++ .../OrdersV20260101/ConditionSubtypeEnum.cs | 101 +++++ .../OrdersV20260101/ConditionTypeEnum.cs | 53 +++ .../Models/OrdersV20260101/DayOfWeekEnum.cs | 60 +++ .../OrdersV20260101/DeliveryPreference.cs | 170 ++++++++ .../Models/OrdersV20260101/DeliveryTime.cs | 135 +++++++ .../Models/OrdersV20260101/DeliveryWindow.cs | 136 +++++++ .../OrdersV20260101/EnforcementLevelEnum.cs | 25 ++ .../Models/OrdersV20260101/ExceptionDate.cs | 153 +++++++ .../OrdersV20260101/ExceptionDateTypeEnum.cs | 31 ++ .../Models/OrdersV20260101/Expense.cs | 117 ++++++ .../Models/OrdersV20260101/FulfilledByEnum.cs | 30 ++ .../FulfillmentServiceLevelEnum.cs | 66 +++ .../OrdersV20260101/FulfillmentStatusEnum.cs | 63 +++ .../OrdersV20260101/GetOrderResponse.cs | 122 ++++++ .../Models/OrdersV20260101/GiftOption.cs | 133 ++++++ .../OrdersV20260101/IncludedDataEnum.cs | 67 ++++ .../OrdersV20260101/InternationalShipping.cs | 116 ++++++ .../Models/OrdersV20260101/Measurement.cs | 148 +++++++ .../Models/OrdersV20260101/Money.cs | 143 +++++++ .../Models/OrdersV20260101/Order.cs | 379 ++++++++++++++++++ .../Models/OrdersV20260101/OrderAliase.cs | 148 +++++++ .../OrderAssociationTypeEnum.cs | 30 ++ .../OrdersV20260101/OrderFulfillment.cs | 189 +++++++++ .../Models/OrdersV20260101/OrderItem.cs | 307 ++++++++++++++ .../OrdersV20260101/OrderItemCustomization.cs | 116 ++++++ .../OrdersV20260101/OrderItemFulfillment.cs | 189 +++++++++ .../OrdersV20260101/OrderItemProceeds.cs | 133 ++++++ .../OrderItemProceedsBreakdown.cs | 152 +++++++ .../OrderItemProceedsDetailedBreakdown.cs | 132 ++++++ .../OrdersV20260101/OrderItemProgramEnum.cs | 31 ++ .../Models/OrdersV20260101/OrderProceeds.cs | 115 ++++++ .../Models/OrdersV20260101/Package.cs | 271 +++++++++++++ .../PackageDetailedStatusEnum.cs | 115 ++++++ .../Models/OrdersV20260101/PackageItem.cs | 173 ++++++++ .../Models/OrdersV20260101/PackageStatus.cs | 136 +++++++ .../OrdersV20260101/PackageStatusEnum.cs | 56 +++ .../Models/OrdersV20260101/Packing.cs | 116 ++++++ .../Models/OrdersV20260101/Pagination.cs | 129 ++++++ .../Models/OrdersV20260101/Picking.cs | 116 ++++++ .../Models/OrdersV20260101/PointsCost.cs | 116 ++++++ .../Models/OrdersV20260101/PointsGranted.cs | 132 ++++++ .../Models/OrdersV20260101/Price.cs | 132 ++++++ .../OrdersV20260101/PriceDesignationEnum.cs | 24 ++ .../ProceedsBreakdownSubtypeEnum.cs | 54 +++ .../ProceedsBreakdownTypeEnum.cs | 60 +++ .../Models/OrdersV20260101/Product.cs | 224 +++++++++++ .../Models/OrdersV20260101/ProgramEnum.cs | 78 ++++ .../Models/OrdersV20260101/Promotion.cs | 116 ++++++ .../OrdersV20260101/PromotionBreakdown.cs | 116 ++++++ .../Models/OrdersV20260101/Recipient.cs | 130 ++++++ .../Models/OrdersV20260101/SalesChannel.cs | 161 ++++++++ .../OrdersV20260101/SearchOrdersResponse.cs | 174 ++++++++ .../Models/OrdersV20260101/Shipping.cs | 156 +++++++ .../OrdersV20260101/ShippingConstraints.cs | 190 +++++++++ .../OrdersV20260101/SubstitutionOption.cs | 190 +++++++++ .../OrdersV20260101/SubstitutionPreference.cs | 134 +++++++ .../OrdersV20260101/SubstitutionTypeEnum.cs | 36 ++ .../Models/OrdersV20260101/Time.cs | 134 +++++++ .../Models/OrdersV20260101/TimeWindow.cs | 135 +++++++ .../Models/OrdersV20260101/UnitEnum.cs | 162 ++++++++ .../Order/V20260101/ParameterGetOrder.cs | 28 ++ .../Order/V20260101/ParameterSearchOrders.cs | 80 ++++ Source/FikaAmazonAPI/Services/ApiUrls.cs | 9 + .../Services/OrderServiceV20260101.cs | 86 ++++ Source/FikaAmazonAPI/Utils/RateLimitType.cs | 2 + .../Utils/RateLimitsDefinitions.cs | 2 + 79 files changed, 9231 insertions(+) create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Address.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AddressExtendedFields.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AddressTypeEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AliasTypeEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AssociatedOrder.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/BusinessHour.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Buyer.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Cancellation.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/CancellationRequest.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/CancellationRequesterEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ChannelTypeEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Condition.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ConditionSubtypeEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ConditionTypeEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DayOfWeekEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DeliveryPreference.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DeliveryTime.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DeliveryWindow.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/EnforcementLevelEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ExceptionDate.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ExceptionDateTypeEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Expense.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/FulfilledByEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/FulfillmentServiceLevelEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/FulfillmentStatusEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/GetOrderResponse.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/GiftOption.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/IncludedDataEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/InternationalShipping.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Measurement.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Money.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Order.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderAliase.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderAssociationTypeEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderFulfillment.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItem.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemCustomization.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemFulfillment.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProceeds.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProceedsBreakdown.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProceedsDetailedBreakdown.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProgramEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderProceeds.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Package.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageDetailedStatusEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageItem.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageStatus.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageStatusEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Packing.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Pagination.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Picking.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PointsCost.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PointsGranted.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Price.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PriceDesignationEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ProceedsBreakdownSubtypeEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ProceedsBreakdownTypeEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Product.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ProgramEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Promotion.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PromotionBreakdown.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Recipient.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SalesChannel.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SearchOrdersResponse.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Shipping.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ShippingConstraints.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SubstitutionOption.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SubstitutionPreference.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SubstitutionTypeEnum.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Time.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/TimeWindow.cs create mode 100644 Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/UnitEnum.cs create mode 100644 Source/FikaAmazonAPI/Parameter/Order/V20260101/ParameterGetOrder.cs create mode 100644 Source/FikaAmazonAPI/Parameter/Order/V20260101/ParameterSearchOrders.cs create mode 100644 Source/FikaAmazonAPI/Services/OrderServiceV20260101.cs diff --git a/Source/FikaAmazonAPI/AmazonConnection.cs b/Source/FikaAmazonAPI/AmazonConnection.cs index 6e66c8a9..da058e60 100644 --- a/Source/FikaAmazonAPI/AmazonConnection.cs +++ b/Source/FikaAmazonAPI/AmazonConnection.cs @@ -16,6 +16,7 @@ public class AmazonConnection private AmazonCredential Credentials { get; set; } public AppIntegrationsServiceV20240401 AppIntegrationsServiceV20240401 => this._AppIntegrationsServiceV20240401 ?? throw _NoCredentials; public OrderService Orders => this._Orders ?? throw _NoCredentials; + public OrderServiceV20260101 OrdersV20260101 => this._OrdersV20260101 ?? throw _NoCredentials; public ReportService Reports => this._Reports ?? throw _NoCredentials; public SolicitationService Solicitations => this._Solicitations ?? throw _NoCredentials; public FinancialService Financial => this._Financials ?? throw _NoCredentials; @@ -57,6 +58,7 @@ public class AmazonConnection private AppIntegrationsServiceV20240401 _AppIntegrationsServiceV20240401 { get; set; } private OrderService _Orders { get; set; } + private OrderServiceV20260101 _OrdersV20260101 { get; set; } private ReportService _Reports { get; set; } private SolicitationService _Solicitations { get; set; } private FinancialService _Financials { get; set; } @@ -123,6 +125,7 @@ private void Init(AmazonCredential Credentials) this._Authorization = new AuthorizationService(this.Credentials, _loggerFactory); this._AppIntegrationsServiceV20240401 = new AppIntegrationsServiceV20240401(this.Credentials, _loggerFactory); this._Orders = new OrderService(this.Credentials, _loggerFactory); + this._OrdersV20260101 = new OrderServiceV20260101(this.Credentials, _loggerFactory); this._Reports = new ReportService(this.Credentials, _loggerFactory); this._Solicitations = new SolicitationService(this.Credentials, _loggerFactory); this._Financials = new FinancialService(this.Credentials, _loggerFactory); diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Address.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Address.cs new file mode 100644 index 00000000..b55042f6 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Address.cs @@ -0,0 +1,350 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Address + /// + [DataContract] + public partial class Address : IEquatable
, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public Address() { } + + /// + /// Initializes a new instance of the class. + /// + /// The full name of the person who will receive the delivery at this address. + /// The name of the business or organization at this address. + /// The primary street address. + /// Additional address information. + /// Additional address information. + /// The city of the address. + /// The district or county of the address. + /// The state, province, or region of the address. + /// The municipality of the address. + /// The postal code, ZIP code, or equivalent mailing code of the address. + /// The two-letter country code identifying the country of the address, in ISO 3166-1 format. + /// The contact phone number for delivery coordination and customer communication. + /// Additional address components that provide more detailed location information, helping with precise delivery routing. + /// The type of location. + public Address(string name = default, + string companyName = default, + string addressLine1 = default, + string addressLine2 = default, + string addressLine3 = default, + string city = default, + string districtOrCounty = default, + string stateOrRegion = default, + string municipality = default, + string postalCode = default, + string countryCode = default, + string phone = default, + AddressExtendedFields extendedFields = default, + AddressTypeEnum? addressType = default) + { + + this.Name = name; + this.CompanyName = companyName; + this.AddressLine1 = addressLine1; + this.AddressLine2 = addressLine2; + this.AddressLine3 = addressLine3; + this.City = city; + this.DistrictOrCounty = districtOrCounty; + this.StateOrRegion = stateOrRegion; + this.Municipality = municipality; + this.PostalCode = postalCode; + this.CountryCode = countryCode; + this.Phone = phone; + this.ExtendedFields = extendedFields; + this.AddressType = addressType; + } + + /// + /// The full name of the person who will receive the delivery at this address. + /// + /// The full name of the person who will receive the delivery at this address. + [DataMember(Name = "name", EmitDefaultValue = false)] + public string Name { get; set; } + + /// + /// The name of the business or organization at this address. + /// + /// The name of the business or organization at this address. + [DataMember(Name = "companyName", EmitDefaultValue = false)] + public string CompanyName { get; set; } + + /// + /// The primary street address. + /// + /// The primary street address. + [DataMember(Name = "addressLine1", EmitDefaultValue = false)] + public string AddressLine1 { get; set; } + + /// + /// Additional address information. + /// + /// Additional address information. + [DataMember(Name = "addressLine2", EmitDefaultValue = false)] + public string AddressLine2 { get; set; } + + /// + /// Additional address information. + /// + /// Additional address information. + [DataMember(Name = "addressLine3", EmitDefaultValue = false)] + public string AddressLine3 { get; set; } + + /// + /// The city of the address. + /// + /// The city of the address. + [DataMember(Name = "city", EmitDefaultValue = false)] + public string City { get; set; } + + /// + /// The district or county of the address. + /// + /// The district or county of the address. + [DataMember(Name = "districtOrCounty", EmitDefaultValue = false)] + public string DistrictOrCounty { get; set; } + + /// + /// The state, province, or region of the address. + /// + /// The state, province, or region of the address. + [DataMember(Name = "stateOrRegion", EmitDefaultValue = false)] + public string StateOrRegion { get; set; } + + /// + /// The municipality of the address. + /// + /// The municipality of the address. + [DataMember(Name = "municipality", EmitDefaultValue = false)] + public string Municipality { get; set; } + + /// + /// The postal code, ZIP code, or equivalent mailing code of the address. + /// + /// The postal code, ZIP code, or equivalent mailing code of the address. + [DataMember(Name = "postalCode", EmitDefaultValue = false)] + public string PostalCode { get; set; } + + /// + /// The two-letter country code identifying the country of the address, in ISO 3166-1 format. + /// + /// The two-letter country code identifying the country of the address, in ISO 3166-1 format. + [DataMember(Name = "countryCode", EmitDefaultValue = false)] + public string CountryCode { get; set; } + + /// + /// The contact phone number for delivery coordination and customer communication. + /// + /// The contact phone number for delivery coordination and customer communication. + [DataMember(Name = "phone", EmitDefaultValue = false)] + public string Phone { get; set; } + + /// + /// Additional address components that provide more detailed location information, helping with precise delivery routing. + /// + /// Additional address components that provide more detailed location information, helping with precise delivery routing. + [DataMember(Name = "extendedFields", EmitDefaultValue = false)] + public AddressExtendedFields ExtendedFields { get; set; } + + /// + /// The type of location. Possible values: RESIDENTIAL, COMMERCIAL, PICKUP_POINT + /// + /// The type of location. Possible values: RESIDENTIAL, COMMERCIAL, PICKUP_POINT + [DataMember(Name = "addressType", EmitDefaultValue = false)] + public AddressTypeEnum? AddressType { get; set; } + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Address {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" CompanyName: ").Append(CompanyName).Append("\n"); + sb.Append(" AddressLine1: ").Append(AddressLine1).Append("\n"); + sb.Append(" AddressLine2: ").Append(AddressLine2).Append("\n"); + sb.Append(" AddressLine3: ").Append(AddressLine3).Append("\n"); + sb.Append(" City: ").Append(City).Append("\n"); + sb.Append(" DistrictOrCounty: ").Append(DistrictOrCounty).Append("\n"); + sb.Append(" StateOrRegion: ").Append(StateOrRegion).Append("\n"); + sb.Append(" Municipality: ").Append(Municipality).Append("\n"); + sb.Append(" PostalCode: ").Append(PostalCode).Append("\n"); + sb.Append(" CountryCode: ").Append(CountryCode).Append("\n"); + sb.Append(" Phone: ").Append(Phone).Append("\n"); + sb.Append(" ExtendedFields: ").Append(ExtendedFields).Append("\n"); + sb.Append(" AddressType: ").Append(AddressType).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Address); + } + + /// + /// Returns true if Address instances are equal + /// + /// Instance of Address to be compared + /// Boolean + public bool Equals(Address input) + { + if (input == null) + return false; + + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ) && + ( + this.CompanyName == input.CompanyName || + (this.CompanyName != null && + this.CompanyName.Equals(input.CompanyName)) + ) && + ( + this.AddressLine1 == input.AddressLine1 || + (this.AddressLine1 != null && + this.AddressLine1.Equals(input.AddressLine1)) + ) && + ( + this.AddressLine2 == input.AddressLine2 || + (this.AddressLine2 != null && + this.AddressLine2.Equals(input.AddressLine2)) + ) && + ( + this.AddressLine3 == input.AddressLine3 || + (this.AddressLine3 != null && + this.AddressLine3.Equals(input.AddressLine3)) + ) && + ( + this.City == input.City || + (this.City != null && + this.City.Equals(input.City)) + ) && + ( + this.DistrictOrCounty == input.DistrictOrCounty || + (this.DistrictOrCounty != null && + this.DistrictOrCounty.Equals(input.DistrictOrCounty)) + ) && + ( + this.StateOrRegion == input.StateOrRegion || + (this.StateOrRegion != null && + this.StateOrRegion.Equals(input.StateOrRegion)) + ) && + ( + this.Municipality == input.Municipality || + (this.Municipality != null && + this.Municipality.Equals(input.Municipality)) + ) && + ( + this.PostalCode == input.PostalCode || + (this.PostalCode != null && + this.PostalCode.Equals(input.PostalCode)) + ) && + ( + this.CountryCode == input.CountryCode || + (this.CountryCode != null && + this.CountryCode.Equals(input.CountryCode)) + ) && + ( + this.Phone == input.Phone || + (this.Phone != null && + this.Phone.Equals(input.Phone)) + ) && + ( + this.ExtendedFields == input.ExtendedFields || + (this.ExtendedFields != null && + this.ExtendedFields.Equals(input.ExtendedFields)) + ) && + ( + this.AddressType == input.AddressType || + (this.AddressType != null && + this.AddressType.Equals(input.AddressType)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + hashCode = hashCode * 59 + this.Name.GetHashCode(); + if (this.CompanyName != null) + hashCode = hashCode * 59 + this.CompanyName.GetHashCode(); + if (this.AddressLine1 != null) + hashCode = hashCode * 59 + this.AddressLine1.GetHashCode(); + if (this.AddressLine2 != null) + hashCode = hashCode * 59 + this.AddressLine2.GetHashCode(); + if (this.AddressLine3 != null) + hashCode = hashCode * 59 + this.AddressLine3.GetHashCode(); + if (this.City != null) + hashCode = hashCode * 59 + this.City.GetHashCode(); + if (this.DistrictOrCounty != null) + hashCode = hashCode * 59 + this.DistrictOrCounty.GetHashCode(); + if (this.StateOrRegion != null) + hashCode = hashCode * 59 + this.StateOrRegion.GetHashCode(); + if (this.Municipality != null) + hashCode = hashCode * 59 + this.Municipality.GetHashCode(); + if (this.PostalCode != null) + hashCode = hashCode * 59 + this.PostalCode.GetHashCode(); + if (this.CountryCode != null) + hashCode = hashCode * 59 + this.CountryCode.GetHashCode(); + if (this.Phone != null) + hashCode = hashCode * 59 + this.Phone.GetHashCode(); + if (this.ExtendedFields != null) + hashCode = hashCode * 59 + this.ExtendedFields.GetHashCode(); + if (this.AddressType != null) + hashCode = hashCode * 59 + this.AddressType.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AddressExtendedFields.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AddressExtendedFields.cs new file mode 100644 index 00000000..0fe7f02c --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AddressExtendedFields.cs @@ -0,0 +1,167 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Additional address components that provide more detailed location information, helping with precise delivery routing. + /// + [DataContract] + public partial class AddressExtendedFields : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public AddressExtendedFields() { } + + /// + /// Initializes a new instance of the class. + /// + /// The name of the street. + /// The house, building, or property number associated with the location's street address. + /// The floor number / unit number. + /// The neighborhood. This value is only used in some countries (such as Brazil). + public AddressExtendedFields(string streetName = default, + string streetNumber = default, + string complement = default, + string neighborhood = default) + { + this.StreetName = streetName; + this.StreetNumber = streetNumber; + this.Complement = complement; + this.Neighborhood = neighborhood; + } + + /// + /// The name of the street. + /// + /// The name of the street. + [DataMember(Name = "streetName", EmitDefaultValue = false)] + public string StreetName { get; set; } + + /// + /// The house, building, or property number associated with the location's street address. + /// + /// The house, building, or property number associated with the location's street address. + [DataMember(Name = "streetNumber", EmitDefaultValue = false)] + public string StreetNumber { get; set; } + + /// + /// The floor number / unit number. + /// + /// The floor number / unit number. + [DataMember(Name = "complement", EmitDefaultValue = false)] + public string Complement { get; set; } + + /// + /// The neighborhood. This value is only used in some countries (such as Brazil). + /// + /// The neighborhood. This value is only used in some countries (such as Brazil). + [DataMember(Name = "neighborhood", EmitDefaultValue = false)] + public string Neighborhood { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AddressExtendedFields {\n"); + sb.Append(" StreetName: ").Append(StreetName).Append("\n"); + sb.Append(" StreetNumber: ").Append(StreetNumber).Append("\n"); + sb.Append(" Complement: ").Append(Complement).Append("\n"); + sb.Append(" Neighborhood: ").Append(Neighborhood).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as AddressExtendedFields); + } + + /// + /// Returns true if AddressExtendedFields instances are equal + /// + /// Instance of AddressExtendedFields to be compared + /// Boolean + public bool Equals(AddressExtendedFields input) + { + if (input == null) + return false; + + return + ( + this.StreetName == input.StreetName || + (this.StreetName != null && + this.StreetName.Equals(input.StreetName)) + ) && + ( + this.StreetNumber == input.StreetNumber || + (this.StreetNumber != null && + this.StreetNumber.Equals(input.StreetNumber)) + ) && + ( + this.Complement == input.Complement || + (this.Complement != null && + this.Complement.Equals(input.Complement)) + ) && + ( + this.Neighborhood == input.Neighborhood || + (this.Neighborhood != null && + this.Neighborhood.Equals(input.Neighborhood)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.StreetName != null) + hashCode = hashCode * 59 + this.StreetName.GetHashCode(); + if (this.StreetNumber != null) + hashCode = hashCode * 59 + this.StreetNumber.GetHashCode(); + if (this.Complement != null) + hashCode = hashCode * 59 + this.Complement.GetHashCode(); + if (this.Neighborhood != null) + hashCode = hashCode * 59 + this.Neighborhood.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AddressTypeEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AddressTypeEnum.cs new file mode 100644 index 00000000..16b1ccdf --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AddressTypeEnum.cs @@ -0,0 +1,36 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// The type of location. + /// + /// The type of location. + [JsonConverter(typeof(StringEnumConverter))] + public enum AddressTypeEnum + { + /// + /// Value for RESIDENTIAL + /// + [EnumMember(Value = "RESIDENTIAL")] + RESIDENTIAL = 1, + + /// + /// Value for COMMERCIAL + /// + [EnumMember(Value = "COMMERCIAL")] + COMMERCIAL = 2, + + /// + /// Value for PICKUP_POINT + /// + [EnumMember(Value = "PICKUP_POINT")] + PICKUP_POINT = 3, + + } +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AliasTypeEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AliasTypeEnum.cs new file mode 100644 index 00000000..5d8873cc --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AliasTypeEnum.cs @@ -0,0 +1,24 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// The kind of alternative identifier + /// + /// The kind of alternative identifier + [JsonConverter(typeof(StringEnumConverter))] + public enum AliasTypeEnum + { + /// + /// Value for SELLER_ORDER_ID + /// + [EnumMember(Value = "SELLER_ORDER_ID")] + SELLER_ORDER_ID = 1, + + } +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AssociatedOrder.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AssociatedOrder.cs new file mode 100644 index 00000000..026f45b5 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/AssociatedOrder.cs @@ -0,0 +1,133 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Other order that has a direct relationship to order, such as replacement or exchange order. + /// + [DataContract] + public partial class AssociatedOrder : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public AssociatedOrder() { } + + /// + /// Initializes a new instance of the class. + /// + /// The unique identifier of the related order that is associated with the current order. + /// The relationship between the current order and the associated order. + public AssociatedOrder(string orderId = default, OrderAssociationTypeEnum? associationType = default) + { + this.OrderId = orderId; + this.AssociationType = associationType; + } + + + /// + /// The unique identifier of the related order that is associated with the current order. + /// + /// The unique identifier of the related order that is associated with the current order. + [DataMember(Name = "orderId", EmitDefaultValue = false)] + public string OrderId { get; set; } + + /// + /// The relationship between the current order and the associated order. Possible values: REPLACEMENT_ORIGINAL_ID, EXCHANGE_ORIGINAL_ID + /// + /// The relationship between the current order and the associated order. Possible values: REPLACEMENT_ORIGINAL_ID, EXCHANGE_ORIGINAL_ID + [DataMember(Name = "associationType", EmitDefaultValue = false)] + public OrderAssociationTypeEnum? AssociationType { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class AssociatedOrder {\n"); + sb.Append(" OrderId: ").Append(OrderId).Append("\n"); + sb.Append(" AssociationType: ").Append(AssociationType).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as AssociatedOrder); + } + + /// + /// Returns true if AssociatedOrder instances are equal + /// + /// Instance of AssociatedOrder to be compared + /// Boolean + public bool Equals(AssociatedOrder input) + { + if (input == null) + return false; + + return + ( + this.OrderId == input.OrderId || + (this.OrderId != null && + this.OrderId.Equals(input.OrderId)) + ) && + ( + this.AssociationType == input.AssociationType || + (this.AssociationType != null && + this.AssociationType.Equals(input.AssociationType)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.OrderId != null) + hashCode = hashCode * 59 + this.OrderId.GetHashCode(); + if (this.AssociationType != null) + hashCode = hashCode * 59 + this.AssociationType.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/BusinessHour.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/BusinessHour.cs new file mode 100644 index 00000000..8c2098fe --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/BusinessHour.cs @@ -0,0 +1,134 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Business hours when the business is open for deliveries. + /// + [DataContract] + public partial class BusinessHour : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public BusinessHour() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// Specific day of the week for which operating hours are being defined. + /// Collection of time windows during which the location is available for deliveries on the specified day. + public BusinessHour(DayOfWeekEnum? dayOfWeek = default, + List timeWindows = default) + { + this.DayOfWeek = dayOfWeek; + this.TimeWindows = timeWindows; + } + + /// + /// Specific day of the week for which operating hours are being defined. + /// + /// Specific day of the week for which operating hours are being defined. + [DataMember(Name = "dayOfWeek", EmitDefaultValue = false)] + public DayOfWeekEnum? DayOfWeek { get; set; } + + /// + /// Collection of time windows during which the location is available for deliveries on the specified day. + /// + /// Collection of time windows during which the location is available for deliveries on the specified day. + [DataMember(Name = "timeWindows", EmitDefaultValue = false)] + public List TimeWindows { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class BusinessHour {\n"); + sb.Append(" DayOfWeek: ").Append(DayOfWeek).Append("\n"); + sb.Append(" TimeWindows: ").Append(TimeWindows).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as BusinessHour); + } + + /// + /// Returns true if BusinessHour instances are equal + /// + /// Instance of BusinessHour to be compared + /// Boolean + public bool Equals(BusinessHour input) + { + if (input == null) + return false; + + return + ( + this.DayOfWeek == input.DayOfWeek || + (this.DayOfWeek != null && + this.DayOfWeek.Equals(input.DayOfWeek)) + ) && + ( + this.TimeWindows == input.TimeWindows || + (this.TimeWindows != null && + this.TimeWindows.SequenceEqual(input.TimeWindows)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.DayOfWeek != null) + hashCode = hashCode * 59 + this.DayOfWeek.GetHashCode(); + if (this.TimeWindows != null) + hashCode = hashCode * 59 + this.TimeWindows.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Buyer.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Buyer.cs new file mode 100644 index 00000000..d67b77c8 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Buyer.cs @@ -0,0 +1,167 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Information about the customer who purchased the order. + /// + [DataContract] + public partial class Buyer : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public Buyer() { } + + /// + /// Initializes a new instance of the class. + /// + /// The full name of the customer who placed the order. + /// The anonymized email address of the buyer. Note: Only available for merchant-fulfilled (FBM) orders. + /// The name of the company or organization for a business order. + /// The purchase order (PO) number entered by the buyer at checkout. Only returned for orders where the buyer entered a PO number at checkout. + public Buyer(string buyerName = default, + string buyerEmail = default, + string buyerCompanyName = default, + string buyerPurchaseOrderNumber = default) + { + this.BuyerName = buyerName; + this.BuyerEmail = buyerEmail; + this.BuyerCompanyName = buyerCompanyName; + this.BuyerPurchaseOrderNumber = buyerPurchaseOrderNumber; + } + + /// + /// The full name of the customer who placed the order. + /// + /// The full name of the customer who placed the order. + [DataMember(Name = "buyerName", EmitDefaultValue = false)] + public string BuyerName { get; set; } + + /// + /// The anonymized email address of the buyer. Note: Only available for merchant-fulfilled (FBM) orders. + /// + /// The anonymized email address of the buyer. Note: Only available for merchant-fulfilled (FBM) orders. + [DataMember(Name = "buyerEmail", EmitDefaultValue = false)] + public string BuyerEmail { get; set; } + + /// + /// The name of the company or organization for a business order. + /// + /// The name of the company or organization for a business order. + [DataMember(Name = "buyerCompanyName", EmitDefaultValue = false)] + public string BuyerCompanyName { get; set; } + + /// + /// The purchase order (PO) number entered by the buyer at checkout. Only returned for orders where the buyer entered a PO number at checkout. + /// + /// The purchase order (PO) number entered by the buyer at checkout. Only returned for orders where the buyer entered a PO number at checkout. + [DataMember(Name = "buyerPurchaseOrderNumber", EmitDefaultValue = false)] + public string BuyerPurchaseOrderNumber { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Buyer {\n"); + sb.Append(" BuyerName: ").Append(BuyerName).Append("\n"); + sb.Append(" BuyerEmail: ").Append(BuyerEmail).Append("\n"); + sb.Append(" BuyerCompanyName: ").Append(BuyerCompanyName).Append("\n"); + sb.Append(" BuyerPurchaseOrderNumber: ").Append(BuyerPurchaseOrderNumber).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Buyer); + } + + /// + /// Returns true if Buyer instances are equal + /// + /// Instance of Buyer to be compared + /// Boolean + public bool Equals(Buyer input) + { + if (input == null) + return false; + + return + ( + this.BuyerName == input.BuyerName || + (this.BuyerName != null && + this.BuyerName.Equals(input.BuyerName)) + ) && + ( + this.BuyerEmail == input.BuyerEmail || + (this.BuyerEmail != null && + this.BuyerEmail.Equals(input.BuyerEmail)) + ) && + ( + this.BuyerCompanyName == input.BuyerCompanyName || + (this.BuyerCompanyName != null && + this.BuyerCompanyName.Equals(input.BuyerCompanyName)) + ) && + ( + this.BuyerPurchaseOrderNumber == input.BuyerPurchaseOrderNumber || + (this.BuyerPurchaseOrderNumber != null && + this.BuyerPurchaseOrderNumber.Equals(input.BuyerPurchaseOrderNumber)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.BuyerName != null) + hashCode = hashCode * 59 + this.BuyerName.GetHashCode(); + if (this.BuyerEmail != null) + hashCode = hashCode * 59 + this.BuyerEmail.GetHashCode(); + if (this.BuyerCompanyName != null) + hashCode = hashCode * 59 + this.BuyerCompanyName.GetHashCode(); + if (this.BuyerPurchaseOrderNumber != null) + hashCode = hashCode * 59 + this.BuyerPurchaseOrderNumber.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Cancellation.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Cancellation.cs new file mode 100644 index 00000000..06f533cb --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Cancellation.cs @@ -0,0 +1,116 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// The cancellation information of the order item. + /// + [DataContract] + public partial class Cancellation : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public Cancellation() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// Detailed information about a cancellation request submitted for a specific order item. + public Cancellation(CancellationRequest cancellationRequest = default) + { + this.CancellationRequest = cancellationRequest; + } + + /// + /// Detailed information about a cancellation request submitted for a specific order item. + /// + /// Detailed information about a cancellation request submitted for a specific order item. + [DataMember(Name = "cancellationRequest", EmitDefaultValue = false)] + public CancellationRequest CancellationRequest { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Cancellation {\n"); + sb.Append(" CancellationRequest: ").Append(CancellationRequest).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Cancellation); + } + + /// + /// Returns true if Cancellation instances are equal + /// + /// Instance of Cancellation to be compared + /// Boolean + public bool Equals(Cancellation input) + { + if (input == null) + return false; + + return + ( + this.CancellationRequest == input.CancellationRequest || + (this.CancellationRequest != null && + this.CancellationRequest.Equals(input.CancellationRequest)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.CancellationRequest != null) + hashCode = hashCode * 59 + this.CancellationRequest.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/CancellationRequest.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/CancellationRequest.cs new file mode 100644 index 00000000..c44e0282 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/CancellationRequest.cs @@ -0,0 +1,133 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Detailed information about a cancellation request submitted for a specific order item. + /// + [DataContract] + public partial class CancellationRequest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public CancellationRequest() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// Entity that initiated the cancellation request for this item. + /// Explanation provided for why the cancellation was requested. + public CancellationRequest(CancellationRequesterEnum? requester = default, string cancelReason = default) + { + this.Requester = requester; + this.CancelReason = cancelReason; + } + + /// + /// Entity that initiated the cancellation request for this item. + /// + /// Entity that initiated the cancellation request for this item. + [DataMember(Name = "requester", EmitDefaultValue = false)] + public CancellationRequesterEnum? Requester { get; set; } + + /// + /// Explanation provided for why the cancellation was requested. + /// + /// Explanation provided for why the cancellation was requested. + [DataMember(Name = "cancelReason", EmitDefaultValue = false)] + public string CancelReason { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class CancellationRequest {\n"); + sb.Append(" Requester: ").Append(Requester).Append("\n"); + sb.Append(" CancelReason: ").Append(CancelReason).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as CancellationRequest); + } + + /// + /// Returns true if CancellationRequest instances are equal + /// + /// Instance of CancellationRequest to be compared + /// Boolean + public bool Equals(CancellationRequest input) + { + if (input == null) + return false; + + return + ( + this.Requester == input.Requester || + (this.Requester != null && + this.Requester.Equals(input.Requester)) + ) && + ( + this.CancelReason == input.CancelReason || + (this.CancelReason != null && + this.CancelReason.Equals(input.CancelReason)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Requester != null) + hashCode = hashCode * 59 + this.Requester.GetHashCode(); + if (this.CancelReason != null) + hashCode = hashCode * 59 + this.CancelReason.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/CancellationRequesterEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/CancellationRequesterEnum.cs new file mode 100644 index 00000000..03b52a49 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/CancellationRequesterEnum.cs @@ -0,0 +1,25 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// CancellationRequesterEnum + /// + /// ExceptionDateTypeEnum + [JsonConverter(typeof(StringEnumConverter))] + public enum CancellationRequesterEnum + { + /// + /// Enum value for type BUYER + /// + [EnumMember(Value = "BUYER")] + BUYER = 1, + + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ChannelTypeEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ChannelTypeEnum.cs new file mode 100644 index 00000000..73d57544 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ChannelTypeEnum.cs @@ -0,0 +1,29 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// The name of the sales platform or channel where the customer placed this order. + /// + /// The name of the sales platform or channel where the customer placed this order. + [JsonConverter(typeof(StringEnumConverter))] + public enum ChannelTypeEnum + { + /// + /// Value for AMAZON + /// + [EnumMember(Value = "AMAZON")] + AMAZON = 1, + + /// + /// Value for NON_AMAZON + /// + [EnumMember(Value = "NON_AMAZON")] + NON_AMAZON = 2, + } +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Condition.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Condition.cs new file mode 100644 index 00000000..29d13ccd --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Condition.cs @@ -0,0 +1,151 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Detailed information about the physical condition and quality state of the item being sold. + /// + [DataContract] + public partial class Condition : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public Condition() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// The primary condition category that broadly describes the item's state. + /// A more specific condition classification that provides additional detail about the item's quality within the main condition type. + /// Additional details provided by the seller to describe the specific condition of this particular item. + public Condition(ConditionTypeEnum? conditionType = default, + ConditionSubtypeEnum? conditionSubtype = default, + string conditionNote = default) + { + this.ConditionType = conditionType; + this.ConditionSubtype = conditionSubtype; + this.ConditionNote = conditionNote; + } + + /// + /// The primary condition category that broadly describes the item's state. + /// + /// The primary condition category that broadly describes the item's state. + [DataMember(Name = "conditionType", EmitDefaultValue = false)] + public ConditionTypeEnum? ConditionType { get; set; } + + /// + /// A more specific condition classification that provides additional detail about the item's quality within the main condition type. + /// + /// A more specific condition classification that provides additional detail about the item's quality within the main condition type. + [DataMember(Name = "conditionSubtype", EmitDefaultValue = false)] + public ConditionSubtypeEnum? ConditionSubtype { get; set; } + + /// + /// Additional details provided by the seller to describe the specific condition of this particular item. + /// + /// Additional details provided by the seller to describe the specific condition of this particular item. + [DataMember(Name = "conditionNote", EmitDefaultValue = false)] + public string ConditionNote { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Condition {\n"); + sb.Append(" ConditionType: ").Append(ConditionType).Append("\n"); + sb.Append(" ConditionSubtype: ").Append(ConditionSubtype).Append("\n"); + sb.Append(" ConditionNote: ").Append(ConditionNote).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Condition); + } + + /// + /// Returns true if Condition instances are equal + /// + /// Instance of Condition to be compared + /// Boolean + public bool Equals(Condition input) + { + if (input == null) + return false; + + return + ( + this.ConditionType == input.ConditionType || + (this.ConditionType != null && + this.ConditionType.Equals(input.ConditionType)) + ) && + ( + this.ConditionSubtype == input.ConditionSubtype || + (this.ConditionSubtype != null && + this.ConditionSubtype.Equals(input.ConditionSubtype)) + ) && + ( + this.ConditionNote == input.ConditionNote || + (this.ConditionNote != null && + this.ConditionNote.Equals(input.ConditionNote)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ConditionType != null) + hashCode = hashCode * 59 + this.ConditionType.GetHashCode(); + if (this.ConditionSubtype != null) + hashCode = hashCode * 59 + this.ConditionSubtype.GetHashCode(); + if (this.ConditionNote != null) + hashCode = hashCode * 59 + this.ConditionNote.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ConditionSubtypeEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ConditionSubtypeEnum.cs new file mode 100644 index 00000000..62f98243 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ConditionSubtypeEnum.cs @@ -0,0 +1,101 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// A more specific condition classification that provides additional detail about the item's quality within the main condition type. + /// + /// A more specific condition classification that provides additional detail about the item's quality within the main condition type. + [JsonConverter(typeof(StringEnumConverter))] + public enum ConditionSubtypeEnum + { + /// + /// Value for NEW + /// + [EnumMember(Value = "NEW")] + NEW = 1, + + /// + /// Value for MINT + /// + [EnumMember(Value = "MINT")] + MINT = 2, + + /// + /// Value for VERY_GOOD + /// + [EnumMember(Value = "VERY_GOOD")] + VERY_GOOD = 3, + + /// + /// Value for GOOD + /// + [EnumMember(Value = "GOOD")] + GOOD = 4, + + /// + /// Value for ACCEPTABLE + /// + [EnumMember(Value = "ACCEPTABLE")] + ACCEPTABLE = 5, + + /// + /// Value for POOR + /// + [EnumMember(Value = "POOR")] + POOR = 6, + + /// + /// Value for CLUB + /// + [EnumMember(Value = "CLUB")] + CLUB = 7, + + /// + /// Value for OEM + /// + [EnumMember(Value = "OEM")] + OEM = 8, + + /// + /// Value for WARRANTY + /// + [EnumMember(Value = "WARRANTY")] + WARRANTY = 9, + + /// + /// Value for REFURBISHED_WARRANTY + /// + [EnumMember(Value = "REFURBISHED_WARRANTY")] + REFURBISHED_WARRANTY = 10, + + /// + /// Value for REFURBISHED + /// + [EnumMember(Value = "REFURBISHED")] + REFURBISHED = 11, + + /// + /// Value for OPEN_BOX + /// + [EnumMember(Value = "OPEN_BOX")] + OPEN_BOX = 12, + + /// + /// Value for ANY + /// + [EnumMember(Value = "ANY")] + ANY = 13, + + /// + /// Value for OTHER + /// + [EnumMember(Value = "OTHER")] + OTHER = 14, + } +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ConditionTypeEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ConditionTypeEnum.cs new file mode 100644 index 00000000..b6bdc201 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ConditionTypeEnum.cs @@ -0,0 +1,53 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// The primary condition category that broadly describes the item's state. + /// + /// The primary condition category that broadly describes the item's state. + [JsonConverter(typeof(StringEnumConverter))] + public enum ConditionTypeEnum + { + /// + /// Value for NEW + /// + [EnumMember(Value = "NEW")] + NEW = 1, + + /// + /// Value for USED + /// + [EnumMember(Value = "USED")] + USED = 2, + + /// + /// Value for COLLECTIBLE + /// + [EnumMember(Value = "COLLECTIBLE")] + COLLECTIBLE = 3, + + /// + /// Value for REFURBISHED + /// + [EnumMember(Value = "REFURBISHED")] + REFURBISHED = 4, + + /// + /// Value for PREORDER + /// + [EnumMember(Value = "PREORDER")] + PREORDER = 5, + + /// + /// Value for CLUB + /// + [EnumMember(Value = "CLUB")] + CLUB = 6, + } +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DayOfWeekEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DayOfWeekEnum.cs new file mode 100644 index 00000000..43ccc244 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DayOfWeekEnum.cs @@ -0,0 +1,60 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Day Of Week Enum + /// + /// Day Of Week Enum + [JsonConverter(typeof(StringEnumConverter))] + public enum DayOfWeekEnum + { + /// + /// Value for Sunday + /// + [EnumMember(Value = "SUN")] + SUN = 1, + + /// + /// Value for MON + /// + [EnumMember(Value = "MON")] + MON = 2, + + /// + /// Value for TUE + /// + [EnumMember(Value = "TUE")] + TUE = 3, + + /// + /// Value for WED + /// + [EnumMember(Value = "WED")] + WED = 4, + + /// + /// Value for THU + /// + [EnumMember(Value = "THU")] + THU = 5, + + /// + /// Value for FRI + /// + [EnumMember(Value = "FRI")] + FRI = 6, + + /// + /// Value for SAT + /// + [EnumMember(Value = "SAT")] + SAT = 7, + + } +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DeliveryPreference.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DeliveryPreference.cs new file mode 100644 index 00000000..51dcf441 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DeliveryPreference.cs @@ -0,0 +1,170 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Contains all delivery instructions that the customer provides for the shipping address. + /// + [DataContract] + public partial class DeliveryPreference : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public DeliveryPreference() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// The drop-off location selected by the customer. + /// Building instructions, nearby landmark, or navigation instructions. + /// Customer-specified time preferences for when deliveries should be attempted at the destination address. + /// A list of miscellaneous delivery capabilities associated with the shipping address. + public DeliveryPreference(string dropOffLocation = default, + string addressInstruction = default, + DeliveryTime deliveryTime = default, + List deliveryCapabilities = default) + { + this.DropOffLocation = dropOffLocation; + this.AddressInstruction = addressInstruction; + this.DeliveryTime = deliveryTime; + this.DeliveryCapabilities = deliveryCapabilities; + } + + /// + /// The drop-off location selected by the customer. + /// + /// The drop-off location selected by the customer. + [DataMember(Name = "dropOffLocation", EmitDefaultValue = false)] + public string DropOffLocation { get; set; } + + /// + /// Building instructions, nearby landmark, or navigation instructions. + /// + /// Building instructions, nearby landmark, or navigation instructions. + [DataMember(Name = "addressInstruction", EmitDefaultValue = false)] + public string AddressInstruction { get; set; } + + /// + /// Customer-specified time preferences for when deliveries should be attempted at the destination address. + /// + /// Customer-specified time preferences for when deliveries should be attempted at the destination address. + [DataMember(Name = "deliveryTime", EmitDefaultValue = false)] + public DeliveryTime DeliveryTime { get; set; } + + /// + /// A list of miscellaneous delivery capabilities associated with the shipping address. + /// + /// A list of miscellaneous delivery capabilities associated with the shipping address. + [DataMember(Name = "deliveryCapabilities", EmitDefaultValue = false)] + public List DeliveryCapabilities { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeliveryPreference {\n"); + sb.Append(" DropOffLocation: ").Append(DropOffLocation).Append("\n"); + sb.Append(" AddressInstruction: ").Append(AddressInstruction).Append("\n"); + sb.Append(" DeliveryTime: ").Append(DeliveryTime).Append("\n"); + sb.Append(" DeliveryCapabilities: ").Append(DeliveryCapabilities).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as DeliveryPreference); + } + + /// + /// Returns true if DeliveryPreference instances are equal + /// + /// Instance of DeliveryPreference to be compared + /// Boolean + public bool Equals(DeliveryPreference input) + { + if (input == null) + return false; + + return + ( + this.DropOffLocation == input.DropOffLocation || + (this.DropOffLocation != null && + this.DropOffLocation.Equals(input.DropOffLocation)) + ) && + ( + this.AddressInstruction == input.AddressInstruction || + (this.AddressInstruction != null && + this.AddressInstruction.Equals(input.AddressInstruction)) + ) && + ( + this.DeliveryTime == input.DeliveryTime || + (this.DeliveryTime != null && + this.DeliveryTime.Equals(input.DeliveryTime)) + ) && + ( + this.DeliveryCapabilities == input.DeliveryCapabilities || + (this.DeliveryCapabilities != null && + this.DeliveryCapabilities.SequenceEqual(input.DeliveryCapabilities)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.DropOffLocation != null) + hashCode = hashCode * 59 + this.DropOffLocation.GetHashCode(); + if (this.AddressInstruction != null) + hashCode = hashCode * 59 + this.AddressInstruction.GetHashCode(); + if (this.DeliveryTime != null) + hashCode = hashCode * 59 + this.DeliveryTime.GetHashCode(); + if (this.DeliveryCapabilities != null) + hashCode = hashCode * 59 + this.DeliveryCapabilities.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DeliveryTime.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DeliveryTime.cs new file mode 100644 index 00000000..d72ebe7f --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DeliveryTime.cs @@ -0,0 +1,135 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Customer-specified time preferences for when deliveries should be attempted at the destination address. + /// + [DataContract] + public partial class DeliveryTime : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public DeliveryTime() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// Business hours when the business is open for deliveries. + /// Specific dates within the next 30 days when normal business hours do not apply. + public DeliveryTime(List businessHours = default, + List exceptionDates = default) + { + this.BusinessHours = businessHours; + this.ExceptionDates = exceptionDates; + } + + /// + /// Business hours when the business is open for deliveries. + /// + /// Business hours when the business is open for deliveries. + [DataMember(Name = "businessHours", EmitDefaultValue = false)] + public List BusinessHours { get; set; } + + /// + /// Specific dates within the next 30 days when normal business hours do not apply. + /// + /// Specific dates within the next 30 days when normal business hours do not apply. + [DataMember(Name = "exceptionDates", EmitDefaultValue = false)] + public List ExceptionDates { get; set; } + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeliveryTime {\n"); + sb.Append(" BusinessHours: ").Append(BusinessHours).Append("\n"); + sb.Append(" ExceptionDates: ").Append(ExceptionDates).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as DeliveryTime); + } + + /// + /// Returns true if DeliveryTime instances are equal + /// + /// Instance of DeliveryTime to be compared + /// Boolean + public bool Equals(DeliveryTime input) + { + if (input == null) + return false; + + return + ( + this.BusinessHours == input.BusinessHours || + (this.BusinessHours != null && + this.BusinessHours.SequenceEqual(input.BusinessHours)) + ) && + ( + this.ExceptionDates == input.ExceptionDates || + (this.ExceptionDates != null && + this.ExceptionDates.SequenceEqual(input.ExceptionDates)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.BusinessHours != null) + hashCode = hashCode * 59 + this.BusinessHours.GetHashCode(); + if (this.ExceptionDates != null) + hashCode = hashCode * 59 + this.ExceptionDates.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DeliveryWindow.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DeliveryWindow.cs new file mode 100644 index 00000000..1397dec4 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/DeliveryWindow.cs @@ -0,0 +1,136 @@ +using FikaAmazonAPI.AmazonSpApiSDK.Models.ShippingV2; +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// A time period with start and end boundaries. + /// + [DataContract] + public partial class DeliveryWindow : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public DeliveryWindow() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// The beginning of the time period, in ISO 8601 format. + /// The end of the time period, in ISO 8601 format. + public DeliveryWindow(DateTime? earliestDateTime = default, + DateTime? latestDateTime = default) + { + this.EarliestDateTime = earliestDateTime; + this.LatestDateTime = latestDateTime; + } + + /// + /// The beginning of the time period, in ISO 8601 format. + /// + /// The beginning of the time period, in ISO 8601 format. + [DataMember(Name = "earliestDateTime", EmitDefaultValue = false)] + public DateTime? EarliestDateTime { get; set; } + + /// + /// The end of the time period, in ISO 8601 format. + /// + /// The end of the time period, in ISO 8601 format. + [DataMember(Name = "latestDateTime", EmitDefaultValue = false)] + public DateTime? LatestDateTime { get; set; } + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeliveryWindow {\n"); + sb.Append(" EarliestDateTime: ").Append(EarliestDateTime).Append("\n"); + sb.Append(" LatestDateTime: ").Append(LatestDateTime).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as DeliveryWindow); + } + + /// + /// Returns true if DeliveryWindow instances are equal + /// + /// Instance of DeliveryWindow to be compared + /// Boolean + public bool Equals(DeliveryWindow input) + { + if (input == null) + return false; + + return + ( + this.EarliestDateTime == input.EarliestDateTime || + (this.EarliestDateTime != null && + this.EarliestDateTime.Equals(input.EarliestDateTime)) + ) && + ( + this.LatestDateTime == input.LatestDateTime || + (this.LatestDateTime != null && + this.LatestDateTime.Equals(input.LatestDateTime)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.EarliestDateTime != null) + hashCode = hashCode * 59 + this.EarliestDateTime.GetHashCode(); + if (this.LatestDateTime != null) + hashCode = hashCode * 59 + this.LatestDateTime.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/EnforcementLevelEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/EnforcementLevelEnum.cs new file mode 100644 index 00000000..df0865e1 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/EnforcementLevelEnum.cs @@ -0,0 +1,25 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Classification of the enforcement level required for shipping and delivery constraints. + /// + /// Classification of the enforcement level required for shipping and delivery constraints. + [JsonConverter(typeof(StringEnumConverter))] + public enum EnforcementLevelEnum + { + /// + /// Constraint that must be strictly enforced for delivery. + /// + [EnumMember(Value = "MANDATORY")] + MANDATORY = 1, + + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ExceptionDate.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ExceptionDate.cs new file mode 100644 index 00000000..4cf66b9f --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ExceptionDate.cs @@ -0,0 +1,153 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Date within the next 30 days when normal business hours do not apply. + /// + [DataContract] + public partial class DeliveryExceptionDate : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public DeliveryExceptionDate() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// Specific calendar date when normal operating hours do not apply. In ISO 8601 format at day granularity. + /// Operational status of the business on the specified exception date. + /// Alternative operating hours that apply specifically to this exception date. + public DeliveryExceptionDate(DateTime? exceptionDate = default, + ExceptionDateTypeEnum? exceptionDateType = default, + List timeWindows = default) + { + this.ExceptionDate = exceptionDate; + this.ExceptionDateType = exceptionDateType; + this.TimeWindows = timeWindows; + } + + /// + /// Specific calendar date when normal operating hours do not apply. In ISO 8601 format at day granularity. + /// + /// Specific calendar date when normal operating hours do not apply. In ISO 8601 format at day granularity. + [DataMember(Name = "exceptionDate", EmitDefaultValue = false)] + public DateTime? ExceptionDate { get; set; } + + /// + /// Operational status of the business on the specified exception date. + /// + /// Operational status of the business on the specified exception date. + [DataMember(Name = "exceptionDateType", EmitDefaultValue = false)] + public ExceptionDateTypeEnum? ExceptionDateType { get; set; } + + /// + /// Alternative operating hours that apply specifically to this exception date. + /// + /// Alternative operating hours that apply specifically to this exception date. + [DataMember(Name = "timeWindows", EmitDefaultValue = false)] + public List TimeWindows { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class DeliveryExceptionDate {\n"); + sb.Append(" ExceptionDate: ").Append(ExceptionDate).Append("\n"); + sb.Append(" ExceptionDateType: ").Append(ExceptionDateType).Append("\n"); + sb.Append(" TimeWindows: ").Append(TimeWindows).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as DeliveryExceptionDate); + } + + /// + /// Returns true if DeliveryExceptionDate instances are equal + /// + /// Instance of DeliveryExceptionDate to be compared + /// Boolean + public bool Equals(DeliveryExceptionDate input) + { + if (input == null) + return false; + + return + ( + this.ExceptionDate == input.ExceptionDate || + (this.ExceptionDate != null && + this.ExceptionDate.Equals(input.ExceptionDate)) + ) && + ( + this.ExceptionDateType == input.ExceptionDateType || + (this.ExceptionDateType != null && + this.ExceptionDateType.Equals(input.ExceptionDateType)) + ) && + ( + this.TimeWindows == input.TimeWindows || + (this.TimeWindows != null && + this.TimeWindows.SequenceEqual(input.TimeWindows)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ExceptionDate != null) + hashCode = hashCode * 59 + this.ExceptionDate.GetHashCode(); + if (this.ExceptionDateType != null) + hashCode = hashCode * 59 + this.ExceptionDateType.GetHashCode(); + if (this.TimeWindows != null) + hashCode = hashCode * 59 + this.TimeWindows.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ExceptionDateTypeEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ExceptionDateTypeEnum.cs new file mode 100644 index 00000000..79136b2f --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ExceptionDateTypeEnum.cs @@ -0,0 +1,31 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// ExceptionDateTypeEnum + /// + /// ExceptionDateTypeEnum + [JsonConverter(typeof(StringEnumConverter))] + public enum ExceptionDateTypeEnum + { + /// + /// Enum value for type CLOSED + /// + [EnumMember(Value = "CLOSED")] + CLOSED = 1, + + /// + /// Enum value for type OPEN + /// + [EnumMember(Value = "OPEN")] + OPEN = 2, + + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Expense.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Expense.cs new file mode 100644 index 00000000..cab79e7d --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Expense.cs @@ -0,0 +1,117 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// The expense information related to this specific item. + /// + [DataContract] + public partial class Expense : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public Expense() { } + + /// + /// Initializes a new instance of the class. + /// + /// Information about Amazon Points granted with the purchase of an item, including both quantity and monetary equivalent value. + public Expense(PointsCost pointsCost = default) + { + this.PointsCost = pointsCost; + } + + /// + /// Information about Amazon Points granted with the purchase of an item, including both quantity and monetary equivalent value. + /// + /// Information about Amazon Points granted with the purchase of an item, including both quantity and monetary equivalent value. + [DataMember(Name = "pointsCost", EmitDefaultValue = false)] + public PointsCost PointsCost { get; set; } + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Expense {\n"); + sb.Append(" PointsCost: ").Append(PointsCost).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Expense); + } + + /// + /// Returns true if Expense instances are equal + /// + /// Instance of Expense to be compared + /// Boolean + public bool Equals(Expense input) + { + if (input == null) + return false; + + return + ( + this.PointsCost == input.PointsCost || + (this.PointsCost != null && + this.PointsCost.Equals(input.PointsCost)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.PointsCost != null) + hashCode = hashCode * 59 + this.PointsCost.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/FulfilledByEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/FulfilledByEnum.cs new file mode 100644 index 00000000..f4c12ff3 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/FulfilledByEnum.cs @@ -0,0 +1,30 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Specifies whether Amazon or the merchant is responsible for fulfilling this order. + /// + /// Specifies whether Amazon or the merchant is responsible for fulfilling this order. + [JsonConverter(typeof(StringEnumConverter))] + public enum FulfilledByEnum + { + /// + /// Fulfilled by AMAZON + /// + [EnumMember(Value = "AMAZON")] + AMAZON = 1, + + /// + /// Fulfilled by MERCHANT + /// + [EnumMember(Value = "MERCHANT")] + MERCHANT = 2, + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/FulfillmentServiceLevelEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/FulfillmentServiceLevelEnum.cs new file mode 100644 index 00000000..d3f6152b --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/FulfillmentServiceLevelEnum.cs @@ -0,0 +1,66 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// The category of the shipping speed option selected by the customer at checkout. + /// + /// The category of the shipping speed option selected by the customer at checkout. + [JsonConverter(typeof(StringEnumConverter))] + public enum FulfillmentServiceLevelEnum + { + /// + /// Enum value for EXPEDITED + /// + [EnumMember(Value = "EXPEDITED")] + EXPEDITED = 1, + + /// + /// Enum value for FREE_ECONOMY + /// + [EnumMember(Value = "FREE_ECONOMY")] + FREE_ECONOMY = 2, + + /// + /// Enum value for NEXT_DAY + /// + [EnumMember(Value = "NEXT_DAY")] + NEXT_DAY = 3, + + /// + /// Enum value for PRIORITY + /// + [EnumMember(Value = "PRIORITY")] + PRIORITY = 4, + + /// + /// Enum value for SAME_DAY + /// + [EnumMember(Value = "SAME_DAY")] + SAME_DAY = 5, + + /// + /// Enum value for SECOND_DAY + /// + [EnumMember(Value = "SECOND_DAY")] + SECOND_DAY = 6, + + /// + /// Enum value for SCHEDULED + /// + [EnumMember(Value = "SCHEDULED")] + SCHEDULED = 7, + + /// + /// Enum value for STANDARD + /// + [EnumMember(Value = "STANDARD")] + STANDARD = 8, + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/FulfillmentStatusEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/FulfillmentStatusEnum.cs new file mode 100644 index 00000000..196b6f1c --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/FulfillmentStatusEnum.cs @@ -0,0 +1,63 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// The current fulfillment status of an order, indicating where the order is in the fulfillment process from placement to handover to carrier. + /// + /// The current fulfillment status of an order, indicating where the order is in the fulfillment process from placement to handover to carrier. + [JsonConverter(typeof(StringEnumConverter))] + public enum FulfillmentStatusEnum + { + + /// + /// This status is available for pre-orders only. The order has been placed, payment has not been authorized, and the release date of the item is in the future. The order is not ready for shipment. + /// + [EnumMember(Value = "PENDING_AVAILABILITY")] + PENDING_AVAILABILITY = 1, + + /// + /// The order has been placed but is not ready for shipment. Note that for standard orders, the initial order status is PENDING. For pre-orders, the initial order status is PENDING_AVAILABILITY, and the order passes into the PENDING status when payment authorization begins. + /// + [EnumMember(Value = "PENDING")] + PENDING = 2, + + /// + /// The order is ready for shipment, but no items in the order have been shipped. + /// + [EnumMember(Value = "UNSHIPPED")] + UNSHIPPED = 3, + + /// + /// One or more (but not all) items in the order have been shipped. + /// + [EnumMember(Value = "PARTIALLY_SHIPPED")] + PARTIALLY_SHIPPED = 4, + + /// + /// All items have been shipped to the customer. + /// + [EnumMember(Value = "SHIPPED")] + SHIPPED = 5, + + /// + /// The order has been canceled and will not be fulfilled. + /// + [EnumMember(Value = "CANCELLED")] + CANCELLED = 6, + + /// + /// The order cannot be fulfilled. This state applies only to Amazon-fulfilled orders that were not placed on Amazon's retail web site. + /// + [EnumMember(Value = "UNFULFILLABLE")] + UNFULFILLABLE = 7, + + + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/GetOrderResponse.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/GetOrderResponse.cs new file mode 100644 index 00000000..83aa216d --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/GetOrderResponse.cs @@ -0,0 +1,122 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// SearchOrders response. + /// + [DataContract] + public partial class GetOrderResponse : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public GetOrderResponse() { } + + /// + /// Initializes a new instance of the class. + /// + /// Comprehensive information about a customer order. (required) + public GetOrderResponse(Order order = default) + { + // to ensure "order" is required (not null) + if (order == null) + { + throw new ArgumentNullException("order is a required property for GetOrderResponse and cannot be null"); + } + else + { + this.Order = order; + } + } + + /// + /// Comprehensive information about a customer order. (required) + /// + /// Comprehensive information about a customer order. (required) + [DataMember(Name="order", EmitDefaultValue=false)] + public Order Order { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class GetOrderResponse {\n"); + sb.Append(" Order: ").Append(Order).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return Equals(input as GetOrderResponse); + } + + /// + /// Returns true if GetOrderResponse instances are equal + /// + /// Instance of GetOrderResponse to be compared + /// Boolean + public bool Equals(GetOrderResponse input) + { + if (input == null) + return false; + + return + ( + Order == input.Order || + Order != null && + Order.Equals(input.Order) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (Order != null) + hashCode = hashCode * 59 + Order.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/GiftOption.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/GiftOption.cs new file mode 100644 index 00000000..ab976add --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/GiftOption.cs @@ -0,0 +1,133 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Gift wrapping and personalization options selected by the customer for an order item. + /// + [DataContract] + public partial class GiftOption : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public GiftOption() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// Personal message from the buyer to be included with the gift-wrapped item. + /// Type or quality level of gift wrapping service selected by the customer. + public GiftOption(string giftMessage = default, string giftWrapLevel = default) + { + this.GiftMessage = giftMessage; + this.GiftWrapLevel = giftWrapLevel; + } + + /// + /// Personal message from the buyer to be included with the gift-wrapped item. + /// + /// Personal message from the buyer to be included with the gift-wrapped item. + [DataMember(Name = "giftMessage", EmitDefaultValue = false)] + public string GiftMessage { get; set; } + + /// + /// Type or quality level of gift wrapping service selected by the customer. + /// + /// Type or quality level of gift wrapping service selected by the customer. + [DataMember(Name = "giftWrapLevel", EmitDefaultValue = false)] + public string GiftWrapLevel { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class GiftOption {\n"); + sb.Append(" GiftMessage: ").Append(GiftMessage).Append("\n"); + sb.Append(" GiftWrapLevel: ").Append(GiftWrapLevel).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as GiftOption); + } + + /// + /// Returns true if GiftOption instances are equal + /// + /// Instance of GiftOption to be compared + /// Boolean + public bool Equals(GiftOption input) + { + if (input == null) + return false; + + return + ( + this.GiftMessage == input.GiftMessage || + (this.GiftMessage != null && + this.GiftMessage.Equals(input.GiftMessage)) + ) && + ( + this.GiftWrapLevel == input.GiftWrapLevel || + (this.GiftWrapLevel != null && + this.GiftWrapLevel.Equals(input.GiftWrapLevel)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.GiftMessage != null) + hashCode = hashCode * 59 + this.GiftMessage.GetHashCode(); + if (this.GiftWrapLevel != null) + hashCode = hashCode * 59 + this.GiftWrapLevel.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/IncludedDataEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/IncludedDataEnum.cs new file mode 100644 index 00000000..3f7aad95 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/IncludedDataEnum.cs @@ -0,0 +1,67 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Specifies datasets to include in the response. + /// + /// Specifies datasets to include in the response. + [JsonConverter(typeof(StringEnumConverter))] + public enum IncludedDataEnum + { + /// + /// Information about the buyer who purchased the order. + /// + [EnumMember(Value = "BUYER")] + BUYER = 1, + + /// + /// Information about the recipient to whom the order is delivered. + /// + [EnumMember(Value = "RECIPIENT")] + RECIPIENT = 2, + + /// + /// The revenue and financial breakdown for the order and order items. + /// + [EnumMember(Value = "PROCEEDS")] + PROCEEDS = 3, + + /// + /// The cost information about the order and order items. + /// + [EnumMember(Value = "EXPENSE")] + EXPENSE = 4, + + /// + /// The discount and promotional offer details applied to the order and order items. + /// + [EnumMember(Value = "PROMOTION")] + PROMOTION = 5, + + /// + /// Cancellation information applied to the order and order items. + /// + [EnumMember(Value = "CANCELLATION")] + CANCELLATION = 6, + + /// + /// Information about how the order and order items are processed and shipped. + /// + [EnumMember(Value = "FULFILLMENT")] + FULFILLMENT = 7, + + /// + /// Information about shipping packages and tracking. + /// + [EnumMember(Value = "PACKAGES")] + PACKAGES = 8, + + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/InternationalShipping.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/InternationalShipping.cs new file mode 100644 index 00000000..9ca666e5 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/InternationalShipping.cs @@ -0,0 +1,116 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Additional requirements needed for cross-border shipping of an order item. + /// + [DataContract] + public partial class InternationalShipping : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public InternationalShipping() { } + + /// + /// Initializes a new instance of the class. + /// + /// Import One-Stop Shop registration number required for EU VAT compliance when shipping from outside the European Union. Sellers shipping to the EU from outside the EU must provide this IOSS number to their carrier when Amazon has collected the VAT on the sale. + public InternationalShipping(string iossNumber = default) + { + this.IossNumber = iossNumber; + } + + /// + /// Import One-Stop Shop registration number required for EU VAT compliance when shipping from outside the European Union. Sellers shipping to the EU from outside the EU must provide this IOSS number to their carrier when Amazon has collected the VAT on the sale. + /// + /// Import One-Stop Shop registration number required for EU VAT compliance when shipping from outside the European Union. Sellers shipping to the EU from outside the EU must provide this IOSS number to their carrier when Amazon has collected the VAT on the sale. + [DataMember(Name = "iossNumber", EmitDefaultValue = false)] + public string IossNumber { get; set; } + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class InternationalShipping {\n"); + sb.Append(" IossNumber: ").Append(IossNumber).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as InternationalShipping); + } + + /// + /// Returns true if InternationalShipping instances are equal + /// + /// Instance of InternationalShipping to be compared + /// Boolean + public bool Equals(InternationalShipping input) + { + if (input == null) + return false; + + return + ( + this.IossNumber == input.IossNumber || + (this.IossNumber != null && + this.IossNumber.Equals(input.IossNumber)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.IossNumber != null) + hashCode = hashCode * 59 + this.IossNumber.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Measurement.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Measurement.cs new file mode 100644 index 00000000..6d6cea51 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Measurement.cs @@ -0,0 +1,148 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Specifies the unit of measure and quantity for items that are sold by weight, volume, length, or other measurements rather than simple count. + /// + [DataContract] + public partial class Measurement : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public Measurement() { } + + /// + /// Initializes a new instance of the class. + /// + /// The specific unit of measurement used to quantify this item. (required) + /// The numerical quantity or amount being measured in the specified unit. (required) + public Measurement(UnitEnum unit = default, decimal value = default) + { + // to ensure "unit" is required (not null) + if (unit == null) + { + throw new InvalidDataException("unit is a required property for Measurement and cannot be null"); + } + else + { + this.Unit = unit; + } + // to ensure "value" is required (not null) + if (value == null) + { + throw new InvalidDataException("value is a required property for Measurement and cannot be null"); + } + else + { + this.Value = value; + } + } + + /// + /// The specific unit of measurement used to quantify this item. (required) + /// + /// The specific unit of measurement used to quantify this item. (required) + [DataMember(Name = "unit", EmitDefaultValue = false)] + public UnitEnum Unit { get; set; } + + /// + /// The numerical quantity or amount being measured in the specified unit. (required) + /// + /// The numerical quantity or amount being measured in the specified unit. (required) + [DataMember(Name = "value", EmitDefaultValue = false)] + public decimal Value { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Measurement {\n"); + sb.Append(" Unit: ").Append(Unit).Append("\n"); + sb.Append(" Value: ").Append(Value).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Measurement); + } + + /// + /// Returns true if Measurement instances are equal + /// + /// Instance of Measurement to be compared + /// Boolean + public bool Equals(Measurement input) + { + if (input == null) + return false; + + return + ( + this.Unit == input.Unit || + (this.Unit != null && + this.Unit.Equals(input.Unit)) + ) && + ( + this.Value == input.Value || + (this.Value != null && + this.Value.Equals(input.Value)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Unit != null) + hashCode = hashCode * 59 + this.Unit.GetHashCode(); + if (this.Value != null) + hashCode = hashCode * 59 + this.Value.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Money.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Money.cs new file mode 100644 index 00000000..3c491f8f --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Money.cs @@ -0,0 +1,143 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// An amount of money, including units in the form of currency. + /// + [DataContract] + public partial class Money : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// A decimal number with no loss of precision. Follows RFC 7159 for number representation. (required) + /// The three-letter currency code that identifies the currency type, following ISO 4217 international standards. (required) + + public Money(decimal amount = default, string currencyCode = default) + { + //ensure "amount" is required (not null) + if (amount == null) + { + throw new ArgumentNullException("amount is a required property for Money and cannot be null"); + } + else + { + this.Amount = amount; + } + + //ensure "currencyCode" is required (not null) + if (currencyCode == null) + { + throw new ArgumentNullException("currencyCode is a required property for Money and cannot be null"); + } + else + { + this.CurrencyCode = currencyCode; + } + } + + /// + /// A decimal number with no loss of precision. Follows RFC 7159 for number representation. + /// + /// A decimal number with no loss of precision. Follows RFC 7159 for number representation. + [DataMember(Name = "amount", EmitDefaultValue = false)] + public decimal Amount { get; set; } + + /// + /// The three-letter currency code that identifies the currency type, following ISO 4217 international standards. + /// + /// The three-letter currency code that identifies the currency type, following ISO 4217 international standards. + [DataMember(Name = "currencyCode", EmitDefaultValue = false)] + public string CurrencyCode { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Money {\n"); + sb.Append(" Amount: ").Append(Amount).Append("\n"); + sb.Append(" CurrencyCode: ").Append(CurrencyCode).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Money); + } + + /// + /// Returns true if Money instances are equal + /// + /// Instance of Money to be compared + /// Boolean + public bool Equals(Money input) + { + if (input == null) + return false; + + return + ( + this.CurrencyCode == input.CurrencyCode || + (this.CurrencyCode != null && + this.CurrencyCode.Equals(input.CurrencyCode)) + ) && + ( + this.Amount == input.Amount || + (this.Amount != null && + this.Amount.Equals(input.Amount)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Amount != null) + hashCode = hashCode * 59 + this.Amount.GetHashCode(); + if (this.CurrencyCode != null) + hashCode = hashCode * 59 + this.CurrencyCode.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Order.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Order.cs new file mode 100644 index 00000000..491d596e --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Order.cs @@ -0,0 +1,379 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Diagnostics; +using System.IO; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Comprehensive information about a customer order. + /// + [DataContract] + public partial class Order : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + public Order() { } + + /// + /// Initializes a new instance of the class. + /// + /// An Amazon-defined order identifier. (required) + /// Alternative identifiers that can be used to reference this order, such as seller-defined order numbers. + /// The time when the customer placed the order. In ISO 8601 format.(required) + /// The most recent time when any aspect of this order was modified by Amazon or the seller. In ISO 8601 format.(required) + /// Special programs associated with this order that may affect fulfillment or customer experience. + /// Other orders that have a direct relationship to this order, such as replacement or exchange orders. + /// Information about where the customer placed this order. (required) + /// Information about the customer who purchased the order. + /// Information about the recipient to whom the order should be delivered. + /// The money that the seller receives from the sale of the order. + /// Information about how the order is being processed, packed, and shipped to the customer. + /// The list of all order items included in this order. (required) + /// Shipping packages created for this order, including tracking information. Note: Only available for merchant-fulfilled (FBM) orders. + public Order(string orderId = default, + List orderAliases = default, + DateTime createdTime = default, + DateTime lastUpdatedTime = default, + List programs = default, + List associatedOrders = default, + SalesChannel salesChannel = default, + Buyer buyer = default, + Recipient recipient = default, + OrderProceeds proceeds = default, + OrderFulfillment fulfillment = default, + List orderItems = default, + List packages = default) + { + // to ensure "orderId" is required (not null) + if (orderId == null) + { + throw new InvalidDataException("orderId is a required property for Order and cannot be null"); + } + else + { + this.OrderId = orderId; + } + + // to ensure "createdTime" is required (not null) + if (createdTime == null) + { + throw new InvalidDataException("createdTime is a required property for Order and cannot be null"); + } + else + { + this.CreatedTime = createdTime; + } + + // to ensure "lastUpdatedTime" is required (not null) + if (lastUpdatedTime == null) + { + throw new InvalidDataException("lastUpdatedTime is a required property for Order and cannot be null"); + } + else + { + this.LastUpdatedTime = lastUpdatedTime; + } + + // to ensure "salesChannel" is required (not null) + if (salesChannel == null) + { + throw new InvalidDataException("salesChannel is a required property for Order and cannot be null"); + } + else + { + this.SalesChannel = salesChannel; + } + + // to ensure "orderItems" is required (not null) + if (orderItems == null) + { + throw new InvalidDataException("orderItems is a required property for Order and cannot be null"); + } + else + { + this.OrderItems = orderItems; + } + + this.OrderAliases = orderAliases; + this.Programs = programs; + this.AssociatedOrders = associatedOrders; + this.Buyer = buyer; + this.Recipient = recipient; + this.Proceeds = proceeds; + this.Fulfillment = fulfillment; + this.Packages = packages; + } + + /// + /// An Amazon-defined order identifier. (required) + /// + /// An Amazon-defined order identifier. (required) + [DataMember(Name = "orderId", EmitDefaultValue = false)] + public string OrderId { get; set; } + + /// + /// Alternative identifiers that can be used to reference this order, such as seller-defined order numbers. + /// + /// Alternative identifiers that can be used to reference this order, such as seller-defined order numbers. + [DataMember(Name = "orderAliases", EmitDefaultValue = false)] + public List OrderAliases { get; set; } + + /// + ///The time when the customer placed the order. In ISO 8601 format.(required) + /// + /// The time when the customer placed the order. In ISO 8601 format.(required) + [DataMember(Name = "createdTime", EmitDefaultValue = false)] + public DateTime CreatedTime { get; set; } + + /// + /// The most recent time when any aspect of this order was modified by Amazon or the seller. In ISO 8601 format.(required) + /// + /// The most recent time when any aspect of this order was modified by Amazon or the seller. In ISO 8601 format.(required) + [DataMember(Name = "lastUpdatedTime", EmitDefaultValue = false)] + public DateTime LastUpdatedTime { get; set; } + + /// + /// Special programs associated with this order that may affect fulfillment or customer experience. + /// + /// Special programs associated with this order that may affect fulfillment or customer experience. + [DataMember(Name = "programs", EmitDefaultValue = false)] + public List Programs { get; set; } + + /// + /// Other orders that have a direct relationship to this order, such as replacement or exchange orders. + /// + /// Other orders that have a direct relationship to this order, such as replacement or exchange orders. + [DataMember(Name = "associatedOrders", EmitDefaultValue = false)] + public List AssociatedOrders { get; set; } + + /// + /// Information about where the customer placed this order. (required) + /// + /// Information about where the customer placed this order. (required) + [DataMember(Name = "salesChannel", EmitDefaultValue = false)] + public SalesChannel SalesChannel { get; set; } + + /// + /// Information about the customer who purchased the order. + /// + /// Information about the customer who purchased the order. + [DataMember(Name = "buyer", EmitDefaultValue = false)] + public Buyer Buyer { get; set; } + + /// + /// Information about the recipient to whom the order should be delivered. + /// + /// Information about the recipient to whom the order should be delivered. + [DataMember(Name = "recipient", EmitDefaultValue = false)] + public Recipient Recipient { get; set; } + + /// + /// The money that the seller receives from the sale of the order. + /// + /// The money that the seller receives from the sale of the order. + [DataMember(Name = "proceeds", EmitDefaultValue = false)] + public OrderProceeds Proceeds { get; set; } + + /// + /// Information about how the order is being processed, packed, and shipped to the customer. + /// + /// Information about how the order is being processed, packed, and shipped to the customer. + [DataMember(Name = "fulfillment", EmitDefaultValue = false)] + public OrderFulfillment Fulfillment { get; set; } + + /// + /// The list of all order items included in this order. (required) + /// + /// The list of all order items included in this order. (required) + [DataMember(Name = "orderItems", EmitDefaultValue = false)] + public List OrderItems { get; set; } + + /// + /// Shipping packages created for this order, including tracking information. Note: Only available for merchant-fulfilled (FBM) orders. + /// + /// Shipping packages created for this order, including tracking information. Note: Only available for merchant-fulfilled (FBM) orders. + [DataMember(Name = "packages", EmitDefaultValue = false)] + public List Packages { get; set; } + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Order {\n"); + sb.Append(" OrderId: ").Append(OrderId).Append("\n"); + sb.Append(" OrderAliases: ").Append(OrderAliases).Append("\n"); + sb.Append(" CreatedTime: ").Append(CreatedTime).Append("\n"); + sb.Append(" LastUpdatedTime: ").Append(LastUpdatedTime).Append("\n"); + sb.Append(" Programs: ").Append(Programs).Append("\n"); + sb.Append(" AssociatedOrders: ").Append(AssociatedOrders).Append("\n"); + sb.Append(" SalesChannel: ").Append(SalesChannel).Append("\n"); + sb.Append(" Buyer: ").Append(Buyer).Append("\n"); + sb.Append(" Recipient: ").Append(Recipient).Append("\n"); + sb.Append(" Proceeds: ").Append(Proceeds).Append("\n"); + sb.Append(" Fulfillment: ").Append(Fulfillment).Append("\n"); + sb.Append(" OrderItems: ").Append(OrderItems).Append("\n"); + sb.Append(" Packages: ").Append(Packages).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return Equals(input as Order); + } + + /// + /// Returns true if Order instances are equal + /// + /// Instance of Order to be compared + /// Boolean + public bool Equals(Order input) + { + if (input == null) + return false; + + return + ( + OrderId == input.OrderId || + OrderId != null && + OrderId.Equals(input.OrderId) + ) && + ( + OrderAliases == input.OrderAliases || + OrderAliases != null && + OrderAliases.SequenceEqual(input.OrderAliases) + ) && + ( + CreatedTime == input.CreatedTime || + CreatedTime != null && + CreatedTime.Equals(input.CreatedTime) + ) && + ( + LastUpdatedTime == input.LastUpdatedTime || + LastUpdatedTime != null && + LastUpdatedTime.Equals(input.LastUpdatedTime) + ) && + ( + Programs == input.Programs || + Programs != null && + Programs.SequenceEqual(input.Programs) + ) && + ( + AssociatedOrders == input.AssociatedOrders || + AssociatedOrders != null && + AssociatedOrders.SequenceEqual(input.AssociatedOrders) + ) && + ( + SalesChannel == input.SalesChannel || + SalesChannel != null && + SalesChannel.Equals(input.SalesChannel) + ) && + ( + Buyer == input.Buyer || + Buyer != null && + Buyer.Equals(input.Buyer) + ) && + ( + Recipient == input.Recipient || + Recipient != null && + Recipient.Equals(input.Recipient) + ) && + ( + Proceeds == input.Proceeds || + Proceeds != null && + Proceeds.Equals(input.Proceeds) + ) && + ( + Fulfillment == input.Fulfillment || + Fulfillment != null && + Fulfillment.Equals(input.Fulfillment) + ) && + ( + OrderItems == input.OrderItems || + OrderItems != null && + OrderItems.SequenceEqual(input.OrderItems) + ) && + ( + Packages == input.Packages || + Packages != null && + Packages.SequenceEqual(input.Packages) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (OrderId != null) + hashCode = hashCode * 59 + OrderId.GetHashCode(); + if (OrderAliases != null) + hashCode = hashCode * 59 + OrderAliases.GetHashCode(); + if (CreatedTime != null) + hashCode = hashCode * 59 + CreatedTime.GetHashCode(); + if (LastUpdatedTime != null) + hashCode = hashCode * 59 + LastUpdatedTime.GetHashCode(); + if (Programs != null) + hashCode = hashCode * 59 + Programs.GetHashCode(); + if (AssociatedOrders != null) + hashCode = hashCode * 59 + AssociatedOrders.GetHashCode(); + if (SalesChannel != null) + hashCode = hashCode * 59 + SalesChannel.GetHashCode(); + if (Buyer != null) + hashCode = hashCode * 59 + Buyer.GetHashCode(); + if (Recipient != null) + hashCode = hashCode * 59 + Recipient.GetHashCode(); + if (Proceeds != null) + hashCode = hashCode * 59 + Proceeds.GetHashCode(); + if (Fulfillment != null) + hashCode = hashCode * 59 + Fulfillment.GetHashCode(); + if (OrderItems != null) + hashCode = hashCode * 59 + OrderItems.GetHashCode(); + if (Packages != null) + hashCode = hashCode * 59 + Packages.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderAliase.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderAliase.cs new file mode 100644 index 00000000..57a2e732 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderAliase.cs @@ -0,0 +1,148 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Alternative identifier that can be used to reference order. + /// + [DataContract] + public partial class OrderAliase : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public OrderAliase() { } + + /// + /// Initializes a new instance of the class. + /// + /// The alternative identifier value that can be used to reference this order. (required) + /// The kind of alternative identifier this represents. (required) + public OrderAliase(string aliasId = default, AliasTypeEnum aliasType = default) + { + // to ensure "aliasId" is required (not null) + if (aliasId == null) + { + throw new InvalidDataException("aliasId is a required property for OrderAliase and cannot be null"); + } + else + { + this.AliasId = aliasId; + } + // to ensure "aliasType" is required (not null) + if (aliasType == null) + { + throw new InvalidDataException("aliasType is a required property for OrderAliase and cannot be null"); + } + else + { + this.AliasType = aliasType; + } + } + + /// + /// The alternative identifier value that can be used to reference this order. + /// + /// The alternative identifier value that can be used to reference this order. + [DataMember(Name = "aliasId", EmitDefaultValue = false)] + public string AliasId { get; set; } + + /// + /// The kind of alternative identifier this represents. + /// + /// The kind of alternative identifier this represents. + [DataMember(Name = "aliasType", EmitDefaultValue = false)] + public AliasTypeEnum AliasType { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OrderAliase {\n"); + sb.Append(" AliasId: ").Append(AliasId).Append("\n"); + sb.Append(" AliasType: ").Append(AliasType).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as OrderAliase); + } + + /// + /// Returns true if OrderAliase instances are equal + /// + /// Instance of OrderAliase to be compared + /// Boolean + public bool Equals(OrderAliase input) + { + if (input == null) + return false; + + return + ( + this.AliasId == input.AliasId || + (this.AliasId != null && + this.AliasId.Equals(input.AliasId)) + ) && + ( + this.AliasType == input.AliasType || + (this.AliasType != null && + this.AliasType.Equals(input.AliasType)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.AliasId != null) + hashCode = hashCode * 59 + this.AliasId.GetHashCode(); + if (this.AliasType != null) + hashCode = hashCode * 59 + this.AliasType.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderAssociationTypeEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderAssociationTypeEnum.cs new file mode 100644 index 00000000..70467c12 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderAssociationTypeEnum.cs @@ -0,0 +1,30 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// The relationship between the current order and the associated order. Possible values: REPLACEMENT_ORIGINAL_ID, EXCHANGE_ORIGINAL_ID + /// + /// The relationship between the current order and the associated order. Possible values: REPLACEMENT_ORIGINAL_ID, EXCHANGE_ORIGINAL_ID + [JsonConverter(typeof(StringEnumConverter))] + public enum OrderAssociationTypeEnum + { + /// + /// Value for REPLACEMENT_ORIGINAL_ID + /// + [EnumMember(Value = "REPLACEMENT_ORIGINAL_ID")] + REPLACEMENT_ORIGINAL_ID = 1, + + /// + /// Value for EXCHANGE_ORIGINAL_ID + /// + [EnumMember(Value = "EXCHANGE_ORIGINAL_ID")] + EXCHANGE_ORIGINAL_ID = 2, + + } +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderFulfillment.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderFulfillment.cs new file mode 100644 index 00000000..da63a69a --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderFulfillment.cs @@ -0,0 +1,189 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Information about how the order is being processed, packed, and shipped to the customer. + /// + [DataContract] + public partial class OrderFulfillment : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public OrderFulfillment() { } + + /// + /// Initializes a new instance of the class. + /// + /// The current fulfillment status of an order, indicating where the order is in the fulfillment process from placement to handover to carrier. (required) + /// Specifies whether Amazon or the merchant is responsible for fulfilling this order. + /// The category of the shipping speed option selected by the customer at checkout. + /// A time period with start and end boundaries. + /// A time period with start and end boundaries. + + public OrderFulfillment(FulfillmentStatusEnum fulfillmentStatus = default, + FulfilledByEnum? fulfilledBy = default, + FulfillmentServiceLevelEnum? fulfillmentServiceLevel = default, + DeliveryWindow shipByWindow = default, + DeliveryWindow deliverByWindow = default) + { + this.FulfillmentStatus = fulfillmentStatus; + this.FulfilledBy = fulfilledBy; + this.FulfillmentServiceLevel = fulfillmentServiceLevel; + this.ShipByWindow = shipByWindow; + this.DeliverByWindow = deliverByWindow; + } + + + /// + /// The current fulfillment status of an order, indicating where the order is in the fulfillment process from placement to handover to carrier. (required) + /// + /// The current fulfillment status of an order, indicating where the order is in the fulfillment process from placement to handover to carrier. (required) + [DataMember(Name = "fulfillmentStatus", EmitDefaultValue = false)] + public FulfillmentStatusEnum FulfillmentStatus { get; set; } + + /// + /// Specifies whether Amazon or the merchant is responsible for fulfilling this order. + /// + /// Specifies whether Amazon or the merchant is responsible for fulfilling this order. + [DataMember(Name = "fulfilledBy", EmitDefaultValue = false)] + public FulfilledByEnum? FulfilledBy { get; set; } + + /// + /// The category of the shipping speed option selected by the customer at checkout. + /// + /// The category of the shipping speed option selected by the customer at checkout. + [DataMember(Name = "fulfillmentServiceLevel", EmitDefaultValue = false)] + public FulfillmentServiceLevelEnum? FulfillmentServiceLevel { get; set; } + + /// + /// A time period with start and end boundaries. + /// + /// A time period with start and end boundaries. + [DataMember(Name = "shipByWindow", EmitDefaultValue = false)] + public DeliveryWindow ShipByWindow { get; set; } + + /// + /// A time period with start and end boundaries. + /// + /// A time period with start and end boundaries. + [DataMember(Name = "deliverByWindow", EmitDefaultValue = false)] + public DeliveryWindow DeliverByWindow { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OrderFulfillment {\n"); + sb.Append(" FulfillmentStatus: ").Append(FulfillmentStatus).Append("\n"); + sb.Append(" FulfilledBy: ").Append(FulfilledBy).Append("\n"); + sb.Append(" FulfillmentServiceLevel: ").Append(FulfillmentServiceLevel).Append("\n"); + sb.Append(" ShipByWindow: ").Append(ShipByWindow).Append("\n"); + sb.Append(" DeliverByWindow: ").Append(DeliverByWindow).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as OrderFulfillment); + } + + /// + /// Returns true if OrderFulfillment instances are equal + /// + /// Instance of OrderFulfillment to be compared + /// Boolean + public bool Equals(OrderFulfillment input) + { + if (input == null) + return false; + + return + ( + this.FulfillmentStatus == input.FulfillmentStatus || + (this.FulfillmentStatus != null && + this.FulfillmentStatus.Equals(input.FulfillmentStatus)) + ) && + ( + this.FulfilledBy == input.FulfilledBy || + (this.FulfilledBy != null && + this.FulfilledBy.Equals(input.FulfilledBy)) + ) && + ( + this.FulfillmentServiceLevel == input.FulfillmentServiceLevel || + (this.FulfillmentServiceLevel != null && + this.FulfillmentServiceLevel.Equals(input.FulfillmentServiceLevel)) + ) && + ( + this.ShipByWindow == input.ShipByWindow || + (this.ShipByWindow != null && + this.ShipByWindow.Equals(input.ShipByWindow)) + ) && + ( + this.DeliverByWindow == input.DeliverByWindow || + (this.DeliverByWindow != null && + this.DeliverByWindow.Equals(input.DeliverByWindow)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.FulfillmentStatus != null) + hashCode = hashCode * 59 + this.FulfillmentStatus.GetHashCode(); + if (this.FulfilledBy != null) + hashCode = hashCode * 59 + this.FulfilledBy.GetHashCode(); + if (this.FulfillmentServiceLevel != null) + hashCode = hashCode * 59 + this.FulfillmentServiceLevel.GetHashCode(); + if (this.ShipByWindow != null) + hashCode = hashCode * 59 + this.ShipByWindow.GetHashCode(); + if (this.DeliverByWindow != null) + hashCode = hashCode * 59 + this.DeliverByWindow.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItem.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItem.cs new file mode 100644 index 00000000..8615df47 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItem.cs @@ -0,0 +1,307 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Diagnostics.Metrics; +using System.IO; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// A single order item. + /// + [DataContract] + public partial class OrderItem : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + protected OrderItem() { } + + /// + /// Initializes a new instance of the class. + /// + /// A unique identifier for this specific item within the order. (required) + /// The number of units of this item that the customer ordered. (required) + /// Specifies the unit of measure and quantity for items that are sold by weight, volume, length, or other measurements rather than simple count. + /// Special programs that apply specifically to this item within the order. + /// Product information for an order item. (required) + /// The money that the seller receives from the sale of this specific item. + /// The expense information related to this specific item. + /// Details about any discounts, coupons, or promotional offers applied to this item. + /// The cancellation information of the order item. + /// Information about how the order item should be processed, packed, and shipped to the customer. + public OrderItem(string orderItemId = default, + int quantityOrdered = default, + Measurement measurement = default, + List programs = default, + Product product = default, + OrderItemProceeds proceeds = default, + Expense expense = default, + Promotion promotion = default, + Cancellation cancellation = default, + OrderItemFulfillment fulfillment = default) + { + // to ensure "orderItemId" is required (not null) + if (orderItemId == null) + { + throw new InvalidDataException("orderItemId is a required property for OrderItem and cannot be null"); + } + else + { + this.OrderItemId = orderItemId; + } + + // to ensure "quantityOrdered" is required (not null) + if (quantityOrdered == null) + { + throw new InvalidDataException("quantityOrdered is a required property for OrderItem and cannot be null"); + } + else + { + this.QuantityOrdered = quantityOrdered; + } + + // to ensure "product" is required (not null) + if (product == null) + { + throw new InvalidDataException("product is a required property for OrderItem and cannot be null"); + } + else + { + this.Product = product; + } + + this.Measurement = measurement; + this.Programs = programs; + this.Proceeds = proceeds; + this.Expense = expense; + this.Promotion = promotion; + this.Cancellation = cancellation; + this.Fulfillment = fulfillment; + } + + /// + /// A unique identifier for this specific item within the order. (required) + /// + /// A unique identifier for this specific item within the order. (required) + [DataMember(Name = "orderItemId", EmitDefaultValue = false)] + public string OrderItemId { get; set; } + + /// + /// The number of units of this item that the customer ordered. (required) + /// + /// The number of units of this item that the customer ordered. (required) + [DataMember(Name = "quantityOrdered", EmitDefaultValue = false)] + public int QuantityOrdered { get; set; } + + /// + /// Specifies the unit of measure and quantity for items that are sold by weight, volume, length, or other measurements rather than simple count. + /// + /// Specifies the unit of measure and quantity for items that are sold by weight, volume, length, or other measurements rather than simple count. + [DataMember(Name = "measurement", EmitDefaultValue = false)] + public Measurement Measurement { get; set; } + + /// + /// Special programs that apply specifically to this item within the order. + /// + /// Special programs that apply specifically to this item within the order. + [DataMember(Name = "programs", EmitDefaultValue = false)] + public List Programs { get; set; } + + /// + /// Product information for an order item. (required) + /// + /// Product information for an order item. (required) + [DataMember(Name = "product", EmitDefaultValue = false)] + public Product Product { get; set; } + + /// + /// The money that the seller receives from the sale of this specific item. + /// + /// The money that the seller receives from the sale of this specific item. + [DataMember(Name = "proceeds", EmitDefaultValue = false)] + public OrderItemProceeds Proceeds { get; set; } + + /// + /// The expense information related to this specific item. + /// + /// The expense information related to this specific item. + [DataMember(Name = "expense", EmitDefaultValue = false)] + public Expense Expense { get; set; } + + /// + /// Details about any discounts, coupons, or promotional offers applied to this item. + /// + /// Details about any discounts, coupons, or promotional offers applied to this item. + [DataMember(Name = "promotion", EmitDefaultValue = false)] + public Promotion Promotion { get; set; } + + /// + /// The cancellation information of the order item. + /// + /// The cancellation information of the order item. + [DataMember(Name = "cancellation", EmitDefaultValue = false)] + public Cancellation Cancellation { get; set; } + + /// + /// Information about how the order item should be processed, packed, and shipped to the customer. + /// + /// Information about how the order item should be processed, packed, and shipped to the customer. + [DataMember(Name = "fulfillment", EmitDefaultValue = false)] + public OrderItemFulfillment Fulfillment { get; set; } + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OrderItem {\n"); + sb.Append(" OrderItemId: ").Append(OrderItemId).Append("\n"); + sb.Append(" QuantityOrdered: ").Append(QuantityOrdered).Append("\n"); + sb.Append(" Measurement: ").Append(Measurement).Append("\n"); + sb.Append(" Programs: ").Append(Programs).Append("\n"); + sb.Append(" Product: ").Append(Product).Append("\n"); + sb.Append(" Proceeds: ").Append(Proceeds).Append("\n"); + sb.Append(" Expense: ").Append(Expense).Append("\n"); + sb.Append(" Promotion: ").Append(Promotion).Append("\n"); + sb.Append(" Cancellation: ").Append(Cancellation).Append("\n"); + sb.Append(" Fulfillment: ").Append(Fulfillment).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as OrderItem); + } + + /// + /// Returns true if OrderItem instances are equal + /// + /// Instance of OrderItem to be compared + /// Boolean + public bool Equals(OrderItem input) + { + if (input == null) + return false; + + return + ( + this.OrderItemId == input.OrderItemId || + (this.OrderItemId != null && + this.OrderItemId.Equals(input.OrderItemId)) + ) && + ( + this.QuantityOrdered == input.QuantityOrdered || + (this.QuantityOrdered != null && + this.QuantityOrdered.Equals(input.QuantityOrdered)) + ) && + ( + this.Measurement == input.Measurement || + (this.Measurement != null && + this.Measurement.Equals(input.Measurement)) + ) && + ( + this.Programs == input.Programs || + (this.Programs != null && + this.Programs.SequenceEqual(input.Programs)) + ) && + ( + this.Product == input.Product || + (this.Product != null && + this.Product.Equals(input.Product)) + ) && + ( + this.Proceeds == input.Proceeds || + (this.Proceeds != null && + this.Proceeds.Equals(input.Proceeds)) + ) && + ( + this.Expense == input.Expense || + (this.Expense != null && + this.Expense.Equals(input.Expense)) + ) && + ( + this.Promotion == input.Promotion || + (this.Promotion != null && + this.Promotion.Equals(input.Promotion)) + ) && + ( + this.Cancellation == input.Cancellation || + (this.Cancellation != null && + this.Cancellation.Equals(input.Cancellation)) + ) && + ( + this.Fulfillment == input.Fulfillment || + (this.Fulfillment != null && + this.Fulfillment.Equals(input.Fulfillment)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.OrderItemId != null) + hashCode = hashCode * 59 + this.OrderItemId.GetHashCode(); + if (this.QuantityOrdered != null) + hashCode = hashCode * 59 + this.QuantityOrdered.GetHashCode(); + if (this.Measurement != null) + hashCode = hashCode * 59 + this.Measurement.GetHashCode(); + if (this.Programs != null) + hashCode = hashCode * 59 + this.Programs.GetHashCode(); + if (this.Product != null) + hashCode = hashCode * 59 + this.Product.GetHashCode(); + if (this.Proceeds != null) + hashCode = hashCode * 59 + this.Proceeds.GetHashCode(); + if (this.Expense != null) + hashCode = hashCode * 59 + this.Expense.GetHashCode(); + if (this.Promotion != null) + hashCode = hashCode * 59 + this.Promotion.GetHashCode(); + if (this.Cancellation != null) + hashCode = hashCode * 59 + this.Cancellation.GetHashCode(); + if (this.Fulfillment != null) + hashCode = hashCode * 59 + this.Fulfillment.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemCustomization.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemCustomization.cs new file mode 100644 index 00000000..61949f50 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemCustomization.cs @@ -0,0 +1,116 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Information about any personalization, customization, or special modifications applied to this order item. + /// + [DataContract] + public partial class OrderItemCustomization : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public OrderItemCustomization() { } + + /// + /// Initializes a new instance of the class. + /// + /// The URL of the customized data for custom orders from the Amazon Custom program. + public OrderItemCustomization(string customizedUrl = default) + { + this.CustomizedUrl = customizedUrl; + } + + + /// + /// The URL of the customized data for custom orders from the Amazon Custom program. + /// + /// The URL of the customized data for custom orders from the Amazon Custom program. + [DataMember(Name = "customizedUrl", EmitDefaultValue = false)] + public string CustomizedUrl { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OrderItemCustomization {\n"); + sb.Append(" CustomizedUrl: ").Append(CustomizedUrl).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as OrderItemCustomization); + } + + /// + /// Returns true if OrderItemCustomization instances are equal + /// + /// Instance of OrderItemCustomization to be compared + /// Boolean + public bool Equals(OrderItemCustomization input) + { + if (input == null) + return false; + + return + ( + this.CustomizedUrl == input.CustomizedUrl || + (this.CustomizedUrl != null && + this.CustomizedUrl.Equals(input.CustomizedUrl)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.CustomizedUrl != null) + hashCode = hashCode * 59 + this.CustomizedUrl.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemFulfillment.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemFulfillment.cs new file mode 100644 index 00000000..964daf33 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemFulfillment.cs @@ -0,0 +1,189 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Information about how the order item should be processed, packed, and shipped to the customer. + /// + [DataContract] + public partial class OrderItemFulfillment : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public OrderItemFulfillment() { } + + /// + /// Initializes a new instance of the class. + /// + /// The number of units of this item that have been successfully processed and shipped. + /// The number of units of this item that remain to be processed and shipped. + /// Information related to the warehouse picking process for an order item. + /// Information related to the packaging process for an order item. + /// Information related to the shipping and delivery process for an order item. + + public OrderItemFulfillment(int? quantityFulfilled = default, + int? quantityUnfulfilled = default, + Picking picking = default, + Packing packing = default, + Shipping shipping = default) + { + this.QuantityFulfilled = quantityFulfilled; + this.QuantityUnfulfilled = quantityUnfulfilled; + this.Picking = picking; + this.Packing = packing; + this.Shipping = shipping; + } + + + /// + /// The number of units of this item that have been successfully processed and shipped. + /// + /// The number of units of this item that have been successfully processed and shipped. + [DataMember(Name = "quantityFulfilled", EmitDefaultValue = false)] + public int? QuantityFulfilled { get; set; } + + /// + /// The number of units of this item that remain to be processed and shipped. + /// + /// The number of units of this item that remain to be processed and shipped. + [DataMember(Name = "quantityUnfulfilled", EmitDefaultValue = false)] + public int? QuantityUnfulfilled { get; set; } + + /// + /// Information related to the warehouse picking process for an order item. + /// + /// Information related to the warehouse picking process for an order item. + [DataMember(Name = "picking", EmitDefaultValue = false)] + public Picking Picking { get; set; } + + /// + /// Information related to the packaging process for an order item. + /// + /// Information related to the packaging process for an order item. + [DataMember(Name = "packing", EmitDefaultValue = false)] + public Packing Packing { get; set; } + + /// + /// Information related to the shipping and delivery process for an order item. + /// + /// Information related to the shipping and delivery process for an order item. + [DataMember(Name = "shipping", EmitDefaultValue = false)] + public Shipping Shipping { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OrderItemFulfillment {\n"); + sb.Append(" QuantityFulfilled: ").Append(QuantityFulfilled).Append("\n"); + sb.Append(" QuantityUnfulfilled: ").Append(QuantityUnfulfilled).Append("\n"); + sb.Append(" Picking: ").Append(Picking).Append("\n"); + sb.Append(" Packing: ").Append(Packing).Append("\n"); + sb.Append(" Shipping: ").Append(Shipping).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as OrderItemFulfillment); + } + + /// + /// Returns true if OrderItemFulfillment instances are equal + /// + /// Instance of OrderItemFulfillment to be compared + /// Boolean + public bool Equals(OrderItemFulfillment input) + { + if (input == null) + return false; + + return + ( + this.QuantityFulfilled == input.QuantityFulfilled || + (this.QuantityFulfilled != null && + this.QuantityFulfilled.Equals(input.QuantityFulfilled)) + ) && + ( + this.QuantityUnfulfilled == input.QuantityUnfulfilled || + (this.QuantityUnfulfilled != null && + this.QuantityUnfulfilled.Equals(input.QuantityUnfulfilled)) + ) && + ( + this.Picking == input.Picking || + (this.Picking != null && + this.Picking.Equals(input.Picking)) + ) && + ( + this.Packing == input.Packing || + (this.Packing != null && + this.Packing.Equals(input.Packing)) + ) && + ( + this.Shipping == input.Shipping || + (this.Shipping != null && + this.Shipping.Equals(input.Shipping)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.QuantityFulfilled != null) + hashCode = hashCode * 59 + this.QuantityFulfilled.GetHashCode(); + if (this.QuantityUnfulfilled != null) + hashCode = hashCode * 59 + this.QuantityUnfulfilled.GetHashCode(); + if (this.Picking != null) + hashCode = hashCode * 59 + this.Picking.GetHashCode(); + if (this.Packing != null) + hashCode = hashCode * 59 + this.Packing.GetHashCode(); + if (this.Shipping != null) + hashCode = hashCode * 59 + this.Shipping.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProceeds.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProceeds.cs new file mode 100644 index 00000000..d8381cf2 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProceeds.cs @@ -0,0 +1,133 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// The money that the seller receives from the sale of this specific item. + /// + [DataContract] + public partial class OrderItemProceeds : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public OrderItemProceeds() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// An amount of money, including units in the form of currency. + /// The breakdown of proceeds. + public OrderItemProceeds(Money proceedsTotal = default, List breakdowns = default) + { + this.ProceedsTotal = proceedsTotal; + this.Breakdowns = breakdowns; + } + + /// + /// An amount of money, including units in the form of currency. + /// + /// An amount of money, including units in the form of currency. + [DataMember(Name = "proceedsTotal", EmitDefaultValue = false)] + public Money ProceedsTotal { get; set; } + + /// + /// The breakdown of proceeds. + /// + /// The breakdown of proceeds. + [DataMember(Name = "breakdowns", EmitDefaultValue = false)] + public List Breakdowns { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OrderItemProceeds {\n"); + sb.Append(" ProceedsTotal: ").Append(ProceedsTotal).Append("\n"); + sb.Append(" Breakdowns: ").Append(Breakdowns).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as OrderItemProceeds); + } + + /// + /// Returns true if OrderItemProceeds instances are equal + /// + /// Instance of OrderItemProceeds to be compared + /// Boolean + public bool Equals(OrderItemProceeds input) + { + if (input == null) + return false; + + return + ( + this.ProceedsTotal == input.ProceedsTotal || + (this.ProceedsTotal != null && + this.ProceedsTotal.Equals(input.ProceedsTotal)) + ) && + ( + this.Breakdowns == input.Breakdowns || + (this.Breakdowns != null && + this.Breakdowns.SequenceEqual(input.Breakdowns)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ProceedsTotal != null) + hashCode = hashCode * 59 + this.ProceedsTotal.GetHashCode(); + if (this.Breakdowns != null) + hashCode = hashCode * 59 + this.Breakdowns.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProceedsBreakdown.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProceedsBreakdown.cs new file mode 100644 index 00000000..eaf89bc2 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProceedsBreakdown.cs @@ -0,0 +1,152 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// OrderItemProceedsBreakdown + /// + [DataContract] + public partial class OrderItemProceedsBreakdown : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public OrderItemProceedsBreakdown() { } + + /// + /// Initializes a new instance of the class. + /// + /// Category classification of the proceeds breakdown. + /// An amount of money, including units in the form of currency. + /// Further granular breakdown of the subtotal. + public OrderItemProceedsBreakdown(ProceedsBreakdownTypeEnum? type = default, + Money subtotal = default, + List detailedBreakdowns = default) + { + this.Type = type; + this.Subtotal = subtotal; + this.DetailedBreakdowns = detailedBreakdowns; + } + + /// + /// Category classification of the proceeds breakdown. + /// + /// Category classification of the proceeds breakdown. + [DataMember(Name = "type", EmitDefaultValue = false)] + public ProceedsBreakdownTypeEnum? Type { get; set; } + + /// + /// An amount of money, including units in the form of currency. + /// + /// An amount of money, including units in the form of currency. + [DataMember(Name = "subtotal", EmitDefaultValue = false)] + public Money Subtotal { get; set; } + + /// + /// Further granular breakdown of the subtotal. + /// + /// Further granular breakdown of the subtotal. + [DataMember(Name = "detailedBreakdowns", EmitDefaultValue = false)] + public List DetailedBreakdowns { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OrderItemProceedsBreakdown {\n"); + sb.Append(" Type: ").Append(Type).Append("\n"); + sb.Append(" Subtotal: ").Append(Subtotal).Append("\n"); + sb.Append(" DetailedBreakdowns: ").Append(DetailedBreakdowns).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as OrderItemProceedsBreakdown); + } + + /// + /// Returns true if OrderItemProceedsBreakdown instances are equal + /// + /// Instance of OrderItemProceedsBreakdown to be compared + /// Boolean + public bool Equals(OrderItemProceedsBreakdown input) + { + if (input == null) + return false; + + return + ( + this.Type == input.Type || + (this.Type != null && + this.Type.Equals(input.Type)) + ) && + ( + this.Subtotal == input.Subtotal || + (this.Subtotal != null && + this.Subtotal.Equals(input.Subtotal)) + ) && + ( + this.DetailedBreakdowns == input.DetailedBreakdowns || + (this.DetailedBreakdowns != null && + this.DetailedBreakdowns.SequenceEqual(input.DetailedBreakdowns)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Type != null) + hashCode = hashCode * 59 + this.Type.GetHashCode(); + if (this.Subtotal != null) + hashCode = hashCode * 59 + this.Subtotal.GetHashCode(); + if (this.DetailedBreakdowns != null) + hashCode = hashCode * 59 + this.DetailedBreakdowns.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProceedsDetailedBreakdown.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProceedsDetailedBreakdown.cs new file mode 100644 index 00000000..7c0e9209 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProceedsDetailedBreakdown.cs @@ -0,0 +1,132 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// OrderItemProceedsDetailedBreakdown + /// + [DataContract] + public partial class OrderItemProceedsDetailedBreakdown : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public OrderItemProceedsDetailedBreakdown() { } + + /// + /// Initializes a new instance of the class. + /// + /// Specific classification of the further granular breakdown. + /// An amount of money, including units in the form of currency. + public OrderItemProceedsDetailedBreakdown(ProceedsBreakdownSubtypeEnum? subtype = default, Money value = default) + { + this.Subtype = subtype; + this.Value = value; + } + + /// + /// Specific classification of the further granular breakdown. + /// + /// Specific classification of the further granular breakdown. + [DataMember(Name = "subtype", EmitDefaultValue = false)] + public ProceedsBreakdownSubtypeEnum? Subtype { get; set; } + + /// + /// An amount of money, including units in the form of currency. + /// + /// An amount of money, including units in the form of currency. + [DataMember(Name = "value", EmitDefaultValue = false)] + public Money Value { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OrderItemProceedsDetailedBreakdown {\n"); + sb.Append(" Subtype: ").Append(Subtype).Append("\n"); + sb.Append(" Value: ").Append(Value).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as OrderItemProceedsDetailedBreakdown); + } + + /// + /// Returns true if OrderItemProceedsDetailedBreakdown instances are equal + /// + /// Instance of OrderItemProceedsDetailedBreakdown to be compared + /// Boolean + public bool Equals(OrderItemProceedsDetailedBreakdown input) + { + if (input == null) + return false; + + return + ( + this.Subtype == input.Subtype || + (this.Subtype != null && + this.Subtype.Equals(input.Subtype)) + ) && + ( + this.Value == input.Value || + (this.Value != null && + this.Value.Equals(input.Value)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Subtype != null) + hashCode = hashCode * 59 + this.Subtype.GetHashCode(); + if (this.Value != null) + hashCode = hashCode * 59 + this.Value.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProgramEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProgramEnum.cs new file mode 100644 index 00000000..c76551e7 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderItemProgramEnum.cs @@ -0,0 +1,31 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Special programs that apply specifically to this item within the order. + /// + /// Special programs that apply specifically to this item within the order. + [JsonConverter(typeof(StringEnumConverter))] + public enum OrderItemProgramEnum + { + /// + /// Enum value for type TRANSPARENCY + /// + [EnumMember(Value = "TRANSPARENCY")] + TRANSPARENCY = 1, + + /// + /// Enum value for type SUBSCRIBE_AND_SAVE + /// + [EnumMember(Value = "SUBSCRIBE_AND_SAVE")] + SUBSCRIBE_AND_SAVE = 2, + + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderProceeds.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderProceeds.cs new file mode 100644 index 00000000..db443657 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/OrderProceeds.cs @@ -0,0 +1,115 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// The money that the seller receives from the sale of the order. + /// + [DataContract] + public partial class OrderProceeds : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public OrderProceeds() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// An amount of money, including units in the form of currency. + public OrderProceeds(Money grandTotal = default) + { + this.GrandTotal = grandTotal; + } + + /// + /// An amount of money, including units in the form of currency. + /// + /// An amount of money, including units in the form of currency. + [DataMember(Name = "grandTotal", EmitDefaultValue = false)] + public Money GrandTotal { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OrderProceeds {\n"); + sb.Append(" GrandTotal: ").Append(GrandTotal).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as OrderProceeds); + } + + /// + /// Returns true if OrderProceeds instances are equal + /// + /// Instance of OrderProceeds to be compared + /// Boolean + public bool Equals(OrderProceeds input) + { + if (input == null) + return false; + + return + ( + this.GrandTotal == input.GrandTotal || + (this.GrandTotal != null && + this.GrandTotal.Equals(input.GrandTotal)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.GrandTotal != null) + hashCode = hashCode * 59 + this.GrandTotal.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Package.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Package.cs new file mode 100644 index 00000000..3db5c9c0 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Package.cs @@ -0,0 +1,271 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Shipping package created for order, including tracking information. + /// + [DataContract] + public partial class Package : IEquatable, IValidatableObject + { + + /// + /// Initializes a new instance of the class. + /// + protected Package() { } + + /// + /// Initializes a new instance of the class. + /// + /// A unique identifier for this package within the context of the order. (required) + /// The exact time when this shipping package was created and prepared for shipment. In ISO 8601 format. + /// Current status and detailed tracking information for a shipping package throughout the delivery process. + /// The carrier responsible for transporting this package to the customer. + /// The exact time when this package was handed over to the carrier and began its journey to the customer. In ISO 8601 format. + /// The specific shipping method or service used for delivering this package. + /// The carrier-provided tracking number that customers can use to monitor the package's delivery progress. + /// The physical address of the merchant. + /// A list of all order items included in this specific package. + + public Package(string packageReferenceId = default, + DateTime? createdTime = default, + PackageStatus packageStatus = default, + string carrier = default, + DateTime? shipTime = default, + string shippingService = default, + string trackingNumber = default, + Address shipFromAddress = default, + List packageItems = default) + { + // to ensure "packageReferenceId" is required (not null) + if (packageReferenceId == null) + { + throw new InvalidDataException("packageReferenceId is a required property for Package and cannot be null"); + } + else + { + this.PackageReferenceId = packageReferenceId; + } + + this.CreatedTime = createdTime; + this.PackageStatus = packageStatus; + this.Carrier = carrier; + this.ShipTime = shipTime; + this.ShippingService = shippingService; + this.TrackingNumber = trackingNumber; + this.ShipFromAddress = shipFromAddress; + this.PackageItems = packageItems; + } + + /// + /// A unique identifier for this package within the context of the order. (required) + /// + /// A unique identifier for this package within the context of the order. (required) + [DataMember(Name = "packageReferenceId", EmitDefaultValue = false)] + public string PackageReferenceId { get; set; } + + /// + /// The exact time when this shipping package was created and prepared for shipment. In ISO 8601 format. + /// + /// The exact time when this shipping package was created and prepared for shipment. In ISO 8601 format. + [DataMember(Name = "createdTime", EmitDefaultValue = false)] + public DateTime? CreatedTime { get; set; } + + /// + /// Current status and detailed tracking information for a shipping package throughout the delivery process. + /// + /// Current status and detailed tracking information for a shipping package throughout the delivery process. + [DataMember(Name = "packageStatus", EmitDefaultValue = false)] + public PackageStatus PackageStatus { get; set; } + + /// + /// The carrier responsible for transporting this package to the customer. + /// + /// The carrier responsible for transporting this package to the customer. + [DataMember(Name = "carrier", EmitDefaultValue = false)] + public string Carrier { get; set; } + + /// + /// The exact time when this package was handed over to the carrier and began its journey to the customer. In ISO 8601 format. + /// + /// The exact time when this package was handed over to the carrier and began its journey to the customer. In ISO 8601 format. + [DataMember(Name = "shipTime", EmitDefaultValue = false)] + public DateTime? ShipTime { get; set; } + + /// + /// The specific shipping method or service used for delivering this package. + /// + /// The specific shipping method or service used for delivering this package. + [DataMember(Name = "shippingService", EmitDefaultValue = false)] + public string ShippingService { get; set; } + + /// + /// The carrier-provided tracking number that customers can use to monitor the package's delivery progress. + /// + /// The carrier-provided tracking number that customers can use to monitor the package's delivery progress. + [DataMember(Name = "trackingNumber", EmitDefaultValue = false)] + public string TrackingNumber { get; set; } + + /// + /// The physical address of the merchant. + /// + /// The physical address of the merchant. + [DataMember(Name = "shipFromAddress", EmitDefaultValue = false)] + public Address ShipFromAddress { get; set; } + + /// + /// The cancellation information of the order item. + /// + /// The cancellation information of the order item. + [DataMember(Name = "packageItems", EmitDefaultValue = false)] + public List PackageItems { get; set; } + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Package {\n"); + sb.Append(" PackageReferenceId: ").Append(PackageReferenceId).Append("\n"); + sb.Append(" CreatedTime: ").Append(CreatedTime).Append("\n"); + sb.Append(" PackageStatus: ").Append(PackageStatus).Append("\n"); + sb.Append(" Carrier: ").Append(Carrier).Append("\n"); + sb.Append(" ShipTime: ").Append(ShipTime).Append("\n"); + sb.Append(" ShippingService: ").Append(ShippingService).Append("\n"); + sb.Append(" TrackingNumber: ").Append(TrackingNumber).Append("\n"); + sb.Append(" ShipFromAddress: ").Append(ShipFromAddress).Append("\n"); + sb.Append(" PackageItems: ").Append(PackageItems).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Package); + } + + /// + /// Returns true if Package instances are equal + /// + /// Instance of Package to be compared + /// Boolean + public bool Equals(Package input) + { + if (input == null) + return false; + + return + ( + this.PackageReferenceId == input.PackageReferenceId || + (this.PackageReferenceId != null && + this.PackageReferenceId.Equals(input.PackageReferenceId)) + ) && + ( + this.CreatedTime == input.CreatedTime || + (this.CreatedTime != null && + this.CreatedTime.Equals(input.CreatedTime)) + ) && + ( + this.PackageStatus == input.PackageStatus || + (this.PackageStatus != null && + this.PackageStatus.Equals(input.PackageStatus)) + ) && + ( + this.Carrier == input.Carrier || + (this.Carrier != null && + this.Carrier.SequenceEqual(input.Carrier)) + ) && + ( + this.ShipTime == input.ShipTime || + (this.ShipTime != null && + this.ShipTime.Equals(input.ShipTime)) + ) && + ( + this.ShippingService == input.ShippingService || + (this.ShippingService != null && + this.ShippingService.Equals(input.ShippingService)) + ) && + ( + this.TrackingNumber == input.TrackingNumber || + (this.TrackingNumber != null && + this.TrackingNumber.Equals(input.TrackingNumber)) + ) && + ( + this.ShipFromAddress == input.ShipFromAddress || + (this.ShipFromAddress != null && + this.ShipFromAddress.Equals(input.ShipFromAddress)) + ) && + ( + this.PackageItems == input.PackageItems || + (this.PackageItems != null && + this.PackageItems.SequenceEqual(input.PackageItems)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.PackageReferenceId != null) + hashCode = hashCode * 59 + this.PackageReferenceId.GetHashCode(); + if (this.CreatedTime != null) + hashCode = hashCode * 59 + this.CreatedTime.GetHashCode(); + if (this.PackageStatus != null) + hashCode = hashCode * 59 + this.PackageStatus.GetHashCode(); + if (this.Carrier != null) + hashCode = hashCode * 59 + this.Carrier.GetHashCode(); + if (this.ShipTime != null) + hashCode = hashCode * 59 + this.ShipTime.GetHashCode(); + if (this.ShippingService != null) + hashCode = hashCode * 59 + this.ShippingService.GetHashCode(); + if (this.TrackingNumber != null) + hashCode = hashCode * 59 + this.TrackingNumber.GetHashCode(); + if (this.ShipFromAddress != null) + hashCode = hashCode * 59 + this.ShipFromAddress.GetHashCode(); + if (this.PackageItems != null) + hashCode = hashCode * 59 + this.PackageItems.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageDetailedStatusEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageDetailedStatusEnum.cs new file mode 100644 index 00000000..2cd6d411 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageDetailedStatusEnum.cs @@ -0,0 +1,115 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Granular status information providing specific details about the package's current location and handling stage. + /// + /// Granular status information providing specific details about the package's current location and handling stage. + [JsonConverter(typeof(StringEnumConverter))] + public enum PackageDetailedStatusEnum + { + + /// + /// Package awaiting pickup scheduling + /// + [EnumMember(Value = "PENDING_SCHEDULE")] + PENDING_SCHEDULE = 1, + + /// + /// Package ready for carrier collection from seller + /// + [EnumMember(Value = "PENDING_PICK_UP")] + PENDING_PICK_UP = 2, + + /// + /// Package awaiting seller delivery to carrier + /// + [EnumMember(Value = "PENDING_DROP_OFF")] + PENDING_DROP_OFF = 3, + + /// + /// Shipping label canceled by seller + /// + [EnumMember(Value = "LABEL_CANCELLED")] + LABEL_CANCELLED = 4, + + /// + /// Package collected by carrier from seller location + /// + [EnumMember(Value = "PICKED_UP")] + PICKED_UP = 5, + + /// + /// Package delivered to carrier by seller + /// + [EnumMember(Value = "DROPPED_OFF")] + DROPPED_OFF = 6, + + /// + /// Package at originating fulfillment center + /// + [EnumMember(Value = "AT_ORIGIN_FC")] + AT_ORIGIN_FC = 7, + + /// + /// Package at destination fulfillment center + /// + [EnumMember(Value = "AT_DESTINATION_FC")] + AT_DESTINATION_FC = 8, + + /// + /// Package successfully delivered to recipient + /// + [EnumMember(Value = "DELIVERED")] + DELIVERED = 9, + + /// + /// Package refused by intended recipient + /// + [EnumMember(Value = "REJECTED_BY_BUYER")] + REJECTED_BY_BUYER = 10, + + /// + /// Package cannot be delivered due to address or access issues + /// + [EnumMember(Value = "UNDELIVERABLE")] + UNDELIVERABLE = 11, + + /// + /// Package in transit back to seller + /// + [EnumMember(Value = "RETURNING_TO_SELLER")] + RETURNING_TO_SELLER = 12, + + /// + /// Package successfully returned to seller + /// + [EnumMember(Value = "RETURNED_TO_SELLER")] + RETURNED_TO_SELLER = 13, + + /// + /// Package location unknown or confirmed lost + /// + [EnumMember(Value = "LOST")] + LOST = 14, + + /// + /// Package on delivery vehicle for final delivery + /// + [EnumMember(Value = "OUT_FOR_DELIVERY")] + OUT_FOR_DELIVERY = 15, + + /// + /// Package damaged during transit + /// + [EnumMember(Value = "DAMAGED")] + DAMAGED = 16, + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageItem.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageItem.cs new file mode 100644 index 00000000..83bcbe60 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageItem.cs @@ -0,0 +1,173 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Diagnostics.Metrics; +using System.IO; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Order item included in specific package. + /// + [DataContract] + public partial class PackageItem : IEquatable, IValidatableObject + { + + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + protected PackageItem() { } + + /// + /// Initializes a new instance of the class. + /// + /// Unique identifier of the order item included in this package. (required) + /// Number of units of this item included in the package shipment. (required) + /// The transparency codes associated with this item for product authentication. + public PackageItem(string orderItemId = default, + int quantity = default, + List transparencyCodes = default) + { + // to ensure "orderItemId" is required (not null) + if (orderItemId == null) + { + throw new InvalidDataException("orderItemId is a required property for PackageItem and cannot be null"); + } + else + { + this.OrderItemId = orderItemId; + } + + // to ensure "quantity" is required (not null) + if (quantity == null) + { + throw new InvalidDataException("quantity is a required property for PackageItem and cannot be null"); + } + else + { + this.Quantity = quantity; + } + + this.TransparencyCodes = transparencyCodes; + } + + /// + /// Unique identifier of the order item included in this package. (required) + /// + /// Unique identifier of the order item included in this package. (required) + [DataMember(Name = "orderItemId", EmitDefaultValue = false)] + public string OrderItemId { get; set; } + + /// + /// Number of units of this item included in the package shipment. (required) + /// + /// Number of units of this item included in the package shipment. (required) + [DataMember(Name = "quantity", EmitDefaultValue = false)] + public int Quantity { get; set; } + + /// + /// The transparency codes associated with this item for product authentication. + /// + /// The transparency codes associated with this item for product authentication. + [DataMember(Name = "transparencyCodes", EmitDefaultValue = false)] + public List TransparencyCodes { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class PackageItem {\n"); + sb.Append(" OrderItemId: ").Append(OrderItemId).Append("\n"); + sb.Append(" Quantity: ").Append(Quantity).Append("\n"); + sb.Append(" TransparencyCodes: ").Append(TransparencyCodes).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as PackageItem); + } + + /// + /// Returns true if PackageItem instances are equal + /// + /// Instance of PackageItem to be compared + /// Boolean + public bool Equals(PackageItem input) + { + if (input == null) + return false; + + return + ( + this.OrderItemId == input.OrderItemId || + (this.OrderItemId != null && + this.OrderItemId.Equals(input.OrderItemId)) + ) && + ( + this.Quantity == input.Quantity || + (this.Quantity != null && + this.Quantity.Equals(input.Quantity)) + ) && + ( + this.TransparencyCodes == input.TransparencyCodes || + (this.TransparencyCodes != null && + this.TransparencyCodes.SequenceEqual(input.TransparencyCodes)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.OrderItemId != null) + hashCode = hashCode * 59 + this.OrderItemId.GetHashCode(); + if (this.Quantity != null) + hashCode = hashCode * 59 + this.Quantity.GetHashCode(); + if (this.TransparencyCodes != null) + hashCode = hashCode * 59 + this.TransparencyCodes.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageStatus.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageStatus.cs new file mode 100644 index 00000000..ebf4607c --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageStatus.cs @@ -0,0 +1,136 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Current status and detailed tracking information for a shipping package throughout the delivery process. + /// + [DataContract] + public partial class PackageStatus : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + public PackageStatus() { } + + /// + /// Initializes a new instance of the class. + /// + /// Primary status classification of the package in the shipping workflow. (required) + /// Granular status information providing specific details about the package's current location and handling stage. + + public PackageStatus(PackageStatusEnum status = default, + PackageDetailedStatusEnum? detailedStatus = default) + { + this.Status = status; + this.DetailedStatus = detailedStatus; + } + + + /// + /// Primary status classification of the package in the shipping workflow. (required) + /// + /// Primary status classification of the package in the shipping workflow. (required) + [DataMember(Name = "status", EmitDefaultValue = false)] + public PackageStatusEnum Status { get; set; } + + /// + /// Granular status information providing specific details about the package's current location and handling stage. + /// + /// Granular status information providing specific details about the package's current location and handling stage. + [DataMember(Name = "detailedStatus", EmitDefaultValue = false)] + public PackageDetailedStatusEnum? DetailedStatus { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class PackageStatus {\n"); + sb.Append(" Status: ").Append(Status).Append("\n"); + sb.Append(" DetailedStatus: ").Append(DetailedStatus).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as PackageStatus); + } + + /// + /// Returns true if PackageStatus instances are equal + /// + /// Instance of PackageStatus to be compared + /// Boolean + public bool Equals(PackageStatus input) + { + if (input == null) + return false; + + return + ( + this.Status == input.Status || + (this.Status != null && + this.Status.Equals(input.Status)) + ) && + ( + this.DetailedStatus == input.DetailedStatus || + (this.DetailedStatus != null && + this.DetailedStatus.Equals(input.DetailedStatus)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Status != null) + hashCode = hashCode * 59 + this.Status.GetHashCode(); + if (this.DetailedStatus != null) + hashCode = hashCode * 59 + this.DetailedStatus.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageStatusEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageStatusEnum.cs new file mode 100644 index 00000000..423a4b5a --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PackageStatusEnum.cs @@ -0,0 +1,56 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Current status and detailed tracking information for a shipping package throughout the delivery process. + /// + /// Current status and detailed tracking information for a shipping package throughout the delivery process. + [JsonConverter(typeof(StringEnumConverter))] + public enum PackageStatusEnum + { + + /// + /// Package preparation stage before carrier handoff + /// + [EnumMember(Value = "PENDING")] + PENDING = 1, + + /// + /// Package movement phase within carrier network + /// + [EnumMember(Value = "IN_TRANSIT")] + IN_TRANSIT = 2, + + /// + /// Package dispatch confirmation to customer + /// + [EnumMember(Value = "SHIPPED")] + SHIPPED = 3, + + /// + /// Package completion at final destination + /// + [EnumMember(Value = "DELIVERED")] + DELIVERED = 4, + + /// + /// Package shipment termination before delivery + /// + [EnumMember(Value = "CANCELLED")] + CANCELLED = 5, + + /// + /// Package delivery failure + /// + [EnumMember(Value = "UNDELIVERABLE")] + UNDELIVERABLE = 6, + + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Packing.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Packing.cs new file mode 100644 index 00000000..45c1fa8d --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Packing.cs @@ -0,0 +1,116 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Information related to the packaging process for an order item. + /// + [DataContract] + public partial class Packing : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public Packing() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// Gift wrapping and personalization options selected by the customer for an order item. + public Packing(GiftOption giftOption = default) + { + this.GiftOption = giftOption; + } + + /// + /// Gift wrapping and personalization options selected by the customer for an order item. + /// + /// Gift wrapping and personalization options selected by the customer for an order item. + [DataMember(Name = "giftOption", EmitDefaultValue = false)] + public GiftOption GiftOption { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Packing {\n"); + sb.Append(" GiftOption: ").Append(GiftOption).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Packing); + } + + /// + /// Returns true if Packing instances are equal + /// + /// Instance of Packing to be compared + /// Boolean + public bool Equals(Packing input) + { + if (input == null) + return false; + + return + ( + this.GiftOption == input.GiftOption || + (this.GiftOption != null && + this.GiftOption.Equals(input.GiftOption)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.GiftOption != null) + hashCode = hashCode * 59 + this.GiftOption.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Pagination.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Pagination.cs new file mode 100644 index 00000000..4f364317 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Pagination.cs @@ -0,0 +1,129 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// When a request has results that are not included in the response, pagination occurs. This means the results are divided into individual pages. + /// To retrieve a different page, you must pass the token value as the paginationToken query parameter in the subsequent request. + /// All other parameters must be provided with the same values that were provided with the request that generated this token, with the exception of maxResultsPerPage and includedData, which can be modified between calls. + /// The token will expire after 24 hours. When there are no other pages to fetch, the pagination field will be absent from the response. + /// + [DataContract] + public partial class Pagination : IEquatable, IValidatableObject + { + + /// + /// Initializes a new instance of the class. + /// + public Pagination() { } + + /// + /// Initializes a new instance of the class. + /// + /// A token that can be used to fetch the next page of results. + public Pagination(string nextToken = default) + { + NextToken = nextToken; + } + + /// + /// A token that can be used to fetch the next page of results. + /// + /// A token that can be used to fetch the next page of results. + [DataMember(Name="nextToken", EmitDefaultValue=false)] + public string NextToken { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Pagination {\n"); + sb.Append(" NextToken: ").Append(NextToken).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return Equals(input as Pagination); + } + + /// + /// Returns true if Pagination instances are equal + /// + /// Instance of Pagination to be compared + /// Boolean + public bool Equals(Pagination input) + { + if (input == null) + return false; + + return + + NextToken == input.NextToken || + NextToken != null && + NextToken.Equals(input.NextToken) + ; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (NextToken != null) + hashCode = hashCode * 59 + NextToken.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + // NextToken (string) maxLength + if(NextToken != null && NextToken.Length > 1024) + { + yield return new ValidationResult("Invalid value for NextToken, length must be less than 1024.", new [] { "NextToken" }); + } + + // NextToken (string) minLength + if(NextToken != null && NextToken.Length < 1) + { + yield return new ValidationResult("Invalid value for NextToken, length must be greater than 1.", new [] { "NextToken" }); + } + + yield break; + } + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Picking.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Picking.cs new file mode 100644 index 00000000..26d6aa7e --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Picking.cs @@ -0,0 +1,116 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Information related to the warehouse picking process for an order item. + /// + [DataContract] + public partial class Picking : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public Picking() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// Substitution preference for an order item when it becomes unavailable during fulfillment. + public Picking(SubstitutionPreference substitutionPreference = default) + { + this.SubstitutionPreference = substitutionPreference; + } + + /// + /// Substitution preference for an order item when it becomes unavailable during fulfillment. + /// + /// Substitution preference for an order item when it becomes unavailable during fulfillment. + [DataMember(Name = "substitutionPreference", EmitDefaultValue = false)] + public SubstitutionPreference SubstitutionPreference { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Picking {\n"); + sb.Append(" SubstitutionPreference: ").Append(SubstitutionPreference).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Picking); + } + + /// + /// Returns true if Picking instances are equal + /// + /// Instance of Picking to be compared + /// Boolean + public bool Equals(Picking input) + { + if (input == null) + return false; + + return + ( + this.SubstitutionPreference == input.SubstitutionPreference || + (this.SubstitutionPreference != null && + this.SubstitutionPreference.Equals(input.SubstitutionPreference)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.SubstitutionPreference != null) + hashCode = hashCode * 59 + this.SubstitutionPreference.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PointsCost.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PointsCost.cs new file mode 100644 index 00000000..6f688bca --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PointsCost.cs @@ -0,0 +1,116 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Information about Amazon Points granted with the purchase of an item, including both quantity and monetary equivalent value. + /// + [DataContract] + public partial class PointsCost : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public PointsCost() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// Information about Amazon Points awarded with an item purchase. + + public PointsCost(PointsGranted pointsGranted = default) + { + this.PointsGranted = pointsGranted; + } + + /// + /// Information about Amazon Points awarded with an item purchase. + /// + /// Information about Amazon Points awarded with an item purchase. + [DataMember(Name = "pointsGranted", EmitDefaultValue = false)] + public PointsGranted PointsGranted { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class PointsCost {\n"); + sb.Append(" PointsGranted: ").Append(PointsGranted).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as PointsCost); + } + + /// + /// Returns true if PointsCost instances are equal + /// + /// Instance of PointsCost to be compared + /// Boolean + public bool Equals(PointsCost input) + { + if (input == null) + return false; + + return + ( + this.PointsGranted == input.PointsGranted || + (this.PointsGranted != null && + this.PointsGranted.Equals(input.PointsGranted)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.PointsGranted != null) + hashCode = hashCode * 59 + this.PointsGranted.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PointsGranted.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PointsGranted.cs new file mode 100644 index 00000000..ccbe645e --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PointsGranted.cs @@ -0,0 +1,132 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Information about Amazon Points awarded with an item purchase. + /// + [DataContract] + public partial class PointsGranted : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public PointsGranted() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// Total number of Amazon Points granted to the customer's account for this item purchase. + /// An amount of money, including units in the form of currency. + public PointsGranted(int? pointsNumber = default, Money pointsMonetaryValue = default) + { + PointsNumber = pointsNumber; + PointsMonetaryValue = pointsMonetaryValue; + } + + /// + /// Total number of Amazon Points granted to the customer's account for this item purchase. + /// + /// Total number of Amazon Points granted to the customer's account for this item purchase. + [DataMember(Name = "pointsNumber", EmitDefaultValue = false)] + public int? PointsNumber { get; set; } + + /// + /// An amount of money, including units in the form of currency. + /// + /// An amount of money, including units in the form of currency. + [DataMember(Name = "pointsMonetaryValue", EmitDefaultValue = false)] + public Money PointsMonetaryValue { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class PointsGranted {\n"); + sb.Append(" PointsNumber: ").Append(PointsNumber).Append("\n"); + sb.Append(" PointsMonetaryValue: ").Append(PointsMonetaryValue).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as PointsGranted); + } + + /// + /// Returns true if PointsGranted instances are equal + /// + /// Instance of PointsGranted to be compared + /// Boolean + public bool Equals(PointsGranted input) + { + if (input == null) + return false; + + return + ( + this.PointsNumber == input.PointsNumber || + (this.PointsNumber != null && + this.PointsNumber.Equals(input.PointsNumber)) + ) && + ( + this.PointsMonetaryValue == input.PointsMonetaryValue || + (this.PointsMonetaryValue != null && + this.PointsMonetaryValue.Equals(input.PointsMonetaryValue)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.PointsNumber != null) + hashCode = hashCode * 59 + this.PointsNumber.GetHashCode(); + if (this.PointsMonetaryValue != null) + hashCode = hashCode * 59 + this.PointsMonetaryValue.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Price.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Price.cs new file mode 100644 index 00000000..deebccb9 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Price.cs @@ -0,0 +1,132 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Pricing information for the order item. + /// + [DataContract] + public partial class Price : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public Price() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// An amount of money, including units in the form of currency. + /// Indicates that the selling price is a special price that is only available for Amazon Business orders. For more information about the Amazon Business Seller Program, refer to the Amazon Business website. + public Price(Money unitPrice = default, PriceDesignationEnum? priceDesignation = default) + { + this.UnitPrice = unitPrice; + this.PriceDesignation = priceDesignation; + } + + /// + /// An amount of money, including units in the form of currency. + /// + /// An amount of money, including units in the form of currency. + [DataMember(Name = "unitPrice", EmitDefaultValue = false)] + public Money UnitPrice { get; set; } + + /// + /// Indicates that the selling price is a special price that is only available for Amazon Business orders. For more information about the Amazon Business Seller Program, refer to the Amazon Business website. + /// + /// Indicates that the selling price is a special price that is only available for Amazon Business orders. For more information about the Amazon Business Seller Program, refer to the Amazon Business website. + [DataMember(Name = "priceDesignation", EmitDefaultValue = false)] + public PriceDesignationEnum? PriceDesignation { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Price {\n"); + sb.Append(" UnitPrice: ").Append(UnitPrice).Append("\n"); + sb.Append(" PriceDesignation: ").Append(PriceDesignation).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Price); + } + + /// + /// Returns true if Price instances are equal + /// + /// Instance of Price to be compared + /// Boolean + public bool Equals(Price input) + { + if (input == null) + return false; + + return + ( + this.UnitPrice == input.UnitPrice || + (this.UnitPrice != null && + this.UnitPrice.Equals(input.UnitPrice)) + ) && + ( + this.PriceDesignation == input.PriceDesignation || + (this.PriceDesignation != null && + this.PriceDesignation.Equals(input.PriceDesignation)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.UnitPrice != null) + hashCode = hashCode * 59 + this.UnitPrice.GetHashCode(); + if (this.PriceDesignation != null) + hashCode = hashCode * 59 + this.PriceDesignation.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PriceDesignationEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PriceDesignationEnum.cs new file mode 100644 index 00000000..0fe7071c --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PriceDesignationEnum.cs @@ -0,0 +1,24 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Indicates that the selling price is a special price that is only available for Amazon Business orders. For more information about the Amazon Business Seller Program, refer to the Amazon Business website. + /// + /// Indicates that the selling price is a special price that is only available for Amazon Business orders. For more information about the Amazon Business Seller Program, refer to the Amazon Business website. + [JsonConverter(typeof(StringEnumConverter))] + public enum PriceDesignationEnum + { + /// + /// Enum value for type BUSINESS_PRICE + /// + [EnumMember(Value = "BUSINESS_PRICE")] + BUSINESS_PRICE = 1, + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ProceedsBreakdownSubtypeEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ProceedsBreakdownSubtypeEnum.cs new file mode 100644 index 00000000..67e98419 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ProceedsBreakdownSubtypeEnum.cs @@ -0,0 +1,54 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Specific classification of the further granular breakdown. + /// + /// Specific classification of the further granular breakdown. + [JsonConverter(typeof(StringEnumConverter))] + public enum ProceedsBreakdownSubtypeEnum + { + /// + /// Enum value for type ITEM + /// + [EnumMember(Value = "ITEM")] + ITEM = 1, + + /// + /// Enum value for type SHIPPING + /// + [EnumMember(Value = "SHIPPING")] + SHIPPING = 2, + + /// + /// Enum value for type GIFT_WRAP + /// + [EnumMember(Value = "GIFT_WRAP")] + GIFT_WRAP = 3, + + /// + /// Enum value for type COD_FEE + /// + [EnumMember(Value = "COD_FEE")] + COD_FEE = 4, + + /// + /// Enum value for type OTHER + /// + [EnumMember(Value = "OTHER")] + OTHER = 5, + + /// + /// Enum value for type DISCOUNT + /// + [EnumMember(Value = "DISCOUNT")] + DISCOUNT = 6, + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ProceedsBreakdownTypeEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ProceedsBreakdownTypeEnum.cs new file mode 100644 index 00000000..24c96677 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ProceedsBreakdownTypeEnum.cs @@ -0,0 +1,60 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Category classification of the proceeds breakdown. + /// + /// Category classification of the proceeds breakdown. + [JsonConverter(typeof(StringEnumConverter))] + public enum ProceedsBreakdownTypeEnum + { + /// + /// Enum value for type ITEM + /// + [EnumMember(Value = "ITEM")] + ITEM = 1, + + /// + /// Enum value for type SHIPPING + /// + [EnumMember(Value = "SHIPPING")] + SHIPPING = 2, + + /// + /// Enum value for type GIFT_WRAP + /// + [EnumMember(Value = "GIFT_WRAP")] + GIFT_WRAP = 3, + + /// + /// Enum value for type COD_FEE + /// + [EnumMember(Value = "COD_FEE")] + COD_FEE = 4, + + /// + /// Enum value for type OTHER + /// + [EnumMember(Value = "OTHER")] + OTHER = 5, + + /// + /// Enum value for type TAX + /// + [EnumMember(Value = "TAX")] + TAX = 6, + + /// + /// Enum value for type DISCOUNT + /// + [EnumMember(Value = "DISCOUNT")] + DISCOUNT = 7, + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Product.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Product.cs new file mode 100644 index 00000000..867cdfa5 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Product.cs @@ -0,0 +1,224 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Product information for an order item. + /// + [DataContract] + public partial class Product : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public Product() { } + + /// + /// Initializes a new instance of the class. + /// + /// The Amazon Standard Identification Number (ASIN), which uniquely identifies a product (catalog item). + /// The product name or title as displayed to customers in the marketplace. + /// The seller SKU of a product (catalog item). This is a unique number assigned by the seller when listing an item. + /// Detailed information about the physical condition and quality state of the item being sold. + /// Pricing information for the order item. + /// Unique serial numbers for products that require individual tracking, typically provided for FBA orders. + /// Information about any personalization, customization, or special modifications applied to this order item. + public Product(string asin = default, + string title = default, + string sellerSku = default, + Condition condition = default, + Price price = default, + List serialNumbers = default, + OrderItemCustomization customization = default) + { + this.Asin = asin; + this.Title = title; + this.SellerSku = sellerSku; + this.Condition = condition; + this.Price = price; + this.SerialNumbers = serialNumbers; + this.Customization = customization; + } + + + /// + /// The Amazon Standard Identification Number (ASIN), which uniquely identifies a product (catalog item). + /// + /// The Amazon Standard Identification Number (ASIN), which uniquely identifies a product (catalog item). + [DataMember(Name = "asin", EmitDefaultValue = false)] + public string Asin { get; set; } + + /// + /// The product name or title as displayed to customers in the marketplace. + /// + /// The product name or title as displayed to customers in the marketplace. + [DataMember(Name = "title", EmitDefaultValue = false)] + public string Title { get; set; } + + /// + /// The seller SKU of a product (catalog item). This is a unique number assigned by the seller when listing an item. + /// + /// The seller SKU of a product (catalog item). This is a unique number assigned by the seller when listing an item. + [DataMember(Name = "sellerSku", EmitDefaultValue = false)] + public string SellerSku { get; set; } + + /// + /// Detailed information about the physical condition and quality state of the item being sold. + /// + /// Detailed information about the physical condition and quality state of the item being sold. + [DataMember(Name = "condition", EmitDefaultValue = false)] + public Condition Condition { get; set; } + + /// + /// Pricing information for the order item. + /// + /// Pricing information for the order item. + [DataMember(Name = "price", EmitDefaultValue = false)] + public Price Price { get; set; } + + /// + /// Unique serial numbers for products that require individual tracking, typically provided for FBA orders. + /// + /// Unique serial numbers for products that require individual tracking, typically provided for FBA orders. + [DataMember(Name = "serialNumbers", EmitDefaultValue = false)] + public List SerialNumbers { get; set; } + + /// + /// Information about any personalization, customization, or special modifications applied to this order item. + /// + /// Information about any personalization, customization, or special modifications applied to this order item. + [DataMember(Name = "customization", EmitDefaultValue = false)] + public OrderItemCustomization Customization { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Product {\n"); + sb.Append(" Asin: ").Append(Asin).Append("\n"); + sb.Append(" Title: ").Append(Title).Append("\n"); + sb.Append(" SellerSku: ").Append(SellerSku).Append("\n"); + sb.Append(" Condition: ").Append(Condition).Append("\n"); + sb.Append(" Price: ").Append(Price).Append("\n"); + sb.Append(" SerialNumbers: ").Append(SerialNumbers).Append("\n"); + sb.Append(" Customization: ").Append(Customization).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Product); + } + + /// + /// Returns true if Product instances are equal + /// + /// Instance of Product to be compared + /// Boolean + public bool Equals(Product input) + { + if (input == null) + return false; + + return + ( + this.Asin == input.Asin || + (this.Asin != null && + this.Asin.Equals(input.Asin)) + ) && + ( + this.Title == input.Title || + (this.Title != null && + this.Title.Equals(input.Title)) + ) && + ( + this.SellerSku == input.SellerSku || + (this.SellerSku != null && + this.SellerSku.Equals(input.SellerSku)) + ) && + ( + this.Condition == input.Condition || + (this.Condition != null && + this.Condition.Equals(input.Condition)) + ) && + ( + this.Price == input.Price || + (this.Price != null && + this.Price.Equals(input.Price)) + ) && + ( + this.SerialNumbers == input.SerialNumbers || + (this.SerialNumbers != null && + this.SerialNumbers.SequenceEqual(input.SerialNumbers)) + ) && + ( + this.Customization == input.Customization || + (this.Customization != null && + this.Customization.Equals(input.Customization)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Asin != null) + hashCode = hashCode * 59 + this.Asin.GetHashCode(); + if (this.Title != null) + hashCode = hashCode * 59 + this.Title.GetHashCode(); + if (this.SellerSku != null) + hashCode = hashCode * 59 + this.SellerSku.GetHashCode(); + if (this.Condition != null) + hashCode = hashCode * 59 + this.Condition.GetHashCode(); + if (this.Price != null) + hashCode = hashCode * 59 + this.Price.GetHashCode(); + if (this.SerialNumbers != null) + hashCode = hashCode * 59 + this.SerialNumbers.GetHashCode(); + if (this.Customization != null) + hashCode = hashCode * 59 + this.Customization.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ProgramEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ProgramEnum.cs new file mode 100644 index 00000000..052ceced --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ProgramEnum.cs @@ -0,0 +1,78 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Special programs associated with order that may affect fulfillment or customer experience. + /// + /// Special programs associated with order that may affect fulfillment or customer experience. + [JsonConverter(typeof(StringEnumConverter))] + public enum ProgramEnum + { + /// + /// Enum value for type AMAZON_BAZAAR + /// + [EnumMember(Value = "AMAZON_BAZAAR")] + AMAZON_BAZAAR = 1, + + /// + /// Enum value for type AMAZON_BUSINESS + /// + [EnumMember(Value = "AMAZON_BUSINESS")] + AMAZON_BUSINESS = 2, + + /// + /// Enum value for type AMAZON_EASY_SHIP + /// + [EnumMember(Value = "AMAZON_EASY_SHIP")] + AMAZON_EASY_SHIP = 3, + + /// + /// Enum value for type AMAZON_HAUL + /// + [EnumMember(Value = "AMAZON_HAUL")] + AMAZON_HAUL = 4, + + /// + /// Enum value for type DELIVERY_BY_AMAZON + /// + [EnumMember(Value = "DELIVERY_BY_AMAZON")] + DELIVERY_BY_AMAZON = 5, + + /// + /// Enum value for type FBM_SHIP_PLUS + /// + [EnumMember(Value = "FBM_SHIP_PLUS")] + FBM_SHIP_PLUS = 6, + + /// + /// Enum value for type IN_STORE_PICK_UP + /// + [EnumMember(Value = "IN_STORE_PICK_UP")] + IN_STORE_PICK_UP = 7, + + /// + /// Enum value for type PREMIUM + /// + [EnumMember(Value = "PREMIUM")] + PREMIUM = 8, + + /// + /// Enum value for type PREORDER + /// + [EnumMember(Value = "PREORDER")] + PREORDER = 9, + + /// + /// Enum value for type PRIME + /// + [EnumMember(Value = "PRIME")] + PRIME = 10, + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Promotion.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Promotion.cs new file mode 100644 index 00000000..9b1a3d5b --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Promotion.cs @@ -0,0 +1,116 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Details about any discounts, coupons, or promotional offers applied to this item. + /// + [DataContract] + public partial class Promotion : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public Promotion() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// A list of promotions applied to the order item. + public Promotion(List breakdowns = default) + { + this.Breakdowns = breakdowns; + } + + /// + /// A list of promotions applied to the order item. + /// + /// A list of promotions applied to the order item. + [DataMember(Name = "breakdowns", EmitDefaultValue = false)] + public List Breakdowns { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Promotion {\n"); + sb.Append(" Breakdowns: ").Append(Breakdowns).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Promotion); + } + + /// + /// Returns true if Promotion instances are equal + /// + /// Instance of Promotion to be compared + /// Boolean + public bool Equals(Promotion input) + { + if (input == null) + return false; + + return + ( + this.Breakdowns == input.Breakdowns || + (this.Breakdowns != null && + this.Breakdowns.SequenceEqual(input.Breakdowns)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Breakdowns != null) + hashCode = hashCode * 59 + this.Breakdowns.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PromotionBreakdown.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PromotionBreakdown.cs new file mode 100644 index 00000000..2c8767fb --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/PromotionBreakdown.cs @@ -0,0 +1,116 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Promotion applied to the order item. + /// + [DataContract] + public partial class PromotionBreakdown : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public PromotionBreakdown() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// Unique identifier for the promotion applied to this item. + public PromotionBreakdown(string promotionId = default) + { + this.PromotionId = promotionId; + } + + /// + /// Unique identifier for the promotion applied to this item. + /// + /// Unique identifier for the promotion applied to this item. + [DataMember(Name = "promotionId", EmitDefaultValue = false)] + public string PromotionId { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class PromotionBreakdown {\n"); + sb.Append(" PromotionId: ").Append(PromotionId).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as PromotionBreakdown); + } + + /// + /// Returns true if PromotionBreakdown instances are equal + /// + /// Instance of PromotionBreakdown to be compared + /// Boolean + public bool Equals(PromotionBreakdown input) + { + if (input == null) + return false; + + return + ( + this.PromotionId == input.PromotionId || + (this.PromotionId != null && + this.PromotionId.Equals(input.PromotionId)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.PromotionId != null) + hashCode = hashCode * 59 + this.PromotionId.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Recipient.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Recipient.cs new file mode 100644 index 00000000..d1d136c5 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Recipient.cs @@ -0,0 +1,130 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Information about the recipient to whom the order should be delivered. + /// + [DataContract] + public partial class Recipient : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public Recipient() { } + + /// + /// Initializes a new instance of the class. + /// + /// The physical address of the customer. + /// Contains all delivery instructions that the customer provides for the shipping address. + public Recipient(Address deliveryAddress = default, DeliveryPreference deliveryPreference = default) + { + this.DeliveryAddress = deliveryAddress; + this.DeliveryPreference = deliveryPreference; + } + + /// + /// The physical address of the customer. + /// + /// The physical address of the customer. + [DataMember(Name = "deliveryAddress", EmitDefaultValue = false)] + public Address DeliveryAddress { get; set; } + + /// + /// Contains all delivery instructions that the customer provides for the shipping address. + /// + /// Contains all delivery instructions that the customer provides for the shipping address. + [DataMember(Name = "deliveryPreference", EmitDefaultValue = false)] + public DeliveryPreference DeliveryPreference { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Recipient {\n"); + sb.Append(" DeliveryAddress: ").Append(DeliveryAddress).Append("\n"); + sb.Append(" DeliveryPreference: ").Append(DeliveryPreference).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Recipient); + } + + /// + /// Returns true if Recipient instances are equal + /// + /// Instance of Recipient to be compared + /// Boolean + public bool Equals(Recipient input) + { + if (input == null) + return false; + + return + ( + this.DeliveryAddress == input.DeliveryAddress || + (this.DeliveryAddress != null && + this.DeliveryAddress.Equals(input.DeliveryAddress)) + ) && + ( + this.DeliveryPreference == input.DeliveryPreference || + (this.DeliveryPreference != null && + this.DeliveryPreference.Equals(input.DeliveryPreference)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.DeliveryAddress != null) + hashCode = hashCode * 59 + this.DeliveryAddress.GetHashCode(); + if (this.DeliveryPreference != null) + hashCode = hashCode * 59 + this.DeliveryPreference.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SalesChannel.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SalesChannel.cs new file mode 100644 index 00000000..0ced4831 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SalesChannel.cs @@ -0,0 +1,161 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Information about where the customer placed this order. + /// + [DataContract] + public partial class SalesChannel : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public SalesChannel() { } + + /// + /// Initializes a new instance of the class. + /// + /// The name of the sales platform or channel where the customer placed this order. (required) + /// The unique identifier for the specific marketplace within the sales channel where this order was placed. + /// The human-readable name of the marketplace where this order was placed. + public SalesChannel(ChannelTypeEnum channelName = default, + string marketplaceId = default, + string marketplaceName = default) + { + // to ensure "channelName" is required (not null) + if (channelName == null) + { + throw new InvalidDataException("channelName is a required property for SalesChannel and cannot be null"); + } + else + { + this.ChannelName = channelName; + } + + this.MarketplaceId = marketplaceId; + this.MarketplaceName = marketplaceName; + } + + + /// + /// The name of the sales platform or channel where the customer placed this order. + /// + /// The name of the sales platform or channel where the customer placed this order. + [DataMember(Name = "channelName", EmitDefaultValue = false)] + public ChannelTypeEnum ChannelName { get; set; } + + /// + /// The unique identifier for the specific marketplace within the sales channel where this order was placed. + /// + /// The unique identifier for the specific marketplace within the sales channel where this order was placed. + [DataMember(Name = "marketplaceId", EmitDefaultValue = false)] + public string MarketplaceId { get; set; } + + /// + /// The human-readable name of the marketplace where this order was placed. + /// + /// The human-readable name of the marketplace where this order was placed. + [DataMember(Name = "marketplaceName", EmitDefaultValue = false)] + public string MarketplaceName { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class SalesChannel {\n"); + sb.Append(" ChannelName: ").Append(ChannelName).Append("\n"); + sb.Append(" MarketplaceId: ").Append(MarketplaceId).Append("\n"); + sb.Append(" MarketplaceName: ").Append(MarketplaceName).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as SalesChannel); + } + + /// + /// Returns true if SalesChannel instances are equal + /// + /// Instance of SalesChannel to be compared + /// Boolean + public bool Equals(SalesChannel input) + { + if (input == null) + return false; + + return + ( + this.ChannelName == input.ChannelName || + (this.ChannelName != null && + this.ChannelName.Equals(input.ChannelName)) + ) && + ( + this.MarketplaceId == input.MarketplaceId || + (this.MarketplaceId != null && + this.MarketplaceId.Equals(input.MarketplaceId)) + ) && + ( + this.MarketplaceName == input.MarketplaceName || + (this.MarketplaceName != null && + this.MarketplaceName.Equals(input.MarketplaceName)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ChannelName != null) + hashCode = hashCode * 59 + this.ChannelName.GetHashCode(); + if (this.MarketplaceId != null) + hashCode = hashCode * 59 + this.MarketplaceId.GetHashCode(); + if (this.MarketplaceName != null) + hashCode = hashCode * 59 + this.MarketplaceName.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SearchOrdersResponse.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SearchOrdersResponse.cs new file mode 100644 index 00000000..40d33619 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SearchOrdersResponse.cs @@ -0,0 +1,174 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// SearchOrders response. + /// + [DataContract] + public partial class SearchOrdersResponse : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public SearchOrdersResponse() { } + + /// + /// Initializes a new instance of the class. + /// + /// An array containing all orders that match the search criteria. (required) + /// Contains tokens to fetch from a certain page. + /// Only orders updated before the specified time are returned. The date must be in ISO 8601 format. + /// Only orders placed before the specified time are returned. The date must be in ISO 8601 format. + public SearchOrdersResponse(List orders = default, + Pagination pagination = default, + DateTime? lastUpdatedBefore = default, + DateTime? createdBefore = default) + { + // to ensure "orders" is required (not null) + if (orders == null) + { + throw new ArgumentNullException("orders is a required property for SearchOrdersResponse and cannot be null"); + } + else + { + this.Orders = orders; + } + + this.Pagination = pagination; + this.LastUpdatedBefore = lastUpdatedBefore; + this.CreatedBefore = createdBefore; + } + + /// + /// An array containing all orders that match the search criteria. + /// + /// An array containing all orders that match the search criteria. + [DataMember(Name="orders", EmitDefaultValue=false)] + public List Orders { get; set; } + + /// + /// Gets or Sets Pagination + /// + [DataMember(Name="pagination", EmitDefaultValue=false)] + public Pagination Pagination { get; set; } + + /// + /// Only orders updated before the specified time are returned. The date must be in ISO 8601 format. + /// + [DataMember(Name = "lastUpdatedBefore", EmitDefaultValue = false)] + public DateTime? LastUpdatedBefore { get; set; } + + /// + /// Only orders placed before the specified time are returned. The date must be in ISO 8601 format. + /// + [DataMember(Name = "createdBefore", EmitDefaultValue = false)] + public DateTime? CreatedBefore { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class SearchOrdersResponse {\n"); + sb.Append(" Orders: ").Append(Orders).Append("\n"); + sb.Append(" Pagination: ").Append(Pagination).Append("\n"); + sb.Append(" LastUpdatedBefore: ").Append(LastUpdatedBefore).Append("\n"); + sb.Append(" CreatedBefore: ").Append(CreatedBefore).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return Equals(input as SearchOrdersResponse); + } + + /// + /// Returns true if SearchOrdersResponse instances are equal + /// + /// Instance of SearchOrdersResponse to be compared + /// Boolean + public bool Equals(SearchOrdersResponse input) + { + if (input == null) + return false; + + return + ( + Orders == input.Orders || + Orders != null && + Orders.SequenceEqual(input.Orders) + ) && + ( + Pagination == input.Pagination || + Pagination != null && + Pagination.Equals(input.Pagination) + ) && + ( + LastUpdatedBefore == input.LastUpdatedBefore || + LastUpdatedBefore != null && + LastUpdatedBefore.Equals(input.LastUpdatedBefore) + ) && + ( + CreatedBefore == input.CreatedBefore || + CreatedBefore != null && + CreatedBefore.Equals(input.CreatedBefore) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (Orders != null) + hashCode = hashCode * 59 + Orders.GetHashCode(); + if (Pagination != null) + hashCode = hashCode * 59 + Pagination.GetHashCode(); + if (LastUpdatedBefore != null) + hashCode = hashCode * 59 + LastUpdatedBefore.GetHashCode(); + if (CreatedBefore != null) + hashCode = hashCode * 59 + CreatedBefore.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Shipping.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Shipping.cs new file mode 100644 index 00000000..5d113c1a --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Shipping.cs @@ -0,0 +1,156 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Information related to the shipping and delivery process for an order item. + /// + [DataContract] + public partial class Shipping : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public Shipping() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// A time period with start and end boundaries. + /// Special shipping requirements and restrictions that must be observed when shipping an order item. + /// Additional requirements needed for cross-border shipping of an order item. + + public Shipping(DeliveryWindow scheduledDeliveryWindow = default, + ShippingConstraints shippingConstraints = default, + InternationalShipping internationalShipping = default) + { + this.ScheduledDeliveryWindow = scheduledDeliveryWindow; + this.ShippingConstraints = shippingConstraints; + this.InternationalShipping = internationalShipping; + } + + /// + /// A time period with start and end boundaries. + /// + /// A time period with start and end boundaries. + [DataMember(Name = "scheduledDeliveryWindow", EmitDefaultValue = false)] + public DeliveryWindow ScheduledDeliveryWindow { get; set; } + + /// + /// Special shipping requirements and restrictions that must be observed when shipping an order item. + /// + /// Special shipping requirements and restrictions that must be observed when shipping an order item. + [DataMember(Name = "shippingConstraints", EmitDefaultValue = false)] + public ShippingConstraints ShippingConstraints { get; set; } + + /// + /// Additional requirements needed for cross-border shipping of an order item. + /// + /// Additional requirements needed for cross-border shipping of an order item. + [DataMember(Name = "internationalShipping", EmitDefaultValue = false)] + public InternationalShipping InternationalShipping { get; set; } + + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class Shipping {\n"); + sb.Append(" ScheduledDeliveryWindow: ").Append(ScheduledDeliveryWindow).Append("\n"); + sb.Append(" ShippingConstraints: ").Append(ShippingConstraints).Append("\n"); + sb.Append(" InternationalShipping: ").Append(InternationalShipping).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as Shipping); + } + + /// + /// Returns true if Shipping instances are equal + /// + /// Instance of Shipping to be compared + /// Boolean + public bool Equals(Shipping input) + { + if (input == null) + return false; + + return + ( + this.ScheduledDeliveryWindow == input.ScheduledDeliveryWindow || + (this.ScheduledDeliveryWindow != null && + this.ScheduledDeliveryWindow.Equals(input.ScheduledDeliveryWindow)) + ) && + ( + this.ShippingConstraints == input.ShippingConstraints || + (this.ShippingConstraints != null && + this.ShippingConstraints.Equals(input.ShippingConstraints)) + ) && + ( + this.InternationalShipping == input.InternationalShipping || + (this.InternationalShipping != null && + this.InternationalShipping.Equals(input.InternationalShipping)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ScheduledDeliveryWindow != null) + hashCode = hashCode * 59 + this.ScheduledDeliveryWindow.GetHashCode(); + if (this.ShippingConstraints != null) + hashCode = hashCode * 59 + this.ShippingConstraints.GetHashCode(); + if (this.InternationalShipping != null) + hashCode = hashCode * 59 + this.InternationalShipping.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ShippingConstraints.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ShippingConstraints.cs new file mode 100644 index 00000000..059f8d07 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/ShippingConstraints.cs @@ -0,0 +1,190 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.IO; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Special shipping requirements and restrictions that must be observed when shipping an order item. + /// + [DataContract] + public partial class ShippingConstraints : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public ShippingConstraints() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// Classification of the enforcement level required for shipping and delivery constraints. + /// Classification of the enforcement level required for shipping and delivery constraints. + /// Classification of the enforcement level required for shipping and delivery constraints. + /// Classification of the enforcement level required for shipping and delivery constraints. + /// Classification of the enforcement level required for shipping and delivery constraints. + public ShippingConstraints(EnforcementLevelEnum? palletDelivery = default, + EnforcementLevelEnum? cashOnDelivery = default, + EnforcementLevelEnum? signatureConfirmation = default, + EnforcementLevelEnum? recipientIdentityVerification = default, + EnforcementLevelEnum? recipientAgeVerification = default) + { + this.PalletDelivery = palletDelivery; + this.CashOnDelivery = cashOnDelivery; + this.SignatureConfirmation = signatureConfirmation; + this.RecipientIdentityVerification = recipientIdentityVerification; + this.RecipientAgeVerification = recipientAgeVerification; + } + + /// + /// Classification of the enforcement level required for shipping and delivery constraints. + /// + /// Classification of the enforcement level required for shipping and delivery constraints. + [DataMember(Name = "palletDelivery", EmitDefaultValue = false)] + public EnforcementLevelEnum? PalletDelivery { get; set; } + + /// + /// Classification of the enforcement level required for shipping and delivery constraints. + /// + /// Classification of the enforcement level required for shipping and delivery constraints. + [DataMember(Name = "cashOnDelivery", EmitDefaultValue = false)] + public EnforcementLevelEnum? CashOnDelivery { get; set; } + + /// + /// Classification of the enforcement level required for shipping and delivery constraints. + /// + /// Classification of the enforcement level required for shipping and delivery constraints. + [DataMember(Name = "signatureConfirmation", EmitDefaultValue = false)] + public EnforcementLevelEnum? SignatureConfirmation { get; set; } + + /// + /// Classification of the enforcement level required for shipping and delivery constraints. + /// + /// Classification of the enforcement level required for shipping and delivery constraints. + [DataMember(Name = "recipientIdentityVerification", EmitDefaultValue = false)] + public EnforcementLevelEnum? RecipientIdentityVerification { get; set; } + + /// + /// Classification of the enforcement level required for shipping and delivery constraints. + /// + /// Classification of the enforcement level required for shipping and delivery constraints. + [DataMember(Name = "recipientAgeVerification", EmitDefaultValue = false)] + public EnforcementLevelEnum? RecipientAgeVerification { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class ShippingConstraints {\n"); + sb.Append(" PalletDelivery: ").Append(PalletDelivery).Append("\n"); + sb.Append(" CashOnDelivery: ").Append(CashOnDelivery).Append("\n"); + sb.Append(" SignatureConfirmation: ").Append(SignatureConfirmation).Append("\n"); + sb.Append(" RecipientIdentityVerification: ").Append(RecipientIdentityVerification).Append("\n"); + sb.Append(" RecipientAgeVerification: ").Append(RecipientAgeVerification).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as ShippingConstraints); + } + + /// + /// Returns true if ShippingConstraints instances are equal + /// + /// Instance of ShippingConstraints to be compared + /// Boolean + public bool Equals(ShippingConstraints input) + { + if (input == null) + return false; + + return + ( + this.PalletDelivery == input.PalletDelivery || + (this.PalletDelivery != null && + this.PalletDelivery.Equals(input.PalletDelivery)) + ) && + ( + this.CashOnDelivery == input.CashOnDelivery || + (this.CashOnDelivery != null && + this.CashOnDelivery.Equals(input.CashOnDelivery)) + ) && + ( + this.SignatureConfirmation == input.SignatureConfirmation || + (this.SignatureConfirmation != null && + this.SignatureConfirmation.Equals(input.SignatureConfirmation)) + ) && + ( + this.RecipientIdentityVerification == input.RecipientIdentityVerification || + (this.RecipientIdentityVerification != null && + this.RecipientIdentityVerification.Equals(input.RecipientIdentityVerification)) + ) && + ( + this.RecipientAgeVerification == input.RecipientAgeVerification || + (this.RecipientAgeVerification != null && + this.RecipientAgeVerification.Equals(input.RecipientAgeVerification)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.PalletDelivery != null) + hashCode = hashCode * 59 + this.PalletDelivery.GetHashCode(); + if (this.CashOnDelivery != null) + hashCode = hashCode * 59 + this.CashOnDelivery.GetHashCode(); + if (this.SignatureConfirmation != null) + hashCode = hashCode * 59 + this.SignatureConfirmation.GetHashCode(); + if (this.RecipientIdentityVerification != null) + hashCode = hashCode * 59 + this.RecipientIdentityVerification.GetHashCode(); + if (this.RecipientAgeVerification != null) + hashCode = hashCode * 59 + this.RecipientAgeVerification.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SubstitutionOption.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SubstitutionOption.cs new file mode 100644 index 00000000..173dc40f --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SubstitutionOption.cs @@ -0,0 +1,190 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Alternative product that can be substituted for the original item if it becomes unavailable. + /// + [DataContract] + public partial class SubstitutionOption : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// Amazon Standard Identification Number of the substitute product. + /// Number of units of the substitute item to be selected if substitution occurs. + /// The item's seller stock keeping unit (SKU). + /// Product name or title of the substitute item as displayed to customers. + /// Specifies the unit of measure and quantity for items that are sold by weight, volume, length, or other measurements rather than simple count. + public SubstitutionOption(string asin = default, + int? quantityOrdered = default, + string sellerSku = default, + string title = default, + Measurement measurement = default) + { + this.Asin = asin; + this.QuantityOrdered = quantityOrdered; + this.SellerSku = sellerSku; + this.Title = title; + this.Measurement = measurement; + } + + public SubstitutionOption() + { + this.Asin = default; + this.QuantityOrdered = default; + this.SellerSku = default; + this.Title = default; + this.Measurement = default; + } + + /// + /// Amazon Standard Identification Number of the substitute product. + /// + /// Amazon Standard Identification Number of the substitute product. + [DataMember(Name = "asin", EmitDefaultValue = false)] + public string Asin { get; set; } + + /// + /// Number of units of the substitute item to be selected if substitution occurs. + /// + /// Number of units of the substitute item to be selected if substitution occurs. + [DataMember(Name = "quantityOrdered", EmitDefaultValue = false)] + public int? QuantityOrdered { get; set; } + + /// + /// The item's seller stock keeping unit (SKU). + /// + /// The item's seller stock keeping unit (SKU). + [DataMember(Name = "sellerSku", EmitDefaultValue = false)] + public string SellerSku { get; set; } + + /// + /// Product name or title of the substitute item as displayed to customers. + /// + /// Product name or title of the substitute item as displayed to customers. + [DataMember(Name = "title", EmitDefaultValue = false)] + public string Title { get; set; } + + /// + /// Specifies the unit of measure and quantity for items that are sold by weight, volume, length, or other measurements rather than simple count. + /// + /// Specifies the unit of measure and quantity for items that are sold by weight, volume, length, or other measurements rather than simple count. + [DataMember(Name = "measurement", EmitDefaultValue = false)] + public Measurement Measurement { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class SubstitutionOption {\n"); + sb.Append(" Asin: ").Append(Asin).Append("\n"); + sb.Append(" QuantityOrdered: ").Append(QuantityOrdered).Append("\n"); + sb.Append(" SellerSku: ").Append(SellerSku).Append("\n"); + sb.Append(" Title: ").Append(Title).Append("\n"); + sb.Append(" Measurement: ").Append(Measurement).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as SubstitutionOption); + } + + /// + /// Returns true if SubstitutionOption instances are equal + /// + /// Instance of SubstitutionOption to be compared + /// Boolean + public bool Equals(SubstitutionOption input) + { + if (input == null) + return false; + + return + ( + this.Asin == input.Asin || + (this.Asin != null && + this.Asin.Equals(input.Asin)) + ) && + ( + this.QuantityOrdered == input.QuantityOrdered || + (this.QuantityOrdered != null && + this.QuantityOrdered.Equals(input.QuantityOrdered)) + ) && + ( + this.SellerSku == input.SellerSku || + (this.SellerSku != null && + this.SellerSku.Equals(input.SellerSku)) + ) && + ( + this.Title == input.Title || + (this.Title != null && + this.Title.Equals(input.Title)) + ) && + ( + this.Measurement == input.Measurement || + (this.Measurement != null && + this.Measurement.Equals(input.Measurement)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Asin != null) + hashCode = hashCode * 59 + this.Asin.GetHashCode(); + if (this.QuantityOrdered != null) + hashCode = hashCode * 59 + this.QuantityOrdered.GetHashCode(); + if (this.SellerSku != null) + hashCode = hashCode * 59 + this.SellerSku.GetHashCode(); + if (this.Title != null) + hashCode = hashCode * 59 + this.Title.GetHashCode(); + if (this.Measurement != null) + hashCode = hashCode * 59 + this.Measurement.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SubstitutionPreference.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SubstitutionPreference.cs new file mode 100644 index 00000000..cff6fd29 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SubstitutionPreference.cs @@ -0,0 +1,134 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Substitution preference for an order item when it becomes unavailable during fulfillment. + /// + [DataContract] + public partial class SubstitutionPreference : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + public SubstitutionPreference() + { + } + + /// + /// Initializes a new instance of the class. + /// + /// Source and nature of the substitution preferences for this item. (required) + /// List of alternative products that can be substituted for the original item if it becomes unavailable. + public SubstitutionPreference(SubstitutionTypeEnum substitutionType = default, + List substitutionOptions = default) + { + this.SubstitutionType = substitutionType; + this.SubstitutionOptions = substitutionOptions; + } + + /// + /// Source and nature of the substitution preferences for this item. (required) + /// + /// Source and nature of the substitution preferences for this item. (required) + [DataMember(Name = "substitutionType", EmitDefaultValue = false)] + public SubstitutionTypeEnum SubstitutionType { get; set; } + + /// + /// List of alternative products that can be substituted for the original item if it becomes unavailable. + /// + /// List of alternative products that can be substituted for the original item if it becomes unavailable. + [DataMember(Name = "substitutionOptions", EmitDefaultValue = false)] + public List SubstitutionOptions { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class SubstitutionPreference {\n"); + sb.Append(" SubstitutionType: ").Append(SubstitutionType).Append("\n"); + sb.Append(" SubstitutionOptions: ").Append(SubstitutionOptions).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return JsonConvert.SerializeObject(this, Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as SubstitutionPreference); + } + + /// + /// Returns true if SubstitutionPreference instances are equal + /// + /// Instance of SubstitutionPreference to be compared + /// Boolean + public bool Equals(SubstitutionPreference input) + { + if (input == null) + return false; + + return + ( + this.SubstitutionType == input.SubstitutionType || + (this.SubstitutionType != null && + this.SubstitutionType.Equals(input.SubstitutionType)) + ) && + ( + this.SubstitutionOptions == input.SubstitutionOptions || + (this.SubstitutionOptions != null && + this.SubstitutionOptions.SequenceEqual(input.SubstitutionOptions)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.SubstitutionType != null) + hashCode = hashCode * 59 + this.SubstitutionType.GetHashCode(); + if (this.SubstitutionOptions != null) + hashCode = hashCode * 59 + this.SubstitutionOptions.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} \ No newline at end of file diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SubstitutionTypeEnum.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SubstitutionTypeEnum.cs new file mode 100644 index 00000000..fba0083f --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/SubstitutionTypeEnum.cs @@ -0,0 +1,36 @@ +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// Source and nature of the substitution preferences for this item. + /// + /// Source and nature of the substitution preferences for this item. + [JsonConverter(typeof(StringEnumConverter))] + public enum SubstitutionTypeEnum + { + /// + /// Substitution preferences defined by the customer + /// + [EnumMember(Value = "CUSTOMER_PREFERENCE")] + CUSTOMER_PREFERENCE = 1, + + /// + /// Substitution options suggested by Amazon's system + /// + [EnumMember(Value = "AMAZON_RECOMMENDED")] + AMAZON_RECOMMENDED = 2, + + /// + /// Prohibition against any item substitutions + /// + [EnumMember(Value = "DO_NOT_SUBSTITUTE")] + DO_NOT_SUBSTITUTE = 3, + } + +} diff --git a/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Time.cs b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Time.cs new file mode 100644 index 00000000..a2893ab4 --- /dev/null +++ b/Source/FikaAmazonAPI/AmazonSpApiSDK/Models/OrdersV20260101/Time.cs @@ -0,0 +1,134 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Runtime.Serialization; +using System.Text; + +namespace FikaAmazonAPI.AmazonSpApiSDK.Models.OrdersV20260101 +{ + /// + /// The time when the business opens or closes. + /// + [DataContract] + public partial class Time : IEquatable