public ActionResult Stornieren(int Id)
        {
            Benutzer aktBenutzer = BenutzerAdministrator.GetUser(User.Identity.Name);

            Buchung aktBuchung = BuchungsVerwaltung.HoleBuchung(Id);
            List <Buchungsdetails> BuchungsDetailsZuBuchung = BuchungsVerwaltung.BuchungsDetailsVonBuchung(aktBuchung.Id);

            BuchungsDetailsZuBuchung = BuchungsDetailsZuBuchung.OrderBy(x => x.Datum).ToList();
            foreach (var item in BuchungsDetailsZuBuchung)
            {
                if (item.Datum < DateTime.Now.AddDays(1))
                {
                    KreditkartenModel StornoModel = new KreditkartenModel();
                    StornoModel.KreditkartenBezeichnung = new List <KreditkartenArtModel>();
                    List <Kreditkarte> alleKreditkarten = RechnungsVerwaltung.AlleKreditKarten();
                    foreach (var kreditkarte in alleKreditkarten)
                    {
                        KreditkartenArtModel model = new KreditkartenArtModel()
                        {
                            bezeichnung = kreditkarte.bezeichnung,
                            id          = kreditkarte.id
                        };
                        StornoModel.Buchung_id = Id;
                        StornoModel.KreditkartenBezeichnung.Add(model);
                        StornoModel.Rechnungsbetrag = BuchungsDetailsZuBuchung.Sum(x => x.Preis) / 2;
                    }
                    BuchungsVerwaltung.SperreVonUser(aktBenutzer.Id);
                    return(View(StornoModel));
                }
            }


            log.Info("BuchungController - Stornieren -Get");
            if (Id > 0)
            {
                bool storniert = BuchungsVerwaltung.Stornieren(Id);
            }
            return(RedirectToAction("Dashboard", "Benutzer"));
        }
        public ActionResult Dashboard()
        {
            log.Info("BenutzerController - Dashboard");

            Benutzer aktBenutzer = BenutzerAdministrator.GetUser(User.Identity.Name);

            DashboardModel dashboard = new DashboardModel();
            //User.Identity.Name

            // holt alle Mitarbeiter einer Firma
            List <BenutzerModel> alleMitarbeitereinerFirma = new List <BenutzerModel>();

            if (aktBenutzer.Firma_id != null)
            {
                List <Benutzer> alleBenutzer = BenutzerVerwaltung.LadeMitarbeiterEinerFirma((int)aktBenutzer.Firma_id);
                if (alleBenutzer == null)
                {
                    log.Warn("No stuff was found");
                }
                foreach (var einBenutzer in alleBenutzer)
                {
                    BenutzerModel einMitarbeiter = new BenutzerModel()
                    {
                        Emailadresse = einBenutzer.Emailadresse,
                        Nachname     = einBenutzer.Nachname,
                        Vorname      = einBenutzer.Vorname
                    };
                    alleMitarbeitereinerFirma.Add(einMitarbeiter);
                }
            }
            dashboard.AlleMitarbeiter = alleMitarbeitereinerFirma;

            List <BuchungsAnzeigeModel> alleBuchungen = new List <BuchungsAnzeigeModel>();
            List <Rechnungsdetails>     rechnungsDetailsEinerBuchung = new List <Rechnungsdetails>();
            List <Buchungsdetails>      BuchungsDetailsVonFirma      = new List <Buchungsdetails>();

            List <Buchung> bookingsOfCompany = BuchungsVerwaltung.GebuchteRaeume((int)aktBenutzer.Firma_id);

            dashboard.AlleBuchungen = new List <BuchungsAnzeigeModel>();
            if (bookingsOfCompany != null)
            {
                foreach (var booking in bookingsOfCompany)
                {
                    BuchungsDetailsVonFirma = BuchungsVerwaltung.BuchungsDetailsVonBuchung(booking.Id);

                    Raum aktRaum = RaumVerwaltung.GesuchterRaum(booking.Raum_id);
                    BuchungsAnzeigeModel buchungsmodel = new BuchungsAnzeigeModel();
                    buchungsmodel.Id         = booking.Id;
                    buchungsmodel.Raumnummer = aktRaum.Bezeichnung;
                    buchungsmodel.RaumArt    = aktRaum.Art.Bezeichnung;

                    buchungsmodel.VonDatum = (from x in BuchungsDetailsVonFirma orderby x.Datum select x.Datum).FirstOrDefault();
                    buchungsmodel.BisDatum = (from x in BuchungsDetailsVonFirma orderby x.Datum descending select x.Datum).FirstOrDefault();

                    dashboard.AlleBuchungen.Add(buchungsmodel);
                }
            }

            else
            {
                log.Info("BenutzerController - Dashboard - keine Buchungen für die Firma vorhanden sind");
            }

            dashboard.AlleBuchungen = dashboard.AlleBuchungen.OrderBy(x => x.BisDatum).ToList();

            List <Rechnung> alleRechnungenEinerFirma = RechnungsVerwaltung.RechnungenEinerFirma((int)aktBenutzer.Firma_id);

            List <RechnungsModel> alleRechnungenAnzeigen = new List <RechnungsModel>();


            List <Buchungsdetails> buchungsDetailsDieInRechnungsDetailsvorkommen = new List <Buchungsdetails>();

            Buchungsdetails buchungsDetail = new Buchungsdetails();

            foreach (var rechnung in alleRechnungenEinerFirma)
            {
                List <Rechnungsdetails> RechnungsDetailsEinerRechnung = RechnungsVerwaltung.RechnungsDetailsEinerRechnung(rechnung.Id);
                foreach (var rechnungsDetail  in RechnungsDetailsEinerRechnung)
                {
                    buchungsDetail = RechnungsVerwaltung.BuchungsDetailEinerRechnung(rechnungsDetail.Buchungsdetail_Id);
                    buchungsDetailsDieInRechnungsDetailsvorkommen.Add(buchungsDetail);
                }
            }

            List <int> dates = new List <int>();

            foreach (var buchungsdetail in buchungsDetailsDieInRechnungsDetailsvorkommen)
            {
                if (!dates.Contains(buchungsDetail.Datum.Month))
                {
                    int date = buchungsDetail.Datum.Month;
                    dates.Add(date);
                }
            }

            List <RechnungsModel> alleRechnungen = new List <RechnungsModel>();

            foreach (var item in dates)
            {
                RechnungsModel RgModel = new RechnungsModel()
                {
                    Monat       = Monat(item),
                    Monatnummer = item
                };
                alleRechnungen.Add(RgModel);
            }
            ;


            dashboard.AlleRechnungen = alleRechnungen;

            return(View(dashboard));
        }