| GET | /equipment/{brand}/{posCode}/{serialNumber} | Get the list of SAP equipment |
|---|
import Foundation
import ServiceStack
public class GetEquipment : Codable
{
/**
* Brand trigram
*/
// @ApiMember(Description="Brand trigram", IsRequired=true)
public var brand:String
/**
* POS Legacy
*/
// @ApiMember(Description="POS Legacy", IsRequired=true)
public var posCode:String
/**
* SerialNumber
*/
// @ApiMember(Description="SerialNumber", IsRequired=true)
public var serialNumber:String
/**
* Reference like 'CRWSTA0030'
*/
// @ApiMember(Description="Reference like 'CRWSTA0030'")
public var articleCode:String
required public init(){}
}
public class GetEquipmentResponse : Equipment
{
required public init(){ super.init() }
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
}
}
public class Equipment : Codable
{
public var equipmentFound:Bool
public var equipmentList:[EquipmentDetail] = []
required public init(){}
}
public class EquipmentDetail : Codable
{
public var articleCode:String
public var articleDescription:String
public var cassFamily:String
public var serialNumber:String
public var equipmentNumber:String
public var articleName:String
public var lastRepairNumber:String
public var repairs:[EquipmentRepair] = []
public var status:[EquipmentStatus] = []
public var warranties:[EquipmentWarranty] = []
required public init(){}
}
public class EquipmentRepair : Codable
{
public var equipmentNumber:String
public var repairNumber:String
public var repairCloseDate:String
public var details:[EquipmentRepairDetail] = []
required public init(){}
}
public class EquipmentRepairDetail : Codable
{
public var equipmentNumber:String
public var repairNumber:String
public var itemCategory:String
public var item:String
required public init(){}
}
public class EquipmentStatus : Codable
{
public var equipmentNumber:String
public var statusCode:String
public var statusDescription:String
public var statusTextCode:String
required public init(){}
}
public class EquipmentWarranty : Codable
{
public var equipmentNumber:String
public var warrantyType:String
public var warrantyStartDate:String
public var warrantyEndDate:String
required public init(){}
}
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.
GET /equipment/{brand}/{posCode}/{serialNumber} HTTP/1.1
Host: dev-api-booster.richemont.com
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
equipmentFound: False,
equipmentList:
[
{
articleCode: String,
articleDescription: String,
cassFamily: String,
serialNumber: String,
equipmentNumber: String,
articleName: String,
lastRepairNumber: String,
repairs:
[
{
equipmentNumber: String,
repairNumber: String,
repairCloseDate: String,
details:
[
{
equipmentNumber: String,
repairNumber: String,
itemCategory: String,
item: String
}
]
}
],
status:
[
{
equipmentNumber: String,
statusCode: String,
statusDescription: String,
statusTextCode: String
}
],
warranties:
[
{
equipmentNumber: String,
warrantyType: String,
warrantyStartDate: String,
warrantyEndDate: String
}
]
}
]
}