Пример #1
0
 private void ButtonConfirm_Click(object sender, EventArgs e)
 {
     // Prüfen erlaubter Eingabekombinationen
     // Prüfen, ob Ausleihender als Pflichtfeld ausgefüllt ist
     if (textBoxBorrower.Text == "")
     {
         MessageBox.Show("Ausleihender muss angegeben werden.", "Hinweis: Rückgabe",
                         MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
     }
     // Prüft, ob die ID richtig umgewandelt werden konnte
     else if (Util.ParseInt(textBoxID.Text, 0) == 0 && textBoxTitle.Text == "" && textBoxReturnDate.Text == "" && textBoxBorrower.Text == "")
     {
         MessageBox.Show("Es wurde eine falsche ID angegeben.", "Hinweis: Neue Ausleihe",
                         MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
     }
     // wenn Eingabe in Ordnung, wird diese weitrgegeben
     else
     {
         VideoDtoLoan videoLoan = _dialogMain.VideoLoan;
         videoLoan.ID         = Util.ParseInt(textBoxID.Text, 0);;
         videoLoan.Title      = textBoxTitle.Text;
         videoLoan.Borrower   = textBoxBorrower.Text;
         videoLoan.ReturnDate = Util.ParseDate(textBoxReturnDate.Text, DateTime.MinValue);
         this.VideoDtoLoan    = videoLoan;
         this.DialogResult    = DialogResult.OK;
         this.Close();
     }
 }
Пример #2
0
 internal CDialogMain(ILogic logic)
 {
     InitializeComponent();
     _logic             = logic;
     _videoSearch       = new VideoDtoSearch();
     _videoLoan         = new VideoDtoLoan();
     _videoLoanExisting = new VideoDtoLoan();
 }
Пример #3
0
        //Legt eine Neue Ausleihe an in dem ein eintrag verändert wird
        public int InsertVideoTable(VideoDtoLoan videoLoan)
        {
            this.SqlNewVideoLoan(videoLoan, _dbCommand);
            AData.Open(_dbConnection);
            int nRecords = _dbCommand.ExecuteNonQuery();

            AData.Close(_dbConnection);
            return(nRecords);
        }
Пример #4
0
        private void RückgabeToolStripMenuItem_Click(object sender, EventArgs e)
        {
            // Delete
            try
            {
                DataTable dataTable = new DataTable();
                // Fenster wird nach erfogreichem Delete erneut angezeigt
                while (true)
                {
                    DialogResult dialogResult = DialogLoanDelete.ShowDialog();

                    if (dialogResult == DialogResult.OK)
                    {
                        // Einträge aus den Feldern werden übernommen
                        //_videoLoanExisting zum Überprüfen der Werte mit denen aus der DB
                        _videoLoan                  = DialogLoanDelete.VideoDtoLoan;
                        _videoLoanExisting.ID       = _videoLoan.ID;
                        _videoLoanExisting.Title    = _videoLoan.Title;
                        _videoLoanExisting.Borrower = _videoLoan.Borrower;

                        // Suche nach Einträgen in der DB
                        _logic.Search.ReadVideo(_videoLoanExisting, out dataTable);

                        // Result ist leer
                        if (dataTable.Rows.Count == 0)
                        {
                            MessageBox.Show("Keine passenden Einträge gefunden.", "Hinweis: Neue Ausleihe",
                                            MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            return;
                        }

                        // Die Daten die geändert werden, werden als Result angezeigt und danach überarbeitet
                        _videoLoan = DialogLoanDelete.VideoDtoLoan;
                        _logic.Search.ReadVideo(_videoLoan, out dataTable);
                        _logic.Loan.DeleteVideoTable(_videoLoan);
                        DialogSearchResult.ResultTable = dataTable;
                        dialogResult = DialogSearchResult.ShowDialog();
                    }
                    else
                    {
                        // Schließen des Fensters
                        return;
                    }
                }
            }
            catch (DataException dataException)
            {
                MessageBox.Show(dataException.Message, "Fehler bei der Rückgabe",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message, "Fehler bei der Rückgabe",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #5
0
        //Verändert eine Ausleihe
        public int UpdateVideoTable(VideoDtoLoan videoLoan, DateTime returnDate)
        {
            videoLoan.ReturnDate = returnDate;


            this.SqlUptadeVideoLoan(videoLoan, _dbCommand);
            AData.Open(_dbConnection);
            int nRecords = _dbCommand.ExecuteNonQuery();

            AData.Close(_dbConnection);
            return(nRecords);
        }
Пример #6
0
        //Sucht mit Filtern nach einem Video
        public void ReadVideo(VideoDtoLoan videoLoan, out DataTable dataTable)
        {
            VideoDtoSearch videoSearch = new VideoDtoSearch()
            {
                ID         = videoLoan.ID,
                Title      = videoLoan.Title,
                Borrower   = videoLoan.Borrower,
                ReturnDate = videoLoan.ReturnDate,
                Rated      = 1,
            };

            _dataSearch.ReadVideos(videoSearch, out dataTable);
        }
Пример #7
0
 //Liest Verfügbare Filme aus
 public bool FreeTitles(VideoDtoLoan ausleihe)
 {
     ReadVideo(ausleihe, out DataTable dataTable);
     if (dataTable.Rows.Count == 0)
     {
         return(false);
     }
     foreach (DataRow row in dataTable.Rows)
     {
         string   borrower   = row["Borrower"].ToString();
         DateTime returnDate = Util.ParseDate(row["ReturnDate"].ToString(), DateTime.Now);
         if (borrower == "" && returnDate == Util.ParseDate("01.01.2001", DateTime.Now))
         {
             return(true);
         }
     }
     return(false);
 }
Пример #8
0
 private void ButtonConfirm_Click(object sender, EventArgs e)
 {
     // Prüfen erlaubter Eingabekombinationen
     // Prüfen, ob Rückgabedatum als Pflichtfeld gefüllt ist
     if (textBoxReturnDate.Text == "")
     {
         MessageBox.Show("Das Rückgabedatum muss angegeben werden.", "Hinweis: Ausleihe ändern",
                         MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
     }
     // Prüft, ob mehr als nur das Datum angegeben ist
     else if (textBoxID.Text == "" && textBoxTitle.Text == "" && textBoxBorrower.Text == "")
     {
         MessageBox.Show("ID, Titel oder Ausleihender muss angegeben werden.", "Hinweis: Ausleihe ändern",
                         MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
     }
     // Prüft, ob zum Datum und zum Titel zusätzlich noch ID oder Ausleihender eingetragen wurden
     else if (textBoxID.Text == "" && textBoxBorrower.Text == "" && !(textBoxTitle.Text == "") && !(textBoxReturnDate.Text == ""))
     {
         MessageBox.Show("ID oder Ausleihender muss angegeben werden.", "Hinweis: Ausleihe ändern",
                         MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
     }
     // Prüft, ob die ID richtig umgewandelt werden konnte
     else if (Util.ParseInt(textBoxID.Text, 0) == 0 && textBoxTitle.Text == "" && textBoxBorrower.Text == "")
     {
         MessageBox.Show("Es wurde eine falsche ID angegeben.", "Hinweis: Neue Ausleihe",
                         MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
     }
     // wenn Eingabe in Ordnung, wird diese weitrgegeben
     else
     {
         VideoDtoLoan videoLoan = _dialogMain.VideoLoan;
         videoLoan.ID         = Util.ParseInt(textBoxID.Text, 0);;
         videoLoan.Title      = textBoxTitle.Text;
         videoLoan.Borrower   = textBoxBorrower.Text;
         videoLoan.ReturnDate = Util.ParseDate(textBoxReturnDate.Text, DateTime.Now);
         this.VideoDtoLoan    = videoLoan;
         this.DialogResult    = DialogResult.OK;
         this.Close();
     }
 }
Пример #9
0
 //Löscht etwas aus der Tabelle
 public int DeleteVideoTable(VideoDtoLoan videoLoan)
 {
     return(_dataLoan.DeleteVideoTable(videoLoan, videoLoan.Borrower, videoLoan.ReturnDate));
 }
Пример #10
0
 //Lies etwas aus der DB aus
 public int UpdateVideoTable(VideoDtoLoan videoLoan)
 {
     return(_dataLoan.UpdateVideoTable(videoLoan, videoLoan.ReturnDate));
 }
Пример #11
0
 //Fügt etwas in die DB ein
 public int InsertVideoTable(VideoDtoLoan videoLoan)
 {
     return(_dataLoan.InsertVideoTable(videoLoan));
 }
Пример #12
0
        private void AusleiheVerlängernToolStripMenuItem_Click(object sender, EventArgs e)
        {
            // Update
            try
            {
                DataTable dataTable = new DataTable();

                // Fenster wird nach erfogreichem Update erneut angezeigt
                while (true)
                {
                    DialogResult dialogResult = DialogLoanUpdate.ShowDialog();

                    if (dialogResult == DialogResult.OK)
                    {
                        // Einträge aus den Feldern werden übernommen
                        //_videoLoanExisting zum Überprüfen der Werte mit denen aus der DB
                        _videoLoan                  = DialogLoanUpdate.VideoDtoLoan;
                        _videoLoanExisting.ID       = _videoLoan.ID;
                        _videoLoanExisting.Title    = _videoLoan.Title;
                        _videoLoanExisting.Borrower = _videoLoan.Borrower;

                        // Suche nach Einträgen in der DB
                        _logic.Search.ReadVideo(_videoLoanExisting, out dataTable);

                        // Result ist leer
                        if (dataTable.Rows.Count == 0)
                        {
                            MessageBox.Show("Angaben stimmen nicht überein oder existieren nicht", "Hinweis: Neue Ausleihe",
                                            MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            return;
                        }
                        else
                        {
                            // Für den angegeben Film gibt es keine Ausleihe
                            string   borrower   = dataTable.Rows[0]["Borrower"].ToString();
                            DateTime returnDate = Util.ParseDate(dataTable.Rows[0]["ReturnDate"].ToString(), DateTime.Now);
                            if ((_videoLoan.ID != 0) && (borrower == "") && (returnDate == Util.ParseDate("01.01.2001", DateTime.Now)))
                            {
                                MessageBox.Show("Film ist nicht ausgeliehen.", "Hinweis: Neue Ausleihe",
                                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                                return;
                            }
                        }
                        // Daten werden in die DB eingetragen und die geänderten Einräge als Result zurückgegeben
                        _videoLoan = DialogLoanUpdate.VideoDtoLoan;
                        _logic.Loan.UpdateVideoTable(_videoLoan);
                        _logic.Search.ReadVideo(_videoLoan, out dataTable);
                        DialogSearchResult.ResultTable = dataTable;
                        dialogResult = DialogSearchResult.ShowDialog();
                    }
                    else
                    {
                        // Schließen des Fensters
                        return;
                    }
                }
            }
            catch (DataException dataException)
            {
                MessageBox.Show(dataException.Message, "Fehler beim Ändern der Ausleihe",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message, "Fehler beim Ändern der Ausleihe",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #13
0
        private void NeueAusleiheToolStripMenuItem_Click(object sender, EventArgs e)
        {
            // Insert
            try
            {
                // erstellen einer Datentabelle
                DataTable dataTable = new DataTable();

                // Fenster wird nach erfogreichem Insert erneut angezeigt
                while (true)
                {
                    // Öffnen des Insert-Fensters
                    DialogResult dialogResult = DialogLoanInsert.ShowDialog();

                    // Wenn Button bestätigen gedrückt
                    if (dialogResult == DialogResult.OK)
                    {
                        // werden die Einträge aus den Feldern übernommen
                        //_videoLoanExisting zum Überprüfen der Werte mit denen aus der DB
                        _videoLoan                  = DialogLoanInsert.VideoDtoLoan;
                        _videoLoanExisting.ID       = _videoLoan.ID;
                        _videoLoanExisting.Title    = _videoLoan.Title;
                        _videoLoanExisting.Borrower = "";

                        // Wenn keine ID eingetragen wurde..
                        if (_videoLoan.ID == 0)
                        {
                            // Wenn keine freies Video mit dem Titel mehr vorhanden ist
                            if (!_logic.Search.FreeTitles(_videoLoanExisting))
                            {
                                MessageBox.Show("Kein Film mit dem Titel " + _videoLoan.Title + " zur Ausleihe verfügbar", "Hinweis: Neue Ausleihe",
                                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                                return;
                            }
                        }
                        // wenn ID angegeben ist..
                        else
                        {
                            // Suche nach Einträgen in der DB
                            _logic.Search.ReadVideo(_videoLoanExisting, out dataTable);
                            //.. und das Result leer ist..
                            if (dataTable.Rows.Count == 0)
                            {
                                //..zeige die Messagebox
                                MessageBox.Show("Titel und ID stimmen nicht überein oder existieren nicht", "Hinweis: Neue Ausleihe",
                                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                                return;
                            }
                            else
                            {
                                // Wenn ein Film bereits ausgeliehen ist
                                string   borrower   = dataTable.Rows[0]["Borrower"].ToString();
                                DateTime returnDate = Util.ParseDate(dataTable.Rows[0]["ReturnDate"].ToString(), DateTime.Now);
                                if ((borrower != "") && (returnDate != Util.ParseDate("01.01.2001", DateTime.Now)))
                                {
                                    MessageBox.Show("Film ist bereits ausgeliehen.", "Hinweis: Neue Ausleihe",
                                                    MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                                    return;
                                }
                            }
                        }

                        // Daten werden in die DB eingetragen und die geänderten Einräge als Result zurückgegeben
                        _logic.Loan.InsertVideoTable(_videoLoan);
                        _logic.Search.ReadVideo(_videoLoan, out dataTable);
                        DialogSearchResult.ResultTable = dataTable;
                        dialogResult = DialogSearchResult.ShowDialog();
                    }
                    else
                    {
                        // Schließen des Fensters
                        return;
                    }
                }
            }
            catch (DataException dataException)
            {
                MessageBox.Show(dataException.Message, "Fehler bei neuer Ausleihe",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message, "Fehler bei neuer Ausleihe",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #14
0
 //Ruft die Methode DeleteLoan auf
 public int DeleteVideoTable(VideoDtoLoan videoLoan, string borrower, DateTime returnDate)
 {
     return(this.DeleteLoan(videoLoan));
 }