示例#1
0
        /// <summary>
        /// Kreira novi prekršaj i šalje nalog pauku
        /// </summary>
        /// <param name="grad">grad obrade</param>
        /// <param name="zahtjev">id zahtjeva koji se obrađuje</param>
        /// <param name="idOpisa">id opisa prekršaja</param>
        /// <param name="registracija">registracija</param>
        /// <param name="adresa">adresa prekršaja</param>
        /// <param name="drzava">država vozila prekršitelja</param>
        /// <param name="obavijest">true obavijest/false upozorenje</param>
        /// <param name="nalogPauku">true ide nalog pauku false ne ide</param>
        /// <returns>id novog prekršaja</returns>
        public int DodajPrekrsaj(string grad, _PrijavaPauk zahtjev, int idOpisa, string registracija, string adresa, string drzava, bool obavijest, bool nalogPauku)
        {
            try
            {
                decimal kazna = 0;

                try
                {
                    kazna = Zakoni.DohvatiZakonS(grad, idOpisa, false, idAplikacije).Kazna;
                }
                catch (Exception)
                {
                }

                //todo lisice
                int id = Zahtjev.DodajPrekrsaj(grad, zahtjev, idOpisa, kazna, registracija, adresa, drzava, obavijest, nalogPauku, false, 1, idAplikacije);
                try
                {
                    Sustav.SpremiAkciju(grad, zahtjev.IDOdobravatelja.Value, 103, "ID Zahtjeva: " + zahtjev.IDPrijave + ", ID Prekrsaja: " + id + ", Reg.: " + zahtjev.Registracija, 1, idAplikacije);
                }
                catch
                {
                }

                return(id);
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "DODAJ PREKRSAJ - IZNOS KAZNE");
                return(-1);
            }
        }
示例#2
0
        public bool Odbij(string grad, int idZahtjeva, int idDjelatnika, string razlog)
        {
            try
            {
                Sustav.SpremiAkciju(grad, idDjelatnika, 222, "ID Zahtjeva: " + idZahtjeva, 2, idAplikacije);
            }
            catch
            {
            }

            return(Zahtjev.Zatvori(grad, idZahtjeva, 2, idDjelatnika, null, null, razlog, 1, idAplikacije));
        }
示例#3
0
        public static bool?IskoristenaUplatnicaRacun(string grad, string poziv, int idAplikacije)
        {
            try
            {
                using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                {
                    if (db.RACUNIs.Any(i => i.PozivNaBroj == poziv))
                    {
                        return(true);
                    }

                    Sustav.SpremiAkciju(grad, -1, 106, "RAČUN - Broj uplatnice: " + poziv, 2, idAplikacije);
                    return(false);
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "POZIV NA BROJ, poziv: " + poziv);
                return(null);
            }
        }
示例#4
0
        public static bool UkljuciAutoPilot(string grad, bool ukljucen, int idAplikacije)
        {
            try
            {
                using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                {
                    PostavkePrograma pp = db.PostavkeProgramas.First();
                    pp.AutoPilot = ukljucen;
                    if (!ukljucen)
                    {
                        pp.AutoPilotOff = DateTime.Now;
                    }
                    db.SubmitChanges();

                    Sustav.SpremiAkciju(grad, -1, 86, "Ukljucen: " + ukljucen, 2, idAplikacije);
                    return(pp.AutoPilot);
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "UKLJUČI AUTO PILOTA");
                return(false);
            }
        }
示例#5
0
        /*:: AKCIJE KORISNIKA ::*/

        #region AKCIJE KORISNIKA

        public void SpremiAkciju(string grad, int idKorisnika, int idAkcije, string napomena)
        {
            Sustav.SpremiAkciju(grad, idKorisnika, idAkcije, napomena, 1, idAplikacije);
        }
示例#6
0
        public static int NoviPrekrsaj(string grad, _NoviPrekrsaj prekrsaj, int idRedarstva, int idAplikacije)
        {
            try
            {
                using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                {
                    int idPredloska = prekrsaj.IDPredloska;

                    if (idPredloska <= 0)
                    {
                        idPredloska = db.PredlosciIspisas.First(i => i.IDRedarstva == idRedarstva && i.Kaznjava == prekrsaj.ZakonskaSankcija).IDPRedloska;
                    }

                    decimal kazna = prekrsaj.Kazna;

                    if (kazna <= 0)
                    {
                        kazna = Zakoni.IznosKazneS(grad, prekrsaj.IDOpisaPrekrsaja, idAplikacije);
                    }

                    Prekrsaji pre = new Prekrsaji();

                    pre.IDLokacije             = prekrsaj.IDLokacije;
                    pre.IDSkracenogOpisa       = prekrsaj.IDOpisaPrekrsaja; // s vremenom ukloniti - todo!
                    pre.IDNacinaPozicioniranja = prekrsaj.IDPozicioniranja;
                    pre.IDPredloskaIspisa      = idPredloska;
                    pre.IDDjelatnika           = prekrsaj.IDDjelatnika;
                    pre.Vrijeme = prekrsaj.Vrijeme;
                    pre.RegistracijskaPlocica = prekrsaj.Registracija.Replace("-", "").Replace(" ", "");
                    pre.BrojUpozorenja        = prekrsaj.BrojUpozorenja;
                    pre.Lat           = prekrsaj.Latitude;
                    pre.Long          = prekrsaj.Longitude;
                    pre.Adresa        = prekrsaj.Adresa;
                    pre.Kazna         = kazna;
                    pre.PozivNaBroj   = prekrsaj.PozivNaBroj;
                    pre.NalogPauka    = prekrsaj.Nalog;
                    pre.IDNaloga      = null;
                    pre.KraticaDrzave = prekrsaj.Drzava;

                    pre.Test      = false;
                    pre.Poslano   = false;
                    pre.Zakljucan = false;
                    pre.IDRacuna  = null;

                    pre.StatusOcitanja   = (byte?)prekrsaj.StatusOcitanja;
                    pre.Ocitanja         = prekrsaj.Ocitanja;
                    pre.TrajanjePostupka = prekrsaj.Trajanje;
                    pre.IDRedarstva      = idRedarstva;

                    try
                    {
                        if (prekrsaj.IDZakona == 0)
                        {
                            pre.IDOpisaZakona =
                                db.OpisiPrekrsajas.First(i => i.IDOpisa == prekrsaj.IDOpisaPrekrsaja).IDNovog;
                        }
                        else
                        {
                            pre.IDOpisaZakona = prekrsaj.IDZakona;
                        }
                    }
                    catch (Exception ex)
                    {
                        Sustav.SpremiGresku(grad, ex, idAplikacije, "NOVI PREKRSAJ - unificirani zakon");
                    }

                    string napomena =
                        string.Format("IDLokacije: {0}, IDOpisa: {1}, Registracija: {2}, Broj: {3}, Adresa: {4}",
                                      prekrsaj.IDLokacije, prekrsaj.IDOpisaPrekrsaja, prekrsaj.Registracija, prekrsaj.BrojUpozorenja, prekrsaj.Adresa);

                    Sustav.SpremiAkciju(grad, prekrsaj.IDDjelatnika, 92, napomena, 1, idAplikacije);

                    db.Prekrsajis.InsertOnSubmit(pre);
                    db.SubmitChanges();

                    //todo - trenutno je samo za lokacije, kad zavrsi testno razdoblje to makni
                    if (grad == "Lokacije")
                    {
                        if (pre.IDPredloskaIspisa == 15 || pre.IDPredloskaIspisa == 2)
                        {
                            Vpp._VppPrijenos prijenos = new Vpp._VppPrijenos(pre.IDPrekrsaja, 1, pre.Kazna, pre.PozivNaBroj, "Obavijest");
                            bool             ok       = Vpp.DodajVPP(grad, prijenos, idAplikacije);

                            if (ok)
                            {
                                pre.Poslano = true;
                                db.SubmitChanges();
                            }
                        }
                    }

                    if (db.PredlosciIspisas.First(i => i.IDPRedloska == idPredloska).NazivPredloska == "OBAVIJEST")
                    {
                        new Thread(() => RentaCar.PostojiRCVozilo(grad, pre.RegistracijskaPlocica, pre.IDLokacije, 60000, idAplikacije)).Start();
                    }

                    return(pre.IDPrekrsaja);
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "NOVI PREKRSAJ");
                return(-1);
            }
        }
示例#7
0
 public void DodjeliPauku(string grad, int idNaloga, int idVozila)
 {
     Nalog.Dodjeli(grad, idNaloga, idVozila, idAplikacije);
     Sustav.SpremiAkciju(grad, -1, 85, "IDVozila: " + idVozila, 2, idAplikacije);
 }