2025-04-15 12:10:19 +02:00

332 lines
21 KiB
XML

<Window x:Class="GestoreTrimestrale.MainWindow"
xmlns:dc="clr-namespace:GestoreTrimestrale.Controls"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:GestoreTrimestrale"
Title="Gestore Trimestrale"
mc:Ignorable="d" Height="610" Width="565" Icon="Bulb.ico" Closing="Window_Closing">
<Window.Resources>
</Window.Resources>
<Grid MinHeight="300" MinWidth="549">
<Grid.RowDefinitions>
<RowDefinition Height="528.2*"/>
<RowDefinition Height="120*" />
</Grid.RowDefinitions>
<TabControl Grid.Row="0" x:Name="tabControl">
<TabItem Header="Processing">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition MinHeight="90" Height="*"/>
<RowDefinition MinHeight="90" Height="*"/>
</Grid.RowDefinitions>
<Grid VerticalAlignment="Center" Grid.Row="0">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="45*"/>
<ColumnDefinition Width="70*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Number of concurrent processes:" Margin="5"/>
</Grid>
<Grid Grid.Column="1">
<TextBox x:Name="t_conProcesses" PreviewTextInput="t_PreviewTextInputInteger" Margin="5" VerticalContentAlignment="Center" HorizontalAlignment="Left" Height="23" TextWrapping="Wrap" Text="TextBox" Width="97" DataObject.Pasting="TextBoxPasting"/>
</Grid>
</Grid>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="45*"/>
<ColumnDefinition Width="70*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Number of Client's per zip file:" Margin="5"/>
</Grid>
<Grid Grid.Column="1">
<TextBox x:Name="t_cliPerZip" DataObject.Pasting="TextBoxPasting" PreviewTextInput="t_PreviewTextInputInteger" Margin="5" VerticalContentAlignment="Center" HorizontalAlignment="Left" Height="23" TextWrapping="Wrap" Text="TextBox" Width="97"/>
</Grid>
</Grid>
<Grid Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="45*"/>
<ColumnDefinition Width="70*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Logging interval (minutes):" Margin="5"/>
</Grid>
<Grid Grid.Column="1">
<TextBox x:Name="t_logWaitTime" DataObject.Pasting="TextBoxPasting" PreviewTextInput="t_PreviewTextInputInteger" Margin="5" VerticalContentAlignment="Center" HorizontalAlignment="Left" Height="23" TextWrapping="Wrap" Text="TextBox" Width="98"/>
</Grid>
</Grid>
<Grid Grid.Row="3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="45*"/>
<ColumnDefinition Width="70*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Counters update interval (minutes):" Margin="5"/>
</Grid>
<Grid Grid.Column="1">
<TextBox x:Name="t_countersWaitTime" DataObject.Pasting="TextBoxPasting" PreviewTextInput="t_PreviewTextInputInteger" Margin="5" VerticalContentAlignment="Center" HorizontalAlignment="Left" Height="23" TextWrapping="Wrap" Text="TextBox" Width="98"/>
</Grid>
</Grid>
<Grid Grid.Row="4">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="45*"/>
<ColumnDefinition Width="70*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Zip process &quot;wait&quot; interval (minutes):" Margin="5"/>
</Grid>
<Grid Grid.Column="1">
<TextBox x:Name="t_zipWaitTime" DataObject.Pasting="TextBoxPasting" PreviewTextInput="t_PreviewTextInputInteger" Margin="5" VerticalContentAlignment="Center" HorizontalAlignment="Left" Height="23" TextWrapping="Wrap" Text="TextBox" Width="98"/>
</Grid>
</Grid>
<Grid Grid.Row="5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="48*"/>
<ColumnDefinition Width="55*"/>
<ColumnDefinition Width="70*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<CheckBox x:Name="t_autoZip" Margin="5" VerticalContentAlignment="Center" Content="Auto pack documents" HorizontalAlignment="Left" Click="t_autoZip_Click" />
</Grid>
<Grid Grid.Column="1">
<StackPanel Margin="5" Orientation="Horizontal">
<Button x:Name="button2" Content="Start Zipping" HorizontalAlignment="Left" Grid.Row="4" VerticalAlignment="Top" Width="131" IsEnabled="False" Click="button2_Click"/>
<Viewbox Name="SpinningCircleZip" Width="15" Visibility="Hidden" Height="15" Margin="7,0,0,0"
HorizontalAlignment="Center"
VerticalAlignment="Center">
<dc:BusyIndicator />
</Viewbox>
</StackPanel>
</Grid>
<Grid Grid.Column="2">
<Button x:Name="button" Click="button_Click" VerticalContentAlignment="Center" Content="Start Processing" HorizontalAlignment="Right" Margin="0,4,5.4,0" Width="97" Height="23" RenderTransformOrigin="1.485,-8.407" VerticalAlignment="Top"/>
</Grid>
</Grid>
</Grid>
<Grid Grid.Row="1">
<DataGrid Name="t_log" IsReadOnly="True" SelectionUnit="Cell" Margin="5">
<DataGrid.Columns>
<DataGridTextColumn Header="Time" Binding="{Binding Time}" />
<DataGridTextColumn Header="Status" Binding="{Binding Status}" />
<DataGridTextColumn Header="Fiscal Code" Binding="{Binding FiscalCode}" />
<DataGridTextColumn Header="Rete" Binding="{Binding Rete}" />
<DataGridTextColumn Header="Contract Type" Binding="{Binding ContractType}" />
<DataGridTextColumn Header="Report Type" Binding="{Binding ReportType}" />
<DataGridTextColumn Header="Message" Binding="{Binding Message}" Width="*" />
</DataGrid.Columns>
</DataGrid>
</Grid>
<Grid Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="2*" />
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<DataGrid Name="t_counters_elab" AutoGenerateColumns="False" IsReadOnly="True" Margin="5">
<DataGrid.Columns>
<DataGridTextColumn Header="Elab" Binding="{Binding Elab}" />
<DataGridTextColumn Header="Rete" Binding="{Binding Rete}" />
<DataGridTextColumn Header="Count" Width ="*" Binding="{Binding Count}" />
</DataGrid.Columns>
</DataGrid>
</Grid>
<Grid Grid.Column="1">
<Grid.RowDefinitions>
<RowDefinition Height="53*"/>
<RowDefinition Height="108*"/>
</Grid.RowDefinitions>
<DataGrid Name="t_counters_stato" AutoGenerateColumns="False" IsReadOnly="True" Margin="5" Grid.RowSpan="2">
<DataGrid.Columns>
<DataGridTextColumn Header="Stato Report" Binding="{Binding StatoReport}" />
<DataGridTextColumn Header="Rete" Binding="{Binding Rete}" />
<DataGridTextColumn Header="Count" Width ="*" Binding="{Binding Count}" />
</DataGrid.Columns>
</DataGrid>
</Grid>
<Grid Grid.Column="2" VerticalAlignment="Top">
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
<RowDefinition Height="auto"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0" Margin="5">
<ProgressBar Name="statisticsProgressBar" Height="20" Minimum="0" Maximum="100" Value="0" />
<Label Name="progressBarPercentage" HorizontalAlignment="Center" Content="0%"/>
</Grid>
<Grid Grid.Row="1" Margin="5">
<Viewbox Name="SpinningCircle" Width="50" Visibility="Hidden" Height="50"
HorizontalAlignment="Center"
VerticalAlignment="Center">
<dc:BusyIndicator />
</Viewbox>
</Grid>
</Grid>
</Grid>
</Grid>
</TabItem>
<TabItem Header="FTP Transfer">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition MinHeight="170px" Height="*"/>
</Grid.RowDefinitions>
<Grid VerticalAlignment="Center" Grid.Row="0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="7*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Ftp server location:" Margin="5"/>
</Grid>
<Grid Grid.Column="1">
<TextBox x:Name="t_ftpServer" PreviewTextInput="t_PreviewTextInputString" VerticalContentAlignment="Center" HorizontalAlignment="Stretch" Height="23" TextWrapping="Wrap" Text="TextBox" Margin="5" Width="410"/>
</Grid>
</Grid>
<Grid VerticalAlignment="Center" Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="7*"/>
<ColumnDefinition Width="20*"/>
<ColumnDefinition Width="10*"/>
<ColumnDefinition Width="20*"/>
<ColumnDefinition Width="15*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Label Content="Login:" Margin="5"/>
</Grid>
<Grid Grid.Column="1">
<TextBox x:Name="t_ftpUser" PreviewTextInput="t_PreviewTextInputString" VerticalContentAlignment="Center" HorizontalAlignment="Stretch" Height="23" Margin="5"/>
</Grid>
<Grid Grid.Column="2">
<Label Content="Password:" Margin="5"/>
</Grid>
<Grid Grid.Column="3">
<PasswordBox x:Name="t_ftpPassword" PreviewTextInput="t_PreviewTextInputString" VerticalContentAlignment="Center" Margin="5" Height="23"/>
</Grid>
<Grid Grid.Column="4">
<Button x:Name="button1" VerticalContentAlignment="Center" Content="Start sending" HorizontalAlignment="Right" Margin="0,6,5.4,0" Width="97" Height="23" Click="button1_Click" VerticalAlignment="Top"/>
</Grid>
</Grid>
<Grid VerticalAlignment="Center" Grid.Row="2"/>
<Grid Grid.Row="3">
<Border BorderThickness="1" BorderBrush="Black" Margin="5">
<TextBlock x:Name="t_ftpLog" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Padding="5" TextWrapping="Wrap" Text="sftp log" Background="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"/>
</Border>
</Grid>
</Grid>
</TabItem>
<TabItem Header="Advanced Settings">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="35*"/>
<ColumnDefinition Width="70*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid Grid.Column="0" Grid.Row="0">
<Label Content="Database for processing:" Margin="5"/>
</Grid>
<Grid Grid.Column="1" Grid.Row="0">
<TextBox x:Name="t_connectionString" PreviewTextInput="t_PreviewTextInputString" VerticalContentAlignment="Center" HorizontalAlignment="Stretch" Margin="5" VerticalAlignment="Top" Height="23"/>
</Grid>
<Grid Grid.Column="0" Grid.Row="1">
<Label Content="Database for report manager:" Margin="5"/>
</Grid>
<Grid Grid.Column="1" Grid.Row="1">
<TextBox x:Name="t_connectionString_reportManager" PreviewTextInput="t_PreviewTextInputString" VerticalContentAlignment="Center" HorizontalAlignment="Stretch" Margin="5" VerticalAlignment="Top" Height="23"/>
</Grid>
<Grid Grid.Column="0" Grid.Row="2">
<Label Content="Query Contratti:" Margin="5"/>
</Grid>
<Grid Grid.Column="1" Grid.Row="2">
<TextBox x:Name="t_qContratti" PreviewTextInput="t_PreviewTextInputString" VerticalContentAlignment="Center" HorizontalAlignment="Stretch" Height="23" Margin="5" Text="TextBox"/>
</Grid>
<Grid Grid.Column="0" Grid.Row="3">
<Label Content="Save PDF to DISK:" Margin="5"/>
</Grid>
<Grid Grid.Column="1" Grid.Row="3">
<ComboBox x:Name="t_saveToDisk" VerticalContentAlignment="Center" HorizontalAlignment="Left" Margin="5" Height="23" Width="55" SelectionChanged="t_saveToDisk_SelectionChanged_1"/>
</Grid>
<Grid Grid.Column="0" Grid.Row="4">
<Label Content="PDF Process Folder:" Margin="5"/>
</Grid>
<Grid Grid.Column="1" Grid.Row="4">
<TextBox x:Name="t_pdfProcessFolder" PreviewTextInput="t_PreviewTextInputString" VerticalContentAlignment="Center" HorizontalAlignment="Stretch" Height="23" Margin="5" TextWrapping="Wrap" Text="TextBox" />
</Grid>
<Grid Grid.Column="0" Grid.Row="5">
<Label Content="PDF Output Folder:" Margin="5"/>
</Grid>
<Grid Grid.Column="1" Grid.Row="5">
<TextBox x:Name="t_pdfOutputFolder" PreviewTextInput="t_PreviewTextInputString" VerticalContentAlignment="Center" HorizontalAlignment="Stretch" Height="23" Margin="5" TextWrapping="Wrap" Text="TextBox"/>
</Grid>
<Grid Grid.Column="0" Grid.Row="6">
<Label Content="Zip Folder:" Margin="5"/>
</Grid>
<Grid Grid.Column="1" Grid.Row="6">
<TextBox x:Name="t_zipFolder" PreviewTextInput="t_PreviewTextInputString" VerticalContentAlignment="Center" HorizontalAlignment="Stretch" Height="23" Margin="5" TextWrapping="Wrap" Text="TextBox"/>
</Grid>
<Grid Grid.Column="0" Grid.Row="7">
<Label Content="Zip Backup Folder:" Margin="5"/>
</Grid>
<Grid Grid.Column="1" Grid.Row="7">
<TextBox x:Name="t_zipBackupFolder" PreviewTextInput="t_PreviewTextInputString" VerticalContentAlignment="Center" HorizontalAlignment="Stretch" Height="23" Margin="5" TextWrapping="Wrap" Text="TextBox"/>
</Grid>
<Grid Grid.Column="0" Grid.Row="8">
<Label Content="Sql commands timeout (s):" Margin="5"/>
</Grid>
<Grid Grid.Column="1" Grid.Row="8">
<TextBox x:Name="t_sqlCommandTimeout" DataObject.Pasting="TextBoxPasting" PreviewTextInput="t_PreviewTextInputInteger" VerticalContentAlignment="Center" HorizontalAlignment="Stretch" Height="23" Margin="5" TextWrapping="Wrap" Text="TextBox"/>
</Grid>
</Grid>
</TabItem>
</TabControl>
<Grid Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition Height="28"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0" Height="28" HorizontalAlignment="Center" VerticalAlignment="Top">
<Label Foreground="Red" Content="You must save the config in order for any change to take place."/>
</Grid>
<Grid Grid.Row="1" >
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="240"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<TextBlock Margin="5" Name="ConfigPathLabel" VerticalAlignment="Center" TextWrapping="Wrap"/>
</Grid>
<StackPanel Grid.Column="1" Orientation="Horizontal" HorizontalAlignment="Right">
<Button x:Name="buttonLoadConfig" Content="Load configuration" HorizontalAlignment="Right" Height="23" VerticalAlignment="Center" Width="111" Margin="5" Click="buttonLoadConfig_Click"/>
<Button x:Name="buttonSaveConfig" Content="Save configuration" HorizontalAlignment="Right" Height="23" VerticalAlignment="Center" Width="111" Margin="5" Click="buttonSaveConfig_Click"/>
</StackPanel>
</Grid>
</Grid>
</Grid>
</Window>