Antel API

<back to all web services

IncompleteUpliftFromServer

Requires Authentication
The following routes are available for this service:
GET/sync/incompleteuplift
import 'package:servicestack/servicestack.dart';

class ApiServiceRequest implements IServiceRequest, IHasApiKey, IHasDeviceInfo, IConvertible
{
    /**
    * The API Key required for authentication
    */
    // @ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true)
    String? apiKey;

    /**
    * Latitude of the user making this request
    */
    // @ApiMember(DataType="double", Description="Latitude of the user making this request")
    double? latitude;

    /**
    * Longitude of the user making this request
    */
    // @ApiMember(DataType="double", Description="Longitude of the user making this request")
    double? longitude;

    ApiServiceRequest({this.apiKey,this.latitude,this.longitude});
    ApiServiceRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        apiKey = json['apiKey'];
        latitude = JsonConverters.toDouble(json['latitude']);
        longitude = JsonConverters.toDouble(json['longitude']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'apiKey': apiKey,
        'latitude': latitude,
        'longitude': longitude
    };

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

class ApiServiceResponse implements IServiceResponse, IConvertible
{
    /**
    * Information about the response.
    */
    // @ApiMember(Description="Information about the response.", IsRequired=true)
    String? description;

    /**
    * Heading or summary of the response.
    */
    // @ApiMember(Description="Heading or summary of the response.", IsRequired=true)
    String? heading;

    /**
    * Did the intended operation for this response complete successfully?
    */
    // @ApiMember(DataType="boolean", Description="Did the intended operation for this response complete successfully?", IsRequired=true)
    bool? wasSuccessful;

    ResponseStatus? responseStatus;

    ApiServiceResponse({this.description,this.heading,this.wasSuccessful,this.responseStatus});
    ApiServiceResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        description = json['description'];
        heading = json['heading'];
        wasSuccessful = json['wasSuccessful'];
        responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'description': description,
        'heading': heading,
        'wasSuccessful': wasSuccessful,
        'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!)
    };

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

class ProductData implements IConvertible
{
    int? productId;
    int? principalId;
    String? name;
    String? category;
    String? productCode;
    String? unitBarcode;
    int? cartonQuantity;
    int? shrinkQuantity;
    int? unitQuantity;
    String? cartonMeasurement;
    String? shrinkMeasurement;
    String? unitMeasurement;
    double? cartonWeight;
    double? shrinkWeight;
    double? unitWeight;
    double? cartonPrice;
    double? shrinkPrice;
    double? unitPrice;
    int? maxQuantity;
    int? maxPrice;

    ProductData({this.productId,this.principalId,this.name,this.category,this.productCode,this.unitBarcode,this.cartonQuantity,this.shrinkQuantity,this.unitQuantity,this.cartonMeasurement,this.shrinkMeasurement,this.unitMeasurement,this.cartonWeight,this.shrinkWeight,this.unitWeight,this.cartonPrice,this.shrinkPrice,this.unitPrice,this.maxQuantity,this.maxPrice});
    ProductData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        productId = json['productId'];
        principalId = json['principalId'];
        name = json['name'];
        category = json['category'];
        productCode = json['productCode'];
        unitBarcode = json['unitBarcode'];
        cartonQuantity = json['cartonQuantity'];
        shrinkQuantity = json['shrinkQuantity'];
        unitQuantity = json['unitQuantity'];
        cartonMeasurement = json['cartonMeasurement'];
        shrinkMeasurement = json['shrinkMeasurement'];
        unitMeasurement = json['unitMeasurement'];
        cartonWeight = JsonConverters.toDouble(json['cartonWeight']);
        shrinkWeight = JsonConverters.toDouble(json['shrinkWeight']);
        unitWeight = JsonConverters.toDouble(json['unitWeight']);
        cartonPrice = JsonConverters.toDouble(json['cartonPrice']);
        shrinkPrice = JsonConverters.toDouble(json['shrinkPrice']);
        unitPrice = JsonConverters.toDouble(json['unitPrice']);
        maxQuantity = json['maxQuantity'];
        maxPrice = json['maxPrice'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'productId': productId,
        'principalId': principalId,
        'name': name,
        'category': category,
        'productCode': productCode,
        'unitBarcode': unitBarcode,
        'cartonQuantity': cartonQuantity,
        'shrinkQuantity': shrinkQuantity,
        'unitQuantity': unitQuantity,
        'cartonMeasurement': cartonMeasurement,
        'shrinkMeasurement': shrinkMeasurement,
        'unitMeasurement': unitMeasurement,
        'cartonWeight': cartonWeight,
        'shrinkWeight': shrinkWeight,
        'unitWeight': unitWeight,
        'cartonPrice': cartonPrice,
        'shrinkPrice': shrinkPrice,
        'unitPrice': unitPrice,
        'maxQuantity': maxQuantity,
        'maxPrice': maxPrice
    };

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

class ProductDataCategory implements IConvertible
{
    String? unitBarcode;
    List<ProductData>? products;

    ProductDataCategory({this.unitBarcode,this.products});
    ProductDataCategory.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        unitBarcode = json['unitBarcode'];
        products = JsonConverters.fromJson(json['products'],'List<ProductData>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'unitBarcode': unitBarcode,
        'products': JsonConverters.toJson(products,'List<ProductData>',context!)
    };

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

class ProductExceptionData implements IConvertible
{
    String? region;
    String? channel;
    int? productId;
    List<int>? stockStatusIds;

    ProductExceptionData({this.region,this.channel,this.productId,this.stockStatusIds});
    ProductExceptionData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        region = json['region'];
        channel = json['channel'];
        productId = json['productId'];
        stockStatusIds = JsonConverters.fromJson(json['stockStatusIds'],'List<int>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'region': region,
        'channel': channel,
        'productId': productId,
        'stockStatusIds': JsonConverters.toJson(stockStatusIds,'List<int>',context!)
    };

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

class PrincipalData implements IConvertible
{
    int? principalId;
    String? name;
    List<String>? authLetterFileUrl;
    String? logoImageUrl;
    List<ProductDataCategory>? products;
    String? upliftPrefix;
    String? contactName;
    String? contactNumber;
    String? contactEmail;
    bool? allowProductLookup;
    bool? hasLogo;
    bool? hasAuthLetter;
    bool? sealNetWeightMandatory;
    bool? allowBillableSeals;
    bool? captureSerialNumber;
    bool? batchCodesMandatory;
    bool? captureManufactureAndExpiryDate;
    List<ProductExceptionData>? productExceptions;
    bool? usesOwnSealNumbers;

    PrincipalData({this.principalId,this.name,this.authLetterFileUrl,this.logoImageUrl,this.products,this.upliftPrefix,this.contactName,this.contactNumber,this.contactEmail,this.allowProductLookup,this.hasLogo,this.hasAuthLetter,this.sealNetWeightMandatory,this.allowBillableSeals,this.captureSerialNumber,this.batchCodesMandatory,this.captureManufactureAndExpiryDate,this.productExceptions,this.usesOwnSealNumbers});
    PrincipalData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        principalId = json['principalId'];
        name = json['name'];
        authLetterFileUrl = JsonConverters.fromJson(json['authLetterFileUrl'],'List<String>',context!);
        logoImageUrl = json['logoImageUrl'];
        products = JsonConverters.fromJson(json['products'],'List<ProductDataCategory>',context!);
        upliftPrefix = json['upliftPrefix'];
        contactName = json['contactName'];
        contactNumber = json['contactNumber'];
        contactEmail = json['contactEmail'];
        allowProductLookup = json['allowProductLookup'];
        hasLogo = json['hasLogo'];
        hasAuthLetter = json['hasAuthLetter'];
        sealNetWeightMandatory = json['sealNetWeightMandatory'];
        allowBillableSeals = json['allowBillableSeals'];
        captureSerialNumber = json['captureSerialNumber'];
        batchCodesMandatory = json['batchCodesMandatory'];
        captureManufactureAndExpiryDate = json['captureManufactureAndExpiryDate'];
        productExceptions = JsonConverters.fromJson(json['productExceptions'],'List<ProductExceptionData>',context!);
        usesOwnSealNumbers = json['usesOwnSealNumbers'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'principalId': principalId,
        'name': name,
        'authLetterFileUrl': JsonConverters.toJson(authLetterFileUrl,'List<String>',context!),
        'logoImageUrl': logoImageUrl,
        'products': JsonConverters.toJson(products,'List<ProductDataCategory>',context!),
        'upliftPrefix': upliftPrefix,
        'contactName': contactName,
        'contactNumber': contactNumber,
        'contactEmail': contactEmail,
        'allowProductLookup': allowProductLookup,
        'hasLogo': hasLogo,
        'hasAuthLetter': hasAuthLetter,
        'sealNetWeightMandatory': sealNetWeightMandatory,
        'allowBillableSeals': allowBillableSeals,
        'captureSerialNumber': captureSerialNumber,
        'batchCodesMandatory': batchCodesMandatory,
        'captureManufactureAndExpiryDate': captureManufactureAndExpiryDate,
        'productExceptions': JsonConverters.toJson(productExceptions,'List<ProductExceptionData>',context!),
        'usesOwnSealNumbers': usesOwnSealNumbers
    };

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

class ActionOutsideMaxDistanceType
{
    static const ActionOutsideMaxDistanceType Warn = const ActionOutsideMaxDistanceType._(0);
    static const ActionOutsideMaxDistanceType Block = const ActionOutsideMaxDistanceType._(1);

    final int _value;
    const ActionOutsideMaxDistanceType._(this._value);
    int get value => _value;
    static List<ActionOutsideMaxDistanceType> get values => const [Warn,Block];
}

class TemplateProductData implements IConvertible
{
    String? name;
    String? productCode;
    String? barcode;
    Map<int,int?>? statusQty;
    double? returnValue;

    TemplateProductData({this.name,this.productCode,this.barcode,this.statusQty,this.returnValue});
    TemplateProductData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        name = json['name'];
        productCode = json['productCode'];
        barcode = json['barcode'];
        statusQty = JsonConverters.fromJson(json['statusQty'],'Map<int,int?>',context!);
        returnValue = JsonConverters.toDouble(json['returnValue']);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'name': name,
        'productCode': productCode,
        'barcode': barcode,
        'statusQty': JsonConverters.toJson(statusQty,'Map<int,int?>',context!),
        'returnValue': returnValue
    };

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

class UpliftRequestSealData implements IConvertible
{
    String? number;
    double? weight;

    UpliftRequestSealData({this.number,this.weight});
    UpliftRequestSealData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        number = json['number'];
        weight = JsonConverters.toDouble(json['weight']);
        return this;
    }

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

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

class UpliftTemplateData implements IConvertible
{
    double? totalValue;
    List<TemplateProductData>? products;
    List<UpliftRequestSealData>? seals;

    UpliftTemplateData({this.totalValue,this.products,this.seals});
    UpliftTemplateData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        totalValue = JsonConverters.toDouble(json['totalValue']);
        products = JsonConverters.fromJson(json['products'],'List<TemplateProductData>',context!);
        seals = JsonConverters.fromJson(json['seals'],'List<UpliftRequestSealData>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'totalValue': totalValue,
        'products': JsonConverters.toJson(products,'List<TemplateProductData>',context!),
        'seals': JsonConverters.toJson(seals,'List<UpliftRequestSealData>',context!)
    };

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

class StockStatusData implements IConvertible
{
    int? id;
    String? name;
    bool? photoRequired;
    String? color;

    StockStatusData({this.id,this.name,this.photoRequired,this.color});
    StockStatusData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        id = json['id'];
        name = json['name'];
        photoRequired = json['photoRequired'];
        color = json['color'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'id': id,
        'name': name,
        'photoRequired': photoRequired,
        'color': color
    };

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

class SealTemplateProduct implements IConvertible
{
    int? productId;
    String? name;
    int? productStockStatusId;
    int? quantity;
    String? serialNumber;

    SealTemplateProduct({this.productId,this.name,this.productStockStatusId,this.quantity,this.serialNumber});
    SealTemplateProduct.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        productId = json['productId'];
        name = json['name'];
        productStockStatusId = json['productStockStatusId'];
        quantity = json['quantity'];
        serialNumber = json['serialNumber'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'productId': productId,
        'name': name,
        'productStockStatusId': productStockStatusId,
        'quantity': quantity,
        'serialNumber': serialNumber
    };

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

class SealTemplateItemData implements IConvertible
{
    String? sealNumber;
    int? productStockStatus;
    List<SealTemplateProduct>? products;

    SealTemplateItemData({this.sealNumber,this.productStockStatus,this.products});
    SealTemplateItemData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        sealNumber = json['sealNumber'];
        productStockStatus = json['productStockStatus'];
        products = JsonConverters.fromJson(json['products'],'List<SealTemplateProduct>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'sealNumber': sealNumber,
        'productStockStatus': productStockStatus,
        'products': JsonConverters.toJson(products,'List<SealTemplateProduct>',context!)
    };

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

class SealTemplateData implements IConvertible
{
    List<SealTemplateItemData>? items;

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

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

    Map<String, dynamic> toJson() => {
        'items': JsonConverters.toJson(items,'List<SealTemplateItemData>',context!)
    };

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

class AppointmentPrincipleData implements IConvertible
{
    PrincipalData? principle;
    String? scheduledDate;
    int? upliftScheduleId;
    int? upliftSchedulePrincipleId;
    int? principleOutletId;
    String? verificationCode;
    bool? goodsToCollect;
    String? outletRegion;
    String? outletName;
    String? outletChannel;
    double? outletLatitude;
    double? outletLongitude;
    double? maxSubmissionDistance;
    ActionOutsideMaxDistanceType? actionOutsideMaxDistance;
    String? completedDate;
    bool? cancelled;
    bool? completed;
    UpliftTemplateData? upliftTemplate;
    bool? prePopulated;
    List<StockStatusData>? allowedProductStockStatuses;
    String? noteToOperator;
    SealTemplateData? sealTemplate;
    bool? prePopulatedWithSeals;
    bool? preAuthed;
    String? operatorName;
    int? systemUserId;
    List<ProductExceptionData>? productExceptions;
    String? storeConfirmationDocumentUrl;

    AppointmentPrincipleData({this.principle,this.scheduledDate,this.upliftScheduleId,this.upliftSchedulePrincipleId,this.principleOutletId,this.verificationCode,this.goodsToCollect,this.outletRegion,this.outletName,this.outletChannel,this.outletLatitude,this.outletLongitude,this.maxSubmissionDistance,this.actionOutsideMaxDistance,this.completedDate,this.cancelled,this.completed,this.upliftTemplate,this.prePopulated,this.allowedProductStockStatuses,this.noteToOperator,this.sealTemplate,this.prePopulatedWithSeals,this.preAuthed,this.operatorName,this.systemUserId,this.productExceptions,this.storeConfirmationDocumentUrl});
    AppointmentPrincipleData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        principle = JsonConverters.fromJson(json['principle'],'PrincipalData',context!);
        scheduledDate = json['scheduledDate'];
        upliftScheduleId = json['upliftScheduleId'];
        upliftSchedulePrincipleId = json['upliftSchedulePrincipleId'];
        principleOutletId = json['principleOutletId'];
        verificationCode = json['verificationCode'];
        goodsToCollect = json['goodsToCollect'];
        outletRegion = json['outletRegion'];
        outletName = json['outletName'];
        outletChannel = json['outletChannel'];
        outletLatitude = JsonConverters.toDouble(json['outletLatitude']);
        outletLongitude = JsonConverters.toDouble(json['outletLongitude']);
        maxSubmissionDistance = JsonConverters.toDouble(json['maxSubmissionDistance']);
        actionOutsideMaxDistance = JsonConverters.fromJson(json['actionOutsideMaxDistance'],'ActionOutsideMaxDistanceType',context!);
        completedDate = json['completedDate'];
        cancelled = json['cancelled'];
        completed = json['completed'];
        upliftTemplate = JsonConverters.fromJson(json['upliftTemplate'],'UpliftTemplateData',context!);
        prePopulated = json['prePopulated'];
        allowedProductStockStatuses = JsonConverters.fromJson(json['allowedProductStockStatuses'],'List<StockStatusData>',context!);
        noteToOperator = json['noteToOperator'];
        sealTemplate = JsonConverters.fromJson(json['sealTemplate'],'SealTemplateData',context!);
        prePopulatedWithSeals = json['prePopulatedWithSeals'];
        preAuthed = json['preAuthed'];
        operatorName = json['operatorName'];
        systemUserId = json['systemUserId'];
        productExceptions = JsonConverters.fromJson(json['productExceptions'],'List<ProductExceptionData>',context!);
        storeConfirmationDocumentUrl = json['storeConfirmationDocumentUrl'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'principle': JsonConverters.toJson(principle,'PrincipalData',context!),
        'scheduledDate': scheduledDate,
        'upliftScheduleId': upliftScheduleId,
        'upliftSchedulePrincipleId': upliftSchedulePrincipleId,
        'principleOutletId': principleOutletId,
        'verificationCode': verificationCode,
        'goodsToCollect': goodsToCollect,
        'outletRegion': outletRegion,
        'outletName': outletName,
        'outletChannel': outletChannel,
        'outletLatitude': outletLatitude,
        'outletLongitude': outletLongitude,
        'maxSubmissionDistance': maxSubmissionDistance,
        'actionOutsideMaxDistance': JsonConverters.toJson(actionOutsideMaxDistance,'ActionOutsideMaxDistanceType',context!),
        'completedDate': completedDate,
        'cancelled': cancelled,
        'completed': completed,
        'upliftTemplate': JsonConverters.toJson(upliftTemplate,'UpliftTemplateData',context!),
        'prePopulated': prePopulated,
        'allowedProductStockStatuses': JsonConverters.toJson(allowedProductStockStatuses,'List<StockStatusData>',context!),
        'noteToOperator': noteToOperator,
        'sealTemplate': JsonConverters.toJson(sealTemplate,'SealTemplateData',context!),
        'prePopulatedWithSeals': prePopulatedWithSeals,
        'preAuthed': preAuthed,
        'operatorName': operatorName,
        'systemUserId': systemUserId,
        'productExceptions': JsonConverters.toJson(productExceptions,'List<ProductExceptionData>',context!),
        'storeConfirmationDocumentUrl': storeConfirmationDocumentUrl
    };

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

class UpliftProductData implements IConvertible
{
    int? upliftProductId;
    int? upliftId;
    int? productId;
    double? unitPrice;
    String? name;
    String? category;
    String? unitBarcode;
    String? unitSize;
    double? unitWeight;
    String? code;
    List<dynamic>? upliftImages;
    double? quantity;
    double? value;
    bool? priceOverMax;
    bool? quantityOverMax;
    bool? quantityOverRequirement;
    String? serialNumber;
    String? batchCode;
    int? stockStatusId;
    String? lotNumber;
    String? expiryDate;
    String? manufactureDate;

    UpliftProductData({this.upliftProductId,this.upliftId,this.productId,this.unitPrice,this.name,this.category,this.unitBarcode,this.unitSize,this.unitWeight,this.code,this.upliftImages,this.quantity,this.value,this.priceOverMax,this.quantityOverMax,this.quantityOverRequirement,this.serialNumber,this.batchCode,this.stockStatusId,this.lotNumber,this.expiryDate,this.manufactureDate});
    UpliftProductData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        upliftProductId = json['upliftProductId'];
        upliftId = json['upliftId'];
        productId = json['productId'];
        unitPrice = JsonConverters.toDouble(json['unitPrice']);
        name = json['name'];
        category = json['category'];
        unitBarcode = json['unitBarcode'];
        unitSize = json['unitSize'];
        unitWeight = JsonConverters.toDouble(json['unitWeight']);
        code = json['code'];
        upliftImages = JsonConverters.fromJson(json['upliftImages'],'List<dynamic>',context!);
        quantity = JsonConverters.toDouble(json['quantity']);
        value = JsonConverters.toDouble(json['value']);
        priceOverMax = json['priceOverMax'];
        quantityOverMax = json['quantityOverMax'];
        quantityOverRequirement = json['quantityOverRequirement'];
        serialNumber = json['serialNumber'];
        batchCode = json['batchCode'];
        stockStatusId = json['stockStatusId'];
        lotNumber = json['lotNumber'];
        expiryDate = json['expiryDate'];
        manufactureDate = json['manufactureDate'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'upliftProductId': upliftProductId,
        'upliftId': upliftId,
        'productId': productId,
        'unitPrice': unitPrice,
        'name': name,
        'category': category,
        'unitBarcode': unitBarcode,
        'unitSize': unitSize,
        'unitWeight': unitWeight,
        'code': code,
        'upliftImages': JsonConverters.toJson(upliftImages,'List<dynamic>',context!),
        'quantity': quantity,
        'value': value,
        'priceOverMax': priceOverMax,
        'quantityOverMax': quantityOverMax,
        'quantityOverRequirement': quantityOverRequirement,
        'serialNumber': serialNumber,
        'batchCode': batchCode,
        'stockStatusId': stockStatusId,
        'lotNumber': lotNumber,
        'expiryDate': expiryDate,
        'manufactureDate': manufactureDate
    };

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

class UpliftSealData implements IConvertible
{
    bool? unbagged;
    String? sealNumber;
    String? antelSealNumber;
    List<UpliftProductData>? products;
    double? totalPrice;
    double? totalQuantity;
    double? netWeight;
    double? grossWeight;
    bool? billableSeal;
    bool? invalidAntelSealNumber;

    UpliftSealData({this.unbagged,this.sealNumber,this.antelSealNumber,this.products,this.totalPrice,this.totalQuantity,this.netWeight,this.grossWeight,this.billableSeal,this.invalidAntelSealNumber});
    UpliftSealData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        unbagged = json['unbagged'];
        sealNumber = json['sealNumber'];
        antelSealNumber = json['antelSealNumber'];
        products = JsonConverters.fromJson(json['products'],'List<UpliftProductData>',context!);
        totalPrice = JsonConverters.toDouble(json['totalPrice']);
        totalQuantity = JsonConverters.toDouble(json['totalQuantity']);
        netWeight = JsonConverters.toDouble(json['netWeight']);
        grossWeight = JsonConverters.toDouble(json['grossWeight']);
        billableSeal = json['billableSeal'];
        invalidAntelSealNumber = json['invalidAntelSealNumber'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'unbagged': unbagged,
        'sealNumber': sealNumber,
        'antelSealNumber': antelSealNumber,
        'products': JsonConverters.toJson(products,'List<UpliftProductData>',context!),
        'totalPrice': totalPrice,
        'totalQuantity': totalQuantity,
        'netWeight': netWeight,
        'grossWeight': grossWeight,
        'billableSeal': billableSeal,
        'invalidAntelSealNumber': invalidAntelSealNumber
    };

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

class UpliftClaimData implements IConvertible
{
    int? upliftClaimId;
    int? claimUnits;
    String? claimNumber;
    double? claimValue;
    List<dynamic>? claimDocumentImages;
    String? returnOrderNumber;
    int? lineCount;

    UpliftClaimData({this.upliftClaimId,this.claimUnits,this.claimNumber,this.claimValue,this.claimDocumentImages,this.returnOrderNumber,this.lineCount});
    UpliftClaimData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        upliftClaimId = json['upliftClaimId'];
        claimUnits = json['claimUnits'];
        claimNumber = json['claimNumber'];
        claimValue = JsonConverters.toDouble(json['claimValue']);
        claimDocumentImages = JsonConverters.fromJson(json['claimDocumentImages'],'List<dynamic>',context!);
        returnOrderNumber = json['returnOrderNumber'];
        lineCount = json['lineCount'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'upliftClaimId': upliftClaimId,
        'claimUnits': claimUnits,
        'claimNumber': claimNumber,
        'claimValue': claimValue,
        'claimDocumentImages': JsonConverters.toJson(claimDocumentImages,'List<dynamic>',context!),
        'returnOrderNumber': returnOrderNumber,
        'lineCount': lineCount
    };

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

class UpliftData implements IConvertible
{
    int? upliftId;
    int? principleOutletId;
    int? upliftScheduleId;
    int? upliftSchedulePrincipleId;
    String? authRequestId;
    bool? delayedAuth;
    AppointmentPrincipleData? appointmentPrincipleData;
    String? authCode;
    String? startTime;
    String? endTime;
    String? sequentialNumber;
    double? startLatitude;
    double? startLongitude;
    double? endLatitude;
    double? endLongitude;
    double? totalValue;
    double? totalUnits;
    String? comments;
    String? adhocEmailAddress;
    double? vatValue;
    Map<int,List<dynamic>?>? statusImages;
    List<dynamic>? damagedOkImages;
    List<dynamic>? damagedBadImages;
    List<dynamic>? expiredImages;
    List<dynamic>? recallImages;
    List<dynamic>? goodStockImages;
    List<dynamic>? derangedImages;
    List<dynamic>? overstockedImages;
    List<dynamic>? factoryFaultImages;
    String? outletContactName;
    String? outletContactNumber;
    double? outletLatitude;
    double? outletLongitude;
    double? maxSubmissionDistance;
    ActionOutsideMaxDistanceType? actionOutsideMaxDistance;
    dynamic? outletSignatureImage;
    dynamic? operatorSignatureImage;
    dynamic? operatorRegNumberImage;
    List<UpliftSealData>? seals;
    bool? invalidAntelSeal;
    UpliftSealData? unbaggedItems;
    bool? authorised;
    List<UpliftClaimData>? claims;
    DateTime? lastUpdated;
    DateTime? lastSynced;
    String? checkedOutDeviceId;
    String? checkedOutOperatorName;
    String? incompleteUpliftId;
    String? pauseReason;
    String? storeConfirmationDocumentUrl;

    UpliftData({this.upliftId,this.principleOutletId,this.upliftScheduleId,this.upliftSchedulePrincipleId,this.authRequestId,this.delayedAuth,this.appointmentPrincipleData,this.authCode,this.startTime,this.endTime,this.sequentialNumber,this.startLatitude,this.startLongitude,this.endLatitude,this.endLongitude,this.totalValue,this.totalUnits,this.comments,this.adhocEmailAddress,this.vatValue,this.statusImages,this.damagedOkImages,this.damagedBadImages,this.expiredImages,this.recallImages,this.goodStockImages,this.derangedImages,this.overstockedImages,this.factoryFaultImages,this.outletContactName,this.outletContactNumber,this.outletLatitude,this.outletLongitude,this.maxSubmissionDistance,this.actionOutsideMaxDistance,this.outletSignatureImage,this.operatorSignatureImage,this.operatorRegNumberImage,this.seals,this.invalidAntelSeal,this.unbaggedItems,this.authorised,this.claims,this.lastUpdated,this.lastSynced,this.checkedOutDeviceId,this.checkedOutOperatorName,this.incompleteUpliftId,this.pauseReason,this.storeConfirmationDocumentUrl});
    UpliftData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        upliftId = json['upliftId'];
        principleOutletId = json['principleOutletId'];
        upliftScheduleId = json['upliftScheduleId'];
        upliftSchedulePrincipleId = json['upliftSchedulePrincipleId'];
        authRequestId = json['authRequestId'];
        delayedAuth = json['delayedAuth'];
        appointmentPrincipleData = JsonConverters.fromJson(json['appointmentPrincipleData'],'AppointmentPrincipleData',context!);
        authCode = json['authCode'];
        startTime = json['startTime'];
        endTime = json['endTime'];
        sequentialNumber = json['sequentialNumber'];
        startLatitude = JsonConverters.toDouble(json['startLatitude']);
        startLongitude = JsonConverters.toDouble(json['startLongitude']);
        endLatitude = JsonConverters.toDouble(json['endLatitude']);
        endLongitude = JsonConverters.toDouble(json['endLongitude']);
        totalValue = JsonConverters.toDouble(json['totalValue']);
        totalUnits = JsonConverters.toDouble(json['totalUnits']);
        comments = json['comments'];
        adhocEmailAddress = json['adhocEmailAddress'];
        vatValue = JsonConverters.toDouble(json['vatValue']);
        statusImages = JsonConverters.fromJson(json['statusImages'],'Map<int,List<dynamic>?>',context!);
        damagedOkImages = JsonConverters.fromJson(json['damagedOkImages'],'List<dynamic>',context!);
        damagedBadImages = JsonConverters.fromJson(json['damagedBadImages'],'List<dynamic>',context!);
        expiredImages = JsonConverters.fromJson(json['expiredImages'],'List<dynamic>',context!);
        recallImages = JsonConverters.fromJson(json['recallImages'],'List<dynamic>',context!);
        goodStockImages = JsonConverters.fromJson(json['goodStockImages'],'List<dynamic>',context!);
        derangedImages = JsonConverters.fromJson(json['derangedImages'],'List<dynamic>',context!);
        overstockedImages = JsonConverters.fromJson(json['overstockedImages'],'List<dynamic>',context!);
        factoryFaultImages = JsonConverters.fromJson(json['factoryFaultImages'],'List<dynamic>',context!);
        outletContactName = json['outletContactName'];
        outletContactNumber = json['outletContactNumber'];
        outletLatitude = JsonConverters.toDouble(json['outletLatitude']);
        outletLongitude = JsonConverters.toDouble(json['outletLongitude']);
        maxSubmissionDistance = JsonConverters.toDouble(json['maxSubmissionDistance']);
        actionOutsideMaxDistance = JsonConverters.fromJson(json['actionOutsideMaxDistance'],'ActionOutsideMaxDistanceType',context!);
        outletSignatureImage = JsonConverters.fromJson(json['outletSignatureImage'],'dynamic',context!);
        operatorSignatureImage = JsonConverters.fromJson(json['operatorSignatureImage'],'dynamic',context!);
        operatorRegNumberImage = JsonConverters.fromJson(json['operatorRegNumberImage'],'dynamic',context!);
        seals = JsonConverters.fromJson(json['seals'],'List<UpliftSealData>',context!);
        invalidAntelSeal = json['invalidAntelSeal'];
        unbaggedItems = JsonConverters.fromJson(json['unbaggedItems'],'UpliftSealData',context!);
        authorised = json['authorised'];
        claims = JsonConverters.fromJson(json['claims'],'List<UpliftClaimData>',context!);
        lastUpdated = JsonConverters.fromJson(json['lastUpdated'],'DateTime',context!);
        lastSynced = JsonConverters.fromJson(json['lastSynced'],'DateTime',context!);
        checkedOutDeviceId = json['checkedOutDeviceId'];
        checkedOutOperatorName = json['checkedOutOperatorName'];
        incompleteUpliftId = json['incompleteUpliftId'];
        pauseReason = json['pauseReason'];
        storeConfirmationDocumentUrl = json['storeConfirmationDocumentUrl'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'upliftId': upliftId,
        'principleOutletId': principleOutletId,
        'upliftScheduleId': upliftScheduleId,
        'upliftSchedulePrincipleId': upliftSchedulePrincipleId,
        'authRequestId': authRequestId,
        'delayedAuth': delayedAuth,
        'appointmentPrincipleData': JsonConverters.toJson(appointmentPrincipleData,'AppointmentPrincipleData',context!),
        'authCode': authCode,
        'startTime': startTime,
        'endTime': endTime,
        'sequentialNumber': sequentialNumber,
        'startLatitude': startLatitude,
        'startLongitude': startLongitude,
        'endLatitude': endLatitude,
        'endLongitude': endLongitude,
        'totalValue': totalValue,
        'totalUnits': totalUnits,
        'comments': comments,
        'adhocEmailAddress': adhocEmailAddress,
        'vatValue': vatValue,
        'statusImages': JsonConverters.toJson(statusImages,'Map<int,List<dynamic>?>',context!),
        'damagedOkImages': JsonConverters.toJson(damagedOkImages,'List<dynamic>',context!),
        'damagedBadImages': JsonConverters.toJson(damagedBadImages,'List<dynamic>',context!),
        'expiredImages': JsonConverters.toJson(expiredImages,'List<dynamic>',context!),
        'recallImages': JsonConverters.toJson(recallImages,'List<dynamic>',context!),
        'goodStockImages': JsonConverters.toJson(goodStockImages,'List<dynamic>',context!),
        'derangedImages': JsonConverters.toJson(derangedImages,'List<dynamic>',context!),
        'overstockedImages': JsonConverters.toJson(overstockedImages,'List<dynamic>',context!),
        'factoryFaultImages': JsonConverters.toJson(factoryFaultImages,'List<dynamic>',context!),
        'outletContactName': outletContactName,
        'outletContactNumber': outletContactNumber,
        'outletLatitude': outletLatitude,
        'outletLongitude': outletLongitude,
        'maxSubmissionDistance': maxSubmissionDistance,
        'actionOutsideMaxDistance': JsonConverters.toJson(actionOutsideMaxDistance,'ActionOutsideMaxDistanceType',context!),
        'outletSignatureImage': JsonConverters.toJson(outletSignatureImage,'dynamic',context!),
        'operatorSignatureImage': JsonConverters.toJson(operatorSignatureImage,'dynamic',context!),
        'operatorRegNumberImage': JsonConverters.toJson(operatorRegNumberImage,'dynamic',context!),
        'seals': JsonConverters.toJson(seals,'List<UpliftSealData>',context!),
        'invalidAntelSeal': invalidAntelSeal,
        'unbaggedItems': JsonConverters.toJson(unbaggedItems,'UpliftSealData',context!),
        'authorised': authorised,
        'claims': JsonConverters.toJson(claims,'List<UpliftClaimData>',context!),
        'lastUpdated': JsonConverters.toJson(lastUpdated,'DateTime',context!),
        'lastSynced': JsonConverters.toJson(lastSynced,'DateTime',context!),
        'checkedOutDeviceId': checkedOutDeviceId,
        'checkedOutOperatorName': checkedOutOperatorName,
        'incompleteUpliftId': incompleteUpliftId,
        'pauseReason': pauseReason,
        'storeConfirmationDocumentUrl': storeConfirmationDocumentUrl
    };

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

class IncompleteUpliftFromServerResponse extends ApiServiceResponse implements IConvertible
{
    UpliftData? upliftData;

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

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

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'upliftData': JsonConverters.toJson(upliftData,'UpliftData',context!)
    });

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

class IncompleteUpliftFromServer extends ApiServiceRequest implements IConvertible
{
    String? incompleteUpliftId;

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

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

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'incompleteUpliftId': incompleteUpliftId
    });

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

TypeContext _ctx = TypeContext(library: 'antel.api.dev.86degrees.com', types: <String, TypeInfo> {
    'ApiServiceRequest': TypeInfo(TypeOf.Class, create:() => ApiServiceRequest()),
    'ApiServiceResponse': TypeInfo(TypeOf.Class, create:() => ApiServiceResponse()),
    'ProductData': TypeInfo(TypeOf.Class, create:() => ProductData()),
    'ProductDataCategory': TypeInfo(TypeOf.Class, create:() => ProductDataCategory()),
    'List<ProductData>': TypeInfo(TypeOf.Class, create:() => <ProductData>[]),
    'ProductExceptionData': TypeInfo(TypeOf.Class, create:() => ProductExceptionData()),
    'PrincipalData': TypeInfo(TypeOf.Class, create:() => PrincipalData()),
    'List<ProductDataCategory>': TypeInfo(TypeOf.Class, create:() => <ProductDataCategory>[]),
    'List<ProductExceptionData>': TypeInfo(TypeOf.Class, create:() => <ProductExceptionData>[]),
    'ActionOutsideMaxDistanceType': TypeInfo(TypeOf.Enum, enumValues:ActionOutsideMaxDistanceType.values),
    'TemplateProductData': TypeInfo(TypeOf.Class, create:() => TemplateProductData()),
    'Map<int,int?>': TypeInfo(TypeOf.Class, create:() => Map<int,int?>()),
    'UpliftRequestSealData': TypeInfo(TypeOf.Class, create:() => UpliftRequestSealData()),
    'UpliftTemplateData': TypeInfo(TypeOf.Class, create:() => UpliftTemplateData()),
    'List<TemplateProductData>': TypeInfo(TypeOf.Class, create:() => <TemplateProductData>[]),
    'List<UpliftRequestSealData>': TypeInfo(TypeOf.Class, create:() => <UpliftRequestSealData>[]),
    'StockStatusData': TypeInfo(TypeOf.Class, create:() => StockStatusData()),
    'SealTemplateProduct': TypeInfo(TypeOf.Class, create:() => SealTemplateProduct()),
    'SealTemplateItemData': TypeInfo(TypeOf.Class, create:() => SealTemplateItemData()),
    'List<SealTemplateProduct>': TypeInfo(TypeOf.Class, create:() => <SealTemplateProduct>[]),
    'SealTemplateData': TypeInfo(TypeOf.Class, create:() => SealTemplateData()),
    'List<SealTemplateItemData>': TypeInfo(TypeOf.Class, create:() => <SealTemplateItemData>[]),
    'AppointmentPrincipleData': TypeInfo(TypeOf.Class, create:() => AppointmentPrincipleData()),
    'List<StockStatusData>': TypeInfo(TypeOf.Class, create:() => <StockStatusData>[]),
    'UpliftProductData': TypeInfo(TypeOf.Class, create:() => UpliftProductData()),
    'List<dynamic>': TypeInfo(TypeOf.Class, create:() => <dynamic>[]),
    'UpliftSealData': TypeInfo(TypeOf.Class, create:() => UpliftSealData()),
    'List<UpliftProductData>': TypeInfo(TypeOf.Class, create:() => <UpliftProductData>[]),
    'UpliftClaimData': TypeInfo(TypeOf.Class, create:() => UpliftClaimData()),
    'UpliftData': TypeInfo(TypeOf.Class, create:() => UpliftData()),
    'Map<int,List<dynamic>?>': TypeInfo(TypeOf.Class, create:() => Map<int,List<dynamic>?>()),
    'List<UpliftSealData>': TypeInfo(TypeOf.Class, create:() => <UpliftSealData>[]),
    'List<UpliftClaimData>': TypeInfo(TypeOf.Class, create:() => <UpliftClaimData>[]),
    'IncompleteUpliftFromServerResponse': TypeInfo(TypeOf.Class, create:() => IncompleteUpliftFromServerResponse()),
    'IncompleteUpliftFromServer': TypeInfo(TypeOf.Class, create:() => IncompleteUpliftFromServer()),
});

Dart IncompleteUpliftFromServer 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.

GET /sync/incompleteuplift HTTP/1.1 
Host: antel.api.dev.86degrees.com 
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<IncompleteUpliftFromServerResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/WebService.ServiceModel">
  <Description xmlns="http://schemas.datacontract.org/2004/07/WebService.ServiceModel.Base">String</Description>
  <Heading xmlns="http://schemas.datacontract.org/2004/07/WebService.ServiceModel.Base">String</Heading>
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types" xmlns="http://schemas.datacontract.org/2004/07/WebService.ServiceModel.Base">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
  <WasSuccessful xmlns="http://schemas.datacontract.org/2004/07/WebService.ServiceModel.Base">false</WasSuccessful>
  <UpliftData>
    <ActionOutsideMaxDistance>Warn</ActionOutsideMaxDistance>
    <AdhocEmailAddress>String</AdhocEmailAddress>
    <AppointmentPrincipleData>
      <ActionOutsideMaxDistance>Warn</ActionOutsideMaxDistance>
      <AllowedProductStockStatuses>
        <StockStatusData>
          <Color>String</Color>
          <Id>0</Id>
          <Name>String</Name>
          <PhotoRequired>false</PhotoRequired>
        </StockStatusData>
      </AllowedProductStockStatuses>
      <Cancelled>false</Cancelled>
      <Completed>false</Completed>
      <CompletedDate>String</CompletedDate>
      <GoodsToCollect>false</GoodsToCollect>
      <MaxSubmissionDistance>0</MaxSubmissionDistance>
      <NoteToOperator>String</NoteToOperator>
      <OperatorName>String</OperatorName>
      <OutletChannel>String</OutletChannel>
      <OutletLatitude>0</OutletLatitude>
      <OutletLongitude>0</OutletLongitude>
      <OutletName>String</OutletName>
      <OutletRegion>String</OutletRegion>
      <PreAuthed>false</PreAuthed>
      <PrePopulated>false</PrePopulated>
      <PrePopulatedWithSeals>false</PrePopulatedWithSeals>
      <Principle>
        <AllowBillableSeals>false</AllowBillableSeals>
        <AllowProductLookup>false</AllowProductLookup>
        <AuthLetterFileUrl xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:string>String</d5p1:string>
        </AuthLetterFileUrl>
        <BatchCodesMandatory>false</BatchCodesMandatory>
        <CaptureManufactureAndExpiryDate>false</CaptureManufactureAndExpiryDate>
        <CaptureSerialNumber>false</CaptureSerialNumber>
        <ContactEmail>String</ContactEmail>
        <ContactName>String</ContactName>
        <ContactNumber>String</ContactNumber>
        <HasAuthLetter>false</HasAuthLetter>
        <HasLogo>false</HasLogo>
        <LogoImageUrl>String</LogoImageUrl>
        <Name>String</Name>
        <PrincipalId>0</PrincipalId>
        <ProductExceptions>
          <ProductExceptionData>
            <Channel>String</Channel>
            <ProductId>0</ProductId>
            <Region>String</Region>
            <StockStatusIds xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
              <d7p1:int>0</d7p1:int>
            </StockStatusIds>
          </ProductExceptionData>
        </ProductExceptions>
        <Products>
          <ProductDataCategory>
            <Products>
              <ProductData>
                <CartonMeasurement>String</CartonMeasurement>
                <CartonPrice>0</CartonPrice>
                <CartonQuantity>0</CartonQuantity>
                <CartonWeight>0</CartonWeight>
                <Category>String</Category>
                <MaxPrice>0</MaxPrice>
                <MaxQuantity>0</MaxQuantity>
                <Name>String</Name>
                <PrincipalId>0</PrincipalId>
                <ProductCode>String</ProductCode>
                <ProductId>0</ProductId>
                <ShrinkMeasurement>String</ShrinkMeasurement>
                <ShrinkPrice>0</ShrinkPrice>
                <ShrinkQuantity>0</ShrinkQuantity>
                <ShrinkWeight>0</ShrinkWeight>
                <UnitBarcode>String</UnitBarcode>
                <UnitMeasurement>String</UnitMeasurement>
                <UnitPrice>0</UnitPrice>
                <UnitQuantity>0</UnitQuantity>
                <UnitWeight>0</UnitWeight>
              </ProductData>
            </Products>
            <UnitBarcode>String</UnitBarcode>
          </ProductDataCategory>
        </Products>
        <SealNetWeightMandatory>false</SealNetWeightMandatory>
        <UpliftPrefix>String</UpliftPrefix>
        <UsesOwnSealNumbers>false</UsesOwnSealNumbers>
      </Principle>
      <PrincipleOutletId>0</PrincipleOutletId>
      <ProductExceptions>
        <ProductExceptionData>
          <Channel>String</Channel>
          <ProductId>0</ProductId>
          <Region>String</Region>
          <StockStatusIds xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:int>0</d6p1:int>
          </StockStatusIds>
        </ProductExceptionData>
      </ProductExceptions>
      <ScheduledDate>String</ScheduledDate>
      <SealTemplate>
        <Items>
          <SealTemplateData.SealTemplateItemData>
            <ProductStockStatus>0</ProductStockStatus>
            <Products xmlns:d7p1="http://schemas.datacontract.org/2004/07/BusinessLogic.Entities">
              <d7p1:SealTemplateProduct>
                <d7p1:Name>String</d7p1:Name>
                <d7p1:ProductId>0</d7p1:ProductId>
                <d7p1:ProductStockStatusId>0</d7p1:ProductStockStatusId>
                <d7p1:Quantity>0</d7p1:Quantity>
                <d7p1:SerialNumber>String</d7p1:SerialNumber>
              </d7p1:SealTemplateProduct>
            </Products>
            <SealNumber>String</SealNumber>
          </SealTemplateData.SealTemplateItemData>
        </Items>
      </SealTemplate>
      <StoreConfirmationDocumentUrl>String</StoreConfirmationDocumentUrl>
      <SystemUserId>0</SystemUserId>
      <UpliftScheduleId>0</UpliftScheduleId>
      <UpliftSchedulePrincipleId>0</UpliftSchedulePrincipleId>
      <UpliftTemplate>
        <Products>
          <UpliftTemplateData.TemplateProductData>
            <Barcode>String</Barcode>
            <Name>String</Name>
            <ProductCode>String</ProductCode>
            <ReturnValue>0</ReturnValue>
            <StatusQty xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
              <d7p1:KeyValueOfintint>
                <d7p1:Key>0</d7p1:Key>
                <d7p1:Value>0</d7p1:Value>
              </d7p1:KeyValueOfintint>
            </StatusQty>
          </UpliftTemplateData.TemplateProductData>
        </Products>
        <Seals xmlns:d5p1="http://schemas.datacontract.org/2004/07/BusinessLogic.Entities">
          <d5p1:UpliftRequestSealData>
            <d5p1:Number>String</d5p1:Number>
            <d5p1:Weight>0</d5p1:Weight>
          </d5p1:UpliftRequestSealData>
        </Seals>
        <TotalValue>0</TotalValue>
      </UpliftTemplate>
      <VerificationCode>String</VerificationCode>
    </AppointmentPrincipleData>
    <AuthCode>String</AuthCode>
    <AuthRequestId>00000000-0000-0000-0000-000000000000</AuthRequestId>
    <Authorised>false</Authorised>
    <CheckedOutDeviceId>00000000-0000-0000-0000-000000000000</CheckedOutDeviceId>
    <CheckedOutOperatorName>String</CheckedOutOperatorName>
    <Claims>
      <UpliftClaimData>
        <ClaimDocumentImages xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:anyType />
        </ClaimDocumentImages>
        <ClaimNumber>String</ClaimNumber>
        <ClaimUnits>0</ClaimUnits>
        <ClaimValue>0</ClaimValue>
        <LineCount>0</LineCount>
        <ReturnOrderNumber>String</ReturnOrderNumber>
        <UpliftClaimId>0</UpliftClaimId>
      </UpliftClaimData>
    </Claims>
    <Comments>String</Comments>
    <DamagedBadImages xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:anyType />
    </DamagedBadImages>
    <DamagedOkImages xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:anyType />
    </DamagedOkImages>
    <DelayedAuth>false</DelayedAuth>
    <DerangedImages xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:anyType />
    </DerangedImages>
    <EndLatitude>0</EndLatitude>
    <EndLongitude>0</EndLongitude>
    <EndTime>String</EndTime>
    <ExpiredImages xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:anyType />
    </ExpiredImages>
    <FactoryFaultImages xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:anyType />
    </FactoryFaultImages>
    <GoodStockImages xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:anyType />
    </GoodStockImages>
    <IncompleteUpliftId>00000000-0000-0000-0000-000000000000</IncompleteUpliftId>
    <LastSynced>0001-01-01T00:00:00</LastSynced>
    <LastUpdated>0001-01-01T00:00:00</LastUpdated>
    <MaxSubmissionDistance>0</MaxSubmissionDistance>
    <OperatorRegNumberImage />
    <OperatorSignatureImage />
    <OutletContactName>String</OutletContactName>
    <OutletContactNumber>String</OutletContactNumber>
    <OutletLatitude>0</OutletLatitude>
    <OutletLongitude>0</OutletLongitude>
    <OutletSignatureImage />
    <OverstockedImages xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:anyType />
    </OverstockedImages>
    <PauseReason>String</PauseReason>
    <PrincipleOutletId>0</PrincipleOutletId>
    <RecallImages xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:anyType />
    </RecallImages>
    <Seals>
      <UpliftSealData>
        <AntelSealNumber>String</AntelSealNumber>
        <BillableSeal>false</BillableSeal>
        <GrossWeight>0</GrossWeight>
        <InvalidAntelSealNumber>false</InvalidAntelSealNumber>
        <NetWeight>0</NetWeight>
        <Products>
          <UpliftProductData>
            <BatchCode>String</BatchCode>
            <Category>String</Category>
            <Code>String</Code>
            <ExpiryDate>String</ExpiryDate>
            <LotNumber>String</LotNumber>
            <ManufactureDate>String</ManufactureDate>
            <Name>String</Name>
            <PriceOverMax>false</PriceOverMax>
            <ProductId>0</ProductId>
            <Quantity>0</Quantity>
            <QuantityOverMax>false</QuantityOverMax>
            <QuantityOverRequirement>false</QuantityOverRequirement>
            <SerialNumber>String</SerialNumber>
            <StockStatusId>0</StockStatusId>
            <UnitBarcode>String</UnitBarcode>
            <UnitPrice>0</UnitPrice>
            <UnitSize>String</UnitSize>
            <UnitWeight>0</UnitWeight>
            <UpliftId>0</UpliftId>
            <UpliftImages xmlns:d7p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
              <d7p1:anyType />
            </UpliftImages>
            <UpliftProductId>0</UpliftProductId>
            <Value>0</Value>
          </UpliftProductData>
        </Products>
        <SealNumber>String</SealNumber>
        <TotalPrice>0</TotalPrice>
        <TotalQuantity>0</TotalQuantity>
        <Unbagged>false</Unbagged>
      </UpliftSealData>
    </Seals>
    <SequentialNumber>String</SequentialNumber>
    <StartLatitude>0</StartLatitude>
    <StartLongitude>0</StartLongitude>
    <StartTime>String</StartTime>
    <StatusImages xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfintArrayOfanyTypety7Ep6D1>
        <d3p1:Key>0</d3p1:Key>
        <d3p1:Value>
          <d3p1:anyType />
        </d3p1:Value>
      </d3p1:KeyValueOfintArrayOfanyTypety7Ep6D1>
    </StatusImages>
    <StoreConfirmationDocumentUrl>String</StoreConfirmationDocumentUrl>
    <TotalUnits>0</TotalUnits>
    <TotalValue>0</TotalValue>
    <UnbaggedItems>
      <AntelSealNumber>String</AntelSealNumber>
      <BillableSeal>false</BillableSeal>
      <GrossWeight>0</GrossWeight>
      <InvalidAntelSealNumber>false</InvalidAntelSealNumber>
      <NetWeight>0</NetWeight>
      <Products>
        <UpliftProductData>
          <BatchCode>String</BatchCode>
          <Category>String</Category>
          <Code>String</Code>
          <ExpiryDate>String</ExpiryDate>
          <LotNumber>String</LotNumber>
          <ManufactureDate>String</ManufactureDate>
          <Name>String</Name>
          <PriceOverMax>false</PriceOverMax>
          <ProductId>0</ProductId>
          <Quantity>0</Quantity>
          <QuantityOverMax>false</QuantityOverMax>
          <QuantityOverRequirement>false</QuantityOverRequirement>
          <SerialNumber>String</SerialNumber>
          <StockStatusId>0</StockStatusId>
          <UnitBarcode>String</UnitBarcode>
          <UnitPrice>0</UnitPrice>
          <UnitSize>String</UnitSize>
          <UnitWeight>0</UnitWeight>
          <UpliftId>0</UpliftId>
          <UpliftImages xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:anyType />
          </UpliftImages>
          <UpliftProductId>0</UpliftProductId>
          <Value>0</Value>
        </UpliftProductData>
      </Products>
      <SealNumber>String</SealNumber>
      <TotalPrice>0</TotalPrice>
      <TotalQuantity>0</TotalQuantity>
      <Unbagged>false</Unbagged>
    </UnbaggedItems>
    <UpliftId>0</UpliftId>
    <UpliftScheduleId>0</UpliftScheduleId>
    <UpliftSchedulePrincipleId>0</UpliftSchedulePrincipleId>
    <VatValue>0</VatValue>
  </UpliftData>
</IncompleteUpliftFromServerResponse>