/* Options: Date: 2025-06-07 19:47:23 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: AMDCPagoDeudaOtrosRQ.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/pago/PagoOtros") public class AMDCPagoDeudaOtrosRQ : DatosBanco, IReturn { public typealias Return = AMDCPagoDeudaOtrosRS public var pagoOtros:PagoOtrosRequest 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 pagoOtros 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) pagoOtros = try container.decodeIfPresent(PagoOtrosRequest.self, forKey: .pagoOtros) 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 pagoOtros != nil { try container.encode(pagoOtros, forKey: .pagoOtros) } 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 AMDCPagoDeudaOtrosRS : CoreRes { public var pagoRespuesta:ResultadoPago public var tranId:String public var code:String public var infoMsg:String required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case pagoRespuesta 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) pagoRespuesta = try container.decodeIfPresent(ResultadoPago.self, forKey: .pagoRespuesta) 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 pagoRespuesta != nil { try container.encode(pagoRespuesta, forKey: .pagoRespuesta) } 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 PagoOtrosRequest : Codable { public var idTransaccionBanco:String public var numeroDocumento:String public var idTipoObligacion:Int public var fechaTransaccionBanco:Int public var horaMinSeg:Int public var monto:Double public var descripcion:String required public init(){} } public class ResultadoPago : ResultadoTransaccion { public var idPago:Int public var checkSum:String public var resultado:String // @DataMember(Name="Mensaje") public var Mensaje:String public var fechaTransaccion:String required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case idPago case checkSum case resultado case Mensaje case fechaTransaccion } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) idPago = try container.decodeIfPresent(Int.self, forKey: .idPago) checkSum = try container.decodeIfPresent(String.self, forKey: .checkSum) resultado = try container.decodeIfPresent(String.self, forKey: .resultado) Mensaje = try container.decodeIfPresent(String.self, forKey: .Mensaje) fechaTransaccion = try container.decodeIfPresent(String.self, forKey: .fechaTransaccion) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if idPago != nil { try container.encode(idPago, forKey: .idPago) } if checkSum != nil { try container.encode(checkSum, forKey: .checkSum) } if resultado != nil { try container.encode(resultado, forKey: .resultado) } if Mensaje != nil { try container.encode(Mensaje, forKey: .Mensaje) } if fechaTransaccion != nil { try container.encode(fechaTransaccion, forKey: .fechaTransaccion) } } } public class CoreRes : Codable { public var tranId:String public var code:String public var infoMsg:String required public init(){} } public class ResultadoTransaccion : Codable { public var resultado:String // @DataMember(Name="Mensaje") public var Mensaje:String public var fechaTransaccion:String required public init(){} }