/* Options: Date: 2025-06-07 20:02:42 SwiftVersion: 5.0 Version: 8.12 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://soluser-recaudo.sgsas.co //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: AMDCGetObligacionesXArticuloRQ.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/consulta/ConsultaDeudaXArticulo") public class AMDCGetObligacionesXArticuloRQ : DatosBanco, IReturn { public typealias Return = AMDCGetObligacionesXArticuloRS // @DataMember(Name="IdDocumento") public var IdDocumento:String public var anio:Int // @DataMember(Name="IdTipoImpuesto") public var IdTipoImpuesto:Int public var pagoParcial:Int public var banco:String public var sucursal:String public var usuario:String public var terminal:String required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case IdDocumento case anio case IdTipoImpuesto case pagoParcial case banco case sucursal case usuario case terminal } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) IdDocumento = try container.decodeIfPresent(String.self, forKey: .IdDocumento) anio = try container.decodeIfPresent(Int.self, forKey: .anio) IdTipoImpuesto = try container.decodeIfPresent(Int.self, forKey: .IdTipoImpuesto) pagoParcial = try container.decodeIfPresent(Int.self, forKey: .pagoParcial) banco = try container.decodeIfPresent(String.self, forKey: .banco) sucursal = try container.decodeIfPresent(String.self, forKey: .sucursal) usuario = try container.decodeIfPresent(String.self, forKey: .usuario) terminal = try container.decodeIfPresent(String.self, forKey: .terminal) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if IdDocumento != nil { try container.encode(IdDocumento, forKey: .IdDocumento) } if anio != nil { try container.encode(anio, forKey: .anio) } if IdTipoImpuesto != nil { try container.encode(IdTipoImpuesto, forKey: .IdTipoImpuesto) } if pagoParcial != nil { try container.encode(pagoParcial, forKey: .pagoParcial) } if banco != nil { try container.encode(banco, forKey: .banco) } if sucursal != nil { try container.encode(sucursal, forKey: .sucursal) } if usuario != nil { try container.encode(usuario, forKey: .usuario) } if terminal != nil { try container.encode(terminal, forKey: .terminal) } } } public class AMDCGetObligacionesXArticuloRS : CoreRes { public var deudaObligacion:Deuda_Obligacion public var tranId:String public var code:String public var infoMsg:String required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case deudaObligacion case tranId case code case infoMsg } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) deudaObligacion = try container.decodeIfPresent(Deuda_Obligacion.self, forKey: .deudaObligacion) tranId = try container.decodeIfPresent(String.self, forKey: .tranId) code = try container.decodeIfPresent(String.self, forKey: .code) infoMsg = try container.decodeIfPresent(String.self, forKey: .infoMsg) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if deudaObligacion != nil { try container.encode(deudaObligacion, forKey: .deudaObligacion) } if tranId != nil { try container.encode(tranId, forKey: .tranId) } if code != nil { try container.encode(code, forKey: .code) } if infoMsg != nil { try container.encode(infoMsg, forKey: .infoMsg) } } } public class DatosBanco : Codable { public var banco:String public var sucursal:String public var usuario:String public var terminal:String required public init(){} } public class CoreRes : Codable { public var tranId:String public var code:String public var infoMsg:String required public init(){} } public class Deuda_Obligacion : Codable { // @DataMember(Name="NombreContribuyente") public var NombreContribuyente:String // @DataMember(Name="TotalDeuda") public var TotalDeuda:Double public var anio:Int public var detalleObligacion:[Detalle_Obligacion] = [] required public init(){} } public class Detalle_Obligacion : Codable { public var orden:Int // @DataMember(Name="IdObligacion") public var IdObligacion:String // @DataMember(Name="NombreObligacion") public var NombreObligacion:String // @DataMember(Name="TipoImpuesto") public var TipoImpuesto:String public var impuesto:Double public var trenAseo:Double public var bomberos:Double public var otros:Double public var intereses:Double public var descuento:Double public var fechaExpiracion:String public var totalFila:Double public var mensaje:String required public init(){} }