47 lines
1.5 KiB
C#
47 lines
1.5 KiB
C#
using System;
|
|
using Avalonia.Controls;
|
|
using Avalonia.Interactivity;
|
|
using ChronoFlow.Model;
|
|
using ChronoFlow.Persistence;
|
|
|
|
namespace ChronoFlow.View.Admin;
|
|
|
|
public partial class ProjektBearbeitenDialog : Window
|
|
{
|
|
public Zeiteintrag UpdatedProjekt { get; private set; }
|
|
|
|
public ProjektBearbeitenDialog(Zeiteintrag projekt)
|
|
{
|
|
InitializeComponent();
|
|
|
|
var dbService = new SqliteZeiterfassungsService();
|
|
var mitarbeiter = dbService.LadeAlleMitarbeiterNamen();
|
|
MitarbeiterDropdown.ItemsSource = mitarbeiter;
|
|
MitarbeiterDropdown.SelectedItem = projekt.Mitarbeiter;
|
|
|
|
// Vorbelegen
|
|
ProjektnameBox.Text = projekt.Projekt;
|
|
KommentarBox.Text = projekt.Kommentar;
|
|
StartzeitPicker.SelectedDate = new DateTimeOffset(projekt.Startzeit);
|
|
EndzeitPicker.SelectedDate = new DateTimeOffset(projekt.Endzeit);
|
|
|
|
UpdatedProjekt = projekt;
|
|
}
|
|
|
|
private void SpeichernButton_Click(object? sender, RoutedEventArgs e)
|
|
{
|
|
UpdatedProjekt.Projekt = ProjektnameBox.Text ?? "";
|
|
UpdatedProjekt.Kommentar = KommentarBox.Text ?? "";
|
|
UpdatedProjekt.Startzeit = (StartzeitPicker.SelectedDate ?? DateTimeOffset.Now).DateTime;
|
|
UpdatedProjekt.Endzeit = (EndzeitPicker.SelectedDate ?? DateTimeOffset.Now).DateTime;
|
|
UpdatedProjekt.Mitarbeiter = MitarbeiterDropdown.SelectedItem?.ToString() ?? "";
|
|
|
|
Close(UpdatedProjekt);
|
|
}
|
|
|
|
private void AbbrechenButton_Click(object? sender, RoutedEventArgs e)
|
|
{
|
|
Close(null);
|
|
}
|
|
|
|
} |