@model DashboardViewModel @using System.Text.Encodings.Web @using System.Text.Json @using System.Linq @{ ViewData["Title"] = "Übersicht"; var chartSerializerOptions = new JsonSerializerOptions(JsonSerializerDefaults.Web) { Encoder = JavaScriptEncoder.UnsafeRelaxedJsonEscaping }; var monthlyStats = Model.MonthlyApplications ?? Array.Empty(); var recentApplications = Model.RecentApplications ?? Enumerable.Empty(); } @if (!Model.IsAuthenticated) {

LEA Bewerbungs-Tracker

Behalte deine Bewerbungen mühelos im Blick

Erfasse Bewerbungen, aktualisiere Status und sammle Notizen an einem Ort. Mit wenigen Klicks bleibst du organisiert und bestens vorbereitet auf jedes Gespräch.

Bewerbungen speichern

Lege jede Bewerbung mit wenigen Angaben an – inklusive Ansprechpartner, Quelle und individuellen Notizen.

Status & Fortschritt

Halte Termine und Feedback fest, aktualisiere den Status und bleibe immer einen Schritt voraus.

Individuelle Statistiken

Erhalte auf einen Blick, wie viele Bewerbungen offen, im Interview oder bereits abgeschlossen sind.

} else {

Willkommen zurück

@(string.IsNullOrWhiteSpace(Model.FullName) ? "Dein Bewerbungs-Dashboard" : $"Hallo, {Model.FullName}!")

Behalte deine Bewerbungen im Blick, aktualisiere den Status und bereite dich optimal auf deine nächsten Schritte vor.

Gesamt

@Model.TotalApplications

Bewerbungen insgesamt

Beworben

@Model.AppliedCount

Offene Bewerbungen

Interviews

@Model.InterviewCount

Geplante Gespräche

Angebote

@Model.OfferCount

Erfolgreiche Angebote

Absagen

@Model.RejectedCount

Erhaltene Rückmeldungen

Statusübersicht

Wie sich deine Bewerbungen aktuell verteilen.

@if (Model.TotalApplications == 0) {

Sobald du Bewerbungen erfasst, erscheint hier eine Visualisierung.

} else { var statusChartConfig = JsonSerializer.Serialize(new { type = "doughnut", labels = new[] { "Beworben", "Interview", "Angebot", "Abgelehnt" }, values = new[] { Model.AppliedCount, Model.InterviewCount, Model.OfferCount, Model.RejectedCount }, colors = new[] { "#4460f7", "#3ac0a0", "#ff9f43", "#ef476f" }, borderColor = "#ffffff", datasetLabel = "Bewerbungen", legend = true }, chartSerializerOptions);
}

Monatlicher Verlauf

Wie viele Bewerbungen du in den letzten Monaten versendet hast.

@if (!monthlyStats.Any(stat => stat.Count > 0)) {

Sobald Bewerbungen vorhanden sind, zeigen wir hier deinen Verlauf.

} else { var monthlyLabels = monthlyStats.Select(stat => stat.Label).ToArray(); var monthlyValues = monthlyStats.Select(stat => stat.Count).ToArray(); var monthlyChartConfig = JsonSerializer.Serialize(new { type = "line", labels = monthlyLabels, values = monthlyValues, colors = new[] { "rgba(68, 96, 247, 0.20)" }, borderColor = "#4460f7", datasetLabel = "Bewerbungen", tension = 0.35, fill = true, legend = false }, chartSerializerOptions);
}

Aktuelle Bewerbungen

Zur Bewerbungsübersicht
@if (!recentApplications.Any()) {

Noch keine Bewerbungen erfasst.

Jetzt starten
} else {
@foreach (var application in recentApplications) { }
Unternehmen Rolle Status Beworben am
@application.Company @application.Role @application.Status.GetDisplayName() @application.AppliedOn.ToString("dd.MM.yyyy") Details
}
}