Portal

<back to all web services

BrowseContract

The following routes are available for this service:
GET/user/{supplieruserid}/contract/{contractid}
namespace Portal.Common

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type ResponseBase() = 
        member val ResponseStatus:ResponseStatus = null with get,set

    [<AllowNullLiteral>]
    type ModifyRequestBase() = 
        member val ConcurrencyStamp:String = null with get,set

    [<AllowNullLiteral>]
    type ModifyContractBase() = 
        inherit ModifyRequestBase()
        member val TenderUserId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val ContractIdentifier:String = null with get,set
        member val SupplierUserId:Int32 = new Int32() with get,set
        member val Buyer:String = null with get,set
        member val Subject:String = null with get,set
        member val ConfirmationDeadline:DateTime = new DateTime() with get,set

    type ReviewStatus =
        | Draft = 0
        | Commented = 1
        | Accepted = 2

    [<AllowNullLiteral>]
    type ContractVersionSimple() = 
        member val Id:Int32 = new Int32() with get,set
        member val ContractId:Int32 = new Int32() with get,set
        member val Version:Int32 = new Int32() with get,set
        member val IsViewed:Boolean = new Boolean() with get,set
        member val Status:ReviewStatus = new ReviewStatus() with get,set

    type TenderType =
        | Private = 0
        | Public = 1

    type TenderStatus =
        | FirstRound = 0
        | SecondRound = 1
        | ThirdRound = 2
        | Successful = 3
        | UnSuccessful = 4
        | Revoked = 5

    [<AllowNullLiteral>]
    type TenderBase() = 
        member val TenderIdentifier:String = null with get,set
        member val TenderType:TenderType = new TenderType() with get,set
        member val Subject:String = null with get,set
        member val ProcurementContact:String = null with get,set
        member val ProcurementContactEmail:String = null with get,set
        member val ProcurementContactPhone:String = null with get,set
        member val ProfessionalContact:String = null with get,set
        member val ProfessionalContactEmail:String = null with get,set
        member val ProfessionalContactPhone:String = null with get,set
        member val Result:String = null with get,set
        member val Status:TenderStatus = new TenderStatus() with get,set

    type ProcedureType =
        | Competition = 0
        | Simplified = 1

    [<AllowNullLiteral>]
    type BrowseFileResponseBase() = 
        member val Id:Int32 = new Int32() with get,set
        member val FileContentId:Int32 = new Int32() with get,set
        member val FileName:String = null with get,set
        member val Size:Int64 = new Int64() with get,set

    [<AllowNullLiteral>]
    type TenderFileDetails() = 
        inherit BrowseFileResponseBase()
        member val TenderId:Int32 = new Int32() with get,set
        member val DocumentType:String = null with get,set
        member val IsTenderAnnouncement:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type TenderRoundSimple() = 
        member val Id:Int32 = new Int32() with get,set
        member val Name:String = null with get,set
        member val IsQuestionEnabled:Boolean = new Boolean() with get,set
        member val QuestionDeadline:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val AnswerDeadline:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val SubmissionDeadline:DateTime = new DateTime() with get,set
        member val IsSupplementaryEnabled:Boolean = new Boolean() with get,set
        member val SupplementaryRequestDeadline:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val SupplementaryDeadline:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val AnnouncementDateTime:DateTime = new DateTime() with get,set
        member val Status:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type TenderDetails() = 
        inherit TenderBase()
        member val Id:Int32 = new Int32() with get,set
        member val StarterTenderRoundId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val ProcedureType:ProcedureType = new ProcedureType() with get,set
        member val Meta:Dictionary<String, String> = new Dictionary<String, String>() with get,set
        member val TenderFiles:ResizeArray<TenderFileDetails> = new ResizeArray<TenderFileDetails>() with get,set
        member val TenderRounds:ResizeArray<TenderRoundSimple> = new ResizeArray<TenderRoundSimple>() with get,set
        member val ConcurrencyStamp:String = null with get,set
        member val IsProcurementEnabled:Boolean = new Boolean() with get,set
        member val IsComplianceEnabled:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type ContractDetails() = 
        inherit ModifyContractBase()
        member val Id:Int32 = new Int32() with get,set
        member val CancellationDateTime:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val IsCancelled:Boolean = new Boolean() with get,set
        member val Meta:Dictionary<String, String> = new Dictionary<String, String>() with get,set
        member val ContractVersions:ResizeArray<ContractVersionSimple> = new ResizeArray<ContractVersionSimple>() with get,set
        member val Tender:TenderDetails = null with get,set

    [<AllowNullLiteral>]
    type BrowseContractResponse() = 
        inherit ResponseBase()
        member val Contract:ContractDetails = null with get,set

    [<AllowNullLiteral>]
    type ContractBase() = 
        member val SupplierUserId:Int32 = new Int32() with get,set
        member val ContractId:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type BrowseContract() = 
        inherit ContractBase()
        interface IGet

F# BrowseContract 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.

GET /user/{supplieruserid}/contract/{contractid} HTTP/1.1 
Host: szallitoiportal-be.veolia.hu 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Contract: 
	{
		Id: 0,
		CancellationDateTime: 0001-01-01,
		IsCancelled: False,
		Meta: 
		{
			String: String
		},
		ContractVersions: 
		[
			{
				Id: 0,
				ContractId: 0,
				Version: 0,
				IsViewed: False,
				Status: 0
			}
		],
		Tender: 
		{
			Id: 0,
			StarterTenderRoundId: 0,
			ProcedureType: 0,
			Meta: 
			{
				String: String
			},
			TenderFiles: 
			[
				{
					TenderId: 0,
					DocumentType: String,
					IsTenderAnnouncement: False,
					Id: 0,
					FileContentId: 0,
					FileName: String,
					Size: 0
				}
			],
			TenderRounds: 
			[
				{
					Id: 0,
					Name: String,
					IsQuestionEnabled: False,
					QuestionDeadline: 0001-01-01,
					AnswerDeadline: 0001-01-01,
					SubmissionDeadline: 0001-01-01,
					IsSupplementaryEnabled: False,
					SupplementaryRequestDeadline: 0001-01-01,
					SupplementaryDeadline: 0001-01-01,
					AnnouncementDateTime: 0001-01-01,
					Status: 0
				}
			],
			ConcurrencyStamp: String,
			IsProcurementEnabled: False,
			IsComplianceEnabled: False,
			TenderIdentifier: String,
			TenderType: 0,
			Subject: String,
			ProcurementContact: String,
			ProcurementContactEmail: String,
			ProcurementContactPhone: String,
			ProfessionalContact: String,
			ProfessionalContactEmail: String,
			ProfessionalContactPhone: String,
			Result: String,
			Status: 0
		},
		TenderUserId: 0,
		ContractIdentifier: 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
		}
	}
}