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; }
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=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 } } }