using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json; // Make sure to include this if you're using JsonProperty
using System.ComponentModel.DataAnnotations.Schema; // Include for Table attribute

namespace Parser_Xls_Integral
{
    [Table("tunel")]
    public class Tunel
    {
        [JsonProperty("or")]
        public string OR { get; set; }

        [JsonProperty("nazov_or")]
        public string NazovOR { get; set; }

        [JsonProperty("smu")]
        public string SMSU { get; set; }

        [JsonProperty("nazov_smu")]
        public string NazovSMSU { get; set; }

        [JsonProperty("tu")]
        public string TU { get; set; }

        [JsonProperty("nazov_tu")]
        public string NazovTU { get; set; }

        [JsonProperty("du")]
        public string DU { get; set; }

        [JsonProperty("nazov_du")]
        public string NazovDU { get; set; }

        [JsonProperty("kategoria_trate")]
        public string KategoriaTrate { get; set; }

        [JsonProperty("oznacenie_rozchodu")]
        public string OznacenieRozchodu { get; set; }

        [JsonProperty("trakcia")]
        public string Trakcia { get; set; }

        [JsonProperty("koridory")]
        public string Koridory { get; set; }

        [JsonProperty("kategoria_zvisleho_zatazenia")]
        public string KategoriaZvislehoZatazenia { get; set; }

        [JsonProperty("cislo_ttp")]
        public string CisloTTP { get; set; }

        [JsonProperty("evidencne_cislo")]
        public string EvidencneCislo { get; set; }

        [JsonProperty("nazov")]
        public string Nazov { get; set; }

        [JsonProperty("mimo_prevadzky")]
        public string MimoPrevadzky { get; set; }

        [JsonProperty("cislo_vyhlasenia")]
        public string CisloVyhlasenia { get; set; }

        [JsonProperty("typ_vyhlasenia_ei")]
        public string TypVyhlaseniaEI { get; set; }

        [JsonProperty("typ_vyhlasenia_es")]
        public string TypVyhlaseniaES { get; set; }

        [JsonProperty("nudzozny_plan")]
        public string NudzoznyPlan { get; set; }

        [JsonProperty("kolaj_c1_ppozkv")]
        public string KolajC1PPOZKV { get; set; }

        [JsonProperty("kolaj_c1_ppozkv_500m")]
        public string KolajC1PPOZKV_500m { get; set; }

        [JsonProperty("kolaj_c2_ppozkv")]
        public string KolajC2PPOZKV { get; set; }

        [JsonProperty("kolaj_c2_ppozkv_500m")]
        public string KolajC2PPOZKV_500m { get; set; }

        [JsonProperty("kolaj_c3_ppozkv")]
        public string KolajC3PPOZKV { get; set; }

        [JsonProperty("kolaj_c3_ppozkv_500m")]
        public string KolajC3PPOZKV_500m { get; set; }

        [JsonProperty("km_poloha")]
        public string KmPoloha { get; set; }

        [JsonProperty("gps_zem_dlzka")]
        public string GPSZemDlzka { get; set; }

        [JsonProperty("gps_zem_sirka")]
        public string GPSZemSirka { get; set; }

        [JsonProperty("kraj")]
        public string Kraj { get; set; }

        [JsonProperty("okres")]
        public string Okres { get; set; }

        [JsonProperty("obec")]
        public string Obec { get; set; }

        [JsonProperty("kataster")]
        public string Kataster { get; set; }

        [JsonProperty("dlzka_galerie")]
        public string DlzkaGalerie { get; set; }

        [JsonProperty("km_poloha_vychod")]
        public string KmPolohaVychod { get; set; }

        [JsonProperty("gps_zem_dlzka_vychod")]
        public string GPSZemDlzkaVychod { get; set; }

        [JsonProperty("gps_zem_sirka_vychod")]
        public string GPSZemSirkaVychod { get; set; }

        [JsonProperty("kraj_vychod")]
        public string KrajVychod { get; set; }

        [JsonProperty("okres_vychod")]
        public string OkresVychod { get; set; }

        [JsonProperty("obec_vychod")]
        public string ObecVychod { get; set; }

        [JsonProperty("kataster_vychod")]
        public string KatasterVychod { get; set; }

        [JsonProperty("dlzka_galerie_vychod")]
        public string DlzkaGalerieVychod { get; set; }

        [JsonProperty("poradove_cislo")]
        public string PoradoveCislo { get; set; }

        [JsonProperty("dlzka_tunela")]
        public string DlzkaTunela { get; set; }

        [JsonProperty("dlzka_hlobenej_casti_p1")]
        public string DlzkaHlobenejCastiP1 { get; set; }

        [JsonProperty("dlzka_razenej_casti")]
        public string DlzkaRazenejCasti { get; set; }

        [JsonProperty("dlzka_hlobenej_casti_p2")]
        public string DlzkaHlobenejCastiP2 { get; set; }

        [JsonProperty("umiestnenie_tunela")]
        public string UmiestnenieTunela { get; set; }

        [JsonProperty("priebeh_nivelety")]
        public string PriebehNivelety { get; set; }

        [JsonProperty("pamiatkovo_chrany_objekt")]
        public string PamiatkovoChranyObjekt { get; set; }

        [JsonProperty("popis_pamiatkovo_chrany_objekt")]
        public string PopisPamiatkovoChranyObjekt { get; set; }

        [JsonProperty("narodny_park_chko")]
        public string NarodnyParkCHKO { get; set; }

        [JsonProperty("nazov_narodneho_parku_chko")]
        public string NazovNarodnehoParkuCHKO { get; set; }

        [JsonProperty("povrch_uzemia_nad_tunelom")]
        public string PovrchUzemiaNadTunelom { get; set; }

        [JsonProperty("max_vyska_nadzemia")]
        public string MaxVyskaNadzemia { get; set; }

        [JsonProperty("popis_max_vysky")]
        public string PopisMaxVysky { get; set; }

        [JsonProperty("min_vyska_nadzemia")]
        public string MinVyskaNadzemia { get; set; }

        [JsonProperty("popis_min_vysky")]
        public string PopisMinVysky { get; set; }

        [JsonProperty("geologicke_pomery")]
        public string GeologickePomery { get; set; }

        [JsonProperty("horske_utvar")]
        public string HorskeUtvar { get; set; }

        [JsonProperty("kolajnost")]
        public string Kolajnost { get; set; }

        [JsonProperty("trakcia_vykon")]
        public string TrakciaVykon { get; set; }

        [JsonProperty("tvar_ostenia")]
        public string TvarOstenia { get; set; }

        [JsonProperty("sposob_realizacie")]
        public string SposobRealizacie { get; set; }

        [JsonProperty("tunelovacia_metoda")]
        public string TunelovaciaMetoda { get; set; }

        [JsonProperty("pocet_kolaji")]
        public string PocetKolaji { get; set; }

        [JsonProperty("kolaj_c1_ni")]
        public string KolajC1NI { get; set; }

        [JsonProperty("kolaj_c2_ni")]
        public string KolajC2NI { get; set; }

        [JsonProperty("kolaj_c3_ni")]
        public string KolajC3NI { get; set; }

        [JsonProperty("cislo_uctovneho_okruhu")]
        public string CisloUctovnehoOkruhu { get; set; }

        [JsonProperty("cislo_im")]
        public string CisloIM { get; set; }

        [JsonProperty("cislo_technickeho_miesta_objektu")]
        public string CisloTechnickehoMiestaObjektu { get; set; }

        [JsonProperty("hodnota_tunela_nadobudacia")]
        public string HodnotaTunelaNadobudacia { get; set; }

        [JsonProperty("dokoncenie_tunela")]
        public string DokoncenieTunela { get; set; }

        [JsonProperty("vek_tunela")]
        public string VekTunela { get; set; }

        [JsonProperty("hlavna_prehlidka")]
        public string HlavnaPrehliadka { get; set; }

        [JsonProperty("meranie_stp")]
        public string MeranieSTP { get; set; }

        [JsonProperty("druh_dokumentacie")]
        public string DruhDokumentacie { get; set; }

        [JsonProperty("ulozenie_dokumentacie")]
        public string UlozenieDokumentacie { get; set; }

        [JsonProperty("pocet_udrziavacich_jednotiek")]
        public string PocetUdrziavacichJednotiek { get; set; }

        [JsonProperty("klasifikacia_celkovho_stavu")]
        public string KlasifikaciaCelkovhoStavu { get; set; }

        [JsonProperty("popis_stavu_tunela")]
        public string PopisStavuTunela { get; set; }

        [JsonProperty("poznamky")]
        public string Poznamky { get; set; }
    }
}
