示例#1
0
        public ActionResult Create([Bind(Include = "Id,RevizeId,SCProvozuId,StavKoroze,StavZnecisteni,JineZavady,UmisteniId,Baterie,Pyro,TlakovaZkouska,RevizeTlakoveNadoby,VnitrniRevizeTlakoveNadoby")] RevizeSC revizeSC)
        {
            if (ModelState.IsValid)
            {
                int RevizeId = 0;
                try
                {
                    SCProvozu scprovozu = new SCProvozu();
                    scprovozu           = db.SCProvozu.Find(revizeSC.SCProvozuId);
                    revizeSC.UmisteniId = scprovozu.Umisteni;

                    db.RevizeSC.Add(revizeSC);
                    RevizeId = revizeSC.RevizeId;
                    db.SaveChanges();
                }
                catch (Exception ex) { log.Error("Error number: " + ex.HResult + " - " + ex.Message + " - " + ex.Data + " - " + ex.InnerException); }

                Revize revize = new Revize();
                revize = db.Revize.Find(RevizeId);
                Revize.UpdateRevizeHeader(RevizeId);
                return(RedirectToAction("Details", "Revize", new { Id = RevizeId }));
                //return RedirectToAction("Index");
            }

            ViewBag.RevizeId    = new SelectList(db.Revize, "Id", "ZjistenyStav", revizeSC.RevizeId);
            ViewBag.SCProvozuId = new SelectList(db.SCProvozu, "Id", "Lokace", revizeSC.SCProvozuId);
            ViewBag.UmisteniId  = new SelectList(db.Umisteni, "Id", "NazevUmisteni", revizeSC.UmisteniId);
            return(View(revizeSC));
        }
        // GET: GenerovaniRevizeTlakoveZkousky
        public ActionResult Index(int RevizeId)
        {
            var revize = Revize.GetById(RevizeId);

            GenerovaniRevizeTlakoveZkousky.GenerujReviziTlakoveZkousky(revize.Provoz.ZakaznikId, revize.ProvozId, revize.UmisteniId, revize.Rok.Value);
            Revize.UpdateRevizeHeader(RevizeId);
            return(RedirectToAction("Nahled", "Revize", null));
        }
示例#3
0
        public ActionResult DeleteConfirmed(int id)
        {
            RevizeSC revizeSC = db.RevizeSC.Find(id);
            int      RevizeId = 0;

            try
            {
                RevizeId = revizeSC.RevizeId;
                db.RevizeSC.Remove(revizeSC);
                db.SaveChanges();
            }
            catch (Exception ex) { log.Error("Error number: " + ex.HResult + " - " + ex.Message + " - " + ex.Data + " - " + ex.InnerException); }

            Revize revize = new Revize();

            revize = db.Revize.Find(RevizeId);
            Revize.UpdateRevizeHeader(RevizeId);
            return(RedirectToAction("Details", "Revize", new { Id = RevizeId }));
        }
示例#4
0
        public ActionResult Edit([Bind(Include = "Id,RevizeId,SCProvozuId,StavKoroze,StavZnecisteni,JineZavady,UmisteniId,Baterie,Pyro,TlakovaZkouska,Stav,DobaProvozu,HodinyProvozu,DobaProvozuString,RevizeTlakoveNadoby,VnitrniRevizeTlakoveNadoby")] RevizeSC revizeSC)
        {
            int RevizeId = 0;

            //revizeSC = RevizeSC.CalculateDobuProvozu(revizeSC);
            if (ModelState.IsValid)
            {
                try
                {
                    RevizeId = revizeSC.RevizeId;
                    db.Entry(revizeSC).State = EntityState.Modified;
                    db.SaveChanges();
                }
                catch (Exception ex) { log.Error("Error number: " + ex.HResult + " - " + ex.Message + " - " + ex.Data + " - " + ex.InnerException); }
                Revize revize = new Revize();
                revize = db.Revize.Find(RevizeId);
                Revize.UpdateRevizeHeader(RevizeId);
                return(RedirectToAction("Details", "Revize", new { Id = RevizeId }));
            }
            ViewBag.RevizeId    = new SelectList(db.Revize, "Id", "ZjistenyStav", revizeSC.RevizeId);
            ViewBag.SCProvozuId = new SelectList(db.SCProvozu, "Id", "Lokace", revizeSC.SCProvozuId);
            ViewBag.UmisteniId  = new SelectList(db.Umisteni, "Id", "NazevUmisteni", revizeSC.UmisteniId);
            return(View(revizeSC));
        }
示例#5
0
        /// <summary>
        /// Prohledani seznamu a dohledani zda již neexistuji revize v danem obdobi
        /// </summary>
        /// <param name="conn"></param>
        /// <param name="listplanrev"></param>
        /// <returns></returns>
        private static List <VypocetPlanuRevizi> LoopAndCreate(string conn, List <VypocetPlanuRevizi> listplanrev)
        {
            foreach (var item in listplanrev)
            {
                if (item.UmisteniId == 0)
                {
                    var r1exist = Revize.ExistRevision(item.ZakaznikId, item.ProvozId, item.Rok_R1, item.R1POL, null);
                    if (r1exist == false)
                    {
                        item.Revize1 = Revize.GenerateRevision(item.ProvozId, item.Rok_R1, item.R1POL, item.R1.Value, StatusRevize.Planned(), null, "", "");
                        List <SCList> sclist = new List <SCList>();
                        sclist = SCList.FindScForRevision(conn, item.ProvozId, null, item.Rok_R1, item.R1POL);
                        var      t        = SCList.AddItemsFromList(sclist, item.Revize1.Id);
                        RevizeSC revizesc = new RevizeSC();
                        Revize.UpdateRevizeHeader(item.Revize1.Id);
                        //bool done = RevizeSC.CreateUpdateSC(SCProvozu.GetList(item.ProvozId, null, 1, null), item.Revize1.Id);
                    }
                    else
                    {
                        item.Revize1 = Revize.ReturnRevision(item.ZakaznikId, item.ProvozId, item.Rok_R1, item.R1POL, null, null);
                    }
                    var r2exist = Revize.ExistRevision(item.ZakaznikId, item.ProvozId, item.Rok_R2, item.R2POL, null);
                    if (r2exist == false)
                    {
                        item.Revize2 = Revize.GenerateRevision(item.ProvozId, item.Rok_R2, item.R2POL, item.R2.Value, StatusRevize.Planned(), null, "", "");
                        List <SCList> sclist = new List <SCList>();
                        sclist = SCList.FindScForRevision(conn, item.ProvozId, null, item.Rok_R2, item.R2POL);
                        var      t        = SCList.AddItemsFromList(sclist, item.Revize2.Id);
                        RevizeSC revizesc = new RevizeSC();
                        Revize.UpdateRevizeHeader(item.Revize2.Id);
                    }
                    else
                    {
                        item.Revize2 = Revize.ReturnRevision(item.ZakaznikId, item.ProvozId, item.Rok_R2, item.R2POL, null, null);
                    }
                    // update hlavicky - počet baterií, palníků atd
                }
                else
                {
                    var r1exist = Revize.ExistRevision(item.ZakaznikId, item.ProvozId, item.Rok_R1, item.R1POL, item.UmisteniId);
                    if (r1exist == false)
                    {
                        item.Revize1 = Revize.GenerateRevision(item.ProvozId, item.Rok_R1, item.R1POL, item.R1.Value, StatusRevize.Planned(), item.UmisteniId, "", "");

                        List <SCList> sclist = new List <SCList>();
                        sclist = SCList.FindScForRevision(conn, item.ProvozId, item.UmisteniId, item.Rok_R1, item.R1POL);
                        var      t        = SCList.AddItemsFromList(sclist, item.Revize1.Id);
                        RevizeSC revizesc = new RevizeSC();
                        Revize.UpdateRevizeHeader(item.Revize1.Id);
                    }
                    else
                    {
                        item.Revize1 = Revize.ReturnRevision(item.ZakaznikId, item.ProvozId, item.Rok_R1, item.R1POL, item.UmisteniId, null);
                    }
                    var r2exist = Revize.ExistRevision(item.ZakaznikId, item.ProvozId, item.Rok_R2, item.R2POL, item.UmisteniId);
                    if (r2exist == false)
                    {
                        item.Revize2 = Revize.GenerateRevision(item.ProvozId, item.Rok_R2, item.R2POL, item.R2.Value, StatusRevize.Planned(), item.UmisteniId, "", "");
                        List <SCList> sclist = new List <SCList>();
                        sclist = SCList.FindScForRevision(conn, item.ProvozId, item.UmisteniId, item.Rok_R2, item.R2POL);
                        var      t        = SCList.AddItemsFromList(sclist, item.Revize2.Id);
                        RevizeSC revizesc = new RevizeSC();
                        Revize.UpdateRevizeHeader(item.Revize2.Id);
                    }
                    else
                    {
                        item.Revize2 = Revize.ReturnRevision(item.ZakaznikId, item.ProvozId, item.Rok_R2, item.R2POL, item.UmisteniId, null);
                    }
                    // update hlavicky - počet baterií, palníků atd
                }
            }
            return(listplanrev);
        }
示例#6
0
        internal protected static void GenerujRevizi(int ZakaznikId, int ProvozId, int Rok, int?UmisteniId, string Nabidka, string Projekt)
        {
            bool existrevize1;
            bool existrevize2;


            GenRevizeCust gen       = new GenRevizeCust();
            DnyRevize     dnyRevize = MinimalniDatum(ZakaznikId, ProvozId, Rok, UmisteniId);

            gen.Dnyrevize = dnyRevize;


            // REVIZE1
            if ((UmisteniId != null) && (UmisteniId != 0))
            {
                existrevize1 = Revize.ExistRevision(ZakaznikId, ProvozId, Rok, 1, UmisteniId);
                if (existrevize1 == true)
                {
                    //prirazeni revize do modelu
                    gen.Revize1 = Revize.ReturnRevision(ZakaznikId, ProvozId, Rok, 1, UmisteniId, null);
                }
                else
                {
                    gen.Dnyrevize.PrvnidenobdobiR1    = Prvnidenobdobi(Rok, 1);
                    gen.Dnyrevize.PoslednidenobdobiR1 = Poslednidenobdobi(Rok, 1);
                    gen.Dnyrevize.PrvnidenobdobiR2    = Prvnidenobdobi(Rok, 2);
                    gen.Dnyrevize.PoslednidenobdobiR2 = Poslednidenobdobi(Rok, 2);
                    // Prvni revize v obdobi
                    if (
                        (dnyRevize.DenRevize1 >= gen.Dnyrevize.PrvnidenobdobiR1)
                        &&
                        (dnyRevize.DenRevize1 <= gen.Dnyrevize.PoslednidenobdobiR1)
                        )
                    {
                        gen.Revize1 = Revize.GenerateRevision(ProvozId, Rok, 1, dnyRevize.DenRevize1, 1, UmisteniId, Nabidka, Projekt);
                    }
                    // prvni revize pred obdobim
                    if (
                        (dnyRevize.DenRevize1 < gen.Dnyrevize.PrvnidenobdobiR1)

                        )
                    {
                        gen.Revize1 = Revize.GenerateRevision(ProvozId, Rok, 1, gen.Dnyrevize.PrvnidenobdobiR1, 1, UmisteniId, Nabidka, Projekt);
                    }
                    // prvni revize v druhem pololeti vygeneruje se jako revize 2
                    if (
                        (dnyRevize.DenRevize1 >= gen.Dnyrevize.PrvnidenobdobiR2)
                        &&
                        (dnyRevize.DenRevize1 <= gen.Dnyrevize.PoslednidenobdobiR2)

                        )
                    {
                        gen.Revize2 = Revize.GenerateRevision(ProvozId, Rok, 2, dnyRevize.DenRevize1, 1, UmisteniId, Nabidka, Projekt);
                    }
                }
            }
            else
            {
                existrevize1 = Revize.ExistRevision(ZakaznikId, ProvozId, Rok, 1, null);

                if (existrevize1 == true)
                {
                    //prirazeni revize do modelu
                    gen.Revize1 = Revize.ReturnRevision(ZakaznikId, ProvozId, Rok, 1, null, null);
                }
                else
                {
                    gen.Dnyrevize.PrvnidenobdobiR1    = Prvnidenobdobi(Rok, 1);
                    gen.Dnyrevize.PoslednidenobdobiR1 = Poslednidenobdobi(Rok, 1);
                    gen.Dnyrevize.PrvnidenobdobiR2    = Prvnidenobdobi(Rok, 2);
                    gen.Dnyrevize.PoslednidenobdobiR2 = Poslednidenobdobi(Rok, 2);

                    // Prvni revize v obdobi
                    if (
                        (dnyRevize.DenRevize1 >= gen.Dnyrevize.PrvnidenobdobiR1)
                        &&
                        (dnyRevize.DenRevize1 <= gen.Dnyrevize.PoslednidenobdobiR1)
                        )
                    {
                        gen.Revize1 = Revize.GenerateRevision(ProvozId, Rok, 1, dnyRevize.DenRevize1, 1, null, Nabidka, Projekt);
                    }
                    // prvni revize pred obdobim
                    if (
                        (dnyRevize.DenRevize1 < gen.Dnyrevize.PrvnidenobdobiR1)

                        )
                    {
                        gen.Revize1 = Revize.GenerateRevision(ProvozId, Rok, 1, gen.Dnyrevize.PrvnidenobdobiR1, 1, null, Nabidka, Projekt);
                    }
                    // prvni revize v druhem pololeti vygeneruje se jako revize 2
                    if (
                        (dnyRevize.DenRevize1 >= gen.Dnyrevize.PrvnidenobdobiR2)
                        &&
                        (dnyRevize.DenRevize1 <= gen.Dnyrevize.PoslednidenobdobiR2)
                        )
                    {
                        gen.Revize2 = Revize.GenerateRevision(ProvozId, Rok, 2, dnyRevize.DenRevize1, 1, null, Nabidka, Projekt);
                    }
                }
            }
            // REVIZE2
            if ((UmisteniId != null) && (UmisteniId != 0))
            {
                existrevize2 = Revize.ExistRevision(ZakaznikId, ProvozId, Rok, 2, UmisteniId);
                if (existrevize2 == true)
                {
                    //prirazeni revize do modelu
                    gen.Revize2 = Revize.ReturnRevision(ZakaznikId, ProvozId, Rok, 2, UmisteniId, null);
                }
                else
                {
                    gen.Dnyrevize.PrvnidenobdobiR2    = Prvnidenobdobi(Rok, 2);
                    gen.Dnyrevize.PoslednidenobdobiR2 = Poslednidenobdobi(Rok, 2);
                    // druha revize v obdobi
                    if (
                        (dnyRevize.DenRevize2 >= gen.Dnyrevize.PrvnidenobdobiR2)
                        &&
                        (dnyRevize.DenRevize2 <= gen.Dnyrevize.PoslednidenobdobiR2)
                        )
                    {
                        gen.Revize2 = Revize.GenerateRevision(ProvozId, Rok, 2, dnyRevize.DenRevize2, 1, UmisteniId, Nabidka, Projekt);
                    }
                    // druha revize pred obdobim
                    if (
                        (dnyRevize.DenRevize2 < gen.Dnyrevize.PrvnidenobdobiR2)

                        )
                    {
                        gen.Revize2 = Revize.GenerateRevision(ProvozId, Rok, 2, gen.Dnyrevize.PrvnidenobdobiR2, 1, UmisteniId, Nabidka, Projekt);
                    }
                }
            }
            else
            {
                existrevize2 = Revize.ExistRevision(ZakaznikId, ProvozId, Rok, 2, null);

                if (existrevize2 == true)
                {
                    //prirazeni revize do modelu
                    gen.Revize2 = Revize.ReturnRevision(ZakaznikId, ProvozId, Rok, 2, null, null);
                }
                else
                {
                    gen.Dnyrevize.PrvnidenobdobiR2    = Prvnidenobdobi(Rok, 2);
                    gen.Dnyrevize.PoslednidenobdobiR2 = Poslednidenobdobi(Rok, 2);

                    // druha revize v obdobi
                    if (
                        (dnyRevize.DenRevize2 >= gen.Dnyrevize.PrvnidenobdobiR2)
                        &&
                        (dnyRevize.DenRevize2 <= gen.Dnyrevize.PoslednidenobdobiR2)
                        )
                    {
                        gen.Revize2 = Revize.GenerateRevision(ProvozId, Rok, 2, dnyRevize.DenRevize2, 1, null, Nabidka, Projekt);
                    }
                    // druha revize pred obdobim
                    if (
                        (dnyRevize.DenRevize2 < gen.Dnyrevize.PrvnidenobdobiR2)

                        )
                    {
                        gen.Revize2 = Revize.GenerateRevision(ProvozId, Rok, 2, gen.Dnyrevize.PrvnidenobdobiR2, 1, null, Nabidka, Projekt);
                    }
                }
            }

            List <CalculatedSCForRevision> list = Calculatescfrorevision(ZakaznikId, ProvozId, UmisteniId);

            InsertSCtoRevision(gen, list);
            try
            {
                Revize.UpdateRevizeHeader(gen.Revize1.Id);
            }
            catch (Exception ex)
            {
                log.Error("Revize1 - update revize header: " + ex.HResult + " - " + ex.Message + " - " + ex.Data + " - " + ex.InnerException);
            }
            try
            {
                Revize.UpdateRevizeHeader(gen.Revize2.Id);
            }
            catch (Exception ex)
            {
                log.Error("Revize2 - update revize header: " + ex.HResult + " - " + ex.Message + " - " + ex.Data + " - " + ex.InnerException);
            }
            // na zaklade prvku provozu spocitat kdy by mela byt dalsi revize
            // - pokud v obdobi - spoctene datum ()
            // - pokud starsi vygenerovat k 1.1.daneho roku
            // - pokud do tohoto obdobi nespada tak negenerovat (jenom klapka nema artikly atd.)
        }
示例#7
0
        public static void GenerujReviziTlakoveZkousky(int ZakaznikId, int ProvozId, int?UmisteniId, int Rok)
        {
            GenerovaniRevizeTlakoveZkousky GRTZ = new GenerovaniRevizeTlakoveZkousky
            {
                Rok        = Rok,
                ZakaznikId = ZakaznikId,
                Zakaznik   = Zakaznik.GetById(ZakaznikId),
                ProvozId   = ProvozId,
                Provoz     = Provoz.GetById(ProvozId),
                UmisteniId = UmisteniId,
                // dohledání exisujících revizí pro vybraný rok
                Revize1 = Revize.ReturnRevision(ZakaznikId, ProvozId, Rok, 1, UmisteniId, false),
                Revize2 = Revize.ReturnRevision(ZakaznikId, ProvozId, Rok, 2, UmisteniId, false)
            };

            if (UmisteniId != null)
            {
                GRTZ.Umisteni = Umisteni.GetById(UmisteniId.Value);
            }
            int pocetTlkZkR1 = 0; int pocetTlkZkR2 = 0; int revize1 = 0; int revize2 = 0;

            try
            {
                revize1 = GRTZ.Revize1.Id;
            }
            catch (Exception ex)
            {
                log.Debug($"Nenalazena Revize1 {ex.Data} {ex.HResult} {ex.InnerException} {ex.Message}");
            }
            try
            {
                revize2 = GRTZ.Revize2.Id;
            }
            catch (Exception ex)
            {
                log.Debug($"Nenalazena Revize2 {ex.Data} {ex.HResult} {ex.InnerException} {ex.Message}");
            }
            using (var db = new Model1Container())
            {
                //Výpočet počtu artiklů, které mají příznak tlakové zkoušky pro jednotlivé revize
                pocetTlkZkR1 = db.RevizeSC.Where(t => t.RevizeId == revize1 && t.TlakovaZkouska == true).Count();
                pocetTlkZkR2 = db.RevizeSC.Where(t => t.RevizeId == revize2 && t.TlakovaZkouska == true).Count();
            }

            int pocetTlkZ = pocetTlkZkR1 + pocetTlkZkR2;



            // Pokud existují artikly v revizích, které mají příznak tlakové zkoušky dojde ke generování třetí revize a přesun do speciální tlakové zkoušky
            if (pocetTlkZ > 0)
            {
                // načení záznamů, ketré jsou s evidovanou tlakovou zkouškou
                if (pocetTlkZkR1 > 0)
                {
                    try
                    {
                        GRTZ.TlakoveZkouskyRev1 = RevizeSC.SeznamTlakovychZkousekRevize(GRTZ.Revize1.Id);
                    }
                    catch (Exception ex) { log.Debug($" GRTZ.TlakoveZkouskyRev1 -  {ex.Data} {ex.HResult} {ex.InnerException} {ex.Message}"); }
                }
                if (pocetTlkZkR2 > 0)
                {
                    try
                    {
                        GRTZ.TlakoveZkouskyRev2 = RevizeSC.SeznamTlakovychZkousekRevize(GRTZ.Revize2.Id);
                    }
                    catch (Exception ex) { log.Debug($" GRTZ.TlakoveZkouskyRev2 -  {ex.Data} {ex.HResult} {ex.InnerException} {ex.Message}"); }
                }
                // pokud neexisuje revize na tlakovou zkoušku vygenerování revize
                var exist = Revize.ExistRevision(GRTZ.ZakaznikId, GRTZ.ProvozId, GRTZ.Rok, 3, GRTZ.UmisteniId);
                if (exist == true)
                {
                    //pokud exisuje nacte se
                    GRTZ.Revize3 = Revize.ReturnRevision(GRTZ.ZakaznikId, GRTZ.ProvozId, Rok, 3, GRTZ.UmisteniId, null);
                }
                else
                {
                    //pokud neexistuje vygeneruje se
                    try
                    {
                        GRTZ.Revize3 = Revize.GenerateRevision(GRTZ.ProvozId, GRTZ.Rok, 3, System.DateTime.Now, 1, GRTZ.UmisteniId, GRTZ.Revize1.Nabidka, GRTZ.Revize1.Projekt);
                    }
                    catch (Exception ex)
                    {
                        log.Debug($" GRTZ.Revize3 -  {ex.Data} {ex.HResult} {ex.InnerException} {ex.Message}");
                    }
                }
                //přesun tlakových zkoušek do speciální revize
                if (pocetTlkZkR1 > 0)
                {
                    try
                    {
                        RevizeSC.LoopRevizeSCTlakoveZkousky(GRTZ.Revize3, GRTZ.TlakoveZkouskyRev1);
                    }
                    catch (Exception ex) { }
                }
                if (pocetTlkZkR1 > 0)
                {
                    try
                    {
                        RevizeSC.LoopRevizeSCTlakoveZkousky(GRTZ.Revize3, GRTZ.TlakoveZkouskyRev2);
                    }
                    catch (Exception ex) { }
                }
                //aktualizace hlavičkových údajů na jednotlivých revizích
                try
                {
                    Revize.UpdateRevizeHeader(GRTZ.Revize1.Id);
                }
                catch (Exception ex)
                { }
                try
                {
                    Revize.UpdateRevizeHeader(GRTZ.Revize2.Id);
                }
                catch (Exception ex)
                { }
                try
                {
                    Revize.UpdateRevizeHeader(GRTZ.Revize3.Id);
                }
                catch (Exception ex)
                { }
            }
        }