Esempio n. 1
0
        public static bool MozePrimitiNalog(string grad, int idVozila, int idNaloga, int idAplikacije)
        {
            try
            {
                const int idStatusa = 14; //14 je vozilo odbilo nalog - prije je bilo 1 ako ne radi vrati jedan

                using (PazigradDataContext db = new PazigradDataContext(Sistem.ConnectionString(grad, idAplikacije)))
                {
                    NaloziPauku np = db.NaloziPaukus.First(i => i.IDNaloga == idNaloga);
                    VozilaPauka vp = db.VozilaPaukas.First(i => i.IDVozila == idVozila);

                    if (!vp.AP)
                    {
                        return(false);
                    }

                    if (np.Lisice)
                    {
                        if (vp.Lisice)
                        {
                            //ako pauk obrađuje lisice i nalog je za blokadu vozila provijeri da li je pauk već odbio
                            return(!db.PovijestNalogas.Any(i => i.IDNaloga == idNaloga && i.IDVozila == idVozila && i.IDStatusa == idStatusa));
                        }

                        //pauk ne obrađuje lisice
                        return(false);
                    }

                    if (!np.Lisice)
                    {
                        if (vp.ObradjujeNalog)
                        {
                            //ako pauk obrađuje naloge i nalog je za podizanje vozila provijeri da li je pauk već odbio
                            return(!db.PovijestNalogas.Any(i => i.IDNaloga == idNaloga && i.IDVozila == idVozila && i.IDStatusa == idStatusa));
                        }

                        //pauk ne obrađuje naloge
                        return(false);
                    }

                    return(!db.PovijestNalogas.Any(i => i.IDNaloga == idNaloga && i.IDVozila == idVozila && i.IDStatusa == idStatusa));
                }
            }
            catch (Exception ex)
            {
                Sustav.SpremiGresku(grad, ex, idAplikacije, "MOŽE PRIMITI NALOG");
                return(false);
            }
        }
Esempio n. 2
0
        public static _Nalog Nalog(int?idNaloga, VozilaPauka vozilo, StatusPauka status, RazloziNepodizanjaVozila razlog, NaloziPauku nalog, Pauk pauk, string brojRacuna, string vrstaPlacanja)
        {
            if (idNaloga == null || idNaloga == 0)
            {
                return(null);
            }

            return(new _Nalog(idNaloga,
                              vozilo == null ? 0 : vozilo.IDVozila,
                              vozilo == null ? 0 : vozilo.IDTerminala,
                              vozilo == null ? "" : vozilo.NazivVozila,
                              status == null ? 0 : status.IDStatusa,
                              status == null ? "Izdao nalog" : status.NazivStatusa,
                              razlog == null ? 0 : razlog.IDRazloga,
                              razlog == null ? "" : razlog.NazivRazloga,
                              nalog == null ? DateTime.Now : nalog.DatumNaloga,
                              pauk == null ? DateTime.Now : pauk.DatumZaprimanja,
                              pauk == null ? null : pauk.DatumPodizanja,
                              pauk == null ? null : pauk.DatumDeponija,
                              nalog == null ? false : nalog.StornoRedara,
                              nalog == null ? false : nalog.NalogZatvoren,
                              status == null ? "Black" : status.Boja,
                              nalog == null ? null : nalog.IDRacuna,
                              brojRacuna,
                              vrstaPlacanja,
                              nalog == null ? false : nalog.Lisice,
                              nalog == null ? "" : nalog.Napomena));
        }
Esempio n. 3
0
        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);
            }
        }
Esempio n. 4
0
        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);
            }
        }