Requires any of the roles: | VeoliaAdmin, SupplierRegistration |
POST | /supplier |
---|
import 'package:servicestack/servicestack.dart';
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 SupplierBase extends ModifyRequestBase
{
String? VatNumber;
String? EUTaxNumber;
String? GroupTaxNumber;
int? BusinessType;
int? CountryId;
String? Name;
String? ShortName;
String? RegistrationNumber;
DateTime? EstablishedDate;
DateTime? RegistrationDate;
String? Duns;
String? OperatingLicenseNumber;
bool? IsAccounting;
bool? IsSmallTaxPayer;
String? Email;
String? PhoneNumber;
String? Website;
SupplierBase({this.VatNumber,this.EUTaxNumber,this.GroupTaxNumber,this.BusinessType,this.CountryId,this.Name,this.ShortName,this.RegistrationNumber,this.EstablishedDate,this.RegistrationDate,this.Duns,this.OperatingLicenseNumber,this.IsAccounting,this.IsSmallTaxPayer,this.Email,this.PhoneNumber,this.Website});
SupplierBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
VatNumber = json['VatNumber'];
EUTaxNumber = json['EUTaxNumber'];
GroupTaxNumber = json['GroupTaxNumber'];
BusinessType = json['BusinessType'];
CountryId = json['CountryId'];
Name = json['Name'];
ShortName = json['ShortName'];
RegistrationNumber = json['RegistrationNumber'];
EstablishedDate = JsonConverters.fromJson(json['EstablishedDate'],'DateTime',context!);
RegistrationDate = JsonConverters.fromJson(json['RegistrationDate'],'DateTime',context!);
Duns = json['Duns'];
OperatingLicenseNumber = json['OperatingLicenseNumber'];
IsAccounting = json['IsAccounting'];
IsSmallTaxPayer = json['IsSmallTaxPayer'];
Email = json['Email'];
PhoneNumber = json['PhoneNumber'];
Website = json['Website'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'VatNumber': VatNumber,
'EUTaxNumber': EUTaxNumber,
'GroupTaxNumber': GroupTaxNumber,
'BusinessType': BusinessType,
'CountryId': CountryId,
'Name': Name,
'ShortName': ShortName,
'RegistrationNumber': RegistrationNumber,
'EstablishedDate': JsonConverters.toJson(EstablishedDate,'DateTime',context!),
'RegistrationDate': JsonConverters.toJson(RegistrationDate,'DateTime',context!),
'Duns': Duns,
'OperatingLicenseNumber': OperatingLicenseNumber,
'IsAccounting': IsAccounting,
'IsSmallTaxPayer': IsSmallTaxPayer,
'Email': Email,
'PhoneNumber': PhoneNumber,
'Website': Website
});
getTypeName() => "SupplierBase";
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;
}
class ModifyEntityResponse extends ResponseBase implements IConvertible
{
int? Id;
ModifyEntityResponse({this.Id});
ModifyEntityResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
Id = json['Id'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'Id': Id
});
getTypeName() => "ModifyEntityResponse";
TypeContext? context = _ctx;
}
class AddSupplierMainActivity implements IConvertible
{
String? Teaor;
String? Description;
AddSupplierMainActivity({this.Teaor,this.Description});
AddSupplierMainActivity.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Teaor = json['Teaor'];
Description = json['Description'];
return this;
}
Map<String, dynamic> toJson() => {
'Teaor': Teaor,
'Description': Description
};
getTypeName() => "AddSupplierMainActivity";
TypeContext? context = _ctx;
}
class AddressType
{
static const AddressType Postal = const AddressType._(0);
static const AddressType HeadQuarters = const AddressType._(1);
static const AddressType Site = const AddressType._(2);
final int _value;
const AddressType._(this._value);
int get value => _value;
static List<AddressType> get values => const [Postal,HeadQuarters,Site];
}
class AddSupplierSupplierAddress implements IConvertible
{
int? CountryId;
AddressType? AddressType;
String? ZipCode;
String? City;
String? Address;
String? StreetAddress;
String? StreetType;
String? HouseNumber;
String? Building;
String? Staircase;
String? Floor;
String? Door;
String? POB;
String? Other;
AddSupplierSupplierAddress({this.CountryId,this.AddressType,this.ZipCode,this.City,this.Address,this.StreetAddress,this.StreetType,this.HouseNumber,this.Building,this.Staircase,this.Floor,this.Door,this.POB,this.Other});
AddSupplierSupplierAddress.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
CountryId = json['CountryId'];
AddressType = JsonConverters.fromJson(json['AddressType'],'AddressType',context!);
ZipCode = json['ZipCode'];
City = json['City'];
Address = json['Address'];
StreetAddress = json['StreetAddress'];
StreetType = json['StreetType'];
HouseNumber = json['HouseNumber'];
Building = json['Building'];
Staircase = json['Staircase'];
Floor = json['Floor'];
Door = json['Door'];
POB = json['POB'];
Other = json['Other'];
return this;
}
Map<String, dynamic> toJson() => {
'CountryId': CountryId,
'AddressType': JsonConverters.toJson(AddressType,'AddressType',context!),
'ZipCode': ZipCode,
'City': City,
'Address': Address,
'StreetAddress': StreetAddress,
'StreetType': StreetType,
'HouseNumber': HouseNumber,
'Building': Building,
'Staircase': Staircase,
'Floor': Floor,
'Door': Door,
'POB': POB,
'Other': Other
};
getTypeName() => "AddSupplierSupplierAddress";
TypeContext? context = _ctx;
}
class AddSupplier extends SupplierBase implements IPost, IConvertible
{
List<AddSupplierMainActivity>? MainActivities;
List<AddSupplierSupplierAddress>? SupplierAddresses;
AddSupplier({this.MainActivities,this.SupplierAddresses});
AddSupplier.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
MainActivities = JsonConverters.fromJson(json['MainActivities'],'List<AddSupplierMainActivity>',context!);
SupplierAddresses = JsonConverters.fromJson(json['SupplierAddresses'],'List<AddSupplierSupplierAddress>',context!);
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'MainActivities': JsonConverters.toJson(MainActivities,'List<AddSupplierMainActivity>',context!),
'SupplierAddresses': JsonConverters.toJson(SupplierAddresses,'List<AddSupplierSupplierAddress>',context!)
});
getTypeName() => "AddSupplier";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'szallitoiportal_be.veolia.hu', types: <String, TypeInfo> {
'ModifyRequestBase': TypeInfo(TypeOf.AbstractClass),
'SupplierBase': TypeInfo(TypeOf.AbstractClass),
'ResponseBase': TypeInfo(TypeOf.AbstractClass),
'ModifyEntityResponse': TypeInfo(TypeOf.Class, create:() => ModifyEntityResponse()),
'AddSupplierMainActivity': TypeInfo(TypeOf.Class, create:() => AddSupplierMainActivity()),
'AddressType': TypeInfo(TypeOf.Enum, enumValues:AddressType.values),
'AddSupplierSupplierAddress': TypeInfo(TypeOf.Class, create:() => AddSupplierSupplierAddress()),
'AddSupplier': TypeInfo(TypeOf.Class, create:() => AddSupplier()),
'List<AddSupplierMainActivity>': TypeInfo(TypeOf.Class, create:() => <AddSupplierMainActivity>[]),
'List<AddSupplierSupplierAddress>': TypeInfo(TypeOf.Class, create:() => <AddSupplierSupplierAddress>[]),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /supplier HTTP/1.1
Host: szallitoiportal-be.veolia.hu
Accept: application/json
Content-Type: application/json
Content-Length: length
{"MainActivities":[{"Teaor":"String","Description":"String"}],"SupplierAddresses":[{"CountryId":0,"AddressType":0,"ZipCode":"String","City":"String","Address":"String","StreetAddress":"String","StreetType":"String","HouseNumber":"String","Building":"String","Staircase":"String","Floor":"String","Door":"String","POB":"String","Other":"String"}],"VatNumber":"String","EUTaxNumber":"String","GroupTaxNumber":"String","BusinessType":0,"CountryId":0,"Name":"String","ShortName":"String","RegistrationNumber":"String","EstablishedDate":"0001-01-01T00:00:00.0000000","RegistrationDate":"0001-01-01T00:00:00.0000000","Duns":"String","OperatingLicenseNumber":"String","IsAccounting":false,"IsSmallTaxPayer":false,"Email":"String","PhoneNumber":"String","Website":"String","ConcurrencyStamp":"String"}
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"Id":0,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}