コード例 #1
0
        static _NoviPrekrsaj KreirajNoviPrekrsaj(__Prekrsaj p)
        {
            _NoviPrekrsaj ret = null;

            try
            {
                int statusOcitanja = 0;
                switch (p.StatusOcitanja)
                {
                case "I":
                    statusOcitanja = 3;
                    break;

                case "O":
                    statusOcitanja = 1;
                    break;

                case "R":
                    statusOcitanja = 2;
                    break;
                }
                ret = new _NoviPrekrsaj(0, p.IDLokacije, (int)p.IDOpisaPrekrsaja, p.IDOpisaZakona == null ? 0 : (int)p.IDOpisaZakona, p.Lokacija != null? p.Lokacija.IDPozicioniranja:0, 0,
                                        p.IDDjelatnika, p.DatumVrijeme, p.Registracija, "", p.Latitude, p.Longitude, p.Adresa, 0, p.BrojDokumenta, p.Nalog != null, p.Nalog != null ? (int)p.Nalog.IDNaloga : 0,
                                        p.Drzava, statusOcitanja, "", p.Trajanje != null ? (int)p.Trajanje : 0);
                ret.ZakonskaSankcija = p.ZakonskaSankcija;
            } catch (Exception ex)
            {
                SpremiGresku("", ex, "KREIRAJ NOVI PREKRSAJ");
            }
            return(ret);
        }
コード例 #2
0
 public static string SpremiPrekrsaj(string grad, __Prekrsaj prekrsaj, List <byte[]> slike, out int idLokacije)
 {
     idLokacije = -1;
     try
     {
         if (prekrsaj.Lokacija != null)
         {
             idLokacije = prekrsaj.IDLokacije = SpremiLokaciju(grad, prekrsaj.Lokacija);
         }
         int           idp = -1;
         _NoviPrekrsaj np  = KreirajNoviPrekrsaj(prekrsaj);
         if (prekrsaj.IDLokacije > 0 && np != null)
         {
             idp = Mobile.NoviPrekrsaj(grad, np, idRedarstva, idAplikacije);
         }
         if (idp > 0)
         {
             Prekrsaj.DodajSliku(grad, np.IDLokacije, slike, idRedarstva, idAplikacije);
             return(Ispis.Predlozak(grad, np.IDLokacije, 1, 0, idAplikacije));
         }
     }catch (Exception ex)
     {
         SpremiGresku(grad, ex, "SPREMI PREKRSAJ");
     }
     return("");
 }
コード例 #3
0
ファイル: Mobile.cs プロジェクト: nrugas/pgservisidockertest
        /*:: PREKRŠAJ ::*/

        public static bool SpremiPrekrsajNovo(string grad, _Lokacija lokacija, ref _NoviPrekrsaj prekrsaj, int idRedarstva, int idAplikacije)
        {
            try
            {
                using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                {
                    string bu = prekrsaj.BrojUpozorenja;
                    if (db.Prekrsajis.Any(i => i.BrojUpozorenja == bu))
                    {
                        prekrsaj.IDPrekrsaja = db.Prekrsajis.First(i => i.BrojUpozorenja == bu).IDPrekrsaja;
                        prekrsaj.IDLokacije  = db.Prekrsajis.First(i => i.BrojUpozorenja == bu).IDLokacije;
                        return(true);
                    }

                    Lokacije lok = new Lokacije();

                    lok.Lat  = lokacija.Latitude;
                    lok.Long = lokacija.Longitude;
                    lok.RegistracijskaPlocica  = lokacija.Registracija;
                    lok.DatumVrijeme           = lokacija.DatumVrijeme.ToLocalTime();
                    lok.IDDjelatnika           = lokacija.IDDjelatnika;
                    lok.IDNacinaPozicioniranja = lokacija.IDPozicioniranja;
                    lok.IDTerminala            = lokacija.IDTerminala;
                    lok.CellTowerID            = lokacija.CellTowerID;
                    lok.SignalStrength         = lokacija.SignalStrength;
                    lok.HDOP    = lokacija.HDOP;
                    lok.Brzina  = lokacija.Brzina;
                    lok.GPSAcc  = lokacija.Preciznost;
                    lok.Battery = lokacija.Baterija;
                    lok.Punjac  = lokacija.Punjac;

                    db.Lokacijes.InsertOnSubmit(lok);
                    db.SubmitChanges();

                    prekrsaj.IDLokacije = lok.IDLokacije;

                    int id = NoviPrekrsaj(grad, prekrsaj, idRedarstva, idAplikacije);

                    prekrsaj.IDPrekrsaja = id;

                    if (id != -1)
                    {
                        return(true);
                    }

                    return(false);
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "SPREMI LOKACIJU i PREKRSAJ");
                return(false);
            }
        }
コード例 #4
0
ファイル: Mobile.cs プロジェクト: nrugas/pgservisidockertest
        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);
            }
        }