100 lines
3.0 KiB
C#
100 lines
3.0 KiB
C#
using Microsoft.AspNetCore.Http;
|
|
using Newtonsoft.Json;
|
|
|
|
namespace Nop.Plugin.Misc.Zettle.Domain.Api.Inventory;
|
|
|
|
/// <summary>
|
|
/// Represents request to create inventory balance changes
|
|
/// </summary>
|
|
public class CreateTrackingRequest : InventoryApiRequest
|
|
{
|
|
#region Properties
|
|
|
|
/// <summary>
|
|
/// Gets or sets the the list of inventory balance changes
|
|
/// </summary>
|
|
[JsonProperty(PropertyName = "productChanges")]
|
|
public List<ProductBalanceChange> ProductChanges { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the unique identifier as UUID version 1
|
|
/// </summary>
|
|
[JsonProperty(PropertyName = "returnBalanceForLocationUuid")]
|
|
public string ReturnLocationUuid { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the unique identifier as UUID version 1
|
|
/// </summary>
|
|
[JsonProperty(PropertyName = "externalUuid")]
|
|
public string ExternalUuid { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets the request path
|
|
/// </summary>
|
|
public override string Path => "organizations/self/v2/inventory/bulk";
|
|
|
|
/// <summary>
|
|
/// Gets the request method
|
|
/// </summary>
|
|
public override string Method => HttpMethods.Post;
|
|
|
|
#endregion
|
|
|
|
#region Nested classes
|
|
|
|
/// <summary>
|
|
/// Represents product balance change details
|
|
/// </summary>
|
|
public class ProductBalanceChange
|
|
{
|
|
/// <summary>
|
|
/// Gets or sets the unique identifier as UUID version 1
|
|
/// </summary>
|
|
[JsonProperty(PropertyName = "productUuid")]
|
|
public string ProductUuid { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the status of the change
|
|
/// </summary>
|
|
[JsonProperty(PropertyName = "trackingStatusChange")]
|
|
public string TrackingStatusChange { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the list of balance changes
|
|
/// </summary>
|
|
[JsonProperty(PropertyName = "variantChanges")]
|
|
public List<VariantBalanceChange> VariantChanges { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Represents product variant balance change details
|
|
/// </summary>
|
|
public class VariantBalanceChange
|
|
{
|
|
/// <summary>
|
|
/// Gets or sets the unique identifier as UUID version 1
|
|
/// </summary>
|
|
[JsonProperty(PropertyName = "fromLocationUuid")]
|
|
public string FromLocationUuid { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the unique identifier as UUID version 1
|
|
/// </summary>
|
|
[JsonProperty(PropertyName = "toLocationUuid")]
|
|
public string ToLocationUuid { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the unique identifier as UUID version 1
|
|
/// </summary>
|
|
[JsonProperty(PropertyName = "variantUuid")]
|
|
public string VariantUuid { get; set; }
|
|
|
|
/// <summary>
|
|
/// Gets or sets the inventory balance change value
|
|
/// </summary>
|
|
[JsonProperty(PropertyName = "change")]
|
|
public int Change { get; set; }
|
|
}
|
|
|
|
#endregion
|
|
} |