DeliveryAdminWindow: Add WineLocalityStatistics
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				Test / Run tests (push) Successful in 2m10s
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	Test / Run tests (push) Successful in 2m10s
				
			This commit is contained in:
		@@ -809,6 +809,38 @@ namespace Elwig.Services {
 | 
			
		||||
            Mouse.OverrideCursor = null;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public static async Task GenerateLocalityStatistics(this DeliveryAdminViewModel vm, ExportSubject subject) {
 | 
			
		||||
            using var ctx = new AppDbContext();
 | 
			
		||||
            IQueryable<DeliveryPart> query;
 | 
			
		||||
            List<string> filterNames = [];
 | 
			
		||||
            if (subject == ExportSubject.FromFilters) {
 | 
			
		||||
                var (f, _, q, _, _) = await vm.GetFilters(ctx);
 | 
			
		||||
                query = q;
 | 
			
		||||
                filterNames.AddRange(f);
 | 
			
		||||
 | 
			
		||||
            } else {
 | 
			
		||||
                throw new ArgumentException("Invalid value for ExportSubject");
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            var d = new SaveFileDialog() {
 | 
			
		||||
                FileName = $"Lieferstatistik-{vm.FilterSeason ?? Utils.CurrentLastSeason}.ods",
 | 
			
		||||
                DefaultExt = "ods",
 | 
			
		||||
                Filter = "OpenDocument Format Spreadsheet (*.ods)|*.ods",
 | 
			
		||||
                Title = $"Lieferstatistik pro Ort speichern unter - Elwig"
 | 
			
		||||
            };
 | 
			
		||||
            if (d.ShowDialog() == true) {
 | 
			
		||||
                Mouse.OverrideCursor = Cursors.AppStarting;
 | 
			
		||||
                try {
 | 
			
		||||
                    using var ods = new OdsFile(d.FileName);
 | 
			
		||||
                    var tbl = await WineLocalityStatisticsData.FromQuery(query, filterNames);
 | 
			
		||||
                    await ods.AddTable(tbl);
 | 
			
		||||
                } catch (Exception exc) {
 | 
			
		||||
                    MessageBox.Show(exc.Message, "Fehler", MessageBoxButton.OK, MessageBoxImage.Error);
 | 
			
		||||
                }
 | 
			
		||||
                Mouse.OverrideCursor = null;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public static async Task GenerateDeliveryDepreciationList(this DeliveryAdminViewModel vm, ExportSubject subject, ExportMode mode) {
 | 
			
		||||
            using var ctx = new AppDbContext();
 | 
			
		||||
            IQueryable<DeliveryPart> query;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user