Richemont.Booster2.PublicApi

<back to all web services

TransferStock

Requires Authentication
The following routes are available for this service:
POST/stock/{brand}/transferTransfer Stock from one POS to another
import 'package:servicestack/servicestack.dart';

class TransferStockResponse implements IConvertible
{
    /**
    * Status of Stock Transfer: 1 means done, 2 means might take a while because consignment transfers need to be approved by SAP
    */
    // @ApiMember(Description="Status of Stock Transfer: 1 means done, 2 means might take a while because consignment transfers need to be approved by SAP", IsRequired=true)
    int? stockTransferStatusId;

    TransferStockResponse({this.stockTransferStatusId});
    TransferStockResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        stockTransferStatusId = json['stockTransferStatusId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'stockTransferStatusId': stockTransferStatusId
    };

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

class TransferStock implements IConvertible
{
    /**
    * Brand Trigram
    */
    // @ApiMember(Description="Brand Trigram", IsRequired=true)
    String? brand;

    /**
    * POS of the stock origin
    */
    // @ApiMember(Description="POS of the stock origin", IsRequired=true)
    String? posCodeOrigin;

    /**
    * POS of the stock destination
    */
    // @ApiMember(Description="POS of the stock destination", IsRequired=true)
    String? posCodeDestination;

    /**
    * Article Code of the item to be transferred
    */
    // @ApiMember(Description="Article Code of the item to be transferred", IsRequired=true)
    String? articleCode;

    /**
    * Quantity of the the item to be transferred
    */
    // @ApiMember(Description="Quantity of the the item to be transferred", IsRequired=true)
    int? quantity;

    /**
    * Serial Numbers of the item to be transferred
    */
    // @ApiMember(Description="Serial Numbers of the item to be transferred")
    List<String>? serialNumbers;

    TransferStock({this.brand,this.posCodeOrigin,this.posCodeDestination,this.articleCode,this.quantity,this.serialNumbers});
    TransferStock.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        brand = json['brand'];
        posCodeOrigin = json['posCodeOrigin'];
        posCodeDestination = json['posCodeDestination'];
        articleCode = json['articleCode'];
        quantity = json['quantity'];
        serialNumbers = JsonConverters.fromJson(json['serialNumbers'],'List<String>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'brand': brand,
        'posCodeOrigin': posCodeOrigin,
        'posCodeDestination': posCodeDestination,
        'articleCode': articleCode,
        'quantity': quantity,
        'serialNumbers': JsonConverters.toJson(serialNumbers,'List<String>',context!)
    };

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

TypeContext _ctx = TypeContext(library: 'dev_api_booster.richemont.com', types: <String, TypeInfo> {
    'TransferStockResponse': TypeInfo(TypeOf.Class, create:() => TransferStockResponse()),
    'TransferStock': TypeInfo(TypeOf.Class, create:() => TransferStock()),
});

Dart TransferStock DTOs

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

HTTP + JSV

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

POST /stock/{brand}/transfer HTTP/1.1 
Host: dev-api-booster.richemont.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	brand: String,
	posCodeOrigin: String,
	posCodeDestination: String,
	articleCode: String,
	quantity: 0,
	serialNumbers: 
	[
		String
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	stockTransferStatusId: 0
}