Esempio n. 1
0
        public ActionResult MitarbeiterBearbeiten(BenutzerModel model)
        {
            log.Info("Innovatation4AustriaController - MitarbeiterBearbeiten - Post");


            if (BenutzerVerwaltung.AktualisiereMitarbeiterEinerFirma(model.Id, model.Emailadresse, model.Vorname, model.Vorname, model.Aktiv))
            {
                log.Error("Innovatation4AustriaController - AktualisiereMitarbeiterEinerFirma - Speichern hat nicht geklappt");
            }
            return(RedirectToAction("FirmenAuflistung"));
        }
        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));
        }