Unico3.Link.API

<back to all web services

Impianto

Assistenza
The following routes are available for this service:
PUT/assistenza/impianti
PUT,GET/assistenza/impianti/id/{Id}
PUT,GET/assistenza/impianti/codice/{Codice}
PUT,GET/assistenza/impianti/codiceexport/{CodiceExport}
import Foundation
import ServiceStack

public class Impianto : Codable
{
    public var id:Int?
    public var codice:Int?
    public var codiceExport:String?
    public var nominativo:String?
    public var tipoTelefono1:TipoTelefono?
    public var tipoTelefono2:TipoTelefono?
    public var tipoTelefono3:TipoTelefono?
    public var telefono1:String?
    public var telefono2:String?
    public var telefono3:String?
    public var indirizzo:String?
    public var numeroCivico:String?
    public var comune:FK_Comune?
    public var zona:FK_Zona?
    public var palazzo:String?
    public var scala:String?
    public var piano:String?
    public var interno:String?
    public var citofono:String?
    public var gruppo:String?
    public var suffisso:String?
    public var tipologia:FK_TipologiaImpianto?
    public var cat:FK_CAT?
    public var combustibile:FK_Combustibile?

    required public init(){}
}

public enum TipoTelefono : String, Codable
{
    case Fisso
    case Fax
    case Cellulare
    case SMS
}

public class FK_Comune : FK
{
    public var cap:String?
    public var denominazione:String?
    public var provincia:String?
    public var codiceISTAT:String?

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case cap
        case denominazione
        case provincia
        case codiceISTAT
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        cap = try container.decodeIfPresent(String.self, forKey: .cap)
        denominazione = try container.decodeIfPresent(String.self, forKey: .denominazione)
        provincia = try container.decodeIfPresent(String.self, forKey: .provincia)
        codiceISTAT = try container.decodeIfPresent(String.self, forKey: .codiceISTAT)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if cap != nil { try container.encode(cap, forKey: .cap) }
        if denominazione != nil { try container.encode(denominazione, forKey: .denominazione) }
        if provincia != nil { try container.encode(provincia, forKey: .provincia) }
        if codiceISTAT != nil { try container.encode(codiceISTAT, forKey: .codiceISTAT) }
    }
}

public class FK : Codable
{
    public var id:Int?

    required public init(){}
}

public class FK_Zona : FK, IUniqueSigla, IUniqueDescrizione
{
    public var sigla:String?
    public var descrizione:String?

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case sigla
        case descrizione
    }

    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)
        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 sigla != nil { try container.encode(sigla, forKey: .sigla) }
        if descrizione != nil { try container.encode(descrizione, forKey: .descrizione) }
    }
}

public class FK_TipologiaImpianto : 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_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_Combustibile : 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) }
    }
}


Swift Impianto DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

PUT /assistenza/impianti HTTP/1.1 
Host: unico3.link.api 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"Id":0,"Codice":0,"CodiceExport":"String","Nominativo":"String","TipoTelefono1":"Fisso","TipoTelefono2":"Fisso","TipoTelefono3":"Fisso","Telefono1":"String","Telefono2":"String","Telefono3":"String","Indirizzo":"String","NumeroCivico":"String","Comune":{"CAP":"String","Denominazione":"String","Provincia":"String","CodiceISTAT":"String","Id":0},"Zona":{"Sigla":"String","Descrizione":"String","Id":0},"Palazzo":"String","Scala":"String","Piano":"String","Interno":"String","Citofono":"String","Gruppo":"String","Suffisso":"String","Tipologia":{"CodiceExport":"String","Descrizione":"String","Id":0},"CAT":{"Codice":"String","Id":0},"Combustibile":{"CodiceExport":"String","Descrizione":"String","Id":0}}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"Id":0,"Codice":0,"CodiceExport":"String","Nominativo":"String","TipoTelefono1":"Fisso","TipoTelefono2":"Fisso","TipoTelefono3":"Fisso","Telefono1":"String","Telefono2":"String","Telefono3":"String","Indirizzo":"String","NumeroCivico":"String","Comune":{"CAP":"String","Denominazione":"String","Provincia":"String","CodiceISTAT":"String","Id":0},"Zona":{"Sigla":"String","Descrizione":"String","Id":0},"Palazzo":"String","Scala":"String","Piano":"String","Interno":"String","Citofono":"String","Gruppo":"String","Suffisso":"String","Tipologia":{"CodiceExport":"String","Descrizione":"String","Id":0},"CAT":{"Codice":"String","Id":0},"Combustibile":{"CodiceExport":"String","Descrizione":"String","Id":0}}