Exemple #1
0
        public async Task <ActionResult> IndexMeldungProtokollEdit(Guid id, string Prog)
        {
            if (ModelState.IsValid)
            {
                var meldung = await db.TabMeldungSet.FindAsync(id);
                await TryUpdateModelAsync(meldung);

                await db.SaveChangesAsync();

                return(RedirectToAction("IndexMeldungProtokoll", new { Prog }));
            }

            var mel = new TabMeldung();

            await TryUpdateModelAsync(mel);

            return(View(mel));
        }
Exemple #2
0
        public async Task <string> SendeMeldung(JgWcfMeldung Meldung, byte[] StatusMaschine)
        {
            try
            {
                using (var db = new JgMaschineDb()
                {
                    SqlVerbindung = _SqlVerbindung
                })
                {
                    if (Meldung.Meldung == ScannerMeldung.BAUT_ENDE)
                    {
                        // Die Endzeit eines Bauteils wird mittels einer Meldung
                        // Angezeigt und eingetragen

                        var baut = await db.TabBauteilSet.FindAsync(Meldung.Id);

                        if (baut != null)
                        {
                            baut.EndeFertigung = Meldung.Aenderung;
                            baut.Aenderung     = Meldung.Aenderung;
                        }
                        else
                        {
                            return($"OK Bauteil Ende nicht eingetragen, Id {Meldung.Id} nicht gefunden! Vorgang wird ignoriert.");
                        }
                    }
                    else if (_MeldungEnde.Contains(Meldung.Meldung))
                    {
                        // Wird eine Abmeldung oder Beendigung gemeldet, wird die der
                        // dazugehörige Start gesucht und die Abmeldezeit wird eingetragen

                        var meldung = await db.TabMeldungSet.FindAsync(Meldung.Id);

                        if (meldung != null)
                        {
                            meldung.ZeitAbmeldung = Meldung.Aenderung;
                            meldung.Aenderung     = Meldung.Aenderung;
                        }
                        else
                        {
                            return($"OK Meldung {meldung.Meldung} nicht eingetragen, Id {Meldung.Id} nicht gefunden! Vorgang wird ignoriert.");
                        }
                    }
                    else
                    {
                        var meld = await db.TabMeldungSet.FindAsync(Meldung.Id);

                        if (meld != null)
                        {
                            return($"OK Fehler {Meldung.Meldung} Id {Meldung.Id} bereits in Datenbank vorhanden ! Vorgang wird ignoriert.");
                        }

                        meld = new TabMeldung()
                        {
                            ZeitMeldung = Meldung.Aenderung,
                            IdMaschine  = Meldung.IdMaschine
                        };
                        _KopieMeldung.CopyProperties(Meldung, meld);
                        await db.TabMeldungSet.AddAsync(meld);
                    }

                    if (StatusMaschine != null)
                    {
                        var ma = await db.TabMaschineSet.FindAsync(Meldung.IdMaschine);

                        if (ma != null)
                        {
                            ma.StatusMaschine          = StatusMaschine;
                            ma.StatusMaschineAenderung = DateTime.Now;
                        }
                    }

                    await db.SaveChangesAsync();
                }
            }
            catch (Exception ex)
            {
                return(Helper.GetExcept(ex));
            }

            return("OK");
        }