/* Options: Date: 2025-12-06 04:52:37 SwiftVersion: 6.0 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.prod-mnta.webhop.biz //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: ReportBetCancellations.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/bets/cancel", "POST") public class ReportBetCancellations : IReturn, Codable { public typealias Return = ResponseStatus public var betCancellations:RecordList? required public init(){} } public class RecordList : List { required public init(){ super.init() } required public init(from decoder: Decoder) throws { try super.init(from: decoder) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) } } public class RollbackDto : TransactionDtoBase { public var rollback_transaction_id:String? public var ticket_id:String? public var rollback_transaction_type:RollbackTransactionType? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case rollback_transaction_id case ticket_id case rollback_transaction_type } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) rollback_transaction_id = try container.decodeIfPresent(String.self, forKey: .rollback_transaction_id) ticket_id = try container.decodeIfPresent(String.self, forKey: .ticket_id) rollback_transaction_type = try container.decodeIfPresent(RollbackTransactionType.self, forKey: .rollback_transaction_type) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if rollback_transaction_id != nil { try container.encode(rollback_transaction_id, forKey: .rollback_transaction_id) } if ticket_id != nil { try container.encode(ticket_id, forKey: .ticket_id) } if rollback_transaction_type != nil { try container.encode(rollback_transaction_type, forKey: .rollback_transaction_type) } } } public enum BetSource : Int, Codable { case Landbase = 0 case Web = 1 } public class TransactionDtoBase : Codable { public var transaction_id:String? public var transaction_time:Date? public var transaction_amount:Double? public var game_name:String? public var betting_place_id:String? public var betting_terminal_id:String? public var jmbg:String? public var passport_number:String? public var source:BetSource? public var identification_document_country:String? public var identification_document_type:String? required public init(){} } public enum RollbackTransactionType : Int, Codable { case Bet = 0 case Win = 1 case Jackpot = 1 }