/* Options: Date: 2026-06-06 01:22:38 SwiftVersion: 5.0 Version: 5.140 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://link.dc8.unico3.cloud //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: RicercaDocumentiEmessi.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/documenti/emessi/da/{Da}", "GET") // @Route("/intervento/numero/{NumeroIntervento}/documenti", "GET") // @Route("/intervento/id/{IdIntervento}/documenti", "GET") // @Route("/interventi/{IdIntervento}/documenti", "GET") // @Route("/documenti/emessi/da/data/{DataDa}/a/data/{DataA}", "GET") // @Route("/documenti/emessi/da/data/{DataDa}", "GET") // @Route("/documenti/emessi/ultimi/{Ultimi}", "GET") public class RicercaDocumentiEmessi : IReturn, Codable { public typealias Return = GetDocumentiResponse public var da:Int? public var ultimi:Int? public var daFatturare:Bool? public var isFatturato:Bool? public var isIntervento:Bool? public var isCommessa:Bool? public var intervento:FK_Intervento? public var tipologia:FK_TipologiaDocumento? public var cat:FK_CAT? public var tecnico:FK_Tecnico? public var dataA:Date? public var dataDa:Date? public var sessioneMobile:StatoSessioneMobile? public var validazione:StatoValidazione? public var isSupportoDistinte:Bool? required public init(){} } public class GetDocumentiResponse : Codable { public var documenti:[Documento] = [] required public init(){} } public class FK_CAT : FK, IUniqueCodice { public var codice:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case codice } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) codice = try container.decodeIfPresent(String.self, forKey: .codice) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if codice != nil { try container.encode(codice, forKey: .codice) } } } public class FK_Impianto : FK, IUniqueCodiceNumerico, IUniqueCodiceExport { public var codice:Int? public var codiceExport:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case codice case codiceExport } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) codice = try container.decodeIfPresent(Int.self, forKey: .codice) codiceExport = try container.decodeIfPresent(String.self, forKey: .codiceExport) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if codice != nil { try container.encode(codice, forKey: .codice) } if codiceExport != nil { try container.encode(codiceExport, forKey: .codiceExport) } } } public class FK_Anagrafica : FK, IUniqueCodiceNumerico, IUniqueCodiceExport { public var codice:Int? public var codiceExport:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case codice case codiceExport } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) codice = try container.decodeIfPresent(Int.self, forKey: .codice) codiceExport = try container.decodeIfPresent(String.self, forKey: .codiceExport) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if codice != nil { try container.encode(codice, forKey: .codice) } if codiceExport != nil { try container.encode(codiceExport, forKey: .codiceExport) } } } public class FK_UdM : FK, IUniqueCodice, IUniqueDescrizione, IUniqueCodiceExport { public var codice:String? public var descrizione:String? public var codiceExport:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case codice case descrizione case codiceExport } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) codice = try container.decodeIfPresent(String.self, forKey: .codice) descrizione = try container.decodeIfPresent(String.self, forKey: .descrizione) codiceExport = try container.decodeIfPresent(String.self, forKey: .codiceExport) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if codice != nil { try container.encode(codice, forKey: .codice) } if descrizione != nil { try container.encode(descrizione, forKey: .descrizione) } if codiceExport != nil { try container.encode(codiceExport, forKey: .codiceExport) } } } public class FK_AliquotaIVA : FK, IUniqueCodice, IUniqueCodiceExport { public var codice:String? public var codiceExport:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case codice case codiceExport } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) codice = try container.decodeIfPresent(String.self, forKey: .codice) codiceExport = try container.decodeIfPresent(String.self, forKey: .codiceExport) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if codice != nil { try container.encode(codice, forKey: .codice) } if codiceExport != nil { try container.encode(codiceExport, forKey: .codiceExport) } } } public class FK_Conto : FK, IUniqueCodice, IUniqueCodiceExport { public var codice:String? public var codiceExport:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case codice case codiceExport } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) codice = try container.decodeIfPresent(String.self, forKey: .codice) codiceExport = try container.decodeIfPresent(String.self, forKey: .codiceExport) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if codice != nil { try container.encode(codice, forKey: .codice) } if codiceExport != nil { try container.encode(codiceExport, forKey: .codiceExport) } } } public class FK_Articolo : FK, IUniqueCodice { public var codice:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case codice } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) codice = try container.decodeIfPresent(String.self, forKey: .codice) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if codice != nil { try container.encode(codice, forKey: .codice) } } } public class FK_Intervento : FK, IUniqueNumero { public var numero:Int? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case numero } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) numero = try container.decodeIfPresent(Int.self, forKey: .numero) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if numero != nil { try container.encode(numero, forKey: .numero) } } } public class FK_TipologiaDocumento : FK, IUniqueDescrizione, IUniqueCodiceExport { public var codiceExport:String? public var descrizione:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case codiceExport case descrizione } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) codiceExport = try container.decodeIfPresent(String.self, forKey: .codiceExport) descrizione = try container.decodeIfPresent(String.self, forKey: .descrizione) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if codiceExport != nil { try container.encode(codiceExport, forKey: .codiceExport) } if descrizione != nil { try container.encode(descrizione, forKey: .descrizione) } } } public class FK_Tecnico : FK, IUniqueSigla, IUniqueNominativo { public var sigla:String? public var nominativo:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case sigla case nominativo } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) sigla = try container.decodeIfPresent(String.self, forKey: .sigla) nominativo = try container.decodeIfPresent(String.self, forKey: .nominativo) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if sigla != nil { try container.encode(sigla, forKey: .sigla) } if nominativo != nil { try container.encode(nominativo, forKey: .nominativo) } } } public enum StatoSessioneMobile : String, Codable { case APERTA case CHIUSA } public enum StatoValidazione : String, Codable { case DA_VALIDARE case VALIDATI } public class Documento : Codable { public var id:Int? public var codiceExport:String? public var data:Date? public var numero:String? public var tipologia:FK_TipologiaDocumento? public var cat:FK_CAT? public var intervento:Intervento? public var cliente:FK_Anagrafica? public var codiceFiscale:String? public var partitaIva:String? public var nominativoIntestatario:String? public var indirizzoIntestatario:String? public var comuneIntestatario:String? public var capIntestatario:String? public var provinciaIntestatario:String? public var telefonoIntestatario:String? public var nominativoDestinatario:String? public var indirizzoDestinatario:String? public var comuneDestinatario:String? public var capDestinatario:String? public var provinciaDestinatario:String? public var magazzinoDestinazione:FK_Magazzino? public var magazzinoOrigine:FK_Magazzino? public var impianto:FK_Impianto? public var nominativoImpianto:String? public var indirizzoImpianto:String? public var numeroCivicoImpianto:String? public var comuneImpianto:String? public var capImpianto:String? public var provinciaImpianto:String? public var imponibile:Double? public var imposta:Double? public var esente:Double? public var arrotondamento:Double? public var totaleImporto:Double? public var pagamentoContestuale:FK_Pagamento? public var pagato:Double? public var pagamentoDifferito:FK_Pagamento? public var ivaDiCassa:Bool? public var isFatturare:Bool? public var causaleDiTrasporto:FK_CausaleTrasporto? public var dettagli:[DettaglioDocumento] = [] required public init(){} } public class FK : Codable { public var id:Int? required public init(){} } public class FK_Pagamento : FK, IUniqueDescrizione, IUniqueCodiceExport { public var codiceExport:String? public var descrizione:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case codiceExport case descrizione } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) codiceExport = try container.decodeIfPresent(String.self, forKey: .codiceExport) descrizione = try container.decodeIfPresent(String.self, forKey: .descrizione) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if codiceExport != nil { try container.encode(codiceExport, forKey: .codiceExport) } if descrizione != nil { try container.encode(descrizione, forKey: .descrizione) } } } public protocol IUniqueSigla : IForeignKey { var sigla:String? { get set } } public protocol IForeignKey { var id:Int? { get set } } public protocol IUniqueDescrizione : IForeignKey { var descrizione:String? { get set } } public protocol IUniqueCodiceExport : IForeignKey { var codiceExport:String? { get set } } public protocol IUniqueCodice : IForeignKey { var codice:String? { get set } } public protocol IUniqueCodiceNumerico : IForeignKey { var codice:Int? { get set } } public protocol IUniqueNumero : IForeignKey { var numero:Int? { get set } } public protocol IUniqueNominativo : IForeignKey { var nominativo:String? { get set } } public class Intervento : Codable { public var id:Int? public var numero:Int? public var richiesta:FK_Attivita? public var impianto:FK_Impianto? public var tipologia:FK_TipologiaIntervento? public var tecnico:FK_Tecnico? public var statoSessioneMobile:StatoSessioneMobile? public var statoValidazione:StatoValidazione? public var validazioni:[ValidazioneIntervento] = [] public var descrizione:String? public var note:String? public var data:Date? @TimeSpan public var oraInizio:TimeInterval? @TimeSpan public var durata:TimeInterval? required public init(){} } public class FK_Magazzino : FK, IUniqueDescrizione, IUniqueCodiceExport { public var descrizione:String? public var codiceExport:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case descrizione case codiceExport } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) descrizione = try container.decodeIfPresent(String.self, forKey: .descrizione) codiceExport = try container.decodeIfPresent(String.self, forKey: .codiceExport) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if descrizione != nil { try container.encode(descrizione, forKey: .descrizione) } if codiceExport != nil { try container.encode(codiceExport, forKey: .codiceExport) } } } public class FK_CausaleTrasporto : FK, IUniqueDescrizione { public var descrizione:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case descrizione } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) descrizione = try container.decodeIfPresent(String.self, forKey: .descrizione) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if descrizione != nil { try container.encode(descrizione, forKey: .descrizione) } } } public class DettaglioDocumento : Codable { public var id:Int? public var tipo:TipoRiga? public var articolo:FK_Articolo? public var codice:String? public var descrizione:String? public var descrizioneEstesa:String? public var quantita:Double? public var udM:FK_UdM? public var prezzoUnitario:Double? public var importo:Double? public var sconto:String? public var contropartita:FK_Conto? public var aliquotaIVA:FK_AliquotaIVA? public var isGaranzia:Bool? public var tipoPrezzoDistinta:TipoPrezzoDistinta? public var isComponenteDistinta:Bool? public var idTestataDistinta:Int? required public init(){} } public class FK_Attivita : FK, IUniqueNumero { public var numero:Int? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case numero } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) numero = try container.decodeIfPresent(Int.self, forKey: .numero) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if numero != nil { try container.encode(numero, forKey: .numero) } } } public class FK_TipologiaIntervento : FK, IUniqueSigla, IUniqueDescrizione { public var descrizione:String? public var sigla:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case descrizione case sigla } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) descrizione = try container.decodeIfPresent(String.self, forKey: .descrizione) sigla = try container.decodeIfPresent(String.self, forKey: .sigla) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if descrizione != nil { try container.encode(descrizione, forKey: .descrizione) } if sigla != nil { try container.encode(sigla, forKey: .sigla) } } } public class ValidazioneIntervento : Codable { public var isEseguita:Bool? public var note:String? public var stepValidazione:FK_StepValidazione? required public init(){} } public enum TipoRiga : String, Codable { case Articolo case Manuale case Testo case Distinta } public enum TipoPrezzoDistinta : String, Codable { case ANALITICO case FORFAIT } public class FK_StepValidazione : FK { public var descrizione:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case descrizione } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) descrizione = try container.decodeIfPresent(String.self, forKey: .descrizione) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if descrizione != nil { try container.encode(descrizione, forKey: .descrizione) } } }