Ejemplo n.º 1
0
        /// <summary>
        /// Löschen der Anlagendaten im Projekt und Einügen der Daten des aktuell ausgewählten Schiffes.
        /// </summary>
        /// <param name="s">Das Schiffsobjekt das ausgewählt wurde</param>
        /// <param name="blView">Die View in der die Anlagen angezeigt werden.</param>
        private void setSchiffAnlagen(schiff s, BindingListCollectionView blView)
        {
            int c = blView.Count - 1;

            for (int i = c; i >= 0; i--)
            {
                blView.RemoveAt(i);
            }


            var anl = from sa in db.SchiffAnlage
                      where sa.id_Schiff == s.id
                      select sa;

            foreach (var item in anl)
            {
                if (blView != null)
                {
                    var agg = (projektAggregat)(blView.AddNew());
                    agg.id_aggregat = item.id_Anlage;
                    agg.Kennzeichen = item.Kennzeichen;
                    agg.Bemerkung   = item.Bemerkung;

                    blView.CommitNew();
                }
            }
        }
Ejemplo n.º 2
0
        private void AddSchiffAnlage(schiff s, string Kennzeichen, SteinbachEntities data)
        {
            var sa = new SchiffAnlage();

            sa.id_Schiff   = s.id;
            sa.id_Anlage   = 1;
            sa.Kennzeichen = Kennzeichen;
            data.AddToSchiffAnlage(sa);
        }
Ejemplo n.º 3
0
        private bool SaveChanges()
        {
            try
            {
                var om = this.db.ObjectStateManager.GetObjectStateEntries(System.Data.EntityState.Modified | System.Data.EntityState.Added);
                foreach (var o in om)
                {
                    if (o.Entity is schiff)
                    {
                        var p = (schiff)o.Entity;
                        if (p.imonummer == null || p.imonummer.Equals(string.Empty) || Regex.IsMatch(p.imonummer.ToString(), "\\D"))
                        {
                            MessageBox.Show("Bitte eine gültige Imonummer oder 0 eingeben.");
                            return(false);
                        }

                        if (p.EntityState == System.Data.EntityState.Added)
                        {
                            bool KeyInUse = db.schiffe.Any(c => c.imonummer == p.imonummer && (c.imonummer != null && c.imonummer != 0));

                            if (KeyInUse)
                            {
                                var query = from s in db.schiffe
                                            where s.imonummer == p.imonummer && (s.imonummer != null && s.imonummer != 0)
                                            select s;
                                schiff Schiff = query.FirstOrDefault();


                                MessageBox.Show(String.Format("Die Imonummer {0} wird schon benutzt von Schiff {1}, ID {2} .", p.imonummer, Schiff.name, Schiff.id));
                                return(false);
                            }

                            bool NameInUse = db.schiffe.Any(c => c.name == p.name);

                            if (NameInUse)
                            {
                                var query = from s in db.schiffe
                                            where s.name == p.name
                                            select s;

                                schiff Schiff = query.FirstOrDefault();

                                var Result = MessageBox.Show(String.Format("Der Name {0} wird schon benutzt von dem Schiff mit der Imonummer {1}, ID {2}. Trotzdem speichern ?", p.name, Schiff.imonummer, Schiff.id), "", MessageBoxButton.YesNo);
                                if (Result == MessageBoxResult.Yes)
                                {
                                    db.SaveChanges();
                                    return(true);
                                }
                                else
                                {
                                    return(false);
                                }
                            }
                        }

                        if (p.EntityState == System.Data.EntityState.Modified)
                        {
                            if (p.imonummer != 0)
                            {
                                object Tt = o.OriginalValues["name"];
                                //MessageBox.Show(Tt.ToString());
                                string sName = Tt.ToString();
                                var    query = from s in db.schiffe
                                               where s.imonummer == p.imonummer && s.id != p.id
                                               select s;
                                schiff Schiff = query.FirstOrDefault();

                                if (Schiff != null)
                                {
                                    MessageBox.Show(String.Format("Änderung nicht möglich. Die Imonummer {0} wird schon benutzt von Schiff {1}, ID {2} .", p.imonummer, Schiff.name, Schiff.id));
                                    return(false);
                                }
                            }

                            var query1 = from s in db.schiffe
                                         where s.name == p.name && s.id != p.id
                                         select s;

                            schiff Schiff1 = query1.FirstOrDefault();

                            if (Schiff1 != null)
                            {
                                var Result = MessageBox.Show(String.Format("Der Name {0} wird schon benutzt von dem Schiff mit der Imonummer {1}, ID {2}. Trotzdem speichern ?", p.name, Schiff1.imonummer, Schiff1.id), "", MessageBoxButton.YesNo);
                                if (Result == MessageBoxResult.Yes)
                                {
                                    db.SaveChanges();
                                    return(true);
                                }
                                else
                                {
                                    return(false);
                                }
                            }
                        }
                    }
                }

                db.SaveChanges();
                // db.Dispose();
                return(true);
            }

            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                return(false);
            }
        }
Ejemplo n.º 4
0
        public void insertShipData(MainWindow mw, BindingListCollectionView blView)
        {
            if (mw.ftbSchiff.ComboBoxText != null)
            {
                var query = from f in db.schiffe where f.name == mw.ftbSchiff.tBox.Text select f;


                if (query.Count() > 0)
                {
                    schiff ship = query.FirstOrDefault();
                    mw.imonummer.Text     = ship.imonummer.ToString();
                    mw.txtWerftname.Text  = ship.werftname;
                    mw.txtWerfnummer.Text = ship.werftnummer;
                    setSchiffAnlagen(ship, blView);

                    //switch (mw.cboFirma.SelectedValue == null ? 0 : (int)mw.cboFirma.SelectedValue)
                    switch (mw.Firma_FCB_X.SelectedValue == null ? 0 : (int)mw.Firma_FCB_X.SelectedValue)
                    {
                    case 10014:     // "Brunvoll AS"
                    {
                        mw.txtUrsprungsprojekt.Text      = ship.brursprungsprojekt;
                        mw.txtBrunvollprojektnummer.Text = ship.brpprojektnr;
                        break;
                    }

                    case 10016:     //"Tamrotor Marine Compressors AS":
                    {
                        mw.txtUrsprungsprojekt.Text = ship.taursprungsprojekt;

                        break;
                    }

                    case 10019:      //"Sperre Industri AS":
                    {
                        mw.txtUrsprungsprojekt.Text      = ship.spursprungsprojekt;
                        mw.txtBrunvollprojektnummer.Text = ship.spnr;
                        break;
                    }

                    case 10095:     //"Finnoy Gear and Propeller AS":
                    {
                        mw.txtUrsprungsprojekt.Text = ship.foursprungsprojekt;

                        break;
                    }

                    case 10164:     //"Nyborg AS":
                    {
                        mw.txtUrsprungsprojekt.Text = ship.nyursprungsprojekt;

                        break;
                    }

                    case 10179:     //"Tecnicomar S.p.A.":
                    {
                        mw.txtUrsprungsprojekt.Text = ship.teursprungsprojekt;

                        break;
                    }

                    case 10177:      //"Jets AS":
                    {
                        mw.txtUrsprungsprojekt.Text      = ship.jtursprungsprojekt;
                        mw.txtBrunvollprojektnummer.Text = ship.jtunitnr;
                        break;
                    }

                    case 11688:      //"Metizoft":
                    {
                        mw.txtUrsprungsprojekt.Text = ship.mzursprungsprojekt;
                        break;
                    }

                    case 12022:      //"MMC Green Technology AS":
                    {
                        mw.txtUrsprungsprojekt.Text = ship.mmursprungsprojekt;
                        break;
                    }

                    default:
                        break;
                    }
                }
            }
        }