/* Options: Date: 2025-08-04 04:07:06 SwiftVersion: 5.0 Version: 6.110 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://szallitoiportal-be.veolia.hu //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: AddCompliance.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/tender/{tenderid}/user/{userid}/compliance", "POST") public class AddCompliance : ModifyComplianceBase, IReturn, IPost { public typealias Return = ModifyEntityResponse public var tenderId:Int public var userId:Int public var privateOwners:[AddCompliancePrivateOwner] = [] public var actualOwners:[AddComplianceActualOwner] = [] public var organizationOwners:[AddComplianceOrganizationOwner] = [] required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case tenderId case userId case privateOwners case actualOwners case organizationOwners } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) tenderId = try container.decodeIfPresent(Int.self, forKey: .tenderId) userId = try container.decodeIfPresent(Int.self, forKey: .userId) privateOwners = try container.decodeIfPresent([AddCompliancePrivateOwner].self, forKey: .privateOwners) ?? [] actualOwners = try container.decodeIfPresent([AddComplianceActualOwner].self, forKey: .actualOwners) ?? [] organizationOwners = try container.decodeIfPresent([AddComplianceOrganizationOwner].self, forKey: .organizationOwners) ?? [] } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if tenderId != nil { try container.encode(tenderId, forKey: .tenderId) } if userId != nil { try container.encode(userId, forKey: .userId) } if privateOwners.count > 0 { try container.encode(privateOwners, forKey: .privateOwners) } if actualOwners.count > 0 { try container.encode(actualOwners, forKey: .actualOwners) } if organizationOwners.count > 0 { try container.encode(organizationOwners, forKey: .organizationOwners) } } } public class ModifyEntityResponse : ResponseBase { public var id:Int required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case id } 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) } 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) } } } public protocol IConcurrencyStamp { var concurrencyStamp:String { get set } } public class AddCompliancePrivateOwner : Codable { public var name:String public var birthDate:Date? public var ownership:Double required public init(){} } public class AddComplianceActualOwner : Codable { public var name:String public var birthDate:Date? public var ownership:Double required public init(){} } public class AddComplianceOrganizationOwner : Codable { public var countryId:Int public var vatNumber:String public var registrationNumber:String public var name:String public var shortName:String public var address:String public var mainActivity:String public var establishedDate:Date public var ownership:Double required public init(){} } public class ModifyComplianceBase : ModifyRequestBase { public var isPreventCorruptionRisk:Bool? public var antiCorruptionMeasuresDescription:String public var isPartnerCorrupt:Bool? public var isCorruptionInspection:Bool? public var criminalJudgement:String public var isPartnerConvictedCorruption:Bool? public var partnerConvictedEDocument:String public var partnerConvictedDetails:String public var isSelfExoneration:Bool? public var selfExonerationDetails:String public var isPartnerPEPContact:Bool? public var partnerPEPContactDetails:String public var isPartnerPEP:Bool? public var partnerPEPDetails:String public var other:String public var isActualOwner:Bool? public var actualOwnerComment:String public var isPrivateOwner:Bool? public var isOrganizationOwner:Bool? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case isPreventCorruptionRisk case antiCorruptionMeasuresDescription case isPartnerCorrupt case isCorruptionInspection case criminalJudgement case isPartnerConvictedCorruption case partnerConvictedEDocument case partnerConvictedDetails case isSelfExoneration case selfExonerationDetails case isPartnerPEPContact case partnerPEPContactDetails case isPartnerPEP case partnerPEPDetails case other case isActualOwner case actualOwnerComment case isPrivateOwner case isOrganizationOwner } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) isPreventCorruptionRisk = try container.decodeIfPresent(Bool.self, forKey: .isPreventCorruptionRisk) antiCorruptionMeasuresDescription = try container.decodeIfPresent(String.self, forKey: .antiCorruptionMeasuresDescription) isPartnerCorrupt = try container.decodeIfPresent(Bool.self, forKey: .isPartnerCorrupt) isCorruptionInspection = try container.decodeIfPresent(Bool.self, forKey: .isCorruptionInspection) criminalJudgement = try container.decodeIfPresent(String.self, forKey: .criminalJudgement) isPartnerConvictedCorruption = try container.decodeIfPresent(Bool.self, forKey: .isPartnerConvictedCorruption) partnerConvictedEDocument = try container.decodeIfPresent(String.self, forKey: .partnerConvictedEDocument) partnerConvictedDetails = try container.decodeIfPresent(String.self, forKey: .partnerConvictedDetails) isSelfExoneration = try container.decodeIfPresent(Bool.self, forKey: .isSelfExoneration) selfExonerationDetails = try container.decodeIfPresent(String.self, forKey: .selfExonerationDetails) isPartnerPEPContact = try container.decodeIfPresent(Bool.self, forKey: .isPartnerPEPContact) partnerPEPContactDetails = try container.decodeIfPresent(String.self, forKey: .partnerPEPContactDetails) isPartnerPEP = try container.decodeIfPresent(Bool.self, forKey: .isPartnerPEP) partnerPEPDetails = try container.decodeIfPresent(String.self, forKey: .partnerPEPDetails) other = try container.decodeIfPresent(String.self, forKey: .other) isActualOwner = try container.decodeIfPresent(Bool.self, forKey: .isActualOwner) actualOwnerComment = try container.decodeIfPresent(String.self, forKey: .actualOwnerComment) isPrivateOwner = try container.decodeIfPresent(Bool.self, forKey: .isPrivateOwner) isOrganizationOwner = try container.decodeIfPresent(Bool.self, forKey: .isOrganizationOwner) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if isPreventCorruptionRisk != nil { try container.encode(isPreventCorruptionRisk, forKey: .isPreventCorruptionRisk) } if antiCorruptionMeasuresDescription != nil { try container.encode(antiCorruptionMeasuresDescription, forKey: .antiCorruptionMeasuresDescription) } if isPartnerCorrupt != nil { try container.encode(isPartnerCorrupt, forKey: .isPartnerCorrupt) } if isCorruptionInspection != nil { try container.encode(isCorruptionInspection, forKey: .isCorruptionInspection) } if criminalJudgement != nil { try container.encode(criminalJudgement, forKey: .criminalJudgement) } if isPartnerConvictedCorruption != nil { try container.encode(isPartnerConvictedCorruption, forKey: .isPartnerConvictedCorruption) } if partnerConvictedEDocument != nil { try container.encode(partnerConvictedEDocument, forKey: .partnerConvictedEDocument) } if partnerConvictedDetails != nil { try container.encode(partnerConvictedDetails, forKey: .partnerConvictedDetails) } if isSelfExoneration != nil { try container.encode(isSelfExoneration, forKey: .isSelfExoneration) } if selfExonerationDetails != nil { try container.encode(selfExonerationDetails, forKey: .selfExonerationDetails) } if isPartnerPEPContact != nil { try container.encode(isPartnerPEPContact, forKey: .isPartnerPEPContact) } if partnerPEPContactDetails != nil { try container.encode(partnerPEPContactDetails, forKey: .partnerPEPContactDetails) } if isPartnerPEP != nil { try container.encode(isPartnerPEP, forKey: .isPartnerPEP) } if partnerPEPDetails != nil { try container.encode(partnerPEPDetails, forKey: .partnerPEPDetails) } if other != nil { try container.encode(other, forKey: .other) } if isActualOwner != nil { try container.encode(isActualOwner, forKey: .isActualOwner) } if actualOwnerComment != nil { try container.encode(actualOwnerComment, forKey: .actualOwnerComment) } if isPrivateOwner != nil { try container.encode(isPrivateOwner, forKey: .isPrivateOwner) } if isOrganizationOwner != nil { try container.encode(isOrganizationOwner, forKey: .isOrganizationOwner) } } } public class ResponseBase : Codable { public var responseStatus:ResponseStatus required public init(){} } public class ModifyRequestBase : IConcurrencyStamp, Codable { public var concurrencyStamp:String required public init(){} }