Compare commits
4
Commits
fa19d4dcb5
..
dev
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
09642e643c | ||
|
|
b262e17293 | ||
|
|
4f4d026b7b | ||
|
|
abb9e5a577 |
No files matched your search
@@ -70,7 +70,7 @@ namespace Elwig.Documents {
|
|||||||
doc.Add(new KernedParagraph(12).Add(Bold($"Flächenbindungen per {Date:dd.MM.yyyy}")).SetMargins(firstOnPage ? 0 : 24, 0, 6, 0));
|
doc.Add(new KernedParagraph(12).Add(Bold($"Flächenbindungen per {Date:dd.MM.yyyy}")).SetMargins(firstOnPage ? 0 : 24, 0, 6, 0));
|
||||||
doc.Add(NewAreaCmtTable(ActiveAreaCommitments));
|
doc.Add(NewAreaCmtTable(ActiveAreaCommitments));
|
||||||
}
|
}
|
||||||
if (App.Client.EnableMemberHistory) {
|
if (App.Client.EnableMemberHistory && App.Client.ModeMemberDataSheetShares > 0) {
|
||||||
bool firstOnPage = false;
|
bool firstOnPage = false;
|
||||||
if (pdf.GetNumberOfPages() == 1) {
|
if (pdf.GetNumberOfPages() == 1) {
|
||||||
doc.Add(new AreaBreak(AreaBreakType.NEXT_PAGE));
|
doc.Add(new AreaBreak(AreaBreakType.NEXT_PAGE));
|
||||||
|
|||||||
+2
-2
@@ -25,8 +25,8 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="bblanchon.PDFium.Win32" Version="156.0.8076" />
|
<PackageReference Include="bblanchon.PDFium.Win32" Version="156.0.8076" />
|
||||||
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.2" />
|
<PackageReference Include="CommunityToolkit.Mvvm" Version="8.4.2" />
|
||||||
<PackageReference Include="itext" Version="9.7.0" />
|
<PackageReference Include="itext" Version="9.8.0" />
|
||||||
<PackageReference Include="itext.bouncy-castle-adapter" Version="9.7.0" />
|
<PackageReference Include="itext.bouncy-castle-adapter" Version="9.8.0" />
|
||||||
<PackageReference Include="LinqKit" Version="1.3.11" />
|
<PackageReference Include="LinqKit" Version="1.3.11" />
|
||||||
<PackageReference Include="MailKit" Version="4.18.1" />
|
<PackageReference Include="MailKit" Version="4.18.1" />
|
||||||
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="10.0.12" />
|
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="10.0.12" />
|
||||||
|
|||||||
@@ -61,6 +61,7 @@ namespace Elwig.Helpers {
|
|||||||
public int ModeBusinessShares;
|
public int ModeBusinessShares;
|
||||||
public bool HasRedWhite => ModeBusinessShares == 1;
|
public bool HasRedWhite => ModeBusinessShares == 1;
|
||||||
|
|
||||||
|
public int ModeMemberDataSheetShares;
|
||||||
public int ModeDeliveryNoteStats;
|
public int ModeDeliveryNoteStats;
|
||||||
public int ModeWineQualityStatistics;
|
public int ModeWineQualityStatistics;
|
||||||
public int OrderingMemberList;
|
public int OrderingMemberList;
|
||||||
@@ -127,6 +128,10 @@ namespace Elwig.Helpers {
|
|||||||
case "SIMPLE": ModeBusinessShares = 0; break;
|
case "SIMPLE": ModeBusinessShares = 0; break;
|
||||||
case "RED_WHITE": ModeBusinessShares = 1; break;
|
case "RED_WHITE": ModeBusinessShares = 1; break;
|
||||||
}
|
}
|
||||||
|
switch (parameters.GetValueOrDefault("MODE_MEMBERDATASHEET_SHARES", "FULL")?.ToUpper()) {
|
||||||
|
case "NONE": ModeMemberDataSheetShares = 0; break;
|
||||||
|
case "FULL": ModeMemberDataSheetShares = 1; break;
|
||||||
|
}
|
||||||
switch (parameters.GetValueOrDefault("MODE_DELIVERYNOTE_STATS", "SHORT")?.ToUpper()) {
|
switch (parameters.GetValueOrDefault("MODE_DELIVERYNOTE_STATS", "SHORT")?.ToUpper()) {
|
||||||
case "NONE": ModeDeliveryNoteStats = 0; break;
|
case "NONE": ModeDeliveryNoteStats = 0; break;
|
||||||
case "GA_ONLY": ModeDeliveryNoteStats = 1; break;
|
case "GA_ONLY": ModeDeliveryNoteStats = 1; break;
|
||||||
@@ -209,6 +214,11 @@ namespace Elwig.Helpers {
|
|||||||
case 0: businessShares = "SIMPLE"; break;
|
case 0: businessShares = "SIMPLE"; break;
|
||||||
case 1: businessShares = "RED_WHITE"; break;
|
case 1: businessShares = "RED_WHITE"; break;
|
||||||
}
|
}
|
||||||
|
string memberDataSheetShares = "FULL";
|
||||||
|
switch (ModeMemberDataSheetShares) {
|
||||||
|
case 0: memberDataSheetShares = "NONE"; break;
|
||||||
|
case 1: memberDataSheetShares = "FULL"; break;
|
||||||
|
}
|
||||||
string deliveryNoteStats = "SHORT";
|
string deliveryNoteStats = "SHORT";
|
||||||
switch (ModeDeliveryNoteStats) {
|
switch (ModeDeliveryNoteStats) {
|
||||||
case 0: deliveryNoteStats = "NONE"; break;
|
case 0: deliveryNoteStats = "NONE"; break;
|
||||||
@@ -279,6 +289,7 @@ namespace Elwig.Helpers {
|
|||||||
("CLIENT_ORGANIC_AUTHORITYCODE", OrganicAuthorityCode),
|
("CLIENT_ORGANIC_AUTHORITYCODE", OrganicAuthorityCode),
|
||||||
("ENABLE_MEMBERHISTORY", EnableMemberHistory ? "YES" : "NO"),
|
("ENABLE_MEMBERHISTORY", EnableMemberHistory ? "YES" : "NO"),
|
||||||
("MODE_BUSINESSSHARES", businessShares),
|
("MODE_BUSINESSSHARES", businessShares),
|
||||||
|
("MODE_MEMBERDATASHEET_SHARES", memberDataSheetShares),
|
||||||
("MODE_DELIVERYNOTE_STATS", deliveryNoteStats),
|
("MODE_DELIVERYNOTE_STATS", deliveryNoteStats),
|
||||||
("MODE_WINEQUALITYSTATISTICS", modeWineQualityStatistics),
|
("MODE_WINEQUALITYSTATISTICS", modeWineQualityStatistics),
|
||||||
("ORDERING_MEMBERLIST", orderingMemberList),
|
("ORDERING_MEMBERLIST", orderingMemberList),
|
||||||
|
|||||||
@@ -1,29 +0,0 @@
|
|||||||
using Elwig.Models.Dtos;
|
|
||||||
using Elwig.Models.Entities;
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
|
|
||||||
namespace Elwig.Helpers.Export {
|
|
||||||
public class MemberMovement : IExporter<MemberHistory> {
|
|
||||||
|
|
||||||
public static string FileExtension => "ods";
|
|
||||||
|
|
||||||
private readonly OdsFile _ods;
|
|
||||||
|
|
||||||
public MemberMovement(string filename) {
|
|
||||||
_ods = new OdsFile(filename);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Dispose() {
|
|
||||||
GC.SuppressFinalize(this);
|
|
||||||
_ods.Dispose();
|
|
||||||
}
|
|
||||||
|
|
||||||
public async Task ExportAsync(IEnumerable<MemberHistory> data, IProgress<double>? progress = null) {
|
|
||||||
using var ctx = new AppDbContext();
|
|
||||||
var tbl = MemberMovementData.FromMemberHistory("", data, await ctx.GetMemberHistory());
|
|
||||||
await _ods.AddTable(tbl);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -65,12 +65,22 @@ namespace Elwig.Models.Dtos {
|
|||||||
cat = 1;
|
cat = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
var a = h.FromMember ?? h.ToMember;
|
Member a;
|
||||||
var b = (a != h.ToMember) ? h.ToMember : null;
|
Member? b = null;
|
||||||
if (a == null) throw new ArgumentException();
|
if (h.FromMember != null && h.ToMember != null) {
|
||||||
|
if (cat <= 1) {
|
||||||
if (b != null && cat <= 1) {
|
a = h.ToMember;
|
||||||
(b, a) = (a, b);
|
b = h.FromMember;
|
||||||
|
} else {
|
||||||
|
a = h.FromMember;
|
||||||
|
b = h.ToMember;
|
||||||
|
}
|
||||||
|
} else if (h.FromMember != null) {
|
||||||
|
a = h.FromMember;
|
||||||
|
} else if (h.ToMember != null) {
|
||||||
|
a = h.ToMember;
|
||||||
|
} else {
|
||||||
|
throw new ArgumentException();
|
||||||
}
|
}
|
||||||
|
|
||||||
var oldA = history[a.MgNr].GetValueOrDefault(h.DateNotice);
|
var oldA = history[a.MgNr].GetValueOrDefault(h.DateNotice);
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
using Elwig.Helpers;
|
using Elwig.Helpers;
|
||||||
using Elwig.Helpers.Export;
|
using Elwig.Helpers.Export;
|
||||||
using Elwig.Models;
|
using Elwig.Models;
|
||||||
|
using Elwig.Models.Dtos;
|
||||||
using Elwig.Models.Entities;
|
using Elwig.Models.Entities;
|
||||||
using Elwig.ViewModels;
|
using Elwig.ViewModels;
|
||||||
using Microsoft.EntityFrameworkCore;
|
using Microsoft.EntityFrameworkCore;
|
||||||
@@ -111,8 +112,9 @@ namespace Elwig.Services {
|
|||||||
await Utils.RunForeground(async () => {
|
await Utils.RunForeground(async () => {
|
||||||
using var ctx = new AppDbContext();
|
using var ctx = new AppDbContext();
|
||||||
var hist = await ctx.MemberHistory.Where(h => !h.CompanyHasSigned).ToListAsync();
|
var hist = await ctx.MemberHistory.Where(h => !h.CompanyHasSigned).ToListAsync();
|
||||||
using var exporter = new MemberMovement(filename);
|
var data = MemberMovementData.FromMemberHistory($"Ausstehend ({today:dd.MM.yyyy})", hist, await ctx.GetMemberHistory());
|
||||||
await exporter.ExportAsync(hist);
|
using var ods = new OdsFile(filename);
|
||||||
|
await ods.AddTable(data);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -611,6 +611,13 @@
|
|||||||
<TabItem Header="Textelemente">
|
<TabItem Header="Textelemente">
|
||||||
<ScrollViewer VerticalScrollBarVisibility="Visible">
|
<ScrollViewer VerticalScrollBarVisibility="Visible">
|
||||||
<StackPanel>
|
<StackPanel>
|
||||||
|
<GroupBox Header="Stammdatenblatt" Margin="10,10,10,10" Height="70">
|
||||||
|
<Grid>
|
||||||
|
<CheckBox x:Name="ModeMemberDataSheetShares" Content="Verlauf der Geschäftsanteile anzeigen" Margin="15,15,10,15"
|
||||||
|
HorizontalAlignment="Left" VerticalAlignment="Top"
|
||||||
|
Checked="CheckBox_Changed" Unchecked="CheckBox_Changed"/>
|
||||||
|
</Grid>
|
||||||
|
</GroupBox>
|
||||||
<GroupBox Header="Lieferschein" Margin="10,10,10,10" Height="180">
|
<GroupBox Header="Lieferschein" Margin="10,10,10,10" Height="180">
|
||||||
<Grid>
|
<Grid>
|
||||||
<Grid.ColumnDefinitions>
|
<Grid.ColumnDefinitions>
|
||||||
|
|||||||
@@ -338,6 +338,7 @@ namespace Elwig.Windows {
|
|||||||
ClientEmailAddressInput.Text = p.EmailAddress;
|
ClientEmailAddressInput.Text = p.EmailAddress;
|
||||||
ClientWebsiteInput.Text = p.Website;
|
ClientWebsiteInput.Text = p.Website;
|
||||||
|
|
||||||
|
ModeMemberDataSheetShares.IsChecked = p.ModeMemberDataSheetShares > 0;
|
||||||
TextElementDeliveryNote.Text = p.TextDeliveryNote;
|
TextElementDeliveryNote.Text = p.TextDeliveryNote;
|
||||||
switch (p.ModeDeliveryNoteStats) {
|
switch (p.ModeDeliveryNoteStats) {
|
||||||
case 0: ModeDeliveryNoteNone.IsChecked = true; break;
|
case 0: ModeDeliveryNoteNone.IsChecked = true; break;
|
||||||
@@ -381,6 +382,7 @@ namespace Elwig.Windows {
|
|||||||
|
|
||||||
p.ModeBusinessShares = ParameterBusinessShareModeInput.SelectedIndex;
|
p.ModeBusinessShares = ParameterBusinessShareModeInput.SelectedIndex;
|
||||||
p.EnableMemberHistory = ParameterBusinessShareHistoryInput.IsChecked ?? false;
|
p.EnableMemberHistory = ParameterBusinessShareHistoryInput.IsChecked ?? false;
|
||||||
|
p.ModeMemberDataSheetShares = ModeMemberDataSheetShares.IsChecked == true ? 1 : 0;
|
||||||
p.TextDeliveryNote = string.IsNullOrWhiteSpace(TextElementDeliveryNote.Text) ? null : TextElementDeliveryNote.Text;
|
p.TextDeliveryNote = string.IsNullOrWhiteSpace(TextElementDeliveryNote.Text) ? null : TextElementDeliveryNote.Text;
|
||||||
p.ModeDeliveryNoteStats = (ModeDeliveryNoteNone.IsChecked == true) ? 0 : (ModeDeliveryNoteGaOnly.IsChecked == true) ? 1 : (ModeDeliveryNoteShort.IsChecked == true) ? 2 : (ModeDeliveryNoteFull.IsChecked == true) ? 3 : 2;
|
p.ModeDeliveryNoteStats = (ModeDeliveryNoteNone.IsChecked == true) ? 0 : (ModeDeliveryNoteGaOnly.IsChecked == true) ? 1 : (ModeDeliveryNoteShort.IsChecked == true) ? 2 : (ModeDeliveryNoteFull.IsChecked == true) ? 3 : 2;
|
||||||
p.TextDeliveryConfirmation = string.IsNullOrWhiteSpace(TextElementDeliveryConfirmation.Text) ? null : TextElementDeliveryConfirmation.Text;
|
p.TextDeliveryConfirmation = string.IsNullOrWhiteSpace(TextElementDeliveryConfirmation.Text) ? null : TextElementDeliveryConfirmation.Text;
|
||||||
|
|||||||
Reference in new issue
Block a user