/// <summary>
        ///
        /// </summary>
        /// <param name="BgDetails"></param>
        /// <returns></returns>
        public static Rechnung LiefereRechnungzuFirmaAusMonat(List <Buchungsdetails> BgDetails)
        {
            log.Info("Rechnungsverwaltung - LiefereRechnungzuFirmaAusMonat");
            Rechnung rechnung = new Rechnung();
            List <Rechnungsdetails> RgDetails = new List <Rechnungsdetails>();

            try
            {
                using (var context = new Innovation4AustriaEntities())
                {
                    foreach (var buchungsdetail in BgDetails)
                    {
                        Rechnungsdetails RgDetail = context.AlleRechnungsdetails.Where(x => x.Buchungsdetail_Id == buchungsdetail.Id).FirstOrDefault();
                        if (rechnung != null)
                        {
                            rechnung = context.AlleRechnungen.Where(x => x.Id == RgDetail.Rechnung_Id).FirstOrDefault();
                        }
                        RgDetails.Add(RgDetail);
                    }
                }
            }
            catch (Exception ex)
            {
                throw;
            }
            return(rechnung);
        }
        public static bool RechnungIstBezahlt(int rechnungsnummer)
        {
            log.Info("RechnungsVerwaltung - Rechnung bezahlen");
            bool bezahlt = false;

            try
            {
                using (var context = new Innovation4AustriaEntities())
                {
                    Rechnung bezahlteRechnung = context.AlleRechnungen.Where(x => x.Id == rechnungsnummer).FirstOrDefault();
                    if (!bezahlteRechnung.bezahlt)
                    {
                        bezahlteRechnung.bezahlt = true;
                        bezahlt = true;
                    }
                }
            }

            catch (Exception ex)
            {
                log.Error("RechnungsVerwaltung - RechnungIstBezahlt - DB-Verbindung fehlgeschlagen");
                if (ex.InnerException != null)
                {
                    log.Info(ex.InnerException);
                }
            }
            return(bezahlt);
        }
        public static void ErstelleRechnungenFuerMonat(int monat, int jahr)
        {
            log.Info("RechnungsVerwaltung - ErstelleRechnungenFuerMonat");
            List <Buchungsdetails> buchungsDetailsFuerMonat = new List <Buchungsdetails>();

            try
            {
                using (var context = new Innovation4AustriaEntities())
                {
                    buchungsDetailsFuerMonat = context.AlleBuchungsdetails.Where(x => x.Datum.Year == jahr && x.Datum.Month == monat && x.Buchung.Aktiv).ToList();
                    foreach (var buchungsDetail in buchungsDetailsFuerMonat)
                    {
                        List <Buchungsdetails> buchungsDetailsZuFirma = new List <Buchungsdetails>();
                        buchungsDetailsZuFirma = buchungsDetailsFuerMonat.Where(x => x.Buchung.Firma_id == buchungsDetail.Buchung.Firma_id).ToList();
                        Rechnung neueRechnung = new Rechnung();
                        neueRechnung.Datum = DateTime.Now;
                        neueRechnung.fa_id = buchungsDetail.Buchung.Firma_id;
                        context.AlleRechnungen.Add(neueRechnung);
                        context.SaveChanges();
                        foreach (var buchungsDetaileinesMonats in buchungsDetailsZuFirma)
                        {
                            Rechnungsdetails DetailZuFirma = new Rechnungsdetails();
                            DetailZuFirma.Buchungsdetail_Id = buchungsDetaileinesMonats.Id;
                            DetailZuFirma.Rechnung_Id       = neueRechnung.Id;
                            context.AlleRechnungsdetails.Add(DetailZuFirma);
                        }
                    }
                    context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                log.Error("RechnugnsVerwaltung - ErstelleRechnungenFuerMonat - DB_Verbindung fehlgeschlagen");
                if (ex.InnerException != null)
                {
                    log.Info(ex.InnerException);
                }
            }
        }