Portal

<back to all web services

AddPurchaseOrderFileComment

The following routes are available for this service:
POST/user/{supplieruserid}/purchaseorder/{purchaseorderid}/purchaseorderversion/{purchaseorderversionid}/file/comment
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 PurchaseOrderVersionBase extends PurchaseOrderBase
{
    int? PurchaseOrderVersionId;

    PurchaseOrderVersionBase({this.PurchaseOrderVersionId});
    PurchaseOrderVersionBase.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        PurchaseOrderVersionId = json['PurchaseOrderVersionId'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'PurchaseOrderVersionId': PurchaseOrderVersionId
    });

    getTypeName() => "PurchaseOrderVersionBase";
    TypeContext? context = _ctx;
}

class PurchaseOrderDocumentType
{
    static const PurchaseOrderDocumentType Draft = const PurchaseOrderDocumentType._(0);
    static const PurchaseOrderDocumentType Comment = const PurchaseOrderDocumentType._(1);

    final int _value;
    const PurchaseOrderDocumentType._(this._value);
    int get value => _value;
    static List<PurchaseOrderDocumentType> get values => const [Draft,Comment];
}

abstract class AddPurchaseOrderVersionFileBase extends PurchaseOrderVersionBase
{
    PurchaseOrderDocumentType? DocumentType;

    AddPurchaseOrderVersionFileBase({this.DocumentType});
    AddPurchaseOrderVersionFileBase.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        DocumentType = JsonConverters.fromJson(json['DocumentType'],'PurchaseOrderDocumentType',context!);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'DocumentType': JsonConverters.toJson(DocumentType,'PurchaseOrderDocumentType',context!)
    });

    getTypeName() => "AddPurchaseOrderVersionFileBase";
    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 SaveFileEntityResponse extends ModifyEntityResponse implements IConvertible
{
    int? FileContentId;

    SaveFileEntityResponse({this.FileContentId});
    SaveFileEntityResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        FileContentId = json['FileContentId'];
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'FileContentId': FileContentId
    });

    getTypeName() => "SaveFileEntityResponse";
    TypeContext? context = _ctx;
}

class AddPurchaseOrderFileComment extends AddPurchaseOrderVersionFileBase implements IPost, IConvertible
{
    PurchaseOrderDocumentType? DocumentType;

    AddPurchaseOrderFileComment({this.DocumentType});
    AddPurchaseOrderFileComment.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        super.fromMap(json);
        DocumentType = JsonConverters.fromJson(json['DocumentType'],'PurchaseOrderDocumentType',context!);
        return this;
    }

    Map<String, dynamic> toJson() => super.toJson()..addAll({
        'DocumentType': JsonConverters.toJson(DocumentType,'PurchaseOrderDocumentType',context!)
    });

    getTypeName() => "AddPurchaseOrderFileComment";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'szallitoiportal_be.veolia.hu', types: <String, TypeInfo> {
    'PurchaseOrderBase': TypeInfo(TypeOf.AbstractClass),
    'PurchaseOrderVersionBase': TypeInfo(TypeOf.AbstractClass),
    'PurchaseOrderDocumentType': TypeInfo(TypeOf.Enum, enumValues:PurchaseOrderDocumentType.values),
    'AddPurchaseOrderVersionFileBase': TypeInfo(TypeOf.AbstractClass),
    'ResponseBase': TypeInfo(TypeOf.AbstractClass),
    'ModifyEntityResponse': TypeInfo(TypeOf.Class, create:() => ModifyEntityResponse()),
    'SaveFileEntityResponse': TypeInfo(TypeOf.Class, create:() => SaveFileEntityResponse()),
    'AddPurchaseOrderFileComment': TypeInfo(TypeOf.Class, create:() => AddPurchaseOrderFileComment()),
});

Dart AddPurchaseOrderFileComment DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /user/{supplieruserid}/purchaseorder/{purchaseorderid}/purchaseorderversion/{purchaseorderversionid}/file/comment HTTP/1.1 
Host: szallitoiportal-be.veolia.hu 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	DocumentType: 1,
	PurchaseOrderVersionId: 0,
	PurchaseOrderId: 0,
	SupplierUserId: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	FileContentId: 0,
	Id: 0,
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}