Portal

<back to all web services

BrowseTenderUser

Requires Authentication
The following routes are available for this service:
GET/user/{userid}/tender/{tenderid}
import Foundation
import ServiceStack

public class BrowseTenderUser : IGet, Codable
{
    public var userId:Int
    public var tenderId:Int

    required public init(){}
}

public class BrowseTenderUserResponse : ResponseBase
{
    public var tenderUser:TenderUserDetails

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case tenderUser
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        tenderUser = try container.decodeIfPresent(TenderUserDetails.self, forKey: .tenderUser)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if tenderUser != nil { try container.encode(tenderUser, forKey: .tenderUser) }
    }
}

public class ResponseBase : Codable
{
    public var responseStatus:ResponseStatus

    required public init(){}
}

public class TenderUserDetails : Codable
{
    public var id:Int
    public var tenderId:Int
    public var userId:Int
    public var complianceId:Int?
    public var procurementId:Int?
    public var status:TenderUserStatus
    public var meta:[String:String] = [:]
    public var tenderUserTenderRounds:[TenderUserTenderRoundDetails] = []

    required public init(){}
}

public enum TenderUserStatus : Int, Codable
{
    case FirstRound = 0
    case SecondRound = 1
    case ThirdRound = 2
    case Successful = 3
    case UnSuccessful = 4
}

public class TenderUserTenderRoundDetails : ModifyRequestBase
{
    public var id:Int
    public var tenderUserId:Int
    public var tenderRoundId:Int
    public var submittedById:Int?
    public var submissionDateTime:Date?
    public var isSubmitted:Bool
    public var currencyId:Int?
    public var bid:Double?
    public var tenderRound:TenderRoundSimple
    public var tenderUser:TenderUserDetails
    public var supplementary:SupplementarySimple

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case id
        case tenderUserId
        case tenderRoundId
        case submittedById
        case submissionDateTime
        case isSubmitted
        case currencyId
        case bid
        case tenderRound
        case tenderUser
        case supplementary
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        id = try container.decodeIfPresent(Int.self, forKey: .id)
        tenderUserId = try container.decodeIfPresent(Int.self, forKey: .tenderUserId)
        tenderRoundId = try container.decodeIfPresent(Int.self, forKey: .tenderRoundId)
        submittedById = try container.decodeIfPresent(Int.self, forKey: .submittedById)
        submissionDateTime = try container.decodeIfPresent(Date.self, forKey: .submissionDateTime)
        isSubmitted = try container.decodeIfPresent(Bool.self, forKey: .isSubmitted)
        currencyId = try container.decodeIfPresent(Int.self, forKey: .currencyId)
        bid = try container.decodeIfPresent(Double.self, forKey: .bid)
        tenderRound = try container.decodeIfPresent(TenderRoundSimple.self, forKey: .tenderRound)
        tenderUser = try container.decodeIfPresent(TenderUserDetails.self, forKey: .tenderUser)
        supplementary = try container.decodeIfPresent(SupplementarySimple.self, forKey: .supplementary)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if id != nil { try container.encode(id, forKey: .id) }
        if tenderUserId != nil { try container.encode(tenderUserId, forKey: .tenderUserId) }
        if tenderRoundId != nil { try container.encode(tenderRoundId, forKey: .tenderRoundId) }
        if submittedById != nil { try container.encode(submittedById, forKey: .submittedById) }
        if submissionDateTime != nil { try container.encode(submissionDateTime, forKey: .submissionDateTime) }
        if isSubmitted != nil { try container.encode(isSubmitted, forKey: .isSubmitted) }
        if currencyId != nil { try container.encode(currencyId, forKey: .currencyId) }
        if bid != nil { try container.encode(bid, forKey: .bid) }
        if tenderRound != nil { try container.encode(tenderRound, forKey: .tenderRound) }
        if tenderUser != nil { try container.encode(tenderUser, forKey: .tenderUser) }
        if supplementary != nil { try container.encode(supplementary, forKey: .supplementary) }
    }
}

public class ModifyRequestBase : IConcurrencyStamp, Codable
{
    public var concurrencyStamp:String

    required public init(){}
}

public class TenderRoundSimple : Codable
{
    public var id:Int
    public var name:String
    public var isQuestionEnabled:Bool
    public var questionDeadline:Date?
    public var answerDeadline:Date?
    public var submissionDeadline:Date
    public var isSupplementaryEnabled:Bool
    public var supplementaryRequestDeadline:Date?
    public var supplementaryDeadline:Date?
    public var announcementDateTime:Date
    public var status:Int

    required public init(){}
}

public class SupplementarySimple : Codable
{
    public var id:Int
    public var tenderUserTenderRoundId:Int
    public var isViewed:Bool
    public var viewingDateTime:Date?
    public var isSubmitted:Bool
    public var submissionDateTime:Date?

    required public init(){}
}


Swift BrowseTenderUser DTOs

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

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

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

GET /user/{userid}/tender/{tenderid} HTTP/1.1 
Host: szallitoiportal-be.veolia.hu 
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"TenderUser":{"Id":0,"TenderId":0,"UserId":0,"ComplianceId":0,"ProcurementId":0,"Status":0,"Meta":{"String":"String"},"TenderUserTenderRounds":[{"Id":0,"TenderUserId":0,"TenderRoundId":0,"SubmittedById":0,"SubmissionDateTime":"0001-01-01T00:00:00.0000000","IsSubmitted":false,"CurrencyId":0,"Bid":0,"TenderRound":{"Id":0,"Name":"String","IsQuestionEnabled":false,"QuestionDeadline":"0001-01-01T00:00:00.0000000","AnswerDeadline":"0001-01-01T00:00:00.0000000","SubmissionDeadline":"0001-01-01T00:00:00.0000000","IsSupplementaryEnabled":false,"SupplementaryRequestDeadline":"0001-01-01T00:00:00.0000000","SupplementaryDeadline":"0001-01-01T00:00:00.0000000","AnnouncementDateTime":"0001-01-01T00:00:00.0000000","Status":0},"TenderUser":{"Id":0,"TenderId":0,"UserId":0,"ComplianceId":0,"ProcurementId":0,"Status":0,"Meta":{"String":"String"},"TenderUserTenderRounds":[{"Id":0,"TenderUserId":0,"TenderRoundId":0,"SubmittedById":0,"SubmissionDateTime":"0001-01-01T00:00:00.0000000","IsSubmitted":false,"CurrencyId":0,"Bid":0,"TenderRound":{"Id":0,"Name":"String","IsQuestionEnabled":false,"QuestionDeadline":"0001-01-01T00:00:00.0000000","AnswerDeadline":"0001-01-01T00:00:00.0000000","SubmissionDeadline":"0001-01-01T00:00:00.0000000","IsSupplementaryEnabled":false,"SupplementaryRequestDeadline":"0001-01-01T00:00:00.0000000","SupplementaryDeadline":"0001-01-01T00:00:00.0000000","AnnouncementDateTime":"0001-01-01T00:00:00.0000000","Status":0},"TenderUser":{"Id":0,"TenderId":0,"UserId":0,"ComplianceId":0,"ProcurementId":0,"Status":0,"Meta":{"String":"String"},"TenderUserTenderRounds":[{"Id":0,"TenderUserId":0,"TenderRoundId":0,"SubmittedById":0,"SubmissionDateTime":"0001-01-01T00:00:00.0000000","IsSubmitted":false,"CurrencyId":0,"Bid":0,"TenderRound":{"Id":0,"Name":"String","IsQuestionEnabled":false,"QuestionDeadline":"0001-01-01T00:00:00.0000000","AnswerDeadline":"0001-01-01T00:00:00.0000000","SubmissionDeadline":"0001-01-01T00:00:00.0000000","IsSupplementaryEnabled":false,"SupplementaryRequestDeadline":"0001-01-01T00:00:00.0000000","SupplementaryDeadline":"0001-01-01T00:00:00.0000000","AnnouncementDateTime":"0001-01-01T00:00:00.0000000","Status":0},"Supplementary":{"Id":0,"TenderUserTenderRoundId":0,"IsViewed":false,"ViewingDateTime":"0001-01-01T00:00:00.0000000","IsSubmitted":false,"SubmissionDateTime":"0001-01-01T00:00:00.0000000"},"ConcurrencyStamp":"String"}]},"Supplementary":{"Id":0,"TenderUserTenderRoundId":0,"IsViewed":false,"ViewingDateTime":"0001-01-01T00:00:00.0000000","IsSubmitted":false,"SubmissionDateTime":"0001-01-01T00:00:00.0000000"},"ConcurrencyStamp":"String"}]},"Supplementary":{"Id":0,"TenderUserTenderRoundId":0,"IsViewed":false,"ViewingDateTime":"0001-01-01T00:00:00.0000000","IsSubmitted":false,"SubmissionDateTime":"0001-01-01T00:00:00.0000000"},"ConcurrencyStamp":"String"}]},"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}