コード例 #1
0
        public static bool RegistrirajPP(string grad, _PoslovniProstor pos, int idAplikacije)
        {
            try
            {
                if (pos.IDFisklaizacije == null)
                {
                    return(false);
                }

                bool demo = grad == "Lokacije";

                using (FiskalServiceClient sc = new FiskalServiceClient())
                {
                    bool ok = sc.PrijaviPoslovniProstor(pos.IDFisklaizacije.Value, demo);
                    sc.Close();

                    using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                    {
                        POSLOVNI_PROSTOR poslpro = db.POSLOVNI_PROSTORs.First(i => i.IDPoslovnogProstora == pos.IDPoslovnogProstora);
                        poslpro.DatumPrimjene = DateTime.Now;
                        db.SubmitChanges();
                    }

                    return(ok);
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "REGISTRIRAJ POSLOVNI PROSTOR");
                return(false);
            }
        }
コード例 #2
0
        public static void Fiskaliziraj(string grad, int idRacuna, int idRedarstva, int idAplikacije)
        {
            try
            {
                _Racun racun = Naplata.DohvatiRacunLight(grad, idRacuna, idAplikacije);

                _FiskalOdgovor fo;

                _PoslovniProstor pp = PoslovniProstor.DohvatiPoslovniProstor(grad, idRedarstva, idAplikacije);

                if (pp.IDFisklaizacije == null)
                {
                    return;
                }

                bool demo = grad == "Lokacije";

                using (FiskalServiceClient sc = new FiskalServiceClient())
                {
                    List <_RacunPDV> obrpdv = new List <_RacunPDV>();
                    obrpdv.Add(new _RacunPDV {
                        Iznos = racun.PDV, Osnovica = racun.Osnovica, Stopa = racun.PDVPosto
                    });

                    string vpk = Naplata.VrstaPlacanjaKratica(grad, racun.IDVrste, idAplikacije);

                    fo = sc.FiskalizirajRacunSVE(pp.IDVlasnikaFiskal.Value, pp.IDFisklaizacije.Value, racun.Blagajna, racun.Godina, racun.RedniBroj, racun.OIB, racun.DatumVrijeme,
                                                 racun.Ukupno, obrpdv, new _RacunPDV(), 0, Convert.ToChar(vpk), demo, false);

                    sc.Close();
                }

                if (fo != null)
                {
                    using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                    {
                        RACUNI r = db.RACUNIs.First(i => i.IDRacuna == idRacuna);

                        r.JIR  = fo.Jir;
                        r.ZKI  = fo.Zki;
                        r.UUID = fo.Uuid;

                        db.SubmitChanges();
                    }
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "FISKALIZACIJA RAČUNA");
            }
        }
コード例 #3
0
        public string Naplati(string grad, int idNaloga, int idStatusa, int idDjelatnika, int idVrstePlacanja, _Osoba osoba, decimal iznos, string poziv, out int idRacuna)
        {
            try
            {
                string           vrsta = Naplata.VrstaPlacanja(grad, idVrstePlacanja, idAplikacije);
                _PoslovniProstor pp    = PoslovniProstor.DohvatiPoslovniProstor(grad, 2, idAplikacije);
                _Djelatnik       djel  = Korisnici.DohvatiDjelatnika(grad, idDjelatnika, idAplikacije);

                decimal osnovica = Math.Round(iznos / ((decimal)(100 + pp.PDV) / 100), 2);
                decimal pdv      = Math.Round(osnovica * pp.PDV / 100, 2);
                osnovica = iznos - pdv;
                decimal ukupno = iznos;

                List <_Stavka> stavke = new List <_Stavka>();
                using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                {
                    RACUNI_STAVKE_OPI st   = db.RACUNI_STAVKE_OPIs.First(i => i.IDStatusa == 3 && i.IDRedarstva == 2 && i.Obrisan == false);
                    _Stavka           nova = new _Stavka(0, 0, st.IDOpisaStavke, st.NazivOpisaStavke, st.Lezarina, 1, iznos, pdv, osnovica, ukupno, pp.PDV, "");
                    stavke.Add(nova);

                    List <_Osoba> osobe = new List <_Osoba>();

                    if (!string.IsNullOrEmpty(osoba.Ime) || !string.IsNullOrEmpty(osoba.Prezime) || !string.IsNullOrEmpty(osoba.BrojDokumenta) || !string.IsNullOrEmpty(osoba.OIB) || !string.IsNullOrEmpty(osoba.Napomena) || !string.IsNullOrEmpty(osoba.Mjesto) || !string.IsNullOrEmpty(osoba.Posta) || !string.IsNullOrEmpty(osoba.Ulica))
                    {
                        osobe.Add(osoba);
                    }

                    string oznakaPP;
                    int    blagajna = Naplata.Blagajna(grad, idNaloga, out oznakaPP, idAplikacije); //definirano na vozilu

                    if (string.IsNullOrEmpty(oznakaPP))
                    {
                        oznakaPP = pp.Oznaka;
                    }

                    _Racun novi = new _Racun(0, idNaloga, null, idVrstePlacanja, null, null, vrsta, "", idDjelatnika, djel.ImeNaRacunu, 2, DateTime.Now, 0, 0, pdv, osnovica, ukupno,
                                             pp.PDV, djel.OIB ?? "", blagajna == -1 ? 1 : blagajna, "", false, "", "", true, "", "", "", DateTime.Now, oznakaPP, poziv, "", "", "", false, false, false, false, "", stavke, osobe);

                    string brrac, pozivna;
                    return(Naplata.NaplatiPauk(grad, novi, idStatusa, out idRacuna, out brrac, out pozivna, idAplikacije));
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "NAPLATA S UREĐAJA");
                idRacuna = -1;
                return("");
            }
        }
コード例 #4
0
        public string Naplati(string grad, int idKorisnika, int kolicina)
        {
            try
            {
                int idVrstePlacanja = 1;

                string           vrsta = Naplata.VrstaPlacanja(grad, idVrstePlacanja, idAplikacije);
                _PoslovniProstor pp    = PoslovniProstor.DohvatiPoslovniProstor(grad, 4, idAplikacije);

                if (pp == null)
                {
                    return("Niste definirali poslovni prostor!");
                }

                _Djelatnik djel = Korisnici.DohvatiDjelatnika(grad, idKorisnika, idAplikacije);

                using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                {
                    List <_Stavka>    stavke = new List <_Stavka>();
                    RACUNI_STAVKE_OPI st     = db.RACUNI_STAVKE_OPIs.First(i => i.IDRedarstva == 4 && i.Obrisan == false && i.IDStatusa == null);

                    decimal ukupno = (decimal)(kolicina * st.Iznos);
                    _Stavka nova   = new _Stavka(0, 0, st.IDOpisaStavke, st.NazivOpisaStavke, st.Lezarina, kolicina, (decimal)st.Iznos, 0, 0, ukupno, pp.PDV, "");
                    stavke.Add(nova);

                    List <_Osoba> osobe = new List <_Osoba>();

                    int blagajna = 1;

                    _Racun novi = new _Racun(0, -1, null, idVrstePlacanja, null, null, vrsta, "", idKorisnika, djel.ImeNaRacunu, 4, DateTime.Now, 0, 0, 0, 0, ukupno,
                                             pp.PDV, djel.OIB ?? "", blagajna, "", false, "", "", true, "", "", "", DateTime.Now, pp.Oznaka, "", "", "", "", false, false, false, false, "", stavke, osobe);

                    return(Naplata.NaplatiParking(grad, novi, false, idAplikacije));
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "NAPLATA PARKINGA S UREĐAJA");
                return("");
            }
        }
コード例 #5
0
 public bool RegistrirajPoslovniProstor(string grad, _PoslovniProstor prostor)
 {
     return(Fiskalizacija.RegistrirajPP(grad, prostor, idAplikacije));
 }
コード例 #6
0
 public bool?IzmjeniPoslovniProstor(string grad, _PoslovniProstor prostor)
 {
     return(PoslovniProstor.IzmjeniPoslovniProstor(grad, prostor, idAplikacije));
 }
コード例 #7
0
        public static bool?IzmjeniPoslovniProstor(string grad, _PoslovniProstor prostor, int idAplikacije)
        {
            try
            {
                using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                {
                    POSLOVNI_PROSTOR pp;

                    if (db.POSLOVNI_PROSTORs.Any(i => i.IDRedarstva == prostor.IDRedarstva))
                    {
                        pp = db.POSLOVNI_PROSTORs.First(i => i.IDRedarstva == prostor.IDRedarstva);
                    }
                    else
                    {
                        pp = new POSLOVNI_PROSTOR();

                        int id = 1;

                        if (db.POSLOVNI_PROSTORs.Any())
                        {
                            id = db.POSLOVNI_PROSTORs.Max(i => i.IDRedarstva);
                        }

                        pp.IDPoslovnogProstora = id;
                        pp.IDRedarstva         = prostor.IDRedarstva;
                    }

                    pp.Naziv         = prostor.Naziv;
                    pp.Podnaslov     = prostor.Podnaslov;
                    pp.USustavu      = prostor.USustavu;
                    pp.Web           = prostor.Web;
                    pp.Email         = prostor.Email;
                    pp.Opis          = prostor.Opis;
                    pp.Ulica         = prostor.Ulica;
                    pp.Broj          = prostor.Broj;
                    pp.Dodatak       = prostor.Dodatak;
                    pp.Posta         = prostor.Posta;
                    pp.Mjesto        = prostor.Mjesto;
                    pp.Tel           = prostor.Tel;
                    pp.Fax           = prostor.Fax;
                    pp.Banka         = prostor.Banka;
                    pp.OIB           = prostor.OIB;
                    pp.Oznaka        = prostor.Oznaka ?? ""; //todo obrisi
                    pp.RadnoVrijeme  = prostor.RadnoVrijeme;
                    pp.DatumPrimjene = prostor.DatumPrimjene;
                    pp.PDV           = prostor.PDV;
                    pp.Dospijece     = prostor.Dosipijece;

                    if (!db.POSLOVNI_PROSTORs.Any(i => i.IDRedarstva == prostor.IDRedarstva))
                    {
                        prostor.IDPoslovnogProstora = pp.IDPoslovnogProstora;
                        db.POSLOVNI_PROSTORs.InsertOnSubmit(pp);
                    }

                    db.SubmitChanges();

                    int ok = Gradovi.IzmjeniUplatnicu(grad, prostor.Uplatnica, idAplikacije);

                    if (ok == -1)
                    {
                        return(null);
                    }

                    if (pp.IDFiskaliziranog != null)
                    {
                        Fiskalizacija.IzmjeniPP(grad, prostor, idAplikacije);
                    }
                    else
                    {
                        Fiskalizacija.DodajPP(grad, prostor, idAplikacije);
                    }

                    return(true);
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku("", ex, idAplikacije, "IZMJENI POSLOVNI PROSTOR");
                return(false);
            }
        }
コード例 #8
0
        public static Tuple <string, decimal, string> NaplatiParking(string grad, _Opazanje opazanje, int idStavke, int idVrstePlacanja, int kolicina, string poziv, int tipPrintera, int idAplikacije)
        {
            decimal iznos;

            try
            {
                using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                {
                    //todo zone
                    RACUNI_STAVKE_OPI st = db.RACUNI_STAVKE_OPIs.First(i => i.IDOpisaStavke == idStavke && i.IDRedarstva == 4);
                    if (st == null)
                    {
                        return(new Tuple <string, decimal, string>("", 0, "Ne postoji opis stavke računa!"));
                    }

                    iznos = (decimal)st.Iznos * kolicina;
                    bool             uplatnica;
                    string           vrsta = Naplata.VrstaPlacanja(grad, idVrstePlacanja, idAplikacije, out uplatnica);
                    _PoslovniProstor pp    = PoslovniProstor.DohvatiPoslovniProstor(grad, 4, idAplikacije);

                    if (pp == null)
                    {
                        return(new Tuple <string, decimal, string>("", 0, "Niste definirali poslovni prostor!"));
                    }

                    //provjera poziva
                    if (!string.IsNullOrEmpty(poziv))
                    {
                        Tuple <string, string> kontrola = Sustav.ProvjeraPoziva(grad, poziv, st.Iznos.Value, 4, idAplikacije);

                        if (!string.IsNullOrEmpty(kontrola.Item1))
                        {
                            return(new Tuple <string, decimal, string>("", 0, kontrola.Item1));
                        }

                        poziv = kontrola.Item2;
                    }

                    _Djelatnik djel = Korisnici.DohvatiDjelatnika(grad, (int)opazanje.IDDjelatnika, idAplikacije);

                    List <_Stavka> stavke = new List <_Stavka>();

                    decimal ukupno   = (decimal)(kolicina * st.Iznos);
                    decimal osnovica = Math.Round(ukupno / ((decimal)(100 + pp.PDV) / 100), 2);
                    decimal pdv      = Math.Round(osnovica * pp.PDV / 100, 2);

                    _Stavka nova = new _Stavka(0, 0, st.IDOpisaStavke, st.NazivOpisaStavke, st.Lezarina, kolicina, (decimal)st.Iznos, pdv, osnovica, ukupno, pp.PDV, "");
                    stavke.Add(nova);

                    int blagajna = 1;

                    _Racun novi = new _Racun(0, -1, null, idVrstePlacanja, null, null, vrsta, "", (int)opazanje.IDDjelatnika, djel.ImeNaRacunu, 4, DateTime.Now, 0, 0, pdv, osnovica, ukupno,
                                             pp.PDV, djel.OIB ?? "", blagajna, "", false, "", string.IsNullOrEmpty(opazanje.Registracija)? "":opazanje.Registracija + " (" + opazanje.Drzava + ")", true, "", "", "",
                                             DateTime.Now, pp.Oznaka, poziv, "", "", opazanje.Registracija + " (" + opazanje.Drzava + ")", false, false, false, false, "", stavke, new List <_Osoba>());

                    if (opazanje.IDOpazanja == 0)
                    {
                        return(new Tuple <string, decimal, string>(Naplata.NaplatiParking(grad, novi, uplatnica, idAplikacije, tipPrintera), iznos, ""));
                    }

                    PARKING_OPAZANJA op = db.PARKING_OPAZANJAs.First(i => i.IDOpazanja == opazanje.IDOpazanja);
                    opazanje.IDLokacije = op.IDLokacije;

                    op.IDStatusa = st.IDStatusa;
                    op.Kaznjen   = true;
                    op.Iznos     = st.Iznos;

                    opazanje.IDStatusa = st.IDStatusa;

                    //ako je naplata (0) po satu preskoči ovo
                    if (st.IDStatusa != 0)
                    {
                        // TODO izbacio jer je suvišno nakon promjene?

                        /*
                         * int idPrekrsaja = DodajPostupanje(grad, opazanje, iznos, idAplikacije);//todo iznos kazne
                         *
                         * if (idPrekrsaja == -1)
                         * {
                         *  iznos = 0;
                         *  return "";
                         * }
                         */


                        novi.IDReference = op.IDOpazanja;
                    }

                    db.SubmitChanges();

                    return(new Tuple <string, decimal, string>(Naplata.NaplatiParking(grad, novi, uplatnica, idAplikacije, tipPrintera), iznos, "")); //;Naplata.NaplatiParking(grad, novi, uplatnica, idAplikacije, tipPrintera);
                    //todo dodati record u akcije
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "NAPLATA PARKINGA");
                iznos = 0;
                return(new Tuple <string, decimal, string>("", 0, ex.Message));
            }
        }
コード例 #9
0
        public string DeblokirajVozilo(string grad, int idNaloga, int idDjelatnika, int idVrstePlacanja, _Osoba osoba, string poziv, out int idRacuna)
        {
            try
            {
                string           vrsta = Naplata.VrstaPlacanja(grad, idVrstePlacanja, idAplikacije);
                _PoslovniProstor pp    = PoslovniProstor.DohvatiPoslovniProstor(grad, 2, idAplikacije);

                _Djelatnik djel = Korisnici.DohvatiDjelatnika(grad, idDjelatnika, idAplikacije);

                List <_Stavka> stavke = new List <_Stavka>();
                using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                {
                    RACUNI_STAVKE_OPI st  = db.RACUNI_STAVKE_OPIs.First(i => i.IDStatusa == 22 && i.IDRedarstva == 2 && i.Obrisan == false);
                    RACUNI_STAVKE_OPI stl = db.RACUNI_STAVKE_OPIs.First(i => i.IDStatusa == 22 && i.IDRedarstva == 2 && i.Obrisan == false && i.Lezarina);

                    Pauk np = db.Pauks.First(i => i.IDNaloga == idNaloga);

                    int kolicina = DateTime.Today.Date.Subtract(np.DatumDeponija.Value.Date).Days;

                    decimal osnovicaD = Math.Round((decimal)(st.Iznos / ((decimal)(100 + pp.PDV) / 100)), 2);
                    decimal pdvD      = Math.Round(osnovicaD * pp.PDV / 100, 2);
                    osnovicaD = (decimal)(st.Iznos - pdvD);
                    decimal ukupnoD = (decimal)st.Iznos;

                    decimal osnovicaL = Math.Round((decimal)(stl.Iznos / ((decimal)(100 + pp.PDV) / 100)), 2) * kolicina;
                    decimal pdvL      = Math.Round(osnovicaL * pp.PDV / 100, 2);
                    osnovicaL = (decimal)(stl.Iznos * kolicina - pdvL);
                    decimal ukupnoL = (decimal)stl.Iznos * kolicina;

                    _Stavka nova  = new _Stavka(0, 0, st.IDOpisaStavke, st.NazivOpisaStavke, st.Lezarina, 1, (decimal)st.Iznos, pdvD, osnovicaD, ukupnoD, pp.PDV, "");
                    _Stavka novaL = new _Stavka(0, 0, stl.IDOpisaStavke, stl.NazivOpisaStavke, stl.Lezarina, kolicina, (decimal)stl.Iznos, pdvL, osnovicaL, ukupnoL, pp.PDV, "");

                    stavke.Add(nova);

                    if (kolicina > 0)
                    {
                        stavke.Add(novaL);
                    }

                    List <_Osoba> osobe = new List <_Osoba>();
                    osobe.Add(osoba);

                    string oznakaPP;
                    int    blagajna = Naplata.Blagajna(grad, idNaloga, out oznakaPP, idAplikacije); //definirano na vozilu
                    if (string.IsNullOrEmpty(oznakaPP))
                    {
                        oznakaPP = pp.Oznaka;
                    }

                    _Racun novi = new _Racun(0, idNaloga, null, idVrstePlacanja, null, null, vrsta, "", idDjelatnika, djel.ImeNaRacunu, 2, DateTime.Now, 0, 0, pdvD + pdvL, osnovicaD + osnovicaL, ukupnoD + ukupnoL,
                                             pp.PDV, djel.OIB ?? "", blagajna == -1 ? 1 : blagajna, "", false, "", "", true, "", "", "", DateTime.Now, oznakaPP, poziv, "", "", "", false, false, false, false, "", stavke, osobe);

                    string brrac, pozivna;
                    return(Naplata.NaplatiPauk(grad, novi, 22, out idRacuna, out brrac, out pozivna, idAplikacije));
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "NAPLATA S UREĐAJA");
                idRacuna = -1;
                return("");
            }
        }
コード例 #10
0
        public static bool IzmjeniPP(string grad, _PoslovniProstor pos, int idAplikacije)
        {
            try
            {
                int idPoste;

                using (PostavkeDataContext db = new PostavkeDataContext())
                {
                    idPoste = db.POSTEs.First(i => i.Posta == pos.Posta).IDPoste;
                }
                using (FiskalServiceClient sc = new FiskalServiceClient())
                {
                    _Vlasnik vl = new _Vlasnik
                    {
                        Id             = pos.IDVlasnikaFiskal.Value,
                        Naziv          = pos.Naziv,
                        OIB            = pos.OIB,
                        SjedisteDodKBR = pos.Dodatak,
                        SjedisteKBR    = pos.Broj,
                        SjedistePosta  = idPoste,
                        SjedisteUlica  = pos.Ulica,
                        TipOsobe       = 'P',
                        USustavuPDVa   = true //todo
                    };

                    bool Vlasnik = sc.IzmjeniVlasnika(vl);

                    if (Vlasnik)
                    {
                        FiskalizacijaSR._PoslovniProstor pp = new FiskalizacijaSR._PoslovniProstor()
                        {
                            Id              = pos.IDFisklaizacije.Value,
                            JLSNaziv        = pos.Mjesto,
                            KBR             = pos.Broj,
                            Naziv           = pos.Naziv,
                            NazivRed1       = pos.Podnaslov,
                            NazivRed2       = "",
                            DodKBR          = pos.Dodatak,
                            OznakaNaRacunu  = pos.Oznaka,
                            Posta           = idPoste,
                            Ulica           = pos.Ulica,
                            Vlasnik         = pos.IDVlasnikaFiskal.Value,
                            SljednostRacuna = "P",
                            Zatvoren        = ""
                        };

                        sc.IzmjeniPoslovniProstor(pp);

                        _RadnoVrijeme rv = new _RadnoVrijeme
                        {
                            PoslovniProstor = pos.IDFisklaizacije.Value,
                            Opis            = pos.RadnoVrijeme,
                            PocetakPrimjene = DateTime.Now,
                            Zatvaranje      = "",
                            Pon             = "",
                            Uto             = "",
                            Sri             = "",
                            Cet             = "",
                            Pet             = "",
                            Sub             = "",
                            Ned             = "",
                            Praznik         = "",
                            Prijavljen      = false
                        };

                        bool idrv = sc.IzmjeniRadnoVrijeme(rv);
                    }
                    else
                    {
                        sc.Close();
                        return(false);
                    }

                    sc.Close();
                    return(true);
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "REGISTRIRAJ POSLOVNI PROSTOR - IZMJENA");
                return(false);
            }
        }
コード例 #11
0
        /*:: POSLOVNI PROSTOR ::*/

        public static bool DodajPP(string grad, _PoslovniProstor pos, int idAplikacije)
        {
            try
            {
                int idPoste;

                using (PostavkeDataContext db = new PostavkeDataContext())
                {
                    idPoste = db.POSTEs.First(i => i.Posta == pos.Posta).IDPoste;
                }

                using (FiskalServiceClient sc = new FiskalServiceClient())
                {
                    _Vlasnik vl = new _Vlasnik()
                    {
                        Id             = pos.IDVlasnikaFiskal ?? 0,
                        Naziv          = pos.Naziv,
                        OIB            = pos.OIB,
                        SjedisteDodKBR = pos.Dodatak,
                        SjedisteKBR    = pos.Broj,
                        SjedistePosta  = idPoste,
                        SjedisteUlica  = pos.Ulica,
                        TipOsobe       = 'P',
                        USustavuPDVa   = true //todo
                    };

                    int idVlasnika = pos.IDVlasnikaFiskal == null?sc.DodajVlasnika(vl) : pos.IDVlasnikaFiskal.Value;

                    if (idVlasnika == -1)
                    {
                        return(false);
                    }

                    FiskalizacijaSR._PoslovniProstor pp = new FiskalizacijaSR._PoslovniProstor
                    {
                        Id              = -1,
                        JLSNaziv        = pos.Mjesto,
                        KBR             = pos.Broj,
                        Naziv           = pos.Naziv,
                        NazivRed1       = pos.Podnaslov,
                        NazivRed2       = "",
                        DodKBR          = pos.Dodatak,
                        OznakaNaRacunu  = pos.Oznaka,
                        Posta           = idPoste,
                        Ulica           = pos.Ulica,
                        Vlasnik         = idVlasnika,
                        SljednostRacuna = "P",
                        Zatvoren        = ""
                    };

                    int idpp = sc.DodajPoslovniProstor(pp);

                    if (idpp != -1)
                    {
                        _RadnoVrijeme rv = new _RadnoVrijeme()
                        {
                            PoslovniProstor = idpp,
                            Opis            = pos.RadnoVrijeme,
                            PocetakPrimjene = DateTime.Now
                        };

                        int idrv = sc.DodajRadnoVrijeme(rv);
                    }

                    sc.Close();

                    using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                    {
                        POSLOVNI_PROSTOR poslpro = db.POSLOVNI_PROSTORs.First(i => i.IDPoslovnogProstora == pos.IDPoslovnogProstora);

                        poslpro.IDVlasnikaFiskal = idVlasnika;
                        poslpro.IDFiskaliziranog = idpp == -1 ? (int?)null : idpp;

                        db.SubmitChanges();
                    }

                    return(true);
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "REGISTRIRAJ POSLOVNI PROSTOR");
                return(false);
            }
        }