Verschiedene Oberflächen + bessere UI
This commit is contained in:
@@ -99,6 +99,9 @@
|
||||
<Compile Include="View\Detail\AI\AiConfigView.xaml.cs">
|
||||
<DependentUpon>AiConfigView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="View\Detail\AI\AiConversationChatModalPopup.xaml.cs">
|
||||
<DependentUpon>AiConversationChatModalPopup.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="View\TemplateSelectors\AiConversationMessageTemplateSelector.cs" />
|
||||
<Compile Include="View\Windows\AnimatedBeWoWindow.xaml.cs">
|
||||
<DependentUpon>AnimatedBeWoWindow.xaml</DependentUpon>
|
||||
@@ -107,6 +110,10 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="View\Detail\AI\AiConversationChatModalPopup.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="View\Windows\AnimatedBeWoWindow.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -439,7 +446,7 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="View\Detail\AiConversationChatView.xaml">
|
||||
<Page Include="View\Detail\AI\AiConversationChatView.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
@@ -1374,7 +1381,7 @@
|
||||
<Compile Include="View\Detail\Administration\SoziotherapieSettingsView.xaml.cs">
|
||||
<DependentUpon>SoziotherapieSettingsView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="View\Detail\AiConversationChatView.xaml.cs">
|
||||
<Compile Include="View\Detail\AI\AiConversationChatView.xaml.cs">
|
||||
<DependentUpon>AiConversationChatView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="View\Detail\CustomerVermittlungArbeitView.xaml.cs">
|
||||
|
||||
@@ -608,11 +608,11 @@
|
||||
Grid.ColumnSpan="2"
|
||||
Padding="5,5,5,5"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch">
|
||||
VerticalAlignment="Stretch">
|
||||
<ContentPresenter
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
Margin="0,0,0,0"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
Content="{TemplateBinding Content}"
|
||||
ContentStringFormat="{TemplateBinding ContentStringFormat}"
|
||||
ContentTemplate="{TemplateBinding ContentTemplate}"
|
||||
|
||||
@@ -52,8 +52,6 @@ namespace BeWo
|
||||
|
||||
public static MainControl MainControl;
|
||||
|
||||
public static AnimatedBeWoWindow CurrentAnimatedBeWoWindow;
|
||||
|
||||
public static string ShortVersion = "3.24";
|
||||
|
||||
public static string Version = "Version 3.24";
|
||||
@@ -1350,6 +1348,10 @@ namespace BeWo
|
||||
{
|
||||
abc.Close();
|
||||
}
|
||||
else if (title.IndexOf("Fenster") >= 0)
|
||||
{
|
||||
abc.Close();
|
||||
}
|
||||
}
|
||||
|
||||
MainControl.HideCurrentModalViewWindows();
|
||||
|
||||
@@ -25,6 +25,7 @@ using BeWo.View.Detail.Zeiterfassung;
|
||||
using BeWo.View.Document;
|
||||
using BeWo.View.Master;
|
||||
using BeWo.View.Navigation;
|
||||
using BeWo.View.Windows;
|
||||
using BeWo.ViewModel;
|
||||
|
||||
using BS.Shared;
|
||||
@@ -177,6 +178,8 @@ namespace BeWo
|
||||
UpdateMandator();
|
||||
}
|
||||
|
||||
public AnimatedBeWoWindow CurrentAnimatedBeWoWindow { get; set; }
|
||||
|
||||
public List<ModalViewWindow> OpenedModalViewWindows { get; set; }
|
||||
|
||||
internal Dictionary<UIContext, BeWoView> Views
|
||||
@@ -464,6 +467,16 @@ namespace BeWo
|
||||
}
|
||||
}
|
||||
|
||||
public void ShowViewAsModalPopup(string title, Control control, HorizontalAlignment horizontalAlignment = HorizontalAlignment.Center, VerticalAlignment verticalAlignment = VerticalAlignment.Center)
|
||||
{
|
||||
var groupbox = new GroupBox();
|
||||
|
||||
groupbox.Header = title;
|
||||
groupbox.Content = control;
|
||||
|
||||
ShowControlAsModalPopup(groupbox, horizontalAlignment, verticalAlignment);
|
||||
}
|
||||
|
||||
public void ShowControlAsModalPopup(Control control)
|
||||
{
|
||||
ShowControlAsModalPopup(control, HorizontalAlignment.Center, VerticalAlignment.Center);
|
||||
@@ -491,7 +504,7 @@ namespace BeWo
|
||||
Grid.SetColumnSpan(control, 3);
|
||||
Grid.SetRowSpan(control, 3);
|
||||
grid_main.Children.Add(control);
|
||||
Panel.SetZIndex(control, int.MaxValue);
|
||||
Panel.SetZIndex(control, 1000);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -928,7 +941,7 @@ namespace BeWo
|
||||
|
||||
grid_main.Children.Add(ModalPopupBackGround);
|
||||
|
||||
Panel.SetZIndex(ModalPopupBackGround, int.MaxValue);
|
||||
Panel.SetZIndex(ModalPopupBackGround, 500);
|
||||
}
|
||||
|
||||
private void logoutanimation_Completed(object sender, EventArgs e)
|
||||
|
||||
@@ -1007,10 +1007,10 @@ namespace BeWo.ServiceProxy
|
||||
Monitor.Enter(_Lock);
|
||||
if ((++_RunningAsyncs) == 1 && BeWoApp.MainControl != null)
|
||||
{
|
||||
if (BeWoApp.CurrentAnimatedBeWoWindow is null)
|
||||
if (BeWoApp.MainControl.CurrentAnimatedBeWoWindow is null)
|
||||
BeWoApp.MainControl.StartWaiting();
|
||||
else
|
||||
BeWoApp.CurrentAnimatedBeWoWindow.StartWaiting();
|
||||
BeWoApp.MainControl.CurrentAnimatedBeWoWindow.StartWaiting();
|
||||
}
|
||||
|
||||
Monitor.Exit(_Lock);
|
||||
@@ -1021,7 +1021,7 @@ namespace BeWo.ServiceProxy
|
||||
Monitor.Enter(_Lock);
|
||||
if ((--_RunningAsyncs) == 0 && BeWoApp.MainControl != null)
|
||||
{
|
||||
BeWoApp.CurrentAnimatedBeWoWindow?.EndWaiting();
|
||||
BeWoApp.MainControl.CurrentAnimatedBeWoWindow?.EndWaiting();
|
||||
BeWoApp.MainControl.EndWaiting();
|
||||
}
|
||||
|
||||
|
||||
@@ -3,7 +3,8 @@
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:controls="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:uc="clr-namespace:BeWo.View.Controls" xmlns:templateselectors="clr-namespace:BeWo.View.TemplateSelectors">
|
||||
xmlns:templateselectors="clr-namespace:BeWo.View.TemplateSelectors"
|
||||
xmlns:uc="clr-namespace:BeWo.View.Controls">
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
|
||||
<ResourceDictionary Source="Colors\Colors.xaml" />
|
||||
@@ -43,6 +44,6 @@
|
||||
<Style BasedOn="{StaticResource BaseRadioButton}" TargetType="RadioButton" />
|
||||
<Style BasedOn="{StaticResource TextBoxBase}" TargetType="TextBox" />
|
||||
<Style BasedOn="{StaticResource BaseTextEdit}" TargetType="dxe:TextEdit" />
|
||||
<!-- Default Styles -->
|
||||
<!-- Default Styles -->
|
||||
|
||||
</ResourceDictionary>
|
||||
@@ -1,5 +1,6 @@
|
||||
using BeWo.View.Controls;
|
||||
using BeWo.View.Detail;
|
||||
using BeWo.View.Detail.AI;
|
||||
using BeWo.View.Windows;
|
||||
using BeWo.ViewModel;
|
||||
using BS.Shared.Extensions;
|
||||
@@ -23,11 +24,7 @@ namespace BeWo.View
|
||||
control.ViewModel.UIContext = (int)(UIContext.ServiceRecord);
|
||||
control.ViewModel.ContextBeWoObjects = context;
|
||||
|
||||
var window = GetAnimatedBeWoWindow(title, control, 400, height, 1000, 400, width, 1600);
|
||||
|
||||
//var window = GetGenericBeWoWindow(title, 400, height, 1000, 600, width, 1600);
|
||||
|
||||
//window.GroupBoxContent = control;
|
||||
var window = GetAnimatedBeWoWindow(title, control, 400, height, 1000, 500, width, 1600);
|
||||
|
||||
return window;
|
||||
}
|
||||
|
||||
@@ -1,115 +1,198 @@
|
||||
<UserControl x:Class="BeWo.View.Controls.ServiceRecordPopUp"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:localViewModel="clr-namespace:BeWo.ViewModel">
|
||||
|
||||
<Grid>
|
||||
<TextBlock Name="tb_nodata" Background="White" Padding="20" Text="Keine Eintragungen vorhanden"
|
||||
Foreground="Black" FontSize="14" />
|
||||
<ListBox ItemsSource="{Binding}" ScrollViewer.CanContentScroll="True" x:Name="serviceRecordGrid" Grid.Row="0"
|
||||
Grid.Column="1" IsSynchronizedWithCurrentItem="True" TabIndex="1" AlternationCount="-1"
|
||||
Background="{x:Null}" ItemTemplate="{DynamicResource serviceRecordListBoxItemTemplate}"
|
||||
Style="{DynamicResource ServiceRecordListStyle}" HorizontalContentAlignment="Stretch"
|
||||
ItemContainerStyle="{DynamicResource serviceRecordListBoxItemStyle}" >
|
||||
<ListBox.Resources>
|
||||
<ControlTemplate x:Key="ServiceRecordListBoxTemplate" TargetType="{x:Type ListBox}">
|
||||
<Border x:Name="Bd" SnapsToDevicePixels="True" Background="{TemplateBinding Background}"
|
||||
BorderBrush="{TemplateBinding BorderBrush}">
|
||||
<ScrollViewer Focusable="False" Padding="{TemplateBinding Padding}"
|
||||
HorizontalScrollBarVisibility="Disabled">
|
||||
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
|
||||
</ScrollViewer>
|
||||
<UserControl
|
||||
x:Class="BeWo.View.Controls.ServiceRecordPopUp"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:localViewModel="clr-namespace:BeWo.ViewModel">
|
||||
|
||||
<Grid>
|
||||
<TextBlock
|
||||
Name="tb_nodata"
|
||||
Padding="20"
|
||||
Background="White"
|
||||
FontSize="14"
|
||||
Foreground="Black"
|
||||
Text="Keine Eintragungen vorhanden" />
|
||||
<ListBox
|
||||
x:Name="serviceRecordGrid"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
HorizontalContentAlignment="Stretch"
|
||||
AlternationCount="-1"
|
||||
Background="{x:Null}"
|
||||
IsSynchronizedWithCurrentItem="True"
|
||||
ItemContainerStyle="{DynamicResource serviceRecordListBoxItemStyle}"
|
||||
ItemTemplate="{DynamicResource serviceRecordListBoxItemTemplate}"
|
||||
ItemsSource="{Binding}"
|
||||
ScrollViewer.CanContentScroll="True"
|
||||
Style="{DynamicResource ServiceRecordListStyle}"
|
||||
TabIndex="1">
|
||||
<ListBox.Resources>
|
||||
<ControlTemplate x:Key="ServiceRecordListBoxTemplate" TargetType="{x:Type ListBox}">
|
||||
<Border
|
||||
x:Name="Bd"
|
||||
Background="{TemplateBinding Background}"
|
||||
BorderBrush="{TemplateBinding BorderBrush}"
|
||||
SnapsToDevicePixels="True">
|
||||
<ScrollViewer
|
||||
Padding="{TemplateBinding Padding}"
|
||||
Focusable="False"
|
||||
HorizontalScrollBarVisibility="Disabled">
|
||||
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
|
||||
</ScrollViewer>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
<Style x:Key="ServiceRecordListStyle" TargetType="{x:Type ListBox}">
|
||||
<Setter Property="Template" Value="{StaticResource ServiceRecordListBoxTemplate}" />
|
||||
<Setter Property="Padding" Value="2,0,2,2" />
|
||||
</Style>
|
||||
<Style x:Key="serviceRecordListBoxItemStyle" TargetType="{x:Type ListBoxItem}">
|
||||
<Setter Property="Background" Value="#00FFFFFF" />
|
||||
<Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource FindAncestor, AncestorLevel=1, AncestorType={x:Type ItemsControl}}}" />
|
||||
<Setter Property="VerticalContentAlignment" Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource FindAncestor, AncestorLevel=1, AncestorType={x:Type ItemsControl}}}" />
|
||||
<Setter Property="Padding" Value="2,0,0,0" />
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type ListBoxItem}">
|
||||
<Border
|
||||
x:Name="Bd"
|
||||
Padding="{TemplateBinding Padding}"
|
||||
Background="{TemplateBinding Background}"
|
||||
BorderBrush="{TemplateBinding BorderBrush}"
|
||||
BorderThickness="{TemplateBinding BorderThickness}"
|
||||
SnapsToDevicePixels="True">
|
||||
<ContentPresenter
|
||||
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||
Content="{TemplateBinding Content}"
|
||||
ContentStringFormat="{TemplateBinding ContentStringFormat}"
|
||||
ContentTemplate="{TemplateBinding ContentTemplate}"
|
||||
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsEnabled" Value="False">
|
||||
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}" />
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
<DataTemplate x:Key="serviceRecordListBoxItemTemplate" DataType="{x:Type localViewModel:ServiceRecordVM}">
|
||||
<Grid
|
||||
x:Name="template"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch">
|
||||
<Border
|
||||
x:Name="ItemBorder"
|
||||
Width="Auto"
|
||||
Height="Auto"
|
||||
Margin="0,0,0,3"
|
||||
Padding="6"
|
||||
Background="{Binding Path=BackgroundBrush}"
|
||||
BorderBrush="#FF7E7E7E"
|
||||
BorderThickness="1,1,1,1"
|
||||
CornerRadius="4,4,4,4">
|
||||
<Grid TextBlock.Foreground="{Binding Path=TextBlock.Foreground, RelativeSource={RelativeSource TemplatedParent}}">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="12" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="12" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="17" />
|
||||
<RowDefinition Height="14" />
|
||||
<RowDefinition Height="14" />
|
||||
<RowDefinition Height="14" />
|
||||
<RowDefinition Height="14" />
|
||||
<RowDefinition Height="14" />
|
||||
<RowDefinition Height="24" />
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Text="Minuten (gerundet):" />
|
||||
<TextBlock
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Text="Leistungskategorie:" />
|
||||
<TextBlock
|
||||
Grid.Row="3"
|
||||
Grid.Column="0"
|
||||
Text="Leistung:" />
|
||||
<TextBlock
|
||||
Grid.Row="4"
|
||||
Grid.Column="0"
|
||||
Text="Angelegt von:" />
|
||||
<TextBlock
|
||||
Grid.Row="5"
|
||||
Grid.Column="0"
|
||||
Text="Angelegt am:" />
|
||||
<TextBlock
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="5"
|
||||
FontSize="13"
|
||||
FontWeight="Bold"
|
||||
Foreground="#FF494949"
|
||||
Text="{Binding Path=LongDateString}" />
|
||||
<TextBlock
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Background="{x:Null}"
|
||||
FontWeight="Bold"
|
||||
Foreground="#FF4E7BC4"
|
||||
Text="{Binding Path=DurationAndRoundedDuration}" />
|
||||
<TextBlock
|
||||
Grid.Row="2"
|
||||
Grid.Column="2"
|
||||
Text="{Binding Path=Category}" />
|
||||
<TextBlock
|
||||
Grid.Row="3"
|
||||
Grid.Column="2"
|
||||
Text="{Binding Path=ServiceDescription}" />
|
||||
<TextBlock
|
||||
Grid.Row="4"
|
||||
Grid.Column="2"
|
||||
Text="{Binding Path=EmployeeName}" />
|
||||
<TextBlock
|
||||
Grid.Row="5"
|
||||
Grid.Column="2"
|
||||
Text="{Binding Path=InsertedOn}" />
|
||||
|
||||
|
||||
<TextBox
|
||||
Grid.Row="1"
|
||||
Grid.RowSpan="6"
|
||||
Grid.Column="4"
|
||||
MaxHeight="200"
|
||||
Margin="0,0,0,0"
|
||||
HorizontalAlignment="Stretch"
|
||||
AutoWordSelection="True"
|
||||
Background="{x:Null}"
|
||||
BorderBrush="{x:Null}"
|
||||
BorderThickness="0"
|
||||
Focusable="True"
|
||||
HorizontalScrollBarVisibility="Hidden"
|
||||
IsEnabled="True"
|
||||
IsReadOnly="True"
|
||||
SnapsToDevicePixels="True"
|
||||
Tag="{Binding}"
|
||||
Text="{Binding Path=Notice}"
|
||||
TextWrapping="Wrap"
|
||||
VerticalScrollBarVisibility="Auto" />
|
||||
</Grid>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
<Style x:Key="ServiceRecordListStyle" TargetType="{x:Type ListBox}">
|
||||
<Setter Property="Template" Value="{StaticResource ServiceRecordListBoxTemplate}" />
|
||||
<Setter Property="Padding" Value="2,0,2,2" />
|
||||
</Style>
|
||||
<Style x:Key="serviceRecordListBoxItemStyle" TargetType="{x:Type ListBoxItem}">
|
||||
<Setter Property="Background" Value="#00FFFFFF" />
|
||||
<Setter Property="HorizontalContentAlignment"
|
||||
Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource FindAncestor, AncestorLevel=1, AncestorType={x:Type ItemsControl}}}" />
|
||||
<Setter Property="VerticalContentAlignment"
|
||||
Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource FindAncestor, AncestorLevel=1, AncestorType={x:Type ItemsControl}}}" />
|
||||
<Setter Property="Padding" Value="2,0,0,0" />
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type ListBoxItem}">
|
||||
<Border x:Name="Bd" SnapsToDevicePixels="True" Background="{TemplateBinding Background}"
|
||||
BorderBrush="{TemplateBinding BorderBrush}"
|
||||
BorderThickness="{TemplateBinding BorderThickness}"
|
||||
Padding="{TemplateBinding Padding}">
|
||||
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
||||
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
|
||||
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
|
||||
Content="{TemplateBinding Content}"
|
||||
ContentStringFormat="{TemplateBinding ContentStringFormat}"
|
||||
ContentTemplate="{TemplateBinding ContentTemplate}" />
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsEnabled" Value="False">
|
||||
<Setter Property="Foreground"
|
||||
Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}" />
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
<DataTemplate x:Key="serviceRecordListBoxItemTemplate" DataType="{x:Type localViewModel:ServiceRecordVM}">
|
||||
<Grid x:Name="template" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
|
||||
<Border x:Name="ItemBorder" CornerRadius="4,4,4,4" Width="Auto" Height="Auto" Padding="6"
|
||||
Margin="0,0,0,3" Background="{Binding Path=BackgroundBrush}" BorderThickness="1,1,1,1"
|
||||
BorderBrush="#FF7E7E7E">
|
||||
<Grid TextBlock.Foreground="{Binding Path=TextBlock.Foreground, RelativeSource={RelativeSource TemplatedParent}}">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="12" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="12" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="17" />
|
||||
<RowDefinition Height="14" />
|
||||
<RowDefinition Height="14" />
|
||||
<RowDefinition Height="14" />
|
||||
<RowDefinition Height="14" />
|
||||
<RowDefinition Height="14" />
|
||||
<RowDefinition Height="24" />
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Grid.Column="0" Grid.Row="1" Text="Minuten (gerundet):" />
|
||||
<TextBlock Grid.Column="0" Grid.Row="2" Text="Leistungskategorie:" />
|
||||
<TextBlock Grid.Column="0" Grid.Row="3" Text="Leistung:" />
|
||||
<TextBlock Grid.Column="0" Grid.Row="4" Text="Angelegt von:" />
|
||||
<TextBlock Grid.Column="0" Grid.Row="5" Text="Angelegt am:" />
|
||||
<TextBlock Grid.Column="0" Grid.Row="0" Text="{Binding Path=LongDateString}"
|
||||
Grid.ColumnSpan="5" FontWeight="Bold" FontSize="13" Foreground="#FF494949" />
|
||||
<TextBlock Grid.Column="2" Grid.Row="1" Text="{Binding Path=DurationAndRoundedDuration}"
|
||||
FontWeight="Bold" Background="{x:Null}" Foreground="#FF4E7BC4" />
|
||||
<TextBlock Grid.Column="2" Grid.Row="2" Text="{Binding Path=Category}" />
|
||||
<TextBlock Grid.Column="2" Grid.Row="3" Text="{Binding Path=ServiceDescription}" />
|
||||
<TextBlock Grid.Column="2" Grid.Row="4" Text="{Binding Path=EmployeeName}" />
|
||||
<TextBlock Grid.Column="2" Grid.Row="5" Text="{Binding Path=InsertedOn}" />
|
||||
|
||||
|
||||
<TextBox Grid.Column="4" Grid.Row="1" Grid.RowSpan="6" HorizontalAlignment="Stretch"
|
||||
Text="{Binding Path=Notice}" HorizontalScrollBarVisibility="Hidden"
|
||||
VerticalScrollBarVisibility="Auto" Margin="0,0,0,0" BorderThickness="0"
|
||||
BorderBrush="{x:Null}" Background="{x:Null}" SnapsToDevicePixels="True"
|
||||
MaxHeight="200" TextWrapping="Wrap" AutoWordSelection="True" IsReadOnly="True"
|
||||
Tag="{Binding}" IsEnabled="True" Focusable="True" />
|
||||
</Grid>
|
||||
</Border>
|
||||
</Grid>
|
||||
<DataTemplate.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Background" TargetName="ItemBorder"
|
||||
Value="{Binding Path=MouseOverBackgroundBrush}" />
|
||||
</Trigger>
|
||||
|
||||
</DataTemplate.Triggers>
|
||||
</DataTemplate>
|
||||
</ListBox.Resources>
|
||||
</ListBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
<DataTemplate.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter TargetName="ItemBorder" Property="Background" Value="{Binding Path=MouseOverBackgroundBrush}" />
|
||||
</Trigger>
|
||||
|
||||
</DataTemplate.Triggers>
|
||||
</DataTemplate>
|
||||
</ListBox.Resources>
|
||||
</ListBox>
|
||||
</Grid>
|
||||
</UserControl>
|
||||
@@ -21,6 +21,7 @@
|
||||
<Setter Property="Minimum" Value="0" />
|
||||
<Setter Property="Maximum" Value="1" />
|
||||
<Setter Property="SmallChange" Value="0.01" />
|
||||
<Setter Property="IsMoveToPointEnabled" Value="True" />
|
||||
</Style>
|
||||
</ResourceDictionary>
|
||||
</UserControl.Resources>
|
||||
|
||||
54
BeWo/View/Detail/AI/AiConversationChatModalPopup.xaml
Normal file
54
BeWo/View/Detail/AI/AiConversationChatModalPopup.xaml
Normal file
@@ -0,0 +1,54 @@
|
||||
<localView:BeWoView
|
||||
x:Class="BeWo.View.Detail.AI.AiConversationChatModalPopup"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:ai="clr-namespace:BeWo.View.Detail.AI"
|
||||
xmlns:core="clr-namespace:BS.Shared.Core;assembly=BS.Shared"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
|
||||
xmlns:dxa="http://schemas.devexpress.com/winfx/2008/xaml/accordion"
|
||||
xmlns:dxwui="http://schemas.devexpress.com/winfx/2008/xaml/windowsui"
|
||||
xmlns:listviewmodel="clr-namespace:BeWo.ViewModel.ListViewModel"
|
||||
xmlns:localView="clr-namespace:BeWo.View"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:t="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
xmlns:viewmodel="clr-namespace:BeWo.ViewModel"
|
||||
Width="1200"
|
||||
Height="800"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
Focusable="True"
|
||||
mc:Ignorable="d">
|
||||
<localView:BeWoView.Resources>
|
||||
<ResourceDictionary>
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<ResourceDictionary Source="..\..\..\Styles\ModernOrangeBlack.xaml" />
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
</ResourceDictionary>
|
||||
</localView:BeWoView.Resources>
|
||||
<localView:BeWoView.DataContext>
|
||||
<listviewmodel:AiConversationListVM />
|
||||
</localView:BeWoView.DataContext>
|
||||
<Grid>
|
||||
<GroupBox Style="{StaticResource PopUpWindowStyle}">
|
||||
<GroupBox.Header>
|
||||
<StackPanel
|
||||
Margin="0"
|
||||
VerticalAlignment="Center"
|
||||
Orientation="Horizontal">
|
||||
<TextBlock
|
||||
Margin="4,4,0,0"
|
||||
Padding="0,0,0,0"
|
||||
VerticalAlignment="Stretch"
|
||||
Background="{x:Null}"
|
||||
FontSize="20"
|
||||
Foreground="#FFFFFFFF"
|
||||
Text="Zeiterfassung KI Chat" />
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<ai:AiConversationChatView DataContext="{Binding}" />
|
||||
</GroupBox>
|
||||
</Grid>
|
||||
</localView:BeWoView>
|
||||
39
BeWo/View/Detail/AI/AiConversationChatModalPopup.xaml.cs
Normal file
39
BeWo/View/Detail/AI/AiConversationChatModalPopup.xaml.cs
Normal file
@@ -0,0 +1,39 @@
|
||||
using BeWo.ServiceProxy;
|
||||
using BeWo.ViewModel.ListViewModel;
|
||||
using BS.Shared.Extensions;
|
||||
using DevExpress.Mvvm;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Documents;
|
||||
using System.Windows.Input;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Imaging;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
|
||||
namespace BeWo.View.Detail.AI
|
||||
{
|
||||
/// <summary>
|
||||
/// Interaktionslogik für AiConversationChatView.xaml
|
||||
/// </summary>
|
||||
public partial class AiConversationChatModalPopup : BeWoView
|
||||
{
|
||||
public AiConversationChatModalPopup()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
public AiConversationListVM ViewModel
|
||||
{
|
||||
get => DataContext as AiConversationListVM;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
<localView:BeWoView
|
||||
x:Class="BeWo.View.Detail.AiConversationChatView"
|
||||
x:Class="BeWo.View.Detail.AI.AiConversationChatView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:ai="clr-namespace:BeWo.View.Detail.AI"
|
||||
@@ -27,7 +27,7 @@
|
||||
<localView:BeWoView.Resources>
|
||||
<ResourceDictionary>
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<ResourceDictionary Source="..\..\Styles\ModernOrangeBlack.xaml" />
|
||||
<ResourceDictionary Source="..\..\..\Styles\ModernOrangeBlack.xaml" />
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
</ResourceDictionary>
|
||||
</localView:BeWoView.Resources>
|
||||
@@ -129,45 +129,20 @@
|
||||
</Grid>
|
||||
|
||||
<Grid Grid.Column="1">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="100*" MaxWidth="100" />
|
||||
<ColumnDefinition Width="10000*" MaxWidth="1200" />
|
||||
<ColumnDefinition Width="100*" MaxWidth="100" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Row="1" Visibility="{Binding SelectedVM, Converter={StaticResource ObjectVisibilityConverter}}">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="0" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<!--<TextBox
|
||||
x:Name="txt_input_context"
|
||||
Height="100"
|
||||
MaxHeight="200"
|
||||
Margin="5"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
AcceptsReturn="True"
|
||||
Visibility="Collapsed"
|
||||
Text="{Binding Context_Input}" />-->
|
||||
<TextBox
|
||||
x:Name="txt_input_message"
|
||||
Grid.Column="1"
|
||||
Height="28"
|
||||
MaxHeight="200"
|
||||
Margin="5"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
AcceptsReturn="True"
|
||||
Text="{Binding MessageInput}" />
|
||||
<Button
|
||||
Grid.Column="2"
|
||||
Margin="4"
|
||||
VerticalAlignment="Stretch"
|
||||
Command="{Binding SendNewMessageCommand}"
|
||||
Content="Senden" />
|
||||
</Grid>
|
||||
<ListView
|
||||
x:Name="listbox_messages"
|
||||
Grid.Column="2"
|
||||
Padding="3"
|
||||
Background="Transparent"
|
||||
BorderThickness="0"
|
||||
@@ -175,6 +150,32 @@
|
||||
ItemsSource="{Binding SelectedVM.Messages.VMList, Converter={StaticResource TestDebugConverter}}"
|
||||
ScrollViewer.CanContentScroll="False"
|
||||
ScrollViewer.HorizontalScrollBarVisibility="Disabled">
|
||||
<ListView.Resources>
|
||||
<Style TargetType="ScrollBar">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="ScrollBar">
|
||||
<Grid Background="Transparent">
|
||||
<Track Name="PART_Track"
|
||||
IsDirectionReversed="True"
|
||||
Focusable="false">
|
||||
<Track.DecreaseRepeatButton>
|
||||
<RepeatButton Command="ScrollBar.LineUpCommand"
|
||||
Visibility="Collapsed"
|
||||
IsEnabled="False" />
|
||||
</Track.DecreaseRepeatButton>
|
||||
<Track.IncreaseRepeatButton>
|
||||
<RepeatButton Command="ScrollBar.LineDownCommand"
|
||||
Visibility="Collapsed"
|
||||
IsEnabled="False" />
|
||||
</Track.IncreaseRepeatButton>
|
||||
</Track>
|
||||
</Grid>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</ListView.Resources>
|
||||
<ListView.ItemContainerStyle>
|
||||
<Style TargetType="ListViewItem">
|
||||
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
|
||||
@@ -195,6 +196,47 @@
|
||||
</ItemsPanelTemplate>
|
||||
</ListView.ItemsPanel>
|
||||
</ListView>
|
||||
<Grid
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="4,4,4,4"
|
||||
Visibility="{Binding SelectedVM, Converter={StaticResource ObjectVisibilityConverter}}">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="0" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<!--<TextBox
|
||||
x:Name="txt_input_context"
|
||||
Height="100"
|
||||
MaxHeight="200"
|
||||
Margin="5"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
AcceptsReturn="True"
|
||||
Visibility="Collapsed"
|
||||
Text="{Binding Context_Input}" />-->
|
||||
<TextBox
|
||||
x:Name="txt_input_message"
|
||||
Grid.Column="1"
|
||||
Height="auto"
|
||||
MaxHeight="200"
|
||||
Margin="4"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
AcceptsReturn="True"
|
||||
Text="{Binding MessageInput}" />
|
||||
<Button
|
||||
Grid.Column="2"
|
||||
Height="auto"
|
||||
MinHeight="25"
|
||||
MaxHeight="100"
|
||||
Margin="4"
|
||||
VerticalAlignment="Stretch"
|
||||
Command="{Binding SendNewMessageCommand}"
|
||||
Content="Senden" />
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Grid>
|
||||
<Border
|
||||
@@ -19,7 +19,7 @@ using System.Windows.Media.Imaging;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Shapes;
|
||||
|
||||
namespace BeWo.View.Detail
|
||||
namespace BeWo.View.Detail.AI
|
||||
{
|
||||
/// <summary>
|
||||
/// Interaktionslogik für AiConversationChatView.xaml
|
||||
@@ -37,11 +37,6 @@ namespace BeWo.View.Detail
|
||||
popup_settings.Closed += (s, e) => ViewModel.UpdateConfig();
|
||||
}
|
||||
|
||||
public AiConversationChatView(object o) : this()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public AiConversationListVM ViewModel
|
||||
{
|
||||
get => DataContext as AiConversationListVM;
|
||||
@@ -52,6 +47,8 @@ namespace BeWo.View.Detail
|
||||
|
||||
private void BeWoView_Loaded(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (BeWoApp.IsInDesignMode)
|
||||
return;
|
||||
ViewModel.ReloadConfigCommand.Execute(null);
|
||||
ViewModel.ReloadConversationsCommand.Execute(null);
|
||||
}
|
||||
@@ -64,11 +61,6 @@ namespace BeWo.View.Detail
|
||||
popup_settings.IsOpen = true;
|
||||
}, true, this);
|
||||
}
|
||||
|
||||
private void Test()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void listbox_conversations_SelectionChanged(object sender, NotifyCollectionChangedEventArgs e)
|
||||
{
|
||||
@@ -1,22 +1,47 @@
|
||||
<localView:BeWoView x:Class="BeWo.View.Detail.Accounting.EquityInvoiceItemEditView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:localView="clr-namespace:BeWo.View"
|
||||
xmlns:localViewModel="clr-namespace:BeWo.ViewModel"
|
||||
xmlns:localViewDetail="clr-namespace:BeWo.View.Detail.Accounting"
|
||||
xmlns:val="clr-namespace:BeWo.Validation"
|
||||
xmlns:proxy="clr-namespace:BeWo.ServiceProxy"
|
||||
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors" Height="Auto" Width="Auto" HorizontalAlignment="Stretch" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:r="clr-namespace:BeWo.Security" VerticalAlignment="Stretch" Focusable="True" xmlns:Microsoft_Windows_Themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Classic">
|
||||
<localView:BeWoView
|
||||
x:Class="BeWo.View.Detail.Accounting.EquityInvoiceItemEditView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:Microsoft_Windows_Themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Classic"
|
||||
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
xmlns:localView="clr-namespace:BeWo.View"
|
||||
xmlns:localViewDetail="clr-namespace:BeWo.View.Detail.Accounting"
|
||||
xmlns:localViewModel="clr-namespace:BeWo.ViewModel"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:proxy="clr-namespace:BeWo.ServiceProxy"
|
||||
xmlns:r="clr-namespace:BeWo.Security"
|
||||
xmlns:s="clr-namespace:System;assembly=mscorlib"
|
||||
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
xmlns:val="clr-namespace:BeWo.Validation"
|
||||
Width="Auto"
|
||||
Height="Auto"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
Focusable="True">
|
||||
|
||||
<GroupBox MinHeight="200" Width="800" Style="{StaticResource PopUpWindowStyle}">
|
||||
<GroupBox
|
||||
Width="800"
|
||||
MinHeight="200"
|
||||
Style="{StaticResource PopUpWindowStyle}">
|
||||
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal" VerticalAlignment="Center" Margin="0,0,0,0">
|
||||
<Image Source="..\..\Ressources\Icons\CoinsDisabled.png" Height="28" />
|
||||
<TextBox Text="Rechnung bearbeiten" Margin="10,4,0,0" Background="{x:Null}" Foreground="{DynamicResource MainGroupBoxForegroundBrush}" FontSize="20" BorderBrush="{x:Null}" VerticalAlignment="Stretch" BorderThickness="0,0,0,0" Padding="0,0,0,0" />
|
||||
<StackPanel
|
||||
Margin="0,0,0,0"
|
||||
VerticalAlignment="Center"
|
||||
Orientation="Horizontal">
|
||||
<Image Height="28" Source="..\..\Ressources\Icons\CoinsDisabled.png" />
|
||||
<TextBox
|
||||
Margin="10,4,0,0"
|
||||
Padding="0,0,0,0"
|
||||
VerticalAlignment="Stretch"
|
||||
Background="{x:Null}"
|
||||
BorderBrush="{x:Null}"
|
||||
BorderThickness="0,0,0,0"
|
||||
FontSize="20"
|
||||
Foreground="{DynamicResource MainGroupBoxForegroundBrush}"
|
||||
Text="Rechnung bearbeiten" />
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
|
||||
@@ -28,10 +53,13 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Rectangle Fill="{DynamicResource AccountingContentBrush}" VerticalAlignment="Top" Height="6" />
|
||||
<Rectangle
|
||||
Height="6"
|
||||
VerticalAlignment="Top"
|
||||
Fill="{DynamicResource AccountingContentBrush}" />
|
||||
|
||||
<ScrollViewer Grid.Row="1" VerticalScrollBarVisibility="Auto">
|
||||
<Grid Grid.IsSharedSizeScope="True" Margin="10,10,0,10">
|
||||
<Grid Margin="10,10,0,10" Grid.IsSharedSizeScope="True">
|
||||
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
@@ -44,7 +72,11 @@
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<GroupBox Margin="3 6 3 6" Style="{StaticResource ObjectEditGroupBox}" Grid.ColumnSpan="2" Header="Rechnungsdetails">
|
||||
<GroupBox
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,6,3,6"
|
||||
Header="Rechnungsdetails"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
|
||||
<Grid>
|
||||
|
||||
@@ -68,34 +100,111 @@
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Label Content="Rechnungsnummer" />
|
||||
<TextBox Margin="3" Height="23" Grid.Column="1" Text="{Binding Path=InvoiceNumber}" />
|
||||
<TextBox
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{Binding Path=InvoiceNumber}" />
|
||||
|
||||
<Label Content="{markup:Translate Ersteller Vorname}" Grid.Row="0" Grid.Column="2" />
|
||||
<TextBox Margin="3" Grid.Row="0" Grid.Column="3" Text="{Binding CreatorFirstName}" Height="23" />
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="2"
|
||||
Content="{markup:Translate Ersteller Vorname}" />
|
||||
<TextBox
|
||||
Grid.Row="0"
|
||||
Grid.Column="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{Binding CreatorFirstName}" />
|
||||
|
||||
<Label Content="{markup:Translate Ersteller Nachname}" Grid.Row="0" Grid.Column="4" />
|
||||
<TextBox Margin="3" Height="23" Grid.Row="0" Grid.Column="5" Text="{Binding CreatorLastName}" />
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="4"
|
||||
Content="{markup:Translate Ersteller Nachname}" />
|
||||
<TextBox
|
||||
Grid.Row="0"
|
||||
Grid.Column="5"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{Binding CreatorLastName}" />
|
||||
|
||||
<Label Content="Rechnungsdatum" Grid.Row="1" Grid.Column="0" />
|
||||
<dxe:DateEdit MaskType="DateTimeAdvancingCaret" BorderThickness="1" Margin="3" Height="23" Grid.Row="1" Grid.Column="1" EditValue="{val:ValidationBinding Path=InvoiceDate, Mode=TwoWay}" />
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Content="Rechnungsdatum" />
|
||||
<dxe:DateEdit
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
BorderThickness="1"
|
||||
EditValue="{val:ValidationBinding Path=InvoiceDate,
|
||||
Mode=TwoWay}"
|
||||
MaskType="DateTimeAdvancingCaret" />
|
||||
|
||||
<Label Content="Abrechnungszeitraum von" Grid.Row="1" Grid.Column="2" />
|
||||
<dxe:DateEdit MaskType="DateTimeAdvancingCaret" BorderThickness="1" Height="23" Margin="3" Grid.Row="1" Grid.Column="3" EditValue="{val:ValidationBinding Path=AccountingPeriodStart}" />
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Content="Abrechnungszeitraum von" />
|
||||
<dxe:DateEdit
|
||||
Grid.Row="1"
|
||||
Grid.Column="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
BorderThickness="1"
|
||||
EditValue="{val:ValidationBinding Path=AccountingPeriodStart}"
|
||||
MaskType="DateTimeAdvancingCaret" />
|
||||
|
||||
<Label Content="Abrechnungszeitraum bis" Grid.Row="1" Grid.Column="4" />
|
||||
<dxe:DateEdit MaskType="DateTimeAdvancingCaret" BorderThickness="1" Height="23" Margin="3" Grid.Row="1" Grid.Column="5" EditValue="{val:ValidationBinding Path=AccountingPeriodEnd}" />
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="4"
|
||||
Content="Abrechnungszeitraum bis" />
|
||||
<dxe:DateEdit
|
||||
Grid.Row="1"
|
||||
Grid.Column="5"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
BorderThickness="1"
|
||||
EditValue="{val:ValidationBinding Path=AccountingPeriodEnd}"
|
||||
MaskType="DateTimeAdvancingCaret" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="2" Content="anz Mahnungen" />
|
||||
<dxe:SpinEdit MinValue="0" IsFloatValue="False" AllowNullInput="True" EditValue="{Binding Path=DunningLetterCount, Converter={StaticResource Int2DecimalConverter}}" Height="23" Margin="3" Grid.Row="2" Grid.Column="1" />
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Content="anz Mahnungen" />
|
||||
<dxe:SpinEdit
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
AllowNullInput="True"
|
||||
EditValue="{Binding Path=DunningLetterCount, Converter={StaticResource Int2DecimalConverter}}"
|
||||
IsFloatValue="False"
|
||||
MinValue="0" />
|
||||
|
||||
<Label Content="Bemerkung" Grid.Row="2" Grid.Column="2" />
|
||||
<TextBox Grid.Row="2" Grid.Column="3" Grid.ColumnSpan="3" Margin="3" AcceptsReturn="True" TextWrapping="Wrap" Height="23" Text="{Binding Notice}" />
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="2"
|
||||
Content="Bemerkung" />
|
||||
<TextBox
|
||||
Grid.Row="2"
|
||||
Grid.Column="3"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
AcceptsReturn="True"
|
||||
Text="{Binding Notice}"
|
||||
TextWrapping="Wrap" />
|
||||
|
||||
</Grid>
|
||||
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox Margin="3 6 6 3" Grid.Row="1" Style="{StaticResource ObjectEditGroupBox}" Header="{markup:Translate EmpfängerSingular}">
|
||||
<GroupBox
|
||||
Grid.Row="1"
|
||||
Margin="3,6,6,3"
|
||||
Header="{markup:Translate EmpfängerSingular}"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
|
||||
<Grid>
|
||||
|
||||
@@ -113,28 +222,78 @@
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Label Content="Vorname" />
|
||||
<TextBox Margin="3" Grid.Row="0" Grid.Column="1" Text="{val:ValidationBinding Path=RecipientPersonFirstName}" Height="23" />
|
||||
<TextBox
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{val:ValidationBinding Path=RecipientPersonFirstName}" />
|
||||
|
||||
<Label Content="Nachname" Grid.Row="0" Grid.Column="2" />
|
||||
<TextBox Margin="3" Grid.Row="0" Grid.Column="3" Text="{val:ValidationBinding Path=RecipientPersonLastName}" Height="23" />
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="2"
|
||||
Content="Nachname" />
|
||||
<TextBox
|
||||
Grid.Row="0"
|
||||
Grid.Column="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{val:ValidationBinding Path=RecipientPersonLastName}" />
|
||||
|
||||
|
||||
<Label Content="Aktenzeichen" Grid.Row="1" Grid.Column="0" />
|
||||
<TextBox Margin="3" Height="23" Grid.Row="1" Grid.Column="1" Text="{Binding CustomerReferenceNumber}" />
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Content="Aktenzeichen" />
|
||||
<TextBox
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{Binding CustomerReferenceNumber}" />
|
||||
|
||||
<Label Content="Strasse" Grid.Row="1" Grid.Column="2" />
|
||||
<TextBox Margin="3" Grid.Row="1" Grid.Column="3" Text="{val:ValidationBinding Path=RecipientStreet}" Height="23" />
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Content="Strasse" />
|
||||
<TextBox
|
||||
Grid.Row="1"
|
||||
Grid.Column="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{val:ValidationBinding Path=RecipientStreet}" />
|
||||
|
||||
<Label Content="Postleitzahl" Grid.Row="2" Grid.Column="0" />
|
||||
<TextBox Margin="3,3,3,0" Grid.Row="2" Grid.Column="1" Text="{val:ValidationBinding Path=RecipientPostCode}" Height="23" />
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Content="Postleitzahl" />
|
||||
<TextBox
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3,3,3,0"
|
||||
Text="{val:ValidationBinding Path=RecipientPostCode}" />
|
||||
|
||||
<Label Content="Ort" Grid.Row="2" Grid.Column="2" />
|
||||
<TextBox Margin="3" Grid.Row="2" Grid.Column="3" Text="{val:ValidationBinding Path=RecipientTown}" Height="23" />
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="2"
|
||||
Content="Ort" />
|
||||
<TextBox
|
||||
Grid.Row="2"
|
||||
Grid.Column="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{val:ValidationBinding Path=RecipientTown}" />
|
||||
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox Margin="6 6 3 3" Style="{StaticResource ObjectEditGroupBox}" Grid.Row="1" Grid.Column="2" Header="{markup:Translate Absender}">
|
||||
<GroupBox
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Margin="6,6,3,3"
|
||||
Header="{markup:Translate Absender}"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
<Grid>
|
||||
|
||||
<Grid.ColumnDefinitions>
|
||||
@@ -151,61 +310,163 @@
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Label Content="Vorname" />
|
||||
<TextBox Margin="3" Grid.Row="0" Grid.Column="1" Text="{Binding SenderFirstName}" Height="23" />
|
||||
<TextBox
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{Binding SenderFirstName}" />
|
||||
|
||||
<Label Content="Nachname" Grid.Row="0" Grid.Column="2" />
|
||||
<TextBox Margin="3" Grid.Row="0" Grid.Column="3" Text="{Binding SenderLastName}" Height="23" />
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="2"
|
||||
Content="Nachname" />
|
||||
<TextBox
|
||||
Grid.Row="0"
|
||||
Grid.Column="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{Binding SenderLastName}" />
|
||||
|
||||
<Label Content="Organisation" Grid.Row="1" />
|
||||
<TextBox Margin="3" Grid.Row="1" Grid.Column="1" Text="{Binding SenderOrganisation}" Height="23" />
|
||||
<Label Grid.Row="1" Content="Organisation" />
|
||||
<TextBox
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{Binding SenderOrganisation}" />
|
||||
|
||||
<Label Content="Abteilung" Grid.Row="1" Grid.Column="2" />
|
||||
<TextBox Margin="3" Grid.Row="1" Grid.Column="3" Text="{Binding SenderDivision}" Height="23" />
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Content="Abteilung" />
|
||||
<TextBox
|
||||
Grid.Row="1"
|
||||
Grid.Column="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{Binding SenderDivision}" />
|
||||
|
||||
<Label Content="Fax" Grid.Row="2" Grid.Column="0" />
|
||||
<TextBox Margin="3" Grid.Row="2" Grid.Column="1" Text="{Binding SenderFax}" Height="23" />
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Content="Fax" />
|
||||
<TextBox
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{Binding SenderFax}" />
|
||||
|
||||
<Label Content="Telefon" Grid.Row="2" Grid.Column="2" />
|
||||
<TextBox Margin="3" Grid.Row="2" Grid.Column="3" Text="{Binding SenderPhone}" Height="23" />
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="2"
|
||||
Content="Telefon" />
|
||||
<TextBox
|
||||
Grid.Row="2"
|
||||
Grid.Column="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{Binding SenderPhone}" />
|
||||
|
||||
|
||||
</Grid>
|
||||
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox Margin="3 6 3 3" Style="{StaticResource ObjectEditGroupBox}" Grid.ColumnSpan="2" Grid.Row="2" Header="Rechnungsposten">
|
||||
<GroupBox
|
||||
Grid.Row="2"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,6,3,3"
|
||||
Header="Rechnungsposten"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
|
||||
<dxg:GridControl MaxHeight="200" SnapsToDevicePixels="True" Margin="3" x:Name="datagrid_invoiceItems" DataSource="{Binding InvoiceItems.VMList}" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
|
||||
<dxg:GridControl
|
||||
x:Name="datagrid_invoiceItems"
|
||||
MaxHeight="200"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
DataSource="{Binding InvoiceItems.VMList}"
|
||||
SnapsToDevicePixels="True">
|
||||
<dxg:GridControl.Columns>
|
||||
<dxg:GridColumn FieldName="Notice" Header="" FixedWidth="True" Width="24" ReadOnly="True">
|
||||
<dxg:GridColumn
|
||||
Width="24"
|
||||
FieldName="Notice"
|
||||
FixedWidth="True"
|
||||
Header=""
|
||||
ReadOnly="True">
|
||||
<dxg:GridColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Button Content="r" FontFamily="Webdings" Click="DeleteButton_Click" Width="18" Height="18" VerticalAlignment="Center" />
|
||||
<Button
|
||||
Width="18"
|
||||
Height="18"
|
||||
VerticalAlignment="Center"
|
||||
Click="DeleteButton_Click"
|
||||
Content="r"
|
||||
FontFamily="Webdings" />
|
||||
</DataTemplate>
|
||||
</dxg:GridColumn.CellTemplate>
|
||||
</dxg:GridColumn>
|
||||
<dxg:GridColumn x:Name="colItemPeriodStart" FieldName="ItemPeriodStart" Header="Von" EditSettings="{dxe:DateSettings DisplayFormat=d}" Width="80" />
|
||||
<dxg:GridColumn x:Name="colItemPeriodEnd" FieldName="ItemPeriodEnd" Header="Bis" EditSettings="{dxe:DateSettings DisplayFormat=d}" Width="80" />
|
||||
<dxg:GridColumn FieldName="ItemDescription" Header="Posten" Width="150" />
|
||||
<dxg:GridColumn x:Name="colAmountPerUnit" FieldName="AmountPerUnit" Header="Satz" Width="80">
|
||||
<dxg:GridColumn
|
||||
x:Name="colItemPeriodStart"
|
||||
Width="80"
|
||||
EditSettings="{dxe:DateSettings DisplayFormat=d}"
|
||||
FieldName="ItemPeriodStart"
|
||||
Header="Von" />
|
||||
<dxg:GridColumn
|
||||
x:Name="colItemPeriodEnd"
|
||||
Width="80"
|
||||
EditSettings="{dxe:DateSettings DisplayFormat=d}"
|
||||
FieldName="ItemPeriodEnd"
|
||||
Header="Bis" />
|
||||
<dxg:GridColumn
|
||||
Width="150"
|
||||
FieldName="ItemDescription"
|
||||
Header="Posten" />
|
||||
<dxg:GridColumn
|
||||
x:Name="colAmountPerUnit"
|
||||
Width="80"
|
||||
FieldName="AmountPerUnit"
|
||||
Header="Satz">
|
||||
<dxg:GridColumn.EditSettings>
|
||||
<dxe:TextEditSettings DisplayFormat="c" Mask="c" MaskType="Numeric"></dxe:TextEditSettings>
|
||||
<dxe:TextEditSettings
|
||||
DisplayFormat="c"
|
||||
Mask="c"
|
||||
MaskType="Numeric" />
|
||||
</dxg:GridColumn.EditSettings>
|
||||
</dxg:GridColumn>
|
||||
<dxg:GridColumn x:Name="colUnitCount" FieldName="UnitCount" Header="Anzahl" Width="80" />
|
||||
<dxg:GridColumn x:Name="colAmountTotal" FieldName="AmountTotal" Header="Betrag">
|
||||
<dxg:GridColumn
|
||||
x:Name="colUnitCount"
|
||||
Width="80"
|
||||
FieldName="UnitCount"
|
||||
Header="Anzahl" />
|
||||
<dxg:GridColumn
|
||||
x:Name="colAmountTotal"
|
||||
FieldName="AmountTotal"
|
||||
Header="Betrag">
|
||||
<dxg:GridColumn.CellStyle>
|
||||
<Style TargetType="dxg:LightweightCellEditor">
|
||||
<Setter Property="TextBlock.FontWeight" Value="Bold" />
|
||||
</Style>
|
||||
</dxg:GridColumn.CellStyle>
|
||||
<dxg:GridColumn.EditSettings>
|
||||
<dxe:TextEditSettings DisplayFormat="c" Mask="c" MaskType="Numeric"></dxe:TextEditSettings>
|
||||
<dxe:TextEditSettings
|
||||
DisplayFormat="c"
|
||||
Mask="c"
|
||||
MaskType="Numeric" />
|
||||
</dxg:GridColumn.EditSettings>
|
||||
</dxg:GridColumn>
|
||||
</dxg:GridControl.Columns>
|
||||
<dxg:GridControl.View>
|
||||
<dxg:TableView NewItemRowPosition="Top" Loaded="gridView_Loaded" x:Name="gridView" NavigationStyle="Cell" ShowGroupPanel="False" SnapsToDevicePixels="True" Margin="3" />
|
||||
<dxg:TableView
|
||||
x:Name="gridView"
|
||||
Margin="3"
|
||||
Loaded="gridView_Loaded"
|
||||
NavigationStyle="Cell"
|
||||
NewItemRowPosition="Top"
|
||||
ShowGroupPanel="False"
|
||||
SnapsToDevicePixels="True" />
|
||||
</dxg:GridControl.View>
|
||||
</dxg:GridControl>
|
||||
|
||||
@@ -214,9 +475,26 @@
|
||||
</Grid>
|
||||
</ScrollViewer>
|
||||
|
||||
<StackPanel Grid.ColumnSpan="2" Grid.Row="2" Orientation="Horizontal" VerticalAlignment="Center" Height="Auto" Margin="5 0 5 5" HorizontalAlignment="Right">
|
||||
<Button x:Name="btnSave" Content="Speichern und schließen" Margin="5" Command="ApplicationCommands.Save" Height="25" />
|
||||
<Button x:Name="btnClose" Content="Abbrechen" Margin="5" Command="ApplicationCommands.Close" Height="25" />
|
||||
<StackPanel
|
||||
Grid.Row="2"
|
||||
Grid.ColumnSpan="2"
|
||||
Height="Auto"
|
||||
Margin="5,0,5,5"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
x:Name="btnSave"
|
||||
Height="25"
|
||||
Margin="5"
|
||||
Command="ApplicationCommands.Save"
|
||||
Content="Speichern und schließen" />
|
||||
<Button
|
||||
x:Name="btnClose"
|
||||
Height="25"
|
||||
Margin="5"
|
||||
Command="ApplicationCommands.Close"
|
||||
Content="Abbrechen" />
|
||||
</StackPanel>
|
||||
|
||||
</Grid>
|
||||
|
||||
@@ -3920,6 +3920,10 @@
|
||||
StaysOpen="False">
|
||||
<localSearchView:OrganisationSearchView x:Name="personOrganisationsearchview" />
|
||||
</Popup>
|
||||
<Border x:Name="popup_content" Margin="0,10,0,-10" Height="1" Width="1"/>
|
||||
<Border
|
||||
x:Name="popup_content"
|
||||
Width="1"
|
||||
Height="1"
|
||||
Margin="0,10,0,-10" />
|
||||
</Grid>
|
||||
</localView:BeWoView>
|
||||
@@ -615,9 +615,20 @@
|
||||
|
||||
</Hyperlink>
|
||||
</TextBlock>
|
||||
<Button Margin="3" Click="Ai_Button_Click">
|
||||
AI Chat
|
||||
</Button>
|
||||
<StackPanel Margin="3">
|
||||
<Button
|
||||
Margin="3"
|
||||
HorizontalAlignment="Stretch"
|
||||
Click="Ai_Button_Click">
|
||||
AI Chat Window
|
||||
</Button>
|
||||
<Button
|
||||
Margin="3"
|
||||
HorizontalAlignment="Stretch"
|
||||
Click="Ai_Button2_Click">
|
||||
AI Chat Popup
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
<Grid
|
||||
Grid.Row="0"
|
||||
|
||||
@@ -52,6 +52,7 @@ using VerticalAlignment = System.Windows.VerticalAlignment;
|
||||
using DependencyObject = System.Windows.DependencyObject;
|
||||
using BeWo.AI.View;
|
||||
using BeWo.AI;
|
||||
using BeWo.View.Detail.AI;
|
||||
|
||||
namespace BeWo.View.Detail.Zeiterfassung
|
||||
{
|
||||
@@ -5076,10 +5077,29 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
|
||||
var context = ViewModel.GetVisibleInformationReferences(records);
|
||||
|
||||
var control = new AiConversationChatView();
|
||||
|
||||
control.ViewModel.UIContext = (int)(UIContext.ServiceRecord);
|
||||
control.ViewModel.ContextBeWoObjects = context;
|
||||
|
||||
var window = BeWoWindowBuilder.GetAiConversationZeiterfassungWindow(context);
|
||||
|
||||
window.Show();
|
||||
}
|
||||
private void Ai_Button2_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var records = GetVisibleRecordVMs();
|
||||
|
||||
var context = ViewModel.GetVisibleInformationReferences(records);
|
||||
|
||||
var control = new AiConversationChatModalPopup();
|
||||
|
||||
control.ViewModel.UIContext = (int)(UIContext.ServiceRecord);
|
||||
control.ViewModel.ContextBeWoObjects = context;
|
||||
|
||||
MainControl.ShowControlAsModalPopup(control);
|
||||
}
|
||||
|
||||
private IEnumerable<ServiceRecordVM> GetVisibleRecordVMs()
|
||||
{
|
||||
var list = new List<ServiceRecordVM>();
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
Closing="Window_Closing"
|
||||
ResizeMode="CanResizeWithGrip"
|
||||
SnapsToDevicePixels="True"
|
||||
TextOptions.TextFormattingMode="Display"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
WindowStyle="None">
|
||||
<Window.Resources>
|
||||
|
||||
@@ -24,6 +24,7 @@ namespace BeWo.View.Windows
|
||||
public partial class AnimatedBeWoWindow : Window
|
||||
{
|
||||
private bool closeStoryBoardCompleted = false;
|
||||
private bool isClosing = false;
|
||||
private WaitLayer2 _WaitLayer;
|
||||
|
||||
private object _GroupBoxContent;
|
||||
@@ -48,9 +49,9 @@ namespace BeWo.View.Windows
|
||||
|
||||
StartWaiting();
|
||||
|
||||
if (BeWoApp.CurrentAnimatedBeWoWindow == null)
|
||||
if (BeWoApp.MainControl.CurrentAnimatedBeWoWindow == null)
|
||||
{
|
||||
BeWoApp.CurrentAnimatedBeWoWindow = this;
|
||||
BeWoApp.MainControl.CurrentAnimatedBeWoWindow = this;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -70,11 +71,13 @@ namespace BeWo.View.Windows
|
||||
|
||||
public void Window_Closing(object sender, CancelEventArgs e)
|
||||
{
|
||||
if (!closeStoryBoardCompleted)
|
||||
if (!closeStoryBoardCompleted && !isClosing)
|
||||
{
|
||||
if (BeWoApp.CurrentAnimatedBeWoWindow == this)
|
||||
isClosing = true;
|
||||
|
||||
if (BeWoApp.MainControl.CurrentAnimatedBeWoWindow == this)
|
||||
{
|
||||
BeWoApp.CurrentAnimatedBeWoWindow = null;
|
||||
BeWoApp.MainControl.CurrentAnimatedBeWoWindow = null;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -99,7 +102,8 @@ namespace BeWo.View.Windows
|
||||
private void closeStoryBoard_Completed(object sender, EventArgs e)
|
||||
{
|
||||
closeStoryBoardCompleted = true;
|
||||
|
||||
isClosing = false;
|
||||
|
||||
Close();
|
||||
}
|
||||
|
||||
|
||||
@@ -134,6 +134,7 @@ namespace BeWo.Service.ServiceImplementations
|
||||
var config = GetAiConfig();
|
||||
|
||||
// Send Request, wait for Response
|
||||
var dt_before_request = DateTime.Now;
|
||||
var result = ServiceFacade.OpenWebUI.SendAiMessageRequest(conv_dc, config, out var model, out var duration);
|
||||
|
||||
// Antwort
|
||||
@@ -141,7 +142,7 @@ namespace BeWo.Service.ServiceImplementations
|
||||
assi_msg.Message = result;
|
||||
assi_msg.AiConversation = conv;
|
||||
assi_msg.Role = BS.Shared.AiConversationMessageRole.Assistent;
|
||||
assi_msg.Created = DateTime.Now;
|
||||
assi_msg.Created = dt_before_request;
|
||||
assi_msg.Duration = duration ?? 0;
|
||||
assi_msg.ModelName = model;
|
||||
|
||||
|
||||
@@ -46,13 +46,8 @@ namespace BeWo.Service.ServiceProxy
|
||||
|
||||
var payload = new
|
||||
{
|
||||
model = conversation.Modell.ModelName,
|
||||
messages = conversation.Messages.Select(m => new { role = m.Role.ToString().ToLower(), content = m.Message }),
|
||||
options = new
|
||||
{
|
||||
temperature = config.Temperature,
|
||||
num_predict = config.Max_Gen_Len
|
||||
}
|
||||
model = config.SelectedModel.ModelName,
|
||||
messages = conversation.Messages.Select(m => new { role = m.Role.ToString().ToLower(), content = m.Message })
|
||||
};
|
||||
|
||||
//var requestData = JsonConvert.SerializeObject(payload);
|
||||
|
||||
Reference in New Issue
Block a user