public XDocument Serialize() { return(new XDocument(new XElement(EspdNames.Qarp + nameof(QualificationApplicationResponse), new XAttribute(XNamespace.Xmlns + "cbc", UblNames.Cbc), new XAttribute(XNamespace.Xmlns + "cac", UblNames.Cac), UBLVersionID.Serialize(nameof(UBLVersionID)), CustomizationID.Serialize(nameof(CustomizationID)), ProfileID.Serialize(nameof(ProfileID)), ID?.Serialize(nameof(ID)), CopyIndicator.Serialize(nameof(CopyIndicator)), UUID.Serialize(nameof(UUID)), ContractFolderID.Serialize(nameof(ContractFolderID)), IssueDate.Serialize(nameof(IssueDate)), IssueTime.Serialize(nameof(IssueTime)), EconomicOperatorGroupName.Serialize(nameof(EconomicOperatorGroupName)), VersionID.Serialize(nameof(VersionID)), PreviousVersionID.Serialize(nameof(PreviousVersionID)), ProcedureCode.Serialize(nameof(ProcedureCode)), QualificationApplicationTypeCode.Serialize(nameof(QualificationApplicationTypeCode)), WeightScoringMethodologyNote.Serialize(nameof(WeightScoringMethodologyNote)), WeightingTypeCode.Serialize(nameof(WeightingTypeCode)), ContractingParty?.Serialize(), EconomicOperatorParty?.Serialize(nameof(EconomicOperatorParty)), ProcurementProject?.Serialize(), ProcurementProjectLots?.Select(lot => lot.Serialize()), TenderingCriteria?.Select(c => c.Serialize()), TenderingCriterionResponses?.Select(r => r.Serialize()), AdditionalDocumentReferences?.Select(d => d.Serialize()), Evidences?.Select(e => e.Serialize()) ))); }
public static EconomicOperatorParty ParseEconomicOperatorParty(this XElement party) { if (party == null) { return(null); } var eoParty = new EconomicOperatorParty() { Party = party.Cac("Party").ParseParty(), EconomicOperatorRole = party.Cac("EconomicOperatorRole").ParseEconomicOperatorRole(), QualifyingParty = party.Cac("QualifyingParty").ParseQualifyingParty() }; return(eoParty); }
public QualificationApplicationResponse CreateEspd2_1_1ExtendedResponse(QualificationApplicationRequest request, EconomicOperatorParty economicOperator, IdentifierType identifier, Guid uuid, string espdReferenceUrl) { if (request == null) { throw new ArgumentNullException(nameof(request)); } if (identifier == null) { throw new ArgumentNullException(nameof(identifier)); } var documentReferences = request.AdditionalDocumentReferences?.ToArray() ?? new AdditionalDocumentReference[0]; var response = new QualificationApplicationResponse() { ID = identifier, UUID = new EuComGrowId(uuid), QualificationApplicationTypeCode = request.QualificationApplicationTypeCode, ContractFolderID = request.ContractFolderID, IssueDate = DateTime.UtcNow.Date, IssueTime = DateTime.UtcNow, ContractingParty = request.ContractingParty, EconomicOperatorParty = economicOperator, ProcurementProject = request.ProcurementProject, ProcurementProjectLots = request.ProcurementProjectLots, WeightingTypeCode = request.WeightingTypeCode, WeightScoringMethodologyNote = request.WeightScoringMethodologyNote, ProcedureCode = request.ProcedureCode, AdditionalDocumentReferences = documentReferences.Union(new [] { MapReferenceToEspdRequest(request, espdReferenceUrl) }).ToArray(), PreviousVersionID = request.PreviousVersionID, EconomicOperatorGroupName = new CodeType(), CopyIndicator = false, UBLVersionID = request.UBLVersionID, VersionID = request.VersionID, Evidences = new Evidence[0], TenderingCriteria = request.TenderingCriteria, TenderingCriterionResponses = new TenderingCriterionResponse[] {}, }; var procurementHasLots = request.IsProcurementDividedIntoLots; if (!procurementHasLots) { PrePopulateNoLotResponses(response); } return(response); }