Portal

<back to all web services

AddContractFileComment

The following routes are available for this service:
POST/user/{supplieruserid}/contract/{contractid}/contractversion/{contractversionid}/file/comment
import 'package:servicestack/servicestack.dart';

abstract class ContractBase
{
    int? SupplierUserId;
    int? ContractId;

    ContractBase({this.SupplierUserId,this.ContractId});
    ContractBase.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        SupplierUserId = json['SupplierUserId'];
        ContractId = json['ContractId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'SupplierUserId': SupplierUserId,
        'ContractId': ContractId
    };

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

abstract class ContractVersionBase extends ContractBase
{
    int? ContractVersionId;

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

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

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

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

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

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

abstract class AddContractVersionFileBase extends ContractVersionBase
{
    ContractDocumentType? DocumentType;

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

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

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

    getTypeName() => "AddContractVersionFileBase";
    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 AddContractFileComment extends AddContractVersionFileBase implements IPost, IConvertible
{
    ContractDocumentType? DocumentType;

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

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

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

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

TypeContext _ctx = TypeContext(library: 'szallitoiportal_be.veolia.hu', types: <String, TypeInfo> {
    'ContractBase': TypeInfo(TypeOf.AbstractClass),
    'ContractVersionBase': TypeInfo(TypeOf.AbstractClass),
    'ContractDocumentType': TypeInfo(TypeOf.Enum, enumValues:ContractDocumentType.values),
    'AddContractVersionFileBase': TypeInfo(TypeOf.AbstractClass),
    'ResponseBase': TypeInfo(TypeOf.AbstractClass),
    'ModifyEntityResponse': TypeInfo(TypeOf.Class, create:() => ModifyEntityResponse()),
    'SaveFileEntityResponse': TypeInfo(TypeOf.Class, create:() => SaveFileEntityResponse()),
    'AddContractFileComment': TypeInfo(TypeOf.Class, create:() => AddContractFileComment()),
});

Dart AddContractFileComment 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}/contract/{contractid}/contractversion/{contractversionid}/file/comment HTTP/1.1 
Host: szallitoiportal-be.veolia.hu 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	DocumentType: 1,
	ContractVersionId: 0,
	SupplierUserId: 0,
	ContractId: 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
		}
	}
}