""" Options: Date: 2026-06-06 01:23:42 Version: 5.140 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://link.dc8.unico3.cloud #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: Impianto.* #ExcludeTypes: #DefaultImports: datetime,decimal,marshmallow.fields:*,servicestack:*,typing:*,dataclasses:dataclass/field,dataclasses_json:dataclass_json/LetterCase/Undefined/config,enum:Enum/IntEnum #DataClass: #DataClassJson: """ import datetime import decimal from marshmallow.fields import * from servicestack import * from typing import * from dataclasses import dataclass, field from dataclasses_json import dataclass_json, LetterCase, Undefined, config from enum import Enum, IntEnum class TipoTelefono(str, Enum): FISSO = 'Fisso' FAX = 'Fax' CELLULARE = 'Cellulare' SMS = 'SMS' @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class FK: id: Optional[int] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class FK_Comune(FK): cap: Optional[str] = None denominazione: Optional[str] = None provincia: Optional[str] = None codice_i_s_t_a_t: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class FK_Zona(FK, IUniqueSigla, IUniqueDescrizione): sigla: Optional[str] = None descrizione: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class FK_TipologiaImpianto(FK, IUniqueDescrizione, IUniqueCodiceExport): codice_export: Optional[str] = None descrizione: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class FK_CAT(FK, IUniqueCodice): codice: Optional[str] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class FK_Combustibile(FK, IUniqueDescrizione, IUniqueCodiceExport): codice_export: Optional[str] = None descrizione: Optional[str] = None class IUniqueSigla(IForeignKey): sigla: Optional[str] = None class IForeignKey: id: Optional[int] = None class IUniqueDescrizione(IForeignKey): descrizione: Optional[str] = None class IUniqueCodiceExport(IForeignKey): codice_export: Optional[str] = None class IUniqueCodice(IForeignKey): codice: Optional[str] = None # @Route("/assistenza/impianti", "PUT") # @Route("/assistenza/impianti/id/{Id}", "PUT,GET") # @Route("/assistenza/impianti/codice/{Codice}", "PUT,GET") # @Route("/assistenza/impianti/codiceexport/{CodiceExport}", "PUT,GET") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class Impianto(IReturn["Impianto"]): id: Optional[int] = None codice: Optional[int] = None codice_export: Optional[str] = None nominativo: Optional[str] = None tipo_telefono1: Optional[TipoTelefono] = None tipo_telefono2: Optional[TipoTelefono] = None tipo_telefono3: Optional[TipoTelefono] = None telefono1: Optional[str] = None telefono2: Optional[str] = None telefono3: Optional[str] = None indirizzo: Optional[str] = None numero_civico: Optional[str] = None comune: Optional[FK_Comune] = None zona: Optional[FK_Zona] = None palazzo: Optional[str] = None scala: Optional[str] = None piano: Optional[str] = None interno: Optional[str] = None citofono: Optional[str] = None gruppo: Optional[str] = None suffisso: Optional[str] = None tipologia: Optional[FK_TipologiaImpianto] = None cat: Optional[FK_CAT] = None combustibile: Optional[FK_Combustibile] = None