Skip to content

Commit

Permalink
Allinemanento alla documentazione tecnica v1.9
Browse files Browse the repository at this point in the history
  • Loading branch information
nicogis committed Aug 22, 2022
1 parent f513eae commit 757d906
Show file tree
Hide file tree
Showing 9 changed files with 522 additions and 15 deletions.
3 changes: 3 additions & 0 deletions FatturazioneElettronica.IPA.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,9 @@
<Compile Include="JsonClass\Ws11.cs" />
<Compile Include="JsonClass\Ws10.cs" />
<Compile Include="JsonClass\Ws09.cs" />
<Compile Include="JsonClass\Ws19.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="ws\Ws19_AOO.cs" />
<Compile Include="ws\Ws16_DES_AMM.cs" />
<Compile Include="ws\Ws15_NSO.cs" />
<Compile Include="ws\Ws14_NSO_CF.cs" />
Expand Down Expand Up @@ -108,6 +110,7 @@
<EmbeddedResource Include="JsonSchema\WS15_NSO_SCHEMA.json" />
<EmbeddedResource Include="JsonSchema\WS16_DES_AMM_SCHEMA.json" />
<EmbeddedResource Include="JsonSchema\WS18_AOO_SCHEMA.json" />
<EmbeddedResource Include="JsonSchema\WS19_AOO_SCHEMA.json" />
<None Include="LICENSE" />
<None Include="packages.config" />
<None Include="Readme.md" />
Expand Down
8 changes: 4 additions & 4 deletions FatturazioneElettronica.IPA.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,16 @@
<package >
<metadata>
<id>$id$</id>
<version>1.7.2</version>
<version>1.9.0</version>
<title>Fatturazione elettronica - IPA</title>
<authors>nicogis</authors>
<owners>Studio A&amp;T s.r.l.</owners>
<licenseUrl>https://github.com/nicogis/FatturazioneElettronica-IPA/blob/master/LICENSE</licenseUrl>
<license type="expression">LGPL-3.0-or-later</license>
<projectUrl>https://nicogis.github.io/FatturazioneElettronica-IPA</projectUrl>
<requireLicenseAcceptance>true</requireLicenseAcceptance>
<description>Client per web services IPA (Indice delle Pubblice Amministrazioni)</description>
<releaseNotes>Libreria allineata ai ws della documentazione tecnica versione 1.7 IPA</releaseNotes>
<copyright>Copyright 2021</copyright>
<releaseNotes>Libreria allineata ai ws della documentazione tecnica versione 1.9 IPA - aggiunto la proprietà CodErrDescription</releaseNotes>
<copyright>Copyright 2022</copyright>
<tags>IPA FatturazioneElettronica nicogis</tags>
</metadata>
</package>
50 changes: 48 additions & 2 deletions JsonClass/Result.cs
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
namespace FatturazioneElettronica.IPA
{
using Newtonsoft.Json;
using System.Collections.Generic;

public partial class Result
{
/// <summary>
/// Codice di ritorno
/// </summary>
[JsonProperty("cod_err", Required = Required.Always)]
public double CodErr { get; set; }
public int CodErr { get; set; }

/// <summary>
/// Descrizione errore
Expand All @@ -21,10 +22,55 @@ public partial class Result
/// </summary>
[JsonProperty("num_items", Required = Required.Always)]
public double NumItems { get; set; }

/// <summary>
/// Codice errore IPA
/// </summary>
public string CodErrDescription {
get
{
if (WsJson.ErrorCodes.ContainsKey(this.CodErr))
{
return WsJson.ErrorCodes[this.CodErr];
}

return null;
}
}

}

public abstract class WsJson
{

internal static readonly Dictionary<int, string> ErrorCodes = new Dictionary<int, string>
{ { 0, "Nessun errore" },
{ 1, "Parametro CF mancante" },
{ 2, "Parametro CF non valorizzato" },
{ 3, "Parametro CF valorizzato erroneamente" },
{ 11, "Parametro EMAIL non valorizzato" },
{ 12, "Parametro EMAIL valorizzato erroneamente" },
{ 20, "Parametro COD_AMM mancante" },
{21 , "Parametro COD_AMM non valorizzato" },
{22 , "Parametro COD_AMM valorizzato erroneamente" },
{23 , "Valore COD_AMM non presente in archivio" },
{30 , "Parametro COD_UNI_OU mancante" },
{31 , "Parametro COD_UNI_OU non valorizzato" },
{32 , "Parametro COD_UNI_OU valorizzato erroneamente" },
{40 , "Parametro COD_AOO mancante" },
{41 , "Parametro COD_AOO non valorizzato" },
{42 , "Parametro COD_AOO valorizzato erroneamente" },
{50 , "Parametro DESCR mancante" },
{51 , "Parametro DESCR non valorizzato" },
{52 , "Parametro DESCR valorizzato erroneamente" },
{60 , "Parametro DOM_DIG mancante" },
{61 , "Parametro DOM_DIG non valorizzato" },
{62 , "Parametro DOM_DIG valorizzato erroneamente" },
{70 , "Parametro COD_UNI_AOO mancante" },
{71 , "Parametro COD_UNI_AOO non valorizzato" },
{72 , "Parametro COD_UNI_AOO valorizzato erroneamente" },
{900 , "Parametro AUTH_ID mancante" },
{901 , "Parametro AUTH_ID non valorizzato" },
{902 , "Parametro AUTH_ID valorizzato erroneamente" }
};
}
}
155 changes: 155 additions & 0 deletions JsonClass/Ws19.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,155 @@
namespace FatturazioneElettronica.IPA
{
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;

/// <summary>
/// L'IPA consente la ricerca di informazioni utili relative alle Aree Organizzative Omogenee,
/// ove definite, per ciascun ente in esso accreditato.
/// Ogni Area Organizzativa Omogenea, di seguito AOO, è univocamente individuata in due
/// modalità:
/// - codice univoco AOO, attribuito dal sistema, composto da 7 caratteri di cui il primo è
/// sempre il carattere A. Tale codice è esposto nelle funzioni di consultazione a
/// disposizione degli utenti pubblici del portale IPA e identifica univocamente l’AOO
/// nell’intero indice.
/// - codice AOO, attribuito dal singolo ente. Il codice identifica univocamente l'AOO solo
/// nell’ambito del singolo ente, pertanto per identificare una AOO tra due enti è
/// necessario combinare l’informazione con il codice IPA dell’ente.Tale codice non è
/// presente nelle funzioni di consultazione a disposizione degli utenti pubblici del
/// portale IPA.
/// Questo servizio web consente di estrarre dall'IPA informazioni su una specifica Area
/// Organizzativa Omogenea associata ad un ente fornendo il codice univoco AOO sopra
/// definito.
/// </summary>
public partial class Ws19 : WsJson
{
[JsonProperty("data", Required = Required.AllowNull)]
public DataWs19 Data { get; set; }

[JsonProperty("result", Required = Required.Always)]
public Result Result { get; set; }
}

public partial class DataWs19
{
/// <summary>
/// Codice di avviamento postale registrato in iPA per la sede dell'Area Organizzativa
/// Omogenea
/// </summary>
[JsonProperty("cap", Required = Required.AllowNull)]
public string Cap { get; set; }

/// <summary>
/// Codice dell'Ente come è accreditato sull'iPA
/// </summary>
[JsonProperty("cod_amm", Required = Required.Always)]
public string CodAmm { get; set; }

/// <summary>
/// Codice dell'Area organizzativa Omogenea
/// </summary>
[JsonProperty("cod_aoo", Required = Required.Always)]
public string CodAoo { get; set; }

/// <summary>
/// Codice univoco dell'Area organizzativa Omogenea
/// </summary>
[JsonProperty("cod_uni_aoo", Required = Required.Always)]
public string CodUniAoo { get; set; }

/// <summary>
/// Cognome del responsabile dell'Area Organizzativa Omogenea
/// </summary>
[JsonProperty("cogn_resp", Required = Required.AllowNull)]
public string CognResp { get; set; }

/// <summary>
/// Comune registrato in iPA per la sede dell'Area Organizzativa Omogenea
/// </summary>
[JsonProperty("comune", Required = Required.AllowNull)]
public string Comune { get; set; }

/// <summary>
/// Data di cessazione dell'Area Organizzativa Omogenea
/// </summary>
[JsonProperty("data_cessazione", Required = Required.Always)]
public string DataCessazione { get; set; }

/// <summary>
/// Denominazione dell'Area Organizzativa Omogenea
/// </summary>
[JsonProperty("des_aoo", Required = Required.Always)]
public string DesAoo { get; set; }

/// <summary>
/// Numero di fax registrato in iPA per l'Area Organizzativa Omogenea
/// </summary>
[JsonProperty("fax", Required = Required.AllowNull)]
public string Fax { get; set; }

/// <summary>
/// Indirizzo postale registrato in iPA per la sede dell'Area Organizzativa Omogenea
/// </summary>
[JsonProperty("indirizzo", Required = Required.AllowNull)]
public string Indirizzo { get; set; }

/// <summary>
/// Indirizzo email associato all'Area Organizzativa Omogenea di tipo PEC
/// </summary>
[JsonProperty("mail1", Required = Required.AllowNull)]
public string Mail1 { get; set; }

/// <summary>
/// Indirizzo email associato all'Area Organizzativa Omogenea di tipo PEC
/// </summary>
[JsonProperty("mail2", Required = Required.AllowNull)]
public string Mail2 { get; set; }

/// <summary>
/// Indirizzo email associato all'Area Organizzativa Omogenea di tipo PEC
/// </summary>
[JsonProperty("mail3", Required = Required.AllowNull)]
public string Mail3 { get; set; }

/// <summary>
/// Indirizzo email del responsabile dell'Area Organizzativa Omogenea
/// </summary>
[JsonProperty("mail_resp", Required = Required.AllowNull)]
public string MailResp { get; set; }

/// <summary>
/// Nome del responsabile dell'Area Organizzativa Omogenea
/// </summary>
[JsonProperty("nome_resp", Required = Required.AllowNull)]
public string NomeResp { get; set; }

/// <summary>
/// Provincia registrata in iPA per la sede dell'Area Organizzativa Omogenea
/// </summary>
[JsonProperty("provincia", Required = Required.AllowNull)]
public string Provincia { get; set; }

/// <summary>
/// Regione registrata in iPA per la sede dell'Area Organizzativa Omogenea
/// </summary>
[JsonProperty("regione", Required = Required.AllowNull)]
public string Regione { get; set; }

/// <summary>
/// Numero di telefono registrato in iPA per l'Area Organizzativa Omogenea
/// </summary>
[JsonProperty("tel", Required = Required.AllowNull)]
public string Tel { get; set; }

/// <summary>
/// Numero di telefono del responsabile dell'Area Organizzativa Omogenea
/// </summary>
[JsonProperty("tel_resp", Required = Required.AllowNull)]
public string TelResp { get; set; }
}
}
Loading

0 comments on commit 757d906

Please sign in to comment.