Compare commits
4 Commits
Author | SHA1 | Date | |
---|---|---|---|
0f87446906 | |||
e0fcaf1f53 | |||
26e549caa6 | |||
1d187c25f3 |
29
CHANGELOG.md
29
CHANGELOG.md
@ -3,9 +3,38 @@ Changelog
|
||||
=========
|
||||
|
||||
|
||||
[v0.11.4][v0.11.4] (2024-09-22) {#v0.11.4}
|
||||
------------------------------------------
|
||||
|
||||
### Behobene Fehler {#v0.11.4-bugfixes}
|
||||
|
||||
* In den Tooltips für Gewicht und Flächenbindungen wurden die Abstände wieder hergestellt. (e0fcaf1f53)
|
||||
|
||||
[v0.11.4]: https://git.necronda.net/winzer/elwig/releases/tag/v0.11.4
|
||||
|
||||
|
||||
|
||||
|
||||
[v0.11.3][v0.11.3] (2024-09-22) {#v0.11.3}
|
||||
------------------------------------------
|
||||
|
||||
### Behobene Fehler {#v0.11.3-bugfixes}
|
||||
|
||||
* Im Mitglieder-Fenster (`MemberAdminWindow`) wurde das Berechnen der Mitgliederdaten pro Jahr und Mitglied rückgängig gemacht. (1d187c25f3)
|
||||
|
||||
[v0.11.3]: https://git.necronda.net/winzer/elwig/releases/tag/v0.11.3
|
||||
|
||||
|
||||
|
||||
|
||||
[v0.11.2][v0.11.2] (2024-09-22) {#v0.11.2}
|
||||
------------------------------------------
|
||||
|
||||
> [!WARNING]
|
||||
> Aufgrund eines Fehlers kann in dieser Version das Öffnen des Mitglieder-Fensters deutlich länger dauern!
|
||||
>
|
||||
> Es wird empfohlen die nächste Version zu verwenden.
|
||||
|
||||
### Neue Funktionen {#v0.11.2-features}
|
||||
|
||||
* In der Anmeldeliste (`DeliveryAncmtList`) wird die Stamm-KG des Mitgliedes angegeben. (165770fa37)
|
||||
|
@ -7,7 +7,7 @@
|
||||
<UseWPF>true</UseWPF>
|
||||
<PreserveCompilationContext>true</PreserveCompilationContext>
|
||||
<ApplicationIcon>Resources\Images\Elwig.ico</ApplicationIcon>
|
||||
<Version>0.11.2</Version>
|
||||
<Version>0.11.4</Version>
|
||||
<SatelliteResourceLanguages>de-AT</SatelliteResourceLanguages>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<ApplicationManifest>app.manifest</ApplicationManifest>
|
||||
|
@ -242,8 +242,8 @@ namespace Elwig.Services {
|
||||
AddToolTipCell(grid, "Lieferrecht", 0, 4, 1, false, false, true);
|
||||
int rowNum = 1;
|
||||
foreach (var row in data) {
|
||||
if (rowNum == 2 || (rowNum != 1 && row.Item1 != null)) rowNum++;
|
||||
AddToolTipRow(grid, rowNum++, row.Item1, row.Item2, row.Item3, row.Item4, row.Item5);
|
||||
if (rowNum == 2) rowNum++;
|
||||
}
|
||||
return grid;
|
||||
}
|
||||
|
@ -830,8 +830,8 @@ namespace Elwig.Services {
|
||||
wGrid.ColumnDefinitions.Add(new() { Width = new(50) });
|
||||
int rowNum = 0;
|
||||
foreach (var row in weightData) {
|
||||
if (rowNum == 1 || (rowNum != 0 && row.Item1 != null)) rowNum++;
|
||||
AddWeightToolTipRow(wGrid, rowNum++, row.Item1, row.Item2, row.Item3, row.Item4, row.Item5);
|
||||
if (rowNum == 1) rowNum++;
|
||||
}
|
||||
|
||||
var gGrid = new Grid();
|
||||
@ -845,8 +845,8 @@ namespace Elwig.Services {
|
||||
AddToolTipCell(gGrid, "Max.", 0, 4, 1, false, false, true);
|
||||
rowNum = 1;
|
||||
foreach (var row in gradationData) {
|
||||
if (rowNum == 2 || (rowNum != 1 && row.Item1 != null)) rowNum++;
|
||||
AddGradationToolTipRow(gGrid, rowNum++, row.Item1, row.Item2, row.Item3, row.Item4, row.Item5);
|
||||
if (rowNum == 2) rowNum++;
|
||||
}
|
||||
|
||||
return (wGrid, gGrid);
|
||||
|
@ -166,6 +166,11 @@ namespace Elwig.Services {
|
||||
} catch { }
|
||||
var (text, gridData) = await AreaComService.GenerateToolTipData(c, maxKgPerHa);
|
||||
|
||||
var deliveries = await ctx.Deliveries
|
||||
.Where(d => d.MgNr == m.MgNr)
|
||||
.GroupBy(d => d.Year)
|
||||
.ToDictionaryAsync(g => g.Key, g => g.Any());
|
||||
|
||||
await App.MainDispatcher.BeginInvoke(() => {
|
||||
var (d1Grid, _) = DeliveryService.GenerateToolTip(d1GridData, []);
|
||||
var (d2Grid, _) = DeliveryService.GenerateToolTip(d2GridData, []);
|
||||
@ -179,12 +184,13 @@ namespace Elwig.Services {
|
||||
vm.StatusAreaCommitmentInfo = $"{Utils.CurrentLastSeason}";
|
||||
vm.StatusAreaCommitment = text;
|
||||
vm.StatusAreaCommitmentToolTip = grid;
|
||||
vm.MemberHasDeliveries = Enumerable.Range(0, 9999).Select(i => deliveries.GetValueOrDefault(i, false)).ToList();
|
||||
});
|
||||
});
|
||||
|
||||
vm.MemberHasEmail = m.EmailAddresses.Count > 0;
|
||||
vm.MemberCanSendEmail = App.Config.Smtp != null && m.EmailAddresses.Count > 0;
|
||||
vm.MemberHasDeliveries = Enumerable.Range(0, 9999).Select(i => vm.MembersDeliveries.GetValueOrDefault((m.MgNr, i), false)).ToList();
|
||||
vm.MemberHasDeliveries = Enumerable.Range(0, 9999).Select(i => false).ToList();
|
||||
}
|
||||
|
||||
public static async Task<(List<string>, IQueryable<Member>, List<string>)> GetFilters(this MemberAdminViewModel vm, AppDbContext ctx) {
|
||||
|
@ -40,7 +40,6 @@ namespace Elwig.ViewModels {
|
||||
private bool _enableSearchInputs = true;
|
||||
[ObservableProperty]
|
||||
private IEnumerable<bool> _memberHasDeliveries = [ .. Enumerable.Range(0, 9999).Select(i => false) ];
|
||||
public Dictionary<(int, int), bool> MembersDeliveries = [];
|
||||
|
||||
[ObservableProperty]
|
||||
private bool _memberListOrderByMgNr;
|
||||
|
@ -187,10 +187,6 @@ namespace Elwig.Windows {
|
||||
ControlUtils.RenewItemsSource(BranchInput, await ctx.Branches.OrderBy(b => b.Name).ToListAsync());
|
||||
ControlUtils.RenewItemsSource(DefaultKgInput, await ctx.WbKgs.Select(k => k.AtKg).OrderBy(k => k.Name).ToListAsync());
|
||||
|
||||
ViewModel.MembersDeliveries = await ctx.Deliveries
|
||||
.GroupBy(d => new { d.MgNr, d.Year })
|
||||
.ToDictionaryAsync(g => (g.Key.MgNr, g.Key.Year), g => g.Any());
|
||||
|
||||
var seasons = await ctx.Seasons.OrderByDescending(s => s.Year).ToListAsync();
|
||||
Menu_DeliveryConfirmation.Items.Clear();
|
||||
foreach (var s in seasons) {
|
||||
|
Reference in New Issue
Block a user