using SQLite;
using System.Text.Json.Serialization;

namespace salesbook.Shared.Core.Entity;

[Table("anag_clie")]
public class AnagClie
{
    [PrimaryKey, Column("cod_anag"), JsonPropertyName("codAnag")]
    public string? CodAnag { get; set; }

    [Column("cod_vtip"), JsonPropertyName("codVtip")]
    public string? CodVtip { get; set; }

    [Column("cod_vage"), JsonPropertyName("codVage")]
    public string? CodVage { get; set; }

    [Column("rag_soc"), JsonPropertyName("ragSoc")]
    public string RagSoc { get; set; }

    [Column("indirizzo"), JsonPropertyName("indirizzo")]
    public string Indirizzo { get; set; }

    [Column("cap"), JsonPropertyName("cap")]
    public string Cap { get; set; }

    [Column("citta"), JsonPropertyName("citta")]
    public string Citta { get; set; }

    [Column("prov"), JsonPropertyName("prov")]
    public string Prov { get; set; }

    [Column("nazione"), JsonPropertyName("nazione")]
    public string Nazione { get; set; }

    [Column("telefono"), JsonPropertyName("telefono")]
    public string? Telefono { get; set; }

    [Column("fax"), JsonPropertyName("fax")]
    public string Fax { get; set; }

    [Column("part_iva"), JsonPropertyName("partIva")]
    public string PartIva { get; set; }

    [Column("cod_fisc"), JsonPropertyName("codFisc")]
    public string CodFisc { get; set; }

    [Column("note"), JsonPropertyName("note")]
    public string Note { get; set; }

    [Column("persona_rif"), JsonPropertyName("personaRif")]
    public string PersonaRif { get; set; }

    [Column("e_mail"), JsonPropertyName("eMail")]
    public string? EMail { get; set; }

    [Column("e_mail_pec"), JsonPropertyName("eMailPec")]
    public string EMailPec { get; set; }

    [Column("nome"), JsonPropertyName("nome")]
    public string Nome { get; set; }

    [Column("data_ins"), JsonPropertyName("dataIns")]
    public DateTime? DataIns { get; set; } = DateTime.Now;

    [Column("num_cell"), JsonPropertyName("numCell")]
    public string NumCell { get; set; }

    [Column("cognome"), JsonPropertyName("cognome")]
    public string Cognome { get; set; }

    [Column("diacod"), JsonPropertyName("diacod")]
    public string Diacod { get; set; }

    [Column("lat"), JsonPropertyName("lat")]
    public decimal? Lat { get; set; }

    [Column("lng"), JsonPropertyName("lng")]
    public decimal? Lng { get; set; }

    [Column("data_mod"), JsonPropertyName("dataMod")]
    public DateTime? DataMod { get; set; } = DateTime.Now;

    [Column("flag_stato"), JsonPropertyName("flagStato")]
    public string FlagStato { get; set; }
}