Portal

<back to all web services

BrowseContract

The following routes are available for this service:
GET/user/{supplieruserid}/contract/{contractid}
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Portal.ServiceDto;
using Portal.Common;

namespace Portal.Common
{
    public enum ProcedureType
    {
        Competition = 0,
        Simplified = 1,
    }

    public enum ReviewStatus
    {
        Draft = 0,
        Commented = 1,
        Accepted = 2,
    }

    public enum TenderStatus
    {
        FirstRound = 0,
        SecondRound = 1,
        ThirdRound = 2,
        Successful = 3,
        UnSuccessful = 4,
        Revoked = 5,
    }

    public enum TenderType
    {
        Private = 0,
        Public = 1,
    }

}

namespace Portal.ServiceDto
{
    public partial class BrowseContract
        : ContractBase, IGet
    {
    }

    public partial class BrowseContractResponse
        : ResponseBase
    {
        public virtual ContractDetails Contract { get; set; }
    }

    public partial class BrowseFileResponseBase
    {
        public virtual int Id { get; set; }
        public virtual int FileContentId { get; set; }
        public virtual string FileName { get; set; }
        public virtual long Size { get; set; }
    }

    public partial class ContractBase
    {
        public virtual int SupplierUserId { get; set; }
        public virtual int ContractId { get; set; }
    }

    public partial class ContractDetails
        : ModifyContractBase
    {
        public ContractDetails()
        {
            Meta = new Dictionary<string, string>{};
            ContractVersions = new List<ContractVersionSimple>{};
        }

        public virtual int Id { get; set; }
        public virtual DateTime? CancellationDateTime { get; set; }
        public virtual bool IsCancelled { get; set; }
        public virtual Dictionary<string, string> Meta { get; set; }
        public virtual List<ContractVersionSimple> ContractVersions { get; set; }
        public virtual TenderDetails Tender { get; set; }
    }

    public partial class ContractVersionSimple
    {
        public virtual int Id { get; set; }
        public virtual int ContractId { get; set; }
        public virtual int Version { get; set; }
        public virtual bool IsViewed { get; set; }
        public virtual ReviewStatus Status { get; set; }
    }

    public partial class ModifyContractBase
        : ModifyRequestBase
    {
        public virtual int? TenderUserId { get; set; }
        public virtual string ContractIdentifier { get; set; }
        public virtual int SupplierUserId { get; set; }
        public virtual string Buyer { get; set; }
        public virtual string Subject { get; set; }
        public virtual DateTime ConfirmationDeadline { get; set; }
    }

    public partial class ModifyRequestBase
        : IConcurrencyStamp
    {
        public virtual string ConcurrencyStamp { get; set; }
    }

    public partial class ResponseBase
    {
        public virtual ResponseStatus ResponseStatus { get; set; }
    }

    public partial class TenderBase
    {
        public virtual string TenderIdentifier { get; set; }
        public virtual TenderType TenderType { get; set; }
        public virtual string Subject { get; set; }
        public virtual string ProcurementContact { get; set; }
        public virtual string ProcurementContactEmail { get; set; }
        public virtual string ProcurementContactPhone { get; set; }
        public virtual string ProfessionalContact { get; set; }
        public virtual string ProfessionalContactEmail { get; set; }
        public virtual string ProfessionalContactPhone { get; set; }
        public virtual string Result { get; set; }
        public virtual TenderStatus Status { get; set; }
    }

    public partial class TenderDetails
        : TenderBase, IConcurrencyStamp
    {
        public TenderDetails()
        {
            Meta = new Dictionary<string, string>{};
            TenderFiles = new List<TenderFileDetails>{};
            TenderRounds = new List<TenderRoundSimple>{};
        }

        public virtual int Id { get; set; }
        public virtual int? StarterTenderRoundId { get; set; }
        public virtual ProcedureType ProcedureType { get; set; }
        public virtual Dictionary<string, string> Meta { get; set; }
        public virtual List<TenderFileDetails> TenderFiles { get; set; }
        public virtual List<TenderRoundSimple> TenderRounds { get; set; }
        public virtual string ConcurrencyStamp { get; set; }
        public virtual bool IsProcurementEnabled { get; set; }
        public virtual bool IsComplianceEnabled { get; set; }
    }

    public partial class TenderFileDetails
        : BrowseFileResponseBase
    {
        public virtual int TenderId { get; set; }
        public virtual string DocumentType { get; set; }
        public virtual bool IsTenderAnnouncement { get; set; }
    }

    public partial class TenderRoundSimple
    {
        public virtual int Id { get; set; }
        public virtual string Name { get; set; }
        public virtual bool IsQuestionEnabled { get; set; }
        public virtual DateTime? QuestionDeadline { get; set; }
        public virtual DateTime? AnswerDeadline { get; set; }
        public virtual DateTime SubmissionDeadline { get; set; }
        public virtual bool IsSupplementaryEnabled { get; set; }
        public virtual DateTime? SupplementaryRequestDeadline { get; set; }
        public virtual DateTime? SupplementaryDeadline { get; set; }
        public virtual DateTime AnnouncementDateTime { get; set; }
        public virtual int Status { get; set; }
    }

}

C# 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
		}
	}
}