| POST, GET | /searchOrder |
|---|
import java.math.*
import java.util.*
import net.servicestack.client.*
@DataContract
open class SearchOrder
{
@DataMember
var comment:String? = null
@DataMember
var fromGlobalId:Long? = null
@DataMember
var toGlobalId:Long? = null
@DataMember
var page:Int? = null
@DataMember
var fromDate:Date? = null
@DataMember
var toDate:Date? = null
@DataMember
var tokenId:UUID? = null
}
@DataContract
open class SearchOrderResponse
{
@DataMember
var responseStatus:ResponseStatus? = null
@DataMember
var totalResultsCount:Long? = null
@DataMember
var result:ArrayList<OrderItemModel>? = null
}
@DataContract
open class OrderItemModel
{
@DataMember
var orderItemId:UUID? = null
@DataMember
var globalId:Long? = null
@DataMember
var date:Date? = null
@DataMember
var lastUpdate:Date? = null
@DataMember
var productId:UUID? = null
@DataMember
var productNumber:String? = null
@DataMember
var productTitle:String? = null
@DataMember
var manufacturerTitle:String? = null
@DataMember
var replacementProductId:UUID? = null
@DataMember
var replacementProductNumber:String? = null
@DataMember
var replacementProductTitle:String? = null
@DataMember
var replacementManufacturerTitle:String? = null
@DataMember
var quantity:Int? = null
@DataMember
var price:BigDecimal? = null
@DataMember
var initialPrice:BigDecimal? = null
@DataMember
var comment:String? = null
@DataMember
var expectedDeliveryDays:Int? = null
@DataMember
var guaranteedDeliveryDays:Int? = null
@DataMember
var guaranteedDeliveryTime:Date? = null
@DataMember
var expectedDeliveryTime:Date? = null
@DataMember
var priceListLogo:String? = null
@DataMember
var delivery:String? = null
@DataMember
var isCash:Boolean? = null
@DataMember
var deliveryDate:Date? = null
@DataMember
var priceListUseSchedule:Boolean? = null
@DataMember
var supplierAliasId:UUID? = null
@DataMember
var subcustomerId:UUID? = null
@DataMember
var isCashSubcustomer:Boolean? = null
@DataMember
var subcustomerLogo:String? = null
@DataMember
var initialSubcustomerPrice:BigDecimal? = null
@DataMember
var subcustomerPrice:BigDecimal? = null
@DataMember
var motions:ArrayList<OrderItemMotionModel>? = null
}
@DataContract
open class OrderItemMotionModel
{
@DataMember
var motionId:UUID? = null
@DataMember
var parentId:UUID? = null
@DataMember
var state:OrderItemState? = null
@DataMember
var stateTitle:String? = null
@DataMember
var date:Date? = null
@DataMember
var initialQuantity:Int? = null
@DataMember
var quantity:Int? = null
@DataMember
var plannedDeliveryDate:Date? = null
}
enum class OrderItemState
{
Undefined,
Sold,
Refused,
InOrder,
InSupplierCart,
Purchased,
NotDistributed,
InCart,
Ready,
Distributed,
SupplierRefused,
Archived,
GivingOutScan,
InProcessing,
Return,
Returned,
RefusedByClient,
PurchasedBySupplier,
InParentCart,
InSupplierWebCart,
WorkInSupplierWebCart,
Deficit,
}
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 /searchOrder HTTP/1.1
Host: api.oszz.ru
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
comment: String,
fromGlobalId: 0,
toGlobalId: 0,
page: 0,
fromDate: 0001-01-01,
toDate: 0001-01-01,
tokenId: 00000000000000000000000000000000
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
responseStatus:
{
errorCode: String,
message: String,
stackTrace: String,
errors:
[
{
errorCode: String,
fieldName: String,
message: String,
meta:
{
String: String
}
}
],
meta:
{
String: String
}
},
totalResultsCount: 0,
result:
[
{
orderItemId: 00000000000000000000000000000000,
globalId: 0,
date: 0001-01-01,
lastUpdate: 0001-01-01,
productId: 00000000000000000000000000000000,
productNumber: String,
productTitle: String,
manufacturerTitle: String,
replacementProductId: 00000000000000000000000000000000,
replacementProductNumber: String,
replacementProductTitle: String,
replacementManufacturerTitle: String,
quantity: 0,
price: 0,
initialPrice: 0,
comment: String,
expectedDeliveryDays: 0,
guaranteedDeliveryDays: 0,
guaranteedDeliveryTime: 0001-01-01,
expectedDeliveryTime: 0001-01-01,
priceListLogo: String,
delivery: String,
isCash: False,
deliveryDate: 0001-01-01,
priceListUseSchedule: False,
supplierAliasId: 00000000000000000000000000000000,
subcustomerId: 00000000000000000000000000000000,
isCashSubcustomer: False,
subcustomerLogo: String,
initialSubcustomerPrice: 0,
subcustomerPrice: 0,
motions:
[
{
motionId: 00000000000000000000000000000000,
parentId: 00000000000000000000000000000000,
state: Undefined,
stateTitle: String,
date: 0001-01-01,
initialQuantity: 0,
quantity: 0,
plannedDeliveryDate: 0001-01-01
}
]
}
]
}