DeliveryAdminWindow: Allow date and time to be edited
This commit is contained in:
@ -180,11 +180,30 @@ namespace Elwig.Windows {
|
||||
doc.Show();
|
||||
}
|
||||
|
||||
private void Menu_Settings_EnableFreeEditing_Checked(object sender, RoutedEventArgs evt) {
|
||||
if (IsEditing || IsCreating) {
|
||||
DateInput.IsReadOnly = false;
|
||||
TimeInput.IsReadOnly = false;
|
||||
BranchInput.IsEnabled = true;
|
||||
if (IsCreating) TimeInput.Text = "";
|
||||
OnSecondPassed(null, null);
|
||||
}
|
||||
}
|
||||
|
||||
private void Menu_Settings_EnableFreeEditing_Unchecked(object sender, RoutedEventArgs evt) {
|
||||
DateInput.IsReadOnly = true;
|
||||
TimeInput.IsReadOnly = true;
|
||||
BranchInput.IsEnabled = false;
|
||||
OnSecondPassed(null, null);
|
||||
}
|
||||
|
||||
private void OnSecondPassed(object? sender, EventArgs? evt) {
|
||||
if (IsReceipt && IsCreating) {
|
||||
if (IsReceipt && IsCreating && !Menu_Settings_EnableFreeEditing.IsChecked) {
|
||||
var now = DateTime.Now;
|
||||
TimeInput.Text = now.ToString("HH:mm");
|
||||
DateInput.Text = now.ToString("dd.MM.yyyy");
|
||||
SetDefaultValue(TimeInput);
|
||||
SetDefaultValue(DateInput);
|
||||
}
|
||||
}
|
||||
|
||||
@ -663,10 +682,10 @@ namespace Elwig.Windows {
|
||||
if (deliveryNew || InputHasChanged(DateInput)) {
|
||||
d.LNr = await Context.NextLNr(d.Date);
|
||||
}
|
||||
if (IsCreating) {
|
||||
if (IsCreating && !InputIsNotDefault(TimeInput)) {
|
||||
d.TimeString = DateTime.Now.ToString("HH:mm:ss");
|
||||
} else if (InputHasChanged(TimeInput)) {
|
||||
d.TimeString = TimeInput.Text + ":00";
|
||||
} else if (IsCreating || InputHasChanged(TimeInput)) {
|
||||
d.TimeString = (TimeInput.Text != "") ? TimeInput.Text + ":00" : null;
|
||||
}
|
||||
d.ZwstId = (BranchInput.SelectedItem as Branch)?.ZwstId;
|
||||
d.LsNr = LsNrInput.Text;
|
||||
@ -1269,9 +1288,9 @@ namespace Elwig.Windows {
|
||||
AbgewertetInput.IsEnabled = false;
|
||||
ManualWeighingInput.IsEnabled = false;
|
||||
LsNrInput.IsReadOnly = true;
|
||||
DateInput.IsReadOnly = true;
|
||||
TimeInput.IsReadOnly = true;
|
||||
BranchInput.IsEnabled = false;
|
||||
DateInput.IsReadOnly = !Menu_Settings_EnableFreeEditing.IsChecked;
|
||||
TimeInput.IsReadOnly = !Menu_Settings_EnableFreeEditing.IsChecked;
|
||||
BranchInput.IsEnabled = Menu_Settings_EnableFreeEditing.IsChecked;
|
||||
}
|
||||
|
||||
private void DisableWeighingButtons() {
|
||||
@ -1295,15 +1314,25 @@ namespace Elwig.Windows {
|
||||
if (DateInput.Text == "" || BranchInput.SelectedItem == null) {
|
||||
LsNrInput.Text = "";
|
||||
} else {
|
||||
var branch = (Branch)BranchInput.SelectedItem;
|
||||
var date = DateOnly.ParseExact(DateInput.Text, "dd.MM.yyyy");
|
||||
var lnr = await Context.NextLNr(date);
|
||||
LsNrInput.Text = Utils.GenerateLsNr(date, branch.ZwstId, lnr);
|
||||
try {
|
||||
var branch = (Branch)BranchInput.SelectedItem;
|
||||
var date = DateOnly.ParseExact(DateInput.Text, "dd.MM.yyyy");
|
||||
var lnr = await Context.NextLNr(date);
|
||||
LsNrInput.Text = Utils.GenerateLsNr(date, branch.ZwstId, lnr);
|
||||
} catch {
|
||||
LsNrInput.Text = "";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void DateInput_TextChanged(object sender, TextChangedEventArgs evt) {
|
||||
if (IsCreating) UpdateLsNr().GetAwaiter().GetResult();
|
||||
base.DateInput_TextChanged(sender, evt);
|
||||
if (IsEditing || IsCreating) UpdateLsNr().GetAwaiter().GetResult();
|
||||
}
|
||||
|
||||
private void BranchInput_SelectionChanged(object sender, RoutedEventArgs evt) {
|
||||
base.ComboBox_SelectionChanged(sender, evt);
|
||||
if (IsEditing || IsCreating) UpdateLsNr().GetAwaiter().GetResult();
|
||||
}
|
||||
|
||||
private void UpdateWineVariety(bool valid) {
|
||||
|
Reference in New Issue
Block a user