| POST | /uplift |
|---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using WebService.ServiceModel;
using WebService.ServiceModel.Base;
using BusinessLogic.Entities;
namespace BusinessLogic.Entities
{
public enum ActionOutsideMaxDistanceType
{
Warn = 0,
Block = 1,
}
public partial class SealTemplateProduct
{
public virtual int ProductId { get; set; }
public virtual string Name { get; set; }
public virtual int ProductStockStatusId { get; set; }
public virtual int Quantity { get; set; }
public virtual string SerialNumber { get; set; }
}
public partial class UpliftRequestSealData
{
public virtual string Number { get; set; }
public virtual double Weight { get; set; }
}
}
namespace WebService.ServiceModel
{
public partial class AppointmentPrincipleData
{
public AppointmentPrincipleData()
{
AllowedProductStockStatuses = new List<StockStatusData>{};
ProductExceptions = new List<ProductExceptionData>{};
}
public virtual PrincipalData Principle { get; set; }
public virtual string ScheduledDate { get; set; }
public virtual int UpliftScheduleId { get; set; }
public virtual int UpliftSchedulePrincipleId { get; set; }
public virtual int PrincipleOutletId { get; set; }
public virtual string VerificationCode { get; set; }
public virtual bool GoodsToCollect { get; set; }
public virtual string OutletRegion { get; set; }
public virtual string OutletName { get; set; }
public virtual string OutletChannel { get; set; }
public virtual double OutletLatitude { get; set; }
public virtual double OutletLongitude { get; set; }
public virtual double MaxSubmissionDistance { get; set; }
public virtual ActionOutsideMaxDistanceType ActionOutsideMaxDistance { get; set; }
public virtual string CompletedDate { get; set; }
public virtual bool Cancelled { get; set; }
public virtual bool Completed { get; set; }
public virtual UpliftTemplateData UpliftTemplate { get; set; }
public virtual bool PrePopulated { get; set; }
public virtual List<StockStatusData> AllowedProductStockStatuses { get; set; }
public virtual string NoteToOperator { get; set; }
public virtual SealTemplateData SealTemplate { get; set; }
public virtual bool PrePopulatedWithSeals { get; set; }
public virtual bool PreAuthed { get; set; }
public virtual string OperatorName { get; set; }
public virtual int SystemUserId { get; set; }
public virtual List<ProductExceptionData> ProductExceptions { get; set; }
public virtual string StoreConfirmationDocumentUrl { get; set; }
}
public partial class PrincipalData
{
public PrincipalData()
{
AuthLetterFileUrl = new List<string>{};
Products = new List<ProductDataCategory>{};
ProductExceptions = new List<ProductExceptionData>{};
}
public virtual int PrincipalId { get; set; }
public virtual string Name { get; set; }
public virtual List<string> AuthLetterFileUrl { get; set; }
public virtual string LogoImageUrl { get; set; }
public virtual List<ProductDataCategory> Products { get; set; }
public virtual string UpliftPrefix { get; set; }
public virtual string ContactName { get; set; }
public virtual string ContactNumber { get; set; }
public virtual string ContactEmail { get; set; }
public virtual bool AllowProductLookup { get; set; }
public virtual bool HasLogo { get; set; }
public virtual bool HasAuthLetter { get; set; }
public virtual bool SealNetWeightMandatory { get; set; }
public virtual bool AllowBillableSeals { get; set; }
public virtual bool CaptureSerialNumber { get; set; }
public virtual bool BatchCodesMandatory { get; set; }
public virtual bool CaptureManufactureAndExpiryDate { get; set; }
public virtual List<ProductExceptionData> ProductExceptions { get; set; }
public virtual bool UsesOwnSealNumbers { get; set; }
}
public partial class ProductData
{
public virtual int ProductId { get; set; }
public virtual int PrincipalId { get; set; }
public virtual string Name { get; set; }
public virtual string Category { get; set; }
public virtual string ProductCode { get; set; }
public virtual string UnitBarcode { get; set; }
public virtual int CartonQuantity { get; set; }
public virtual int ShrinkQuantity { get; set; }
public virtual int UnitQuantity { get; set; }
public virtual string CartonMeasurement { get; set; }
public virtual string ShrinkMeasurement { get; set; }
public virtual string UnitMeasurement { get; set; }
public virtual double CartonWeight { get; set; }
public virtual double ShrinkWeight { get; set; }
public virtual decimal UnitWeight { get; set; }
public virtual decimal CartonPrice { get; set; }
public virtual decimal ShrinkPrice { get; set; }
public virtual decimal UnitPrice { get; set; }
public virtual int MaxQuantity { get; set; }
public virtual int MaxPrice { get; set; }
}
public partial class ProductDataCategory
{
public ProductDataCategory()
{
Products = new List<ProductData>{};
}
public virtual string UnitBarcode { get; set; }
public virtual List<ProductData> Products { get; set; }
}
public partial class ProductExceptionData
{
public ProductExceptionData()
{
StockStatusIds = new List<int>{};
}
public virtual string Region { get; set; }
public virtual string Channel { get; set; }
public virtual int ProductId { get; set; }
public virtual List<int> StockStatusIds { get; set; }
}
public partial class SaveUplift
: ApiServiceRequest
{
public virtual UpliftData Uplift { get; set; }
}
public partial class SaveUpliftResponse
: ApiServiceResponse
{
public SaveUpliftResponse()
{
Seals = new List<UpliftSealData>{};
Claims = new List<UpliftClaimData>{};
ImageIds = new List<string>{};
}
public virtual int UpliftId { get; set; }
public virtual Guid UpliftAuthRequestId { get; set; }
public virtual List<UpliftSealData> Seals { get; set; }
public virtual UpliftSealData UnbaggedItems { get; set; }
public virtual List<UpliftClaimData> Claims { get; set; }
public virtual bool DeleteFromDevice { get; set; }
public virtual List<string> ImageIds { get; set; }
public virtual bool InvalidAntelSeal { get; set; }
}
public partial class SealTemplateData
{
public SealTemplateData()
{
Items = new List<SealTemplateItemData>{};
}
public virtual List<SealTemplateItemData> Items { get; set; }
public partial class SealTemplateItemData
{
public SealTemplateItemData()
{
Products = new List<SealTemplateProduct>{};
}
public virtual string SealNumber { get; set; }
public virtual int ProductStockStatus { get; set; }
public virtual List<SealTemplateProduct> Products { get; set; }
}
}
public partial class StockStatusData
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
public virtual bool PhotoRequired { get; set; }
public virtual string Color { get; set; }
}
public partial class UpliftClaimData
{
public UpliftClaimData()
{
ClaimDocumentImages = new List<Object>{};
}
public virtual int UpliftClaimId { get; set; }
public virtual int ClaimUnits { get; set; }
public virtual string ClaimNumber { get; set; }
public virtual decimal ClaimValue { get; set; }
public virtual List<Object> ClaimDocumentImages { get; set; }
public virtual string ReturnOrderNumber { get; set; }
public virtual int LineCount { get; set; }
}
public partial class UpliftData
{
public UpliftData()
{
StatusImages = new Dictionary<int, List<Object>>{};
DamagedOkImages = new List<Object>{};
DamagedBadImages = new List<Object>{};
ExpiredImages = new List<Object>{};
RecallImages = new List<Object>{};
GoodStockImages = new List<Object>{};
DerangedImages = new List<Object>{};
OverstockedImages = new List<Object>{};
FactoryFaultImages = new List<Object>{};
Seals = new List<UpliftSealData>{};
Claims = new List<UpliftClaimData>{};
}
public virtual int UpliftId { get; set; }
public virtual int PrincipleOutletId { get; set; }
public virtual int UpliftScheduleId { get; set; }
public virtual int UpliftSchedulePrincipleId { get; set; }
public virtual Guid AuthRequestId { get; set; }
public virtual bool DelayedAuth { get; set; }
public virtual AppointmentPrincipleData AppointmentPrincipleData { get; set; }
public virtual string AuthCode { get; set; }
public virtual string StartTime { get; set; }
public virtual string EndTime { get; set; }
public virtual string SequentialNumber { get; set; }
public virtual double StartLatitude { get; set; }
public virtual double StartLongitude { get; set; }
public virtual double EndLatitude { get; set; }
public virtual double EndLongitude { get; set; }
public virtual decimal TotalValue { get; set; }
public virtual double TotalUnits { get; set; }
public virtual string Comments { get; set; }
public virtual string AdhocEmailAddress { get; set; }
public virtual decimal VatValue { get; set; }
public virtual Dictionary<int, List<Object>> StatusImages { get; set; }
public virtual List<Object> DamagedOkImages { get; set; }
public virtual List<Object> DamagedBadImages { get; set; }
public virtual List<Object> ExpiredImages { get; set; }
public virtual List<Object> RecallImages { get; set; }
public virtual List<Object> GoodStockImages { get; set; }
public virtual List<Object> DerangedImages { get; set; }
public virtual List<Object> OverstockedImages { get; set; }
public virtual List<Object> FactoryFaultImages { get; set; }
public virtual string OutletContactName { get; set; }
public virtual string OutletContactNumber { get; set; }
public virtual double OutletLatitude { get; set; }
public virtual double OutletLongitude { get; set; }
public virtual double MaxSubmissionDistance { get; set; }
public virtual ActionOutsideMaxDistanceType ActionOutsideMaxDistance { get; set; }
public virtual Object OutletSignatureImage { get; set; }
public virtual Object OperatorSignatureImage { get; set; }
public virtual Object OperatorRegNumberImage { get; set; }
public virtual List<UpliftSealData> Seals { get; set; }
public virtual bool InvalidAntelSeal { get; set; }
public virtual UpliftSealData UnbaggedItems { get; set; }
public virtual bool Authorised { get; set; }
public virtual List<UpliftClaimData> Claims { get; set; }
public virtual DateTime LastUpdated { get; set; }
public virtual DateTime LastSynced { get; set; }
public virtual Guid CheckedOutDeviceId { get; set; }
public virtual string CheckedOutOperatorName { get; set; }
public virtual Guid IncompleteUpliftId { get; set; }
public virtual string PauseReason { get; set; }
public virtual string StoreConfirmationDocumentUrl { get; set; }
}
public partial class UpliftProductData
{
public UpliftProductData()
{
UpliftImages = new List<Object>{};
}
public virtual int UpliftProductId { get; set; }
public virtual int UpliftId { get; set; }
public virtual int ProductId { get; set; }
public virtual decimal UnitPrice { get; set; }
public virtual string Name { get; set; }
public virtual string Category { get; set; }
public virtual string UnitBarcode { get; set; }
public virtual string UnitSize { get; set; }
public virtual decimal UnitWeight { get; set; }
public virtual string Code { get; set; }
public virtual List<Object> UpliftImages { get; set; }
public virtual double Quantity { get; set; }
public virtual decimal Value { get; set; }
public virtual bool PriceOverMax { get; set; }
public virtual bool QuantityOverMax { get; set; }
public virtual bool QuantityOverRequirement { get; set; }
public virtual string SerialNumber { get; set; }
public virtual string BatchCode { get; set; }
public virtual int StockStatusId { get; set; }
public virtual string LotNumber { get; set; }
public virtual string ExpiryDate { get; set; }
public virtual string ManufactureDate { get; set; }
}
public partial class UpliftSealData
{
public UpliftSealData()
{
Products = new List<UpliftProductData>{};
}
public virtual bool Unbagged { get; set; }
public virtual string SealNumber { get; set; }
public virtual string AntelSealNumber { get; set; }
public virtual List<UpliftProductData> Products { get; set; }
public virtual double TotalPrice { get; set; }
public virtual double TotalQuantity { get; set; }
public virtual double NetWeight { get; set; }
public virtual double GrossWeight { get; set; }
public virtual bool BillableSeal { get; set; }
public virtual bool InvalidAntelSealNumber { get; set; }
}
public partial class UpliftTemplateData
{
public UpliftTemplateData()
{
Products = new List<TemplateProductData>{};
Seals = new List<UpliftRequestSealData>{};
}
public virtual decimal TotalValue { get; set; }
public virtual List<TemplateProductData> Products { get; set; }
public virtual List<UpliftRequestSealData> Seals { get; set; }
public partial class TemplateProductData
{
public TemplateProductData()
{
StatusQty = new Dictionary<int, int>{};
}
public virtual string Name { get; set; }
public virtual string ProductCode { get; set; }
public virtual string Barcode { get; set; }
public virtual Dictionary<int, int> StatusQty { get; set; }
public virtual decimal ReturnValue { get; set; }
}
}
}
namespace WebService.ServiceModel.Base
{
public partial class ApiServiceRequest
: IServiceRequest, IHasApiKey, IHasDeviceInfo
{
///<summary>
///The API Key required for authentication
///</summary>
[ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true)]
public virtual string ApiKey { get; set; }
///<summary>
///Latitude of the user making this request
///</summary>
[ApiMember(DataType="double", Description="Latitude of the user making this request")]
public virtual double Latitude { get; set; }
///<summary>
///Longitude of the user making this request
///</summary>
[ApiMember(DataType="double", Description="Longitude of the user making this request")]
public virtual double Longitude { get; set; }
}
public partial class ApiServiceResponse
: IServiceResponse
{
///<summary>
///Information about the response.
///</summary>
[ApiMember(Description="Information about the response.", IsRequired=true)]
public virtual string Description { get; set; }
///<summary>
///Heading or summary of the response.
///</summary>
[ApiMember(Description="Heading or summary of the response.", IsRequired=true)]
public virtual string Heading { get; set; }
///<summary>
///Did the intended operation for this response complete successfully?
///</summary>
[ApiMember(DataType="boolean", Description="Did the intended operation for this response complete successfully?", IsRequired=true)]
public virtual bool WasSuccessful { get; set; }
public virtual ResponseStatus ResponseStatus { get; set; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /uplift HTTP/1.1
Host: antel.api.dev.86degrees.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
uplift:
{
upliftId: 0,
principleOutletId: 0,
upliftScheduleId: 0,
upliftSchedulePrincipleId: 0,
delayedAuth: False,
appointmentPrincipleData:
{
principle:
{
principalId: 0,
name: String,
authLetterFileUrl:
[
String
],
logoImageUrl: String,
products:
[
{
unitBarcode: String,
products:
[
{
productId: 0,
principalId: 0,
name: String,
category: String,
productCode: String,
unitBarcode: String,
cartonQuantity: 0,
shrinkQuantity: 0,
unitQuantity: 0,
cartonMeasurement: String,
shrinkMeasurement: String,
unitMeasurement: String,
cartonWeight: 0,
shrinkWeight: 0,
unitWeight: 0,
cartonPrice: 0,
shrinkPrice: 0,
unitPrice: 0,
maxQuantity: 0,
maxPrice: 0
}
]
}
],
upliftPrefix: String,
contactName: String,
contactNumber: String,
contactEmail: String,
allowProductLookup: False,
hasLogo: False,
hasAuthLetter: False,
sealNetWeightMandatory: False,
allowBillableSeals: False,
captureSerialNumber: False,
batchCodesMandatory: False,
captureManufactureAndExpiryDate: False,
productExceptions:
[
{
region: String,
channel: String,
productId: 0,
stockStatusIds:
[
0
]
}
],
usesOwnSealNumbers: False
},
scheduledDate: String,
upliftScheduleId: 0,
upliftSchedulePrincipleId: 0,
principleOutletId: 0,
verificationCode: String,
goodsToCollect: False,
outletRegion: String,
outletName: String,
outletChannel: String,
outletLatitude: 0,
outletLongitude: 0,
maxSubmissionDistance: 0,
actionOutsideMaxDistance: 0,
completedDate: String,
cancelled: False,
completed: False,
upliftTemplate:
{
totalValue: 0,
products:
[
{
name: String,
productCode: String,
barcode: String,
statusQty:
{
0: 0
},
returnValue: 0
}
],
seals:
[
{
number: String,
weight: 0
}
]
},
prePopulated: False,
allowedProductStockStatuses:
[
{
id: 0,
name: String,
photoRequired: False,
color: String
}
],
noteToOperator: String,
sealTemplate:
{
items:
[
{
sealNumber: String,
productStockStatus: 0,
products:
[
{
productId: 0,
name: String,
productStockStatusId: 0,
quantity: 0,
serialNumber: String
}
]
}
]
},
prePopulatedWithSeals: False,
preAuthed: False,
operatorName: String,
systemUserId: 0,
productExceptions:
[
{
region: String,
channel: String,
productId: 0,
stockStatusIds:
[
0
]
}
],
storeConfirmationDocumentUrl: String
},
authCode: String,
startTime: String,
endTime: String,
sequentialNumber: String,
startLatitude: 0,
startLongitude: 0,
endLatitude: 0,
endLongitude: 0,
totalValue: 0,
totalUnits: 0,
comments: String,
adhocEmailAddress: String,
vatValue: 0,
statusImages:
{
0:
[
{
}
]
},
damagedOkImages:
[
{
}
],
damagedBadImages:
[
{
}
],
expiredImages:
[
{
}
],
recallImages:
[
{
}
],
goodStockImages:
[
{
}
],
derangedImages:
[
{
}
],
overstockedImages:
[
{
}
],
factoryFaultImages:
[
{
}
],
outletContactName: String,
outletContactNumber: String,
outletLatitude: 0,
outletLongitude: 0,
maxSubmissionDistance: 0,
actionOutsideMaxDistance: 0,
outletSignatureImage: {},
operatorSignatureImage: {},
operatorRegNumberImage: {},
seals:
[
{
unbagged: False,
sealNumber: String,
antelSealNumber: String,
products:
[
{
upliftProductId: 0,
upliftId: 0,
productId: 0,
unitPrice: 0,
name: String,
category: String,
unitBarcode: String,
unitSize: String,
unitWeight: 0,
code: String,
upliftImages:
[
{
}
],
quantity: 0,
value: 0,
priceOverMax: False,
quantityOverMax: False,
quantityOverRequirement: False,
serialNumber: String,
batchCode: String,
stockStatusId: 0,
lotNumber: String,
expiryDate: String,
manufactureDate: String
}
],
totalPrice: 0,
totalQuantity: 0,
netWeight: 0,
grossWeight: 0,
billableSeal: False,
invalidAntelSealNumber: False
}
],
invalidAntelSeal: False,
unbaggedItems:
{
unbagged: False,
sealNumber: String,
antelSealNumber: String,
products:
[
{
upliftProductId: 0,
upliftId: 0,
productId: 0,
unitPrice: 0,
name: String,
category: String,
unitBarcode: String,
unitSize: String,
unitWeight: 0,
code: String,
upliftImages:
[
{
}
],
quantity: 0,
value: 0,
priceOverMax: False,
quantityOverMax: False,
quantityOverRequirement: False,
serialNumber: String,
batchCode: String,
stockStatusId: 0,
lotNumber: String,
expiryDate: String,
manufactureDate: String
}
],
totalPrice: 0,
totalQuantity: 0,
netWeight: 0,
grossWeight: 0,
billableSeal: False,
invalidAntelSealNumber: False
},
authorised: False,
claims:
[
{
upliftClaimId: 0,
claimUnits: 0,
claimNumber: String,
claimValue: 0,
claimDocumentImages:
[
{
}
],
returnOrderNumber: String,
lineCount: 0
}
],
lastUpdated: 0001-01-01,
lastSynced: 0001-01-01,
checkedOutOperatorName: String,
pauseReason: String,
storeConfirmationDocumentUrl: String
},
apiKey: String,
latitude: 0,
longitude: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
upliftId: 0,
seals:
[
{
unbagged: False,
sealNumber: String,
antelSealNumber: String,
products:
[
{
upliftProductId: 0,
upliftId: 0,
productId: 0,
unitPrice: 0,
name: String,
category: String,
unitBarcode: String,
unitSize: String,
unitWeight: 0,
code: String,
upliftImages:
[
{
}
],
quantity: 0,
value: 0,
priceOverMax: False,
quantityOverMax: False,
quantityOverRequirement: False,
serialNumber: String,
batchCode: String,
stockStatusId: 0,
lotNumber: String,
expiryDate: String,
manufactureDate: String
}
],
totalPrice: 0,
totalQuantity: 0,
netWeight: 0,
grossWeight: 0,
billableSeal: False,
invalidAntelSealNumber: False
}
],
unbaggedItems:
{
unbagged: False,
sealNumber: String,
antelSealNumber: String,
products:
[
{
upliftProductId: 0,
upliftId: 0,
productId: 0,
unitPrice: 0,
name: String,
category: String,
unitBarcode: String,
unitSize: String,
unitWeight: 0,
code: String,
upliftImages:
[
{
}
],
quantity: 0,
value: 0,
priceOverMax: False,
quantityOverMax: False,
quantityOverRequirement: False,
serialNumber: String,
batchCode: String,
stockStatusId: 0,
lotNumber: String,
expiryDate: String,
manufactureDate: String
}
],
totalPrice: 0,
totalQuantity: 0,
netWeight: 0,
grossWeight: 0,
billableSeal: False,
invalidAntelSealNumber: False
},
claims:
[
{
upliftClaimId: 0,
claimUnits: 0,
claimNumber: String,
claimValue: 0,
claimDocumentImages:
[
{
}
],
returnOrderNumber: String,
lineCount: 0
}
],
deleteFromDevice: False,
imageIds:
[
String
],
invalidAntelSeal: False,
description: String,
heading: String,
wasSuccessful: False,
responseStatus:
{
errorCode: String,
message: String,
stackTrace: String,
errors:
[
{
errorCode: String,
fieldName: String,
message: String,
meta:
{
String: String
}
}
],
meta:
{
String: String
}
}
}