GET | /user/{supplieruserid}/purchaseorder/{purchaseorderid} |
---|
import 'package:servicestack/servicestack.dart';
abstract class PurchaseOrderBase
{
int? PurchaseOrderId;
int? SupplierUserId;
PurchaseOrderBase({this.PurchaseOrderId,this.SupplierUserId});
PurchaseOrderBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
PurchaseOrderId = json['PurchaseOrderId'];
SupplierUserId = json['SupplierUserId'];
return this;
}
Map<String, dynamic> toJson() => {
'PurchaseOrderId': PurchaseOrderId,
'SupplierUserId': SupplierUserId
};
getTypeName() => "PurchaseOrderBase";
TypeContext? context = _ctx;
}
abstract class ResponseBase
{
ResponseStatus? ResponseStatus;
ResponseBase({this.ResponseStatus});
ResponseBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
};
getTypeName() => "ResponseBase";
TypeContext? context = _ctx;
}
abstract class ModifyRequestBase implements IConcurrencyStamp
{
String? ConcurrencyStamp;
ModifyRequestBase({this.ConcurrencyStamp});
ModifyRequestBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ConcurrencyStamp = json['ConcurrencyStamp'];
return this;
}
Map<String, dynamic> toJson() => {
'ConcurrencyStamp': ConcurrencyStamp
};
getTypeName() => "ModifyRequestBase";
TypeContext? context = _ctx;
}
abstract class ModifyPurchaseOrderBase extends ModifyRequestBase
{
String? PurchaseOrderIdentifier;
int? TenderUserId;
int? SupplierUserId;
String? Buyer;
String? Subject;
DateTime? ConfirmationDeadline;
ModifyPurchaseOrderBase({this.PurchaseOrderIdentifier,this.TenderUserId,this.SupplierUserId,this.Buyer,this.Subject,this.ConfirmationDeadline});
ModifyPurchaseOrderBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
PurchaseOrderIdentifier = json['PurchaseOrderIdentifier'];
TenderUserId = json['TenderUserId'];
SupplierUserId = json['SupplierUserId'];
Buyer = json['Buyer'];
Subject = json['Subject'];
ConfirmationDeadline = JsonConverters.fromJson(json['ConfirmationDeadline'],'DateTime',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'PurchaseOrderIdentifier': PurchaseOrderIdentifier,
'TenderUserId': TenderUserId,
'SupplierUserId': SupplierUserId,
'Buyer': Buyer,
'Subject': Subject,
'ConfirmationDeadline': JsonConverters.toJson(ConfirmationDeadline,'DateTime',context!)
});
getTypeName() => "ModifyPurchaseOrderBase";
TypeContext? context = _ctx;
}
class ReviewStatus
{
static const ReviewStatus Draft = const ReviewStatus._(0);
static const ReviewStatus Commented = const ReviewStatus._(1);
static const ReviewStatus Accepted = const ReviewStatus._(2);
final int _value;
const ReviewStatus._(this._value);
int get value => _value;
static List<ReviewStatus> get values => const [Draft,Commented,Accepted];
}
class PurchaseOrderVersionSimple implements IConvertible
{
int? Id;
int? PurchaseOrderId;
int? SupplierUserId;
int? Version;
bool? IsViewed;
ReviewStatus? Status;
PurchaseOrderVersionSimple({this.Id,this.PurchaseOrderId,this.SupplierUserId,this.Version,this.IsViewed,this.Status});
PurchaseOrderVersionSimple.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
PurchaseOrderId = json['PurchaseOrderId'];
SupplierUserId = json['SupplierUserId'];
Version = json['Version'];
IsViewed = json['IsViewed'];
Status = JsonConverters.fromJson(json['Status'],'ReviewStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'PurchaseOrderId': PurchaseOrderId,
'SupplierUserId': SupplierUserId,
'Version': Version,
'IsViewed': IsViewed,
'Status': JsonConverters.toJson(Status,'ReviewStatus',context!)
};
getTypeName() => "PurchaseOrderVersionSimple";
TypeContext? context = _ctx;
}
class PurchaseOrderDetails extends ModifyPurchaseOrderBase implements IConvertible
{
int? Id;
DateTime? CancellationDateTime;
bool? IsCancelled;
Map<String,String?>? Meta;
int? TenderUserId;
int? TenderId;
int? UserId;
List<PurchaseOrderVersionSimple>? PurchaseOrderVersions;
PurchaseOrderDetails({this.Id,this.CancellationDateTime,this.IsCancelled,this.Meta,this.TenderUserId,this.TenderId,this.UserId,this.PurchaseOrderVersions});
PurchaseOrderDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
Id = json['Id'];
CancellationDateTime = JsonConverters.fromJson(json['CancellationDateTime'],'DateTime',context!);
IsCancelled = json['IsCancelled'];
Meta = JsonConverters.toStringMap(json['Meta']);
TenderUserId = json['TenderUserId'];
TenderId = json['TenderId'];
UserId = json['UserId'];
PurchaseOrderVersions = JsonConverters.fromJson(json['PurchaseOrderVersions'],'List<PurchaseOrderVersionSimple>',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'Id': Id,
'CancellationDateTime': JsonConverters.toJson(CancellationDateTime,'DateTime',context!),
'IsCancelled': IsCancelled,
'Meta': Meta,
'TenderUserId': TenderUserId,
'TenderId': TenderId,
'UserId': UserId,
'PurchaseOrderVersions': JsonConverters.toJson(PurchaseOrderVersions,'List<PurchaseOrderVersionSimple>',context!)
});
getTypeName() => "PurchaseOrderDetails";
TypeContext? context = _ctx;
}
class BrowsePurchaseOrderResponse extends ResponseBase implements IConvertible
{
PurchaseOrderDetails? PurchaseOrder;
BrowsePurchaseOrderResponse({this.PurchaseOrder});
BrowsePurchaseOrderResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
PurchaseOrder = JsonConverters.fromJson(json['PurchaseOrder'],'PurchaseOrderDetails',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'PurchaseOrder': JsonConverters.toJson(PurchaseOrder,'PurchaseOrderDetails',context!)
});
getTypeName() => "BrowsePurchaseOrderResponse";
TypeContext? context = _ctx;
}
class BrowsePurchaseOrder extends PurchaseOrderBase implements IGet, IConvertible
{
BrowsePurchaseOrder();
BrowsePurchaseOrder.fromJson(Map<String, dynamic> json) : super.fromJson(json);
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
return this;
}
Map<String, dynamic> toJson() => super.toJson();
getTypeName() => "BrowsePurchaseOrder";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'szallitoiportal_be.veolia.hu', types: <String, TypeInfo> {
'PurchaseOrderBase': TypeInfo(TypeOf.AbstractClass),
'ResponseBase': TypeInfo(TypeOf.AbstractClass),
'ModifyRequestBase': TypeInfo(TypeOf.AbstractClass),
'ModifyPurchaseOrderBase': TypeInfo(TypeOf.AbstractClass),
'ReviewStatus': TypeInfo(TypeOf.Enum, enumValues:ReviewStatus.values),
'PurchaseOrderVersionSimple': TypeInfo(TypeOf.Class, create:() => PurchaseOrderVersionSimple()),
'PurchaseOrderDetails': TypeInfo(TypeOf.Class, create:() => PurchaseOrderDetails()),
'List<PurchaseOrderVersionSimple>': TypeInfo(TypeOf.Class, create:() => <PurchaseOrderVersionSimple>[]),
'BrowsePurchaseOrderResponse': TypeInfo(TypeOf.Class, create:() => BrowsePurchaseOrderResponse()),
'BrowsePurchaseOrder': TypeInfo(TypeOf.Class, create:() => BrowsePurchaseOrder()),
});
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 /user/{supplieruserid}/purchaseorder/{purchaseorderid} HTTP/1.1 Host: szallitoiportal-be.veolia.hu Accept: text/jsv
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { PurchaseOrder: { Id: 0, CancellationDateTime: 0001-01-01, IsCancelled: False, Meta: { String: String }, TenderUserId: 0, TenderId: 0, UserId: 0, PurchaseOrderVersions: [ { Id: 0, PurchaseOrderId: 0, SupplierUserId: 0, Version: 0, IsViewed: False, Status: 0 } ], PurchaseOrderIdentifier: String, SupplierUserId: 0, Buyer: String, Subject: String, ConfirmationDeadline: 0001-01-01, ConcurrencyStamp: String }, ResponseStatus: { ErrorCode: String, Message: String, StackTrace: String, Errors: [ { ErrorCode: String, FieldName: String, Message: String, Meta: { String: String } } ], Meta: { String: String } } }