TicketUserServices

<back to all web services

WebshopVariantUpdateRequest

Requires Authentication
Requires any of the roles:Admin, TeamAdminRequired permission:Tickets.Add
The following routes are available for this service:
PUT/Webshop/Variant
import 'package:servicestack/servicestack.dart';

class WebshopVariantSummary implements IConvertible
{
    int? id;
    int? productId;
    String? size;
    String? color;
    int? stockOnHand;
    int? quantitySold;
    int? availableQuantity;
    String? status;

    WebshopVariantSummary({this.id,this.productId,this.size,this.color,this.stockOnHand,this.quantitySold,this.availableQuantity,this.status});
    WebshopVariantSummary.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        productId = json['productId'];
        size = json['size'];
        color = json['color'];
        stockOnHand = json['stockOnHand'];
        quantitySold = json['quantitySold'];
        availableQuantity = json['availableQuantity'];
        status = json['status'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'productId': productId,
        'size': size,
        'color': color,
        'stockOnHand': stockOnHand,
        'quantitySold': quantitySold,
        'availableQuantity': availableQuantity,
        'status': status
    };

    getTypeName() => "WebshopVariantSummary";
    TypeContext? context = _ctx;
}

class WebshopVariantResult implements IConvertible
{
    WebshopVariantSummary? variant;
    int? statusCode;
    String? message;

    WebshopVariantResult({this.variant,this.statusCode,this.message});
    WebshopVariantResult.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        variant = JsonConverters.fromJson(json['variant'],'WebshopVariantSummary',context!);
        statusCode = json['statusCode'];
        message = json['message'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'variant': JsonConverters.toJson(variant,'WebshopVariantSummary',context!),
        'statusCode': statusCode,
        'message': message
    };

    getTypeName() => "WebshopVariantResult";
    TypeContext? context = _ctx;
}

class WebshopProductVariant implements IConvertible
{
    int? id;
    int? productId;
    // @StringLength(50)
    String? size;

    // @StringLength(50)
    String? color;

    int? stockOnHand;
    int? quantitySold;
    // @StringLength(20)
    String? status;

    int? version;
    int? legacyDetailId;
    DateTime? createdAt;
    DateTime? updatedAt;

    WebshopProductVariant({this.id,this.productId,this.size,this.color,this.stockOnHand,this.quantitySold,this.status,this.version,this.legacyDetailId,this.createdAt,this.updatedAt});
    WebshopProductVariant.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        productId = json['productId'];
        size = json['size'];
        color = json['color'];
        stockOnHand = json['stockOnHand'];
        quantitySold = json['quantitySold'];
        status = json['status'];
        version = json['version'];
        legacyDetailId = json['legacyDetailId'];
        createdAt = JsonConverters.fromJson(json['createdAt'],'DateTime',context!);
        updatedAt = JsonConverters.fromJson(json['updatedAt'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'productId': productId,
        'size': size,
        'color': color,
        'stockOnHand': stockOnHand,
        'quantitySold': quantitySold,
        'status': status,
        'version': version,
        'legacyDetailId': legacyDetailId,
        'createdAt': JsonConverters.toJson(createdAt,'DateTime',context!),
        'updatedAt': JsonConverters.toJson(updatedAt,'DateTime',context!)
    };

    getTypeName() => "WebshopProductVariant";
    TypeContext? context = _ctx;
}

class WebshopVariantUpdateRequest implements IConvertible
{
    WebshopProductVariant? item;
    int? ownerId;

    WebshopVariantUpdateRequest({this.item,this.ownerId});
    WebshopVariantUpdateRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        item = JsonConverters.fromJson(json['item'],'WebshopProductVariant',context!);
        ownerId = json['ownerId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'item': JsonConverters.toJson(item,'WebshopProductVariant',context!),
        'ownerId': ownerId
    };

    getTypeName() => "WebshopVariantUpdateRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'stubbur_app.azurewebsites.net', types: <String, TypeInfo> {
    'WebshopVariantSummary': TypeInfo(TypeOf.Class, create:() => WebshopVariantSummary()),
    'WebshopVariantResult': TypeInfo(TypeOf.Class, create:() => WebshopVariantResult()),
    'WebshopProductVariant': TypeInfo(TypeOf.Class, create:() => WebshopProductVariant()),
    'WebshopVariantUpdateRequest': TypeInfo(TypeOf.Class, create:() => WebshopVariantUpdateRequest()),
});

Dart WebshopVariantUpdateRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

PUT /Webshop/Variant HTTP/1.1 
Host: stubbur-app.azurewebsites.net 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<WebshopVariantUpdateRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
  <Item xmlns:d2p1="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel.Types">
    <d2p1:Color>String</d2p1:Color>
    <d2p1:CreatedAt>0001-01-01T00:00:00</d2p1:CreatedAt>
    <d2p1:ID>0</d2p1:ID>
    <d2p1:LegacyDetailId>0</d2p1:LegacyDetailId>
    <d2p1:ProductId>0</d2p1:ProductId>
    <d2p1:QuantitySold>0</d2p1:QuantitySold>
    <d2p1:Size>String</d2p1:Size>
    <d2p1:Status>String</d2p1:Status>
    <d2p1:StockOnHand>0</d2p1:StockOnHand>
    <d2p1:UpdatedAt>0001-01-01T00:00:00</d2p1:UpdatedAt>
    <d2p1:Version>0</d2p1:Version>
  </Item>
  <OwnerId>0</OwnerId>
</WebshopVariantUpdateRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<WebshopVariantResult xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/TicketUserServices.ServiceModel">
  <Message>String</Message>
  <StatusCode>0</StatusCode>
  <Variant>
    <AvailableQuantity>0</AvailableQuantity>
    <Color>String</Color>
    <ID>0</ID>
    <ProductId>0</ProductId>
    <QuantitySold>0</QuantitySold>
    <Size>String</Size>
    <Status>String</Status>
    <StockOnHand>0</StockOnHand>
  </Variant>
</WebshopVariantResult>