public static bool PromijeniRegistraciju(string grad, int idPrekrsaja, int idVppVanjsko, string registracija, string kratica, int idMarke, int idAplikacije) { try { using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije))) { Prekrsaji p = db.Prekrsajis.First(s => s.IDPrekrsaja == idPrekrsaja); string stara = p.RegistracijskaPlocica; bool ok = Prekrsaj.Registracija(grad, idPrekrsaja, registracija, kratica, false, idAplikacije); if (!ok) { return(false); } VppVanjskoPostupci vppvp = db.VppVanjskoPostupcis.First(i => i.IDVanjskoPostupci == idVppVanjsko); vppvp.RegistracijaOK = true; vppvp.IDStatusaVP = 2; vppvp.IDMarkeVozila = idMarke; db.SubmitChanges(); return(SpremiAkcijuPostupanja(grad, idVppVanjsko, "Prekontrolirana registracija", "Stara registracija: " + stara, idAplikacije)); } } catch (Exception ex) { Sustav.SpremiGresku(grad, ex, idAplikacije, "PROMJENI REGISTRACIJU"); return(false); } }
public string IspisZahtjeva(string grad, int idLokacije, string broj, int idAplikacije) { try { using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije))) { Prekrsaji p = db.Prekrsajis.First(i => i.IDLokacije == idLokacije); if (!string.IsNullOrEmpty(broj)) { p.BrojUpozorenja = broj; p.PozivNaBroj = broj; db.SubmitChanges(); } string ispis; Ispis.IspisPredloska(grad, ObavijestOPrekrsaju(Prekrsaj.DetaljiPrekrsaja(grad, idLokacije, idAplikacije)), 1, p.IDPredloskaIspisa.Value, 0, out ispis, string.IsNullOrEmpty(broj), idAplikacije); return(ispis); } } catch (Exception ex) { Sustav.SpremiGresku(grad, ex, idAplikacije, "ZAHTJEVI"); return(null); } }
private void buttonOtvori_Click(object sender, EventArgs e) { if (!(Prekrsaji.SelectedItem == null && PrivredniPrestupi.SelectedItem == null)) { if (Prekrsaji.SelectedItem != null) { string item = Prekrsaji.SelectedItem.ToString(); char[] niz = new char[1]; niz[0] = ':'; string[] items = item.Split(niz); Prekrsaj prek = new Prekrsaj(); PrivredniPrestup prekPr = new PrivredniPrestup(); Prekrsaji.ClearSelected(); if (prek.ucitaj(items[0])) { Prestupi form = new Prestupi(prek, this); form.Show(); } } else if (PrivredniPrestupi.SelectedItem != null) { string item = PrivredniPrestupi.SelectedItem.ToString(); char[] niz = new char[1]; niz[0] = ':'; string[] items = item.Split(niz); PrivredniPrestup prekPr = new PrivredniPrestup(); PrivredniPrestupi.ClearSelected(); if (prekPr.ucitaj(items[0])) { Prestupi form = new Prestupi(prekPr, this); form.Show(); } } } else { MessageBox.Show("Morate selektovati prestup."); } }
public static bool DodajNalog(string grad, int idPrekrsaja, int idNaloga, _PrijavaPauk zahtjev, bool lisice, int idAplikacije) { try { using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije))) { VozilaPauka vp = db.VozilaPaukas.First(i => i.IDVozila == zahtjev.IDPrijavitelja); Prekrsaji pre = db.Prekrsajis.First(i => i.IDPrekrsaja == idPrekrsaja); pre.IDNaloga = idNaloga; pre.NalogPauka = true; db.SubmitChanges(); NaloziPauku nal = new NaloziPauku(); nal.IDNaloga = idNaloga; //todo - ako obradjuje lisice / obradjuje nalog if (vp != null) { if (vp.ObradjujeNalog) { nal.IDStatusa = 8; nal.IDVozila = zahtjev.IDPrijavitelja; nal.Redoslijed = 1; } else { nal.IDStatusa = 0; nal.IDVozila = null; nal.Redoslijed = 0; } } else { nal.IDStatusa = 0; nal.IDVozila = null; nal.Redoslijed = 0; } nal.NalogZatvoren = false; nal.DatumNaloga = zahtjev.DatumVrijeme; nal.StornoRedara = false; nal.IDRazloga = 0; nal.Lisice = lisice; db.NaloziPaukus.InsertOnSubmit(nal); db.SubmitChanges(); Pauk pau = new Pauk(); pau.IDNaloga = idNaloga; if (vp != null) { pau.Status = vp.ObradjujeNalog ? 8 : 0; } else { pau.Status = 0; } pau.NalogZatvoren = false; pau.DatumNaloga = zahtjev.DatumVrijeme; pau.StornoRedara = false; db.Pauks.InsertOnSubmit(pau); db.SubmitChanges(); if (vp.ObradjujeNalog) { Redoslijed(grad, zahtjev.IDPrijavitelja.Value, idNaloga, idAplikacije); } Nalog.SpremiPovijest(grad, idNaloga, zahtjev.IDPrijavitelja, 0, true, idAplikacije); //novi if (vp.ObradjujeNalog) { Nalog.SpremiPovijest(grad, idNaloga, zahtjev.IDPrijavitelja, 8, true, idAplikacije); //dodijeljen } new Thread(() => MailLista.PosaljiNaredbu(grad, idNaloga, idAplikacije)).Start(); return(true); } } catch (Exception ex) { Sustav.SpremiGresku(grad, ex, idAplikacije, "DODAJ NALOG I DODIJELI"); return(false); } }
public static int DodajPrekrsaj(string grad, _PrijavaPauk zahtjev, int idOpisa, decimal kazna, string registracija, string adresa, string drzava, bool kaznjava, bool nalogPauku, bool lisice, int idRedarstva, int idAplikacije) { try { using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije))) { if (db.Zahtjevis.First(i => i.IDPrijave == zahtjev.IDPrijave).IDStatusa == 4) { //storniran od strane pauka return(-2); } if (db.Prekrsajis.Any(i => i.IDLokacije == zahtjev.IDLokacije && i.Test == false)) { return(db.Prekrsajis.First(i => i.IDLokacije == zahtjev.IDLokacije).IDPrekrsaja); } string brojUp = Prekrsaj.GenerirajPozivNaBroj(grad, kaznjava, zahtjev.DatumVrijeme, kazna, idAplikacije); //int idPredloska = obavijest ? Prekrsaj.IDPredloskaObavijesti(grad, idAplikacije) : Prekrsaj.IDPredloskaUpozorenja(grad, idAplikacije); //todo ovisno o redarstvu i kaznjava (obavijest) i pauk int idPredloska = db.PredlosciIspisas.First(i => i.IDRedarstva == idRedarstva && i.Pauk && i.Kaznjava == kaznjava).IDPRedloska; Zahtjevi z = db.Zahtjevis.First(i => i.IDPrijave == zahtjev.IDPrijave); #region PREKRSAJ Prekrsaji prek = new Prekrsaji(); prek.IDLokacije = zahtjev.IDLokacije; prek.IDSkracenogOpisa = idOpisa; prek.IDDjelatnika = zahtjev.IDOdobravatelja; prek.Vrijeme = zahtjev.DatumVrijeme; prek.RegistracijskaPlocica = registracija.Replace(" ", "").Replace("-", "").ToUpper(); prek.BrojUpozorenja = brojUp; prek.Lat = zahtjev.Lat; prek.Long = zahtjev.Lng; prek.IDNacinaPozicioniranja = 3; prek.Adresa = adresa; prek.Kazna = kazna; prek.IDPredloskaIspisa = idPredloska; prek.PozivNaBroj = brojUp; prek.Test = false; prek.Poslano = false; prek.Status = false; prek.Napomena = null; prek.Tekst = null; prek.GMapsUlica = null; prek.NalogPauka = nalogPauku; prek.IDNaloga = 0; prek.Zakljucan = false; prek.IDRacuna = null; //todo obrisi //prek.IDRedarNaplate = null; //prek.IDVrstaPlacanja = null; //prek.Placeno = false; //prek.DatumPlacanja = null; //prek.PlacanjePreneseno = false; prek.KraticaDrzave = drzava; prek.StatusOcitanja = z.TipOcitanja; prek.Ocitanja = z.Ocitanja; prek.TrajanjePostupka = z.Trajanje; prek.Rucno = true; prek.Zahtjev = true; prek.IDRedarstva = idRedarstva; prek.IDOpisaZakona = Zakoni.DohvatiIDNovogZakona(grad, prek.IDSkracenogOpisa, idAplikacije); db.Prekrsajis.InsertOnSubmit(prek); db.SubmitChanges(); #endregion Lokacije lok = db.Lokacijes.First(i => i.IDLokacije == zahtjev.IDLokacije); lok.IDDjelatnika = zahtjev.IDOdobravatelja; db.SubmitChanges(); //todo - trenutno je samo za lokacije, kad zavrsi testno razdoblje to makni if (grad == "Lokacije") { if (prek.IDPredloskaIspisa == 15 || prek.IDPredloskaIspisa == 2) { Vpp._VppPrijenos prekrsaj = new Vpp._VppPrijenos(prek.IDPrekrsaja, 1, prek.Kazna, prek.PozivNaBroj, "Obavijest"); bool ok = Vpp.DodajVPP(grad, prekrsaj, idAplikacije); if (ok) { prek.Poslano = true; db.SubmitChanges(); } } } if (nalogPauku) { bool ok = KreirajNalog(grad, prek.IDPrekrsaja, zahtjev.IDLokacije, zahtjev, lisice, idRedarstva, idAplikacije); if (!ok) { prek.Test = true; db.SubmitChanges(); return(-1); } } else { //todo ako nije nalog pauku razlikovati odobreno jer ce drasku doci odobreno ali bez naloga pauku! Zatvori(grad, zahtjev.IDPrijave, 3, zahtjev.IDOdobravatelja.Value, null, prek.IDPrekrsaja, "ODOBRENO", idRedarstva, idAplikacije); } if (kaznjava) { new Thread(() => RentaCar.PostojiRCVozilo(grad, prek.RegistracijskaPlocica, prek.IDLokacije, 0, idAplikacije)).Start(); } return(prek.IDPrekrsaja); } } catch (Exception ex) { Sustav.SpremiGresku(grad, ex, idAplikacije, "DODAJ PREKRÅ AJ"); return(-1); } }
public static int PosaljiNalogPauku(string grad, int idPrekrsaja, DateTime datum, bool lisice, int idAplikacije) { try { using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije))) { int id = db.Pauks.Any() ? db.Pauks.Max(i => i.IDNaloga) + 1 : 1; #region PAUK Pauk pauk = new Pauk(); pauk.IDNaloga = id; pauk.Status = 0; pauk.NalogZatvoren = false; pauk.DatumNaloga = datum; // todo now ili isto vrijeme kao i prekrsaj? pauk.DatumZaprimanja = null; pauk.DatumPodizanja = null; pauk.DatumDeponija = null; pauk.StornoRedara = false; db.Pauks.InsertOnSubmit(pauk); db.SubmitChanges(); #endregion #region NALOZI PAUKU NaloziPauku np = new NaloziPauku(); np.IDNaloga = id; np.IDStatusa = 0; np.IDVozila = null; np.NalogZatvoren = false; np.DatumNaloga = datum; np.StornoRedara = true; np.Redoslijed = 0; np.IDRazloga = null; np.Lisice = lisice; db.NaloziPaukus.InsertOnSubmit(np); db.SubmitChanges(); #endregion #region PREKRSAJ Prekrsaji prek = db.Prekrsajis.First(i => i.IDPrekrsaja == idPrekrsaja); prek.IDNaloga = id; db.SubmitChanges(); #endregion return(id); } } catch (Exception ex) { Sustav.SpremiGresku(grad, ex, idAplikacije, "NOVI NALOG PAUKU"); return(-1); } }
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); } }
private void PrivredniPrestupi_SelectedIndexChanged(object sender, EventArgs e) { Prekrsaji.ClearSelected(); }