Merge branch 'master' into feature_rene_13_dakota
# Conflicts: # BeWo/BeWo.csproj # BeWo/ServiceProxy/Generated.cs # BeWo/ServiceProxy/ServiceFacade.cs # Data/Access/GenericDAO.cs # Data/Access/SearchDAO.cs # Data/Data.csproj # Service/DCEntityMapper/Compact/CompactCustomerDC_Customer.cs # Service/DCEntityMapper/Compact/CompactEmployeeDC_Employee.cs # Service/DCEntityMapper/Compact/CompactOrganisationDC_Organisation.cs # Service/DCEntityMapper/Compact/CompactPersonDC_Person.cs # Service/DCEntityMapper/Compact/CompactSupportConceptDC_SupportConcept.cs # Shared/Shared.csproj
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -3,6 +3,9 @@
|
||||
.editorconfig
|
||||
DebugConfig.txt
|
||||
Host/Multitenancy/demo.config
|
||||
*.log.txt
|
||||
*temp.txt
|
||||
*.Secrets.config
|
||||
|
||||
# Folder
|
||||
bin[Rr]elease/
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using BeWo.AI.View;
|
||||
using BeWo.View;
|
||||
using BeWo.View.Windows;
|
||||
using BS.Shared;
|
||||
using BS.Shared.Translation;
|
||||
using System;
|
||||
|
||||
@@ -1,18 +1,23 @@
|
||||
<view:BeWoView x:Class="BeWo.AI.View.AiChatView"
|
||||
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:view="clr-namespace:BeWo.View"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:validation="clr-namespace:BeWo.Validation"
|
||||
xmlns:core="clr-namespace:BS.Shared.Core;assembly=BS.Shared"
|
||||
xmlns:dxlc="http://schemas.devexpress.com/winfx/2008/xaml/layoutcontrol"
|
||||
xmlns:t="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:controls="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
Height="Auto" Width="Auto" HorizontalAlignment="Stretch"
|
||||
mc:Ignorable="d" VerticalAlignment="Stretch" Focusable="True">
|
||||
<view:BeWoView
|
||||
x:Class="BeWo.AI.View.AiChatView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:controls="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
xmlns:core="clr-namespace:BS.Shared.Core;assembly=BS.Shared"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
xmlns:dxlc="http://schemas.devexpress.com/winfx/2008/xaml/layoutcontrol"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:t="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:validation="clr-namespace:BeWo.Validation"
|
||||
xmlns:view="clr-namespace:BeWo.View"
|
||||
Width="Auto"
|
||||
Height="Auto"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
Focusable="True"
|
||||
mc:Ignorable="d">
|
||||
<view:BeWoView.Resources>
|
||||
<!--<Expander x:Name="ExpanderTemplate" IsExpanded="True">
|
||||
<Expander.Header>
|
||||
@@ -25,60 +30,120 @@
|
||||
</Expander.Header>
|
||||
</Expander>-->
|
||||
</view:BeWoView.Resources>
|
||||
<Grid Margin="0" Background="{DynamicResource ObjectEditBackgroundBrush}">
|
||||
<Grid Margin="0" Background="{DynamicResource ObjectEditBackgroundBrush}">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<dxlc:LayoutControl Orientation="Vertical" Padding="0">
|
||||
<dxlc:LayoutGroup dxlc:LayoutControl.AllowVerticalSizing="True" Height="200">
|
||||
<dxlc:LayoutControl Padding="0" Orientation="Vertical">
|
||||
<dxlc:LayoutGroup Height="200" dxlc:LayoutControl.AllowVerticalSizing="True">
|
||||
|
||||
<Grid Margin="5">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"></RowDefinition>
|
||||
<RowDefinition Height="Auto"></RowDefinition>
|
||||
<RowDefinition Height="*"></RowDefinition>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<Button Grid.Row="0" Content="Einstellungen" HorizontalAlignment="Left" Click="btnSettings_Click"/>
|
||||
<Popup Grid.Row="0" Grid.RowSpan="3" StaysOpen="True" Placement="MousePoint" Width="400" Height="300" x:Name="PopupTemplate">
|
||||
<Grid Background="{DynamicResource ObjectEditBackgroundBrush}" Margin="2,2,2,2">
|
||||
<Button
|
||||
Grid.Row="0"
|
||||
HorizontalAlignment="Left"
|
||||
Click="btnSettings_Click"
|
||||
Content="Einstellungen" />
|
||||
<Popup
|
||||
x:Name="PopupTemplate"
|
||||
Grid.Row="0"
|
||||
Grid.RowSpan="3"
|
||||
Width="400"
|
||||
Height="300"
|
||||
Placement="MousePoint"
|
||||
StaysOpen="True">
|
||||
<Grid Margin="2,2,2,2" Background="{DynamicResource ObjectEditBackgroundBrush}">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label Grid.Row="0" Content="{t:Translate Datensatz Template}"></Label>
|
||||
<TextBox x:Name="TextBoxTemplate" Grid.Row="1" MinHeight="60" AcceptsReturn="True" AcceptsTab="True" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto"></TextBox>
|
||||
<StackPanel Grid.Row="2" Orientation="Horizontal" HorizontalAlignment="Right">
|
||||
<Button Grid.Row="2" Content="Übernehmen" Click="btnSaveSettings_Click" Margin="3"/>
|
||||
<Button Grid.Row="2" Content="Abbrechen" Click="btnCancelSettings_Click" Margin="3"/>
|
||||
<Label Grid.Row="0" Content="{t:Translate Datensatz Template}" />
|
||||
<TextBox
|
||||
x:Name="TextBoxTemplate"
|
||||
Grid.Row="1"
|
||||
MinHeight="60"
|
||||
AcceptsReturn="True"
|
||||
AcceptsTab="True"
|
||||
HorizontalScrollBarVisibility="Auto"
|
||||
VerticalScrollBarVisibility="Auto" />
|
||||
<StackPanel
|
||||
Grid.Row="2"
|
||||
HorizontalAlignment="Right"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
Grid.Row="2"
|
||||
Margin="3"
|
||||
Click="btnSaveSettings_Click"
|
||||
Content="Übernehmen" />
|
||||
<Button
|
||||
Grid.Row="2"
|
||||
Margin="3"
|
||||
Click="btnCancelSettings_Click"
|
||||
Content="Abbrechen" />
|
||||
</StackPanel>
|
||||
|
||||
|
||||
</Grid>
|
||||
</Popup>
|
||||
<Label Grid.Row="1" Content="{t:Translate Formulieren Sie hier Ihre Anfrage}"></Label>
|
||||
<TextBox x:Name="TextBoxAnfrage" Grid.Row="2" MinHeight="60" AcceptsReturn="True" AcceptsTab="True" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto"></TextBox>
|
||||
<Label Grid.Row="1" Content="{t:Translate Formulieren Sie hier Ihre Anfrage}" />
|
||||
<TextBox
|
||||
x:Name="TextBoxAnfrage"
|
||||
Grid.Row="2"
|
||||
MinHeight="60"
|
||||
AcceptsReturn="True"
|
||||
AcceptsTab="True"
|
||||
HorizontalScrollBarVisibility="Auto"
|
||||
VerticalScrollBarVisibility="Auto" />
|
||||
</Grid>
|
||||
</dxlc:LayoutGroup>
|
||||
<dxlc:LayoutGroup dxlc:LayoutControl.AllowVerticalSizing="True">
|
||||
|
||||
<Grid Margin="5">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"></RowDefinition>
|
||||
<RowDefinition Height="*"></RowDefinition>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label Content="{t:Translate Ergebnis}"></Label>
|
||||
<TextBox x:Name="TextBoxErgebnis" Grid.Row="1" MinHeight="60" AcceptsReturn="True" AcceptsTab="True" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled" TextWrapping="Wrap" ></TextBox>
|
||||
<Label Content="{t:Translate Ergebnis}" />
|
||||
<TextBox
|
||||
x:Name="TextBoxErgebnis"
|
||||
Grid.Row="1"
|
||||
MinHeight="60"
|
||||
AcceptsReturn="True"
|
||||
AcceptsTab="True"
|
||||
HorizontalScrollBarVisibility="Disabled"
|
||||
TextWrapping="Wrap"
|
||||
VerticalScrollBarVisibility="Auto" />
|
||||
</Grid>
|
||||
</dxlc:LayoutGroup>
|
||||
</dxlc:LayoutControl>
|
||||
|
||||
<StackPanel Grid.Row="1" Orientation="Horizontal" VerticalAlignment="Center" Height="Auto" Margin="5,10,10,10" HorizontalAlignment="Right">
|
||||
<Button x:Name="btnSend" Content="{t:Translate Absenden}" Margin="0,0,3,0" Height="25" Click="btnSend_Click"/>
|
||||
<Button x:Name="btnClose" Content=" Schließen " Margin="0,0,3,0" Height="25" Click="btnClose_Click"/>
|
||||
|
||||
<StackPanel
|
||||
Grid.Row="1"
|
||||
Height="Auto"
|
||||
Margin="5,10,10,10"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
x:Name="btnSend"
|
||||
Height="25"
|
||||
Margin="0,0,3,0"
|
||||
Click="btnSend_Click"
|
||||
Content="{t:Translate Absenden}" />
|
||||
<Button
|
||||
x:Name="btnClose"
|
||||
Height="25"
|
||||
Margin="0,0,3,0"
|
||||
Click="btnClose_Click"
|
||||
Content=" Schließen " />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</view:BeWoView>
|
||||
|
||||
@@ -94,6 +94,45 @@
|
||||
</StartupObject>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Converter\Features\AiConversationMessageSystemConverter.cs" />
|
||||
<Compile Include="Converter\NewlineConverter.cs" />
|
||||
<Compile Include="ServiceProxy\GeneratedAiEnhancedService.cs" />
|
||||
<Compile Include="Services\BeWoControlFactory.cs" />
|
||||
<Compile Include="Services\BeWoWindowFactory.cs" />
|
||||
<Compile Include="Services\BeWoWindowService.cs" />
|
||||
<Compile Include="Services\IControlFactory.cs" />
|
||||
<Compile Include="Services\IWindowFactory.cs" />
|
||||
<Compile Include="Services\IWindowService.cs" />
|
||||
<Compile Include="ViewModel\AiConfigVM.cs" />
|
||||
<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\Document\RtfEditView.xaml.cs">
|
||||
<DependentUpon>RtfEditView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="View\TemplateSelectors\AiConversationMessageTemplateSelector.cs" />
|
||||
<Compile Include="View\Windows\AnimatedBeWoWindow.xaml.cs">
|
||||
<DependentUpon>AnimatedBeWoWindow.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Page Include="View\Detail\AI\AiConfigView.xaml">
|
||||
<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\Document\RtfEditView.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="View\Windows\AnimatedBeWoWindow.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Reference Include="Blacklight.Wpf.Controls, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\Lib\Blacklight.Wpf.Controls.dll</HintPath>
|
||||
@@ -324,6 +363,10 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="Styles\ControlStyles\WindowStyles.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="Styles\DataTemplates\ControlTemplates.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -332,6 +375,14 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="Styles\DataTemplates\WindowTemplates.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="Styles\Features\AIChatStyles.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="Styles\ModernOrangeBlack.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -410,6 +461,10 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="View\Detail\AI\AiConversationChatView.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="View\Detail\CustomerVermittlungArbeitView.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -669,6 +724,10 @@
|
||||
<Page Include="View\Document\DokumenteView.xaml">
|
||||
<Generator>MSBuild:UpdateDesignTimeXaml</Generator>
|
||||
</Page>
|
||||
<Page Include="View\Master\AiConversationView.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="View\Master\SchedulingMasterView.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -1125,6 +1184,7 @@
|
||||
<Compile Include="SchulbegleitenderDienst\WochenVertretung.cs" />
|
||||
<Compile Include="Security\EncryptionUtils.cs" />
|
||||
<Compile Include="ServiceProxy\ServiceFacadeExtension.cs" />
|
||||
<Compile Include="ServiceProxy\GeneratedOperationsEnhancedService.cs" />
|
||||
<Compile Include="UploadDialog.xaml.cs">
|
||||
<DependentUpon>UploadDialog.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -1199,11 +1259,15 @@
|
||||
<Compile Include="ViewModel\AdditionalServiceGroupOfPeopleVM.cs" />
|
||||
<Compile Include="ViewModel\AdditionalServiceRegionVM.cs" />
|
||||
<Compile Include="ViewModel\AdditionalServiceVM.cs" />
|
||||
<Compile Include="ViewModel\AiConversationMessageVM.cs" />
|
||||
<Compile Include="ViewModel\AiConversationVM.cs" />
|
||||
<Compile Include="ViewModel\BaseVM.cs" />
|
||||
<Compile Include="ViewModel\CustomerVermittlungArbeitVM.cs" />
|
||||
<Compile Include="ViewModel\Light\GkvAbrechnungLightVM.cs" />
|
||||
<Compile Include="ViewModel\Light\InvoiceBaseLightVM.cs" />
|
||||
<Compile Include="ViewModel\ListViewModel\AbstractListVM.cs" />
|
||||
<Compile Include="ViewModel\ListViewModel\AiConversationMessageListVM.cs" />
|
||||
<Compile Include="ViewModel\ListViewModel\AiConversationListVM.cs" />
|
||||
<Compile Include="ViewModel\ListViewModel\CustomerVermittlungArbeitListVM.cs" />
|
||||
<Compile Include="ViewModel\ListViewModel\Light\GkvAbrechnungLightListVM.cs" />
|
||||
<Compile Include="ViewModel\Wohnhilfe\CustomerWohnhilfeBereichBundVM.cs" />
|
||||
@@ -1335,6 +1399,9 @@
|
||||
<Compile Include="View\Detail\Administration\SoziotherapieSettingsView.xaml.cs">
|
||||
<DependentUpon>SoziotherapieSettingsView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="View\Detail\AI\AiConversationChatView.xaml.cs">
|
||||
<DependentUpon>AiConversationChatView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="View\Detail\CustomerVermittlungArbeitView.xaml.cs">
|
||||
<DependentUpon>CustomerVermittlungArbeitView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -1378,7 +1445,7 @@
|
||||
<Compile Include="View\HilfeplanImportView.xaml.cs">
|
||||
<DependentUpon>HilfeplanImportView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="View\BeWoWindowBuilder.cs" />
|
||||
<Compile Include="View\Windows\BeWoWindowBuilder.cs" />
|
||||
<Compile Include="View\Controls\DPCtrlEmployeeContractTooltip.xaml.cs">
|
||||
<DependentUpon>DPCtrlEmployeeContractTooltip.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -1549,6 +1616,9 @@
|
||||
<Compile Include="View\Document\DokumenteView.xaml.cs">
|
||||
<DependentUpon>DokumenteView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="View\Master\AiConversationView.xaml.cs">
|
||||
<DependentUpon>AiConversationView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="View\Master\SchedulingMasterView.xaml.cs">
|
||||
<DependentUpon>SchedulingMasterView.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -3447,7 +3517,13 @@
|
||||
<ItemGroup>
|
||||
<Resource Include="Ressources\Icons\chatbot.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup />
|
||||
<ItemGroup>
|
||||
<Resource Include="Ressources\Icons\chatbot2.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="Scripts\" />
|
||||
<Folder Include="View\Controls\Popup\" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>
|
||||
|
||||
@@ -82,6 +82,7 @@
|
||||
<conv:RadioBoolToIntConverter x:Key="RadioBoolToIntConverter" />
|
||||
<conv:EnumTranslationConverter x:Key="EnumTranslationConverter" />
|
||||
<conv:TooltipTextConverter x:Key="TooltipTextConverter" />
|
||||
<conv:NewlineConverter x:Key="NewlineConverter" />
|
||||
|
||||
<conv:ValidationConverter x:Key="ValidationConverter" />
|
||||
<conv:ValueConverterGroup x:Key="Validation2BrushConverter">
|
||||
@@ -605,9 +606,13 @@
|
||||
Grid.RowSpan="1"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
Padding="5,5,5,5">
|
||||
Padding="5,5,5,5"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch">
|
||||
<ContentPresenter
|
||||
Margin="0,0,0,0"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
Content="{TemplateBinding Content}"
|
||||
ContentStringFormat="{TemplateBinding ContentStringFormat}"
|
||||
ContentTemplate="{TemplateBinding ContentTemplate}"
|
||||
|
||||
@@ -35,6 +35,7 @@ using DevExpress.Xpf.Grid;
|
||||
using DevExpress.Xpf.Scheduling;
|
||||
using DevExpress.XtraScheduler;
|
||||
using System.ServiceModel;
|
||||
using BeWo.View.Windows;
|
||||
|
||||
namespace BeWo
|
||||
{
|
||||
@@ -44,54 +45,55 @@ namespace BeWo
|
||||
public partial class BeWoApp : INotifyPropertyChanged
|
||||
{
|
||||
private static DebugMessageLogView _DebugMessageLogView;
|
||||
|
||||
private static FrameworkElement _lockedContent;
|
||||
private static AppSettings _AppSettings;
|
||||
private static CompactEmployeeDC _CompactLoggedOnEmployee;
|
||||
private static EmployeeDC _LoggedOnEmployee;
|
||||
private static UserDC _LoggedOnUser;
|
||||
private static MandatorDC _Mandator;
|
||||
private static bool _IsInDeveloperMode;
|
||||
|
||||
public static LoginControl LoginControl;
|
||||
|
||||
public static MainControl MainControl;
|
||||
public static string ShortVersion = "3.24";
|
||||
|
||||
public static string Version = "Version 3.24";
|
||||
public static string ShortVersion = "3.25";
|
||||
|
||||
public static string Version = "Version 3.25";
|
||||
|
||||
public static int RenderTier = 0;
|
||||
|
||||
public static bool IsInDesignMode = DesignerProperties.GetIsInDesignMode(new DependencyObject());
|
||||
|
||||
internal static string IpAddress = string.Empty;
|
||||
|
||||
internal static string Tenant = string.Empty;
|
||||
|
||||
internal static string ServerName = string.Empty;
|
||||
|
||||
internal static string UserName = string.Empty;
|
||||
|
||||
internal static string UserPassword = string.Empty;
|
||||
|
||||
internal static string TwoFactorPin = string.Empty;
|
||||
|
||||
internal static string chatServerURL = string.Empty;
|
||||
|
||||
private static AppSettings _AppSettings;
|
||||
|
||||
private static CompactEmployeeDC _CompactLoggedOnEmployee;
|
||||
private static EmployeeDC _LoggedOnEmployee;
|
||||
|
||||
private static UserDC _LoggedOnUser;
|
||||
|
||||
private static MandatorDC _Mandator;
|
||||
private static string _ServerAddress;
|
||||
private static int _LockUITime = 30;
|
||||
private static List<Window> OpenDevExpressEditForms = new List<Window>();
|
||||
|
||||
private static List<Window> OpenDevExpressEditForms = new List<Window>();
|
||||
private static DocumentWatcher _DocumentWatcher;
|
||||
|
||||
internal static PasswortSecurityStrength PasswortStrength;
|
||||
|
||||
public static BeWoApp CurrentBeWo => Current as BeWoApp;
|
||||
|
||||
public static Dictionary<string, string> ICD10Diagnosis { get; set; }
|
||||
|
||||
public static bool IsInDeveloperMode {
|
||||
get => _IsInDeveloperMode;
|
||||
set
|
||||
{
|
||||
if(IsInDeveloperMode == value)
|
||||
return;
|
||||
|
||||
_IsInDeveloperMode = value;
|
||||
CurrentBeWo.FirePropertyChanged(nameof(IsInDeveloperMode));
|
||||
}
|
||||
}
|
||||
|
||||
public static EmployeeDC LoggedOnEmployee
|
||||
{
|
||||
get => _LoggedOnEmployee;
|
||||
@@ -239,6 +241,18 @@ namespace BeWo
|
||||
isServiceRecordNoticeMandatory = false;
|
||||
}
|
||||
|
||||
val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.IsServiceRecordGoalMandatory);
|
||||
if (val != null && val.Equals("1"))
|
||||
{
|
||||
AppSettings.IsServiceRecordGoalMandatory = true;
|
||||
}
|
||||
|
||||
val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.IsServiceRecordRatingMandatory);
|
||||
if (val != null && val.Equals("1"))
|
||||
{
|
||||
AppSettings.IsServiceRecordRatingMandatory = true;
|
||||
}
|
||||
|
||||
val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.IsPasswordSecurityActiv);
|
||||
if (val != null && val.Equals("1"))
|
||||
{
|
||||
@@ -420,7 +434,7 @@ namespace BeWo
|
||||
{
|
||||
showAnnualReport = true;
|
||||
}
|
||||
val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.ShowCustomerDistanceFields);
|
||||
val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys. ShowCustomerDistanceFields);
|
||||
if (val != null && val.Equals("1"))
|
||||
{
|
||||
showCustomerDistanceFields = true;
|
||||
@@ -491,9 +505,9 @@ namespace BeWo
|
||||
AppSettings.ShowKlientenBetreuungszeiten = true;
|
||||
}
|
||||
val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.FilterGroupServiceCategories);
|
||||
if (val != null && val.Equals("0"))
|
||||
if (val != null && val.Equals("1"))
|
||||
{
|
||||
AppSettings.FilterGroupServiceCategories = false;
|
||||
AppSettings.FilterGroupServiceCategories = true;
|
||||
}
|
||||
val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.ShowInfoButtonInCalender);
|
||||
if (val != null && val.Equals("1"))
|
||||
@@ -527,7 +541,10 @@ namespace BeWo
|
||||
_AppSettings.ServiceRecordAllowChangeHours = Convert.ToInt32(val);
|
||||
}
|
||||
|
||||
val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.AllowGkvAbrechnung);
|
||||
val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.ShowServicesOverviewHalfOrWholeMonth);
|
||||
AppSettings.ShowServicesOverviewHalfOrWholeMonth = val?.Equals("1") ?? false;
|
||||
|
||||
val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.AllowGkvAbrechnung);
|
||||
AppSettings.AllowGkvAbrechnung = val != null && val.Equals("1");
|
||||
|
||||
val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.ShowWohnhilfe);
|
||||
@@ -542,6 +559,9 @@ namespace BeWo
|
||||
val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, SettingsKeys.DontUpdateApprovalPeriodDates);
|
||||
AppSettings.DontUpdateApprovalPeriodDates = val != null && val.Equals("1");
|
||||
|
||||
// REFACTOR: getUserSetting verwenden?
|
||||
AppSettings.ModuleAiEnabled = getUserSetting(SettingsKeys.ModuleAiEnabled);
|
||||
AppSettings.ModuleAiSettingsEnabled = getUserSetting(SettingsKeys.ModuleAiSettingsEnabled);
|
||||
|
||||
switch (_Mandator.BeWoClientType)
|
||||
{
|
||||
@@ -603,14 +623,18 @@ namespace BeWo
|
||||
showDienstplanung = true;
|
||||
showHilfeplanBezeichnung = true;
|
||||
AppSettings.AllowStorno = true;
|
||||
AppSettings.ShowAI = true;
|
||||
AppSettings.ShowAIInternal = true;
|
||||
//AppSettings.ShowAI = true;
|
||||
//AppSettings.ShowAIInternal = true;
|
||||
AppSettings.ShowWorktime = true;
|
||||
AppSettings.ShowPersehImport = true;
|
||||
AppSettings.ShowWohnhilfe = true;
|
||||
//AppSettings.AllowGkvAbrechnung = true;
|
||||
//AppSettings.AllowGkvAbrechnung = false;
|
||||
//showInfoButtonInCalender = true;
|
||||
IsInDeveloperMode = true;
|
||||
//IsInDeveloperMode = false;
|
||||
AppSettings.ModuleAiEnabled = true;
|
||||
AppSettings.ModuleAiSettingsEnabled = false;
|
||||
#endif
|
||||
|
||||
AppSettings.ShowDatevFields = showDatevFields;
|
||||
@@ -651,6 +675,11 @@ namespace BeWo
|
||||
|
||||
BS.Shared.Settings.ApplicationSettings.SupportConceptExpirationLimitInMonths = AppSettings.HilfeplanAuslaufAuswahl;
|
||||
|
||||
if (IsInDeveloperMode)
|
||||
{
|
||||
applyDeveloperMode();
|
||||
}
|
||||
|
||||
if(MainControl is object)
|
||||
{
|
||||
MainControl.UpdateMandator();
|
||||
@@ -658,6 +687,18 @@ namespace BeWo
|
||||
}
|
||||
}
|
||||
|
||||
private static void applyDeveloperMode()
|
||||
{
|
||||
AppSettings.ModuleAiSettingsEnabled = true;
|
||||
}
|
||||
|
||||
private static bool getUserSetting(string key)
|
||||
{
|
||||
var val = UserSettingsUtils.GetSettingValue(_Mandator.Settings, key);
|
||||
var allowed = val != null && val.Equals("1");
|
||||
return allowed;
|
||||
}
|
||||
|
||||
internal static Uri SiteOfOrigin
|
||||
{
|
||||
get
|
||||
@@ -905,7 +946,11 @@ namespace BeWo
|
||||
|
||||
internal static void ShowError(string message, Exception ex, bool showSupportForm, bool showStacktrace)
|
||||
{
|
||||
if (MainControl != null)
|
||||
if (MainControl?.CurrentAnimatedBeWoWindow is object)
|
||||
{
|
||||
MessageBox.Show(message + "\n\n" + ex);
|
||||
}
|
||||
else if (MainControl != null)
|
||||
{
|
||||
MainControl.Dispatcher.BeginInvoke(DispatcherPriority.Normal, (Action) (() =>
|
||||
{
|
||||
@@ -1345,6 +1390,10 @@ namespace BeWo
|
||||
{
|
||||
abc.Close();
|
||||
}
|
||||
else if (title.IndexOf("Fenster") >= 0)
|
||||
{
|
||||
abc.Close();
|
||||
}
|
||||
}
|
||||
|
||||
MainControl.HideCurrentModalViewWindows();
|
||||
|
||||
@@ -1,10 +1,20 @@
|
||||
<Window x:Class="BeWo.ConfirmDemoDialog"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="BeWoPlaner" Height="240" Width="360" WindowStartupLocation="CenterScreen" WindowStyle="None" ResizeMode="NoResize" >
|
||||
|
||||
<Grid Background="{x:Null}" Margin="0,0,0,0">
|
||||
<Border BorderThickness="1" Padding="5,5,5,5" BorderBrush="Black" Background="{DynamicResource LoginBackgroundColor}">
|
||||
<Window
|
||||
x:Class="BeWo.ConfirmDemoDialog"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="BeWoPlaner"
|
||||
Width="360"
|
||||
Height="240"
|
||||
ResizeMode="NoResize"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
WindowStyle="None">
|
||||
|
||||
<Grid Margin="0,0,0,0" Background="{x:Null}">
|
||||
<Border
|
||||
Padding="5,5,5,5"
|
||||
Background="{DynamicResource LoginBackgroundColor}"
|
||||
BorderBrush="Black"
|
||||
BorderThickness="1">
|
||||
<Grid Opacity="1">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
@@ -17,27 +27,63 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Image Grid.Row="0" HorizontalAlignment="Left" VerticalAlignment="Top" Source="Ressources\Icons\bewoplaner_logo_small.png" Height="45" Margin="7,7,0,0"/>
|
||||
<Image
|
||||
Grid.Row="0"
|
||||
Height="45"
|
||||
Margin="7,7,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Top"
|
||||
Source="Ressources\Icons\bewoplaner_logo_small.png" />
|
||||
<Grid Grid.Row="1" Margin="0,10,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" ></RowDefinition>
|
||||
<RowDefinition Height="Auto" ></RowDefinition>
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<TextBlock TextWrapping="Wrap" Margin="3" FontSize="14">WICHTIG! Bitte tragen Sie keine echten Daten bei Ihren Tests ein, da es sich um einen öffentlichen Testzugang handelt, auf den jeder Zugriff hat!</TextBlock>
|
||||
<Button x:Name="CountButton" Grid.Row="2" Grid.Column="1" Width="120" Margin="3,25,3,3" IsDefault="True" HorizontalAlignment="Right" Click="ButtonBase_OnClick">OK</Button>
|
||||
<TextBlock
|
||||
Margin="3"
|
||||
FontSize="14"
|
||||
TextWrapping="Wrap">
|
||||
WICHTIG! Bitte tragen Sie keine echten Daten bei Ihren Tests ein, da es sich um einen öffentlichen Testzugang handelt, auf den jeder Zugriff hat!
|
||||
</TextBlock>
|
||||
<Button
|
||||
x:Name="CountButton"
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Width="120"
|
||||
Margin="3,25,3,3"
|
||||
HorizontalAlignment="Right"
|
||||
Click="ButtonBase_OnClick"
|
||||
IsDefault="True">
|
||||
OK
|
||||
</Button>
|
||||
<!--<Button Grid.Row="2" Grid.Column ="2" Width="100" Margin="3" IsCancel="True" IsEnabled="False" HorizontalAlignment="Right">Abbrechen</Button>-->
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Border>
|
||||
|
||||
<Line Grid.ColumnSpan="4" Stroke="#FFADADAD" X1="14" Y1="70" X2="585" Y2="70" StrokeThickness="1"></Line>
|
||||
<Line x:Name="linkLine" Stroke="#FFADADAD" X1="14" Y1="340" X2="585" Y2="340" StrokeThickness="1" Margin="0,30,0,-30"></Line>
|
||||
<Line
|
||||
Grid.ColumnSpan="4"
|
||||
Stroke="#FFADADAD"
|
||||
StrokeThickness="1"
|
||||
X1="14"
|
||||
X2="585"
|
||||
Y1="70"
|
||||
Y2="70" />
|
||||
<Line
|
||||
x:Name="linkLine"
|
||||
Margin="0,30,0,-30"
|
||||
Stroke="#FFADADAD"
|
||||
StrokeThickness="1"
|
||||
X1="14"
|
||||
X2="585"
|
||||
Y1="340"
|
||||
Y2="340" />
|
||||
</Grid>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</Window>
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
using BeWo.View.Navigation.Filter;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Data;
|
||||
using BeWo.ViewModel;
|
||||
|
||||
namespace BeWo.Converter.Features
|
||||
{
|
||||
public class AiConversationMessageSystemConverter : IValueConverter
|
||||
{
|
||||
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
if (BeWoApp.IsInDeveloperMode)
|
||||
return value;
|
||||
|
||||
var ret = (value as IEnumerable<AiConversationMessageVM>).Where(vm => vm.Role != AiConversationMessageRole.System);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
25
BeWo/Converter/NewlineConverter.cs
Normal file
25
BeWo/Converter/NewlineConverter.cs
Normal file
@@ -0,0 +1,25 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Data;
|
||||
|
||||
namespace BeWo.Converter
|
||||
{
|
||||
public class NewlineConverter : IValueConverter
|
||||
{
|
||||
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
return value?.ToString()?
|
||||
.Replace("\\r\\n", "\r\n")
|
||||
.Replace("\\n", "\r\n")
|
||||
.Replace("\\r", "\r\n");
|
||||
}
|
||||
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -63,6 +63,7 @@ using BeWo.View.Detail.Zeiterfassung;
|
||||
using DevExpress.Xpf.Scheduling;
|
||||
using CommandBarStyle = DevExpress.Xpf.DocumentViewer.CommandBarStyle;
|
||||
using ImageSource = System.Windows.Media.ImageSource;
|
||||
using BS.Shared.Translation;
|
||||
|
||||
namespace BeWo.Core
|
||||
{
|
||||
@@ -1657,7 +1658,7 @@ namespace BeWo.Core
|
||||
System.Diagnostics.Process.Start(mailCmd);
|
||||
}
|
||||
|
||||
public static bool ValidateServiceRecordVM(ServiceRecordVM vm, SupportConceptStatisticsDC statistics, FlatSupportConceptTreeNodeDC node, bool withoutClient, CompactEmployeeDC selectedEmployee, List<long> employeeOids, List<long> cb2ScOids)
|
||||
public static bool ValidateServiceRecordVM(ServiceRecordVM vm, SupportConceptStatisticsDC statistics, FlatSupportConceptTreeNodeDC node, bool withoutClient, CompactEmployeeDC selectedEmployee, List<long> employeeOids, List<long> cb2ScOids, int groupIndex)
|
||||
{
|
||||
var lValid = true;
|
||||
|
||||
@@ -1666,12 +1667,37 @@ namespace BeWo.Core
|
||||
MessageBox.Show("Bitte wählen Sie eine Leistung aus. Sollten keine Leistungen für die gewählte Kategorie verfügbar sein, müssen diese zunächst in der Verwaltung angelegt werden.", "Speichern", MessageBoxButton.OK, MessageBoxImage.Information);
|
||||
return false;
|
||||
}
|
||||
if(vm.GoalTree != null && vm.GoalTree.Count > 0 && (cb2ScOids == null || cb2ScOids.Count < 2))
|
||||
if(vm.GoalTree != null && vm.GoalTree.Count > 0 && groupIndex == 1/* && (cb2ScOids == null || cb2ScOids.Count < 2)*/)
|
||||
{
|
||||
if(vm.SelectedGoals.Count == 0 && MessageBox.Show("Es wurde kein Ziel zugeordnet. Sind Sie sicher, dass Sie speichern möchten?", "Speichern", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.No)
|
||||
if (vm.SelectedGoals.Count == 0)
|
||||
{
|
||||
return false;
|
||||
if (BeWoApp.AppSettings.IsServiceRecordGoalMandatory)
|
||||
{
|
||||
MessageBox.Show(Translator.Translate("Sie müssen mindestens ein Ziel auswählen, bevor Sie speichern können."), "Speichern", MessageBoxButton.OK, MessageBoxImage.Exclamation);
|
||||
return false;
|
||||
}
|
||||
else if (MessageBox.Show("Es wurde kein Ziel zugeordnet. Sind Sie sicher, dass Sie speichern möchten?", "Speichern", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.No)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (BeWoApp.AppSettings.IsServiceRecordRatingMandatory)
|
||||
{
|
||||
foreach (var goal in vm.SelectedGoals)
|
||||
{
|
||||
if (!goal.RatingTypeOid.HasValue)
|
||||
{
|
||||
MessageBox.Show(String.Format("Das Ziel '{0}' wurde nicht bewertet.\nSpeichern nicht möglich.", goal.DisplayName), "Speichern", MessageBoxButton.OK, MessageBoxImage.Exclamation);
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
CompactSupportConceptDC scDc = null;
|
||||
|
||||
@@ -293,5 +293,15 @@ namespace BeWo.Core
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public static void ScrollToBottom(ListBox listBox)
|
||||
{
|
||||
if (VisualTreeHelper.GetChildrenCount(listBox) > 0)
|
||||
{
|
||||
Border border = (Border)VisualTreeHelper.GetChild(listBox, 0);
|
||||
ScrollViewer scrollViewer = (ScrollViewer)VisualTreeHelper.GetChild(border, 0);
|
||||
scrollViewer.ScrollToBottom();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -11,6 +11,8 @@ namespace BeWo.Core.Config
|
||||
public class AppSettings
|
||||
{
|
||||
private bool mIsServiceRecordNoticeMandatory = true;
|
||||
private bool mIsServiceRecordGoalMandatory = false;
|
||||
private bool mIsServiceRecordRatingMandatory = false;
|
||||
|
||||
private bool mIsPasswordSecurityActiv = false;
|
||||
|
||||
@@ -28,7 +30,7 @@ namespace BeWo.Core.Config
|
||||
|
||||
private bool _showExpiredSupportConcepts = true;
|
||||
private bool _showServiceRecordGridControl = true;
|
||||
private bool _filterGroupServiceCategories = true;
|
||||
private bool _filterGroupServiceCategories = false;
|
||||
private bool mOpenReportInNewWindow = false;
|
||||
|
||||
private WindowStateType mWindowStateType = WindowStateType.Default;
|
||||
@@ -67,6 +69,19 @@ namespace BeWo.Core.Config
|
||||
set { mIsServiceRecordNoticeMandatory = value; }
|
||||
}
|
||||
|
||||
public bool IsServiceRecordGoalMandatory
|
||||
{
|
||||
get { return mIsServiceRecordGoalMandatory; }
|
||||
|
||||
set { mIsServiceRecordGoalMandatory = value; }
|
||||
}
|
||||
|
||||
public bool IsServiceRecordRatingMandatory
|
||||
{
|
||||
get { return mIsServiceRecordRatingMandatory; }
|
||||
|
||||
set { mIsServiceRecordRatingMandatory = value; }
|
||||
}
|
||||
public bool IsPasswordSecurityActiv
|
||||
{
|
||||
get { return mIsPasswordSecurityActiv; }
|
||||
@@ -470,6 +485,10 @@ namespace BeWo.Core.Config
|
||||
public bool ShowAIInternal { get; set; }
|
||||
|
||||
public bool AllowGkvAbrechnung { get; set; }
|
||||
|
||||
public bool ModuleAiEnabled { get; set; }
|
||||
public bool ModuleAiSettingsEnabled { get; set; }
|
||||
|
||||
public bool ShowWohnhilfe { get; set; }
|
||||
public bool ShowImportAbschlagszahlungen { get; set; }
|
||||
|
||||
@@ -542,6 +561,19 @@ namespace BeWo.Core.Config
|
||||
set { _filterGroupServiceCategories = value; }
|
||||
}
|
||||
|
||||
private bool _ShowServicesOverviewHalfOrWholeMonth;
|
||||
public bool ShowServicesOverviewHalfOrWholeMonth
|
||||
{
|
||||
get => _ShowServicesOverviewHalfOrWholeMonth;
|
||||
set
|
||||
{
|
||||
if(_ShowServicesOverviewHalfOrWholeMonth != value)
|
||||
{
|
||||
_ShowServicesOverviewHalfOrWholeMonth = value;
|
||||
IsDirty = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public bool OpenReportInNewWindow
|
||||
{
|
||||
@@ -552,10 +584,9 @@ namespace BeWo.Core.Config
|
||||
if (mOpenReportInNewWindow != value)
|
||||
{
|
||||
mOpenReportInNewWindow = value;
|
||||
IsDirty = true;
|
||||
IsDirty = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -10,7 +10,8 @@ namespace BeWo
|
||||
FeatureCustomerWohnhilfe,
|
||||
FeatureWohnheimWohneinheit,
|
||||
FeatureAuswertungenQuittierungsbelege,
|
||||
FeatureDakota
|
||||
FeatureDakota,
|
||||
FeatureAiModule
|
||||
}
|
||||
|
||||
public class DebugConfig
|
||||
@@ -47,8 +48,8 @@ namespace BeWo
|
||||
/// - Wohnhilfe: 5
|
||||
/// </summary>
|
||||
public int? SelectIndex { get; set; }
|
||||
|
||||
public bool EnableAutoRemoteDebugging { get; set; }
|
||||
public bool EnableAllUserRightsInDebug { get; set; } = false;
|
||||
|
||||
public static DebugConfig SimpleAutoLogin => new DebugConfig()
|
||||
{
|
||||
@@ -139,6 +140,19 @@ namespace BeWo
|
||||
EnableAutoRemoteDebugging = true
|
||||
});
|
||||
|
||||
name2config.Add("FeatureAiModule",
|
||||
new DebugConfig()
|
||||
{
|
||||
DebugConfigMode = DebugConfigMode.FeatureAiModule,
|
||||
AutoLogin = true,
|
||||
//SelectView = UIContext.AiConversation,
|
||||
//SelectIndex = 8,
|
||||
DefaultLoginUsername = "m1",
|
||||
DefaultLoginPassword = "bewobewo",
|
||||
DefaultProfilename = "5000000000",
|
||||
EnableAutoRemoteDebugging = true
|
||||
});
|
||||
|
||||
return name2config;
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -1,10 +1,18 @@
|
||||
<Window x:Class="BeWo.EnterTenantDialog"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="BeWoPlaner" Height="240" Width="320" WindowStartupLocation="CenterScreen" WindowStyle="ToolWindow">
|
||||
|
||||
<Grid Background="{x:Null}" Margin="0,0,0,0">
|
||||
<Border BorderThickness="0" Padding="5,5,5,5" Background="{DynamicResource LoginBackgroundColor}">
|
||||
<Window
|
||||
x:Class="BeWo.EnterTenantDialog"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="BeWoPlaner"
|
||||
Width="320"
|
||||
Height="240"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
WindowStyle="ToolWindow">
|
||||
|
||||
<Grid Margin="0,0,0,0" Background="{x:Null}">
|
||||
<Border
|
||||
Padding="5,5,5,5"
|
||||
Background="{DynamicResource LoginBackgroundColor}"
|
||||
BorderThickness="0">
|
||||
<Grid Opacity="1">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
@@ -17,7 +25,13 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Image Grid.Row="0" HorizontalAlignment="Left" VerticalAlignment="Top" Source="Ressources\Icons\bewoplaner_logo_small.png" Height="45" Margin="7,7,0,0"/>
|
||||
<Image
|
||||
Grid.Row="0"
|
||||
Height="45"
|
||||
Margin="7,7,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Top"
|
||||
Source="Ressources\Icons\bewoplaner_logo_small.png" />
|
||||
<Grid Grid.Row="1">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
@@ -25,24 +39,70 @@
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" ></RowDefinition>
|
||||
<RowDefinition Height="Auto" ></RowDefinition>
|
||||
<RowDefinition Height="Auto" ></RowDefinition>
|
||||
<RowDefinition Height="Auto" ></RowDefinition>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Grid.ColumnSpan="3" TextWrapping="Wrap" Margin="3">Bitte geben Sie Ihre 10-stellige Kundennummer ein:</TextBlock>
|
||||
<TextBox x:Name="txtTenant" Grid.ColumnSpan="3" Grid.Row="1" Margin="3"></TextBox>
|
||||
<Button Grid.Row="2" Grid.Column ="1" Width="100" Margin="3" IsDefault="True" Click="ButtonBase_OnClick">OK</Button>
|
||||
<Button Grid.Row="2" Grid.Column ="2" Width="100" Margin="3" IsCancel="True" >Abbrechen</Button>
|
||||
<CheckBox Grid.ColumnSpan="3" Grid.Row="3" Margin="3" Checked="ToggleButton_OnChecked" Unchecked="ToggleButton_OnUnchecked">Demo Zugang nutzen</CheckBox>
|
||||
<TextBlock
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="3"
|
||||
TextWrapping="Wrap">
|
||||
Bitte geben Sie Ihre 10-stellige Kundennummer ein:
|
||||
</TextBlock>
|
||||
<TextBox
|
||||
x:Name="txtTenant"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="3" />
|
||||
<Button
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Width="100"
|
||||
Margin="3"
|
||||
Click="ButtonBase_OnClick"
|
||||
IsDefault="True">
|
||||
OK
|
||||
</Button>
|
||||
<Button
|
||||
Grid.Row="2"
|
||||
Grid.Column="2"
|
||||
Width="100"
|
||||
Margin="3"
|
||||
IsCancel="True">
|
||||
Abbrechen
|
||||
</Button>
|
||||
<CheckBox
|
||||
Grid.Row="3"
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="3"
|
||||
Checked="ToggleButton_OnChecked"
|
||||
Unchecked="ToggleButton_OnUnchecked">
|
||||
Demo Zugang nutzen
|
||||
</CheckBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Border>
|
||||
<Line Grid.ColumnSpan="4" Stroke="#FFADADAD" X1="14" Y1="70" X2="585" Y2="70" StrokeThickness="1"></Line>
|
||||
<Line x:Name="linkLine" Stroke="#FFADADAD" X1="14" Y1="340" X2="585" Y2="340" StrokeThickness="1" Margin="0,30,0,-30"></Line>
|
||||
<Line
|
||||
Grid.ColumnSpan="4"
|
||||
Stroke="#FFADADAD"
|
||||
StrokeThickness="1"
|
||||
X1="14"
|
||||
X2="585"
|
||||
Y1="70"
|
||||
Y2="70" />
|
||||
<Line
|
||||
x:Name="linkLine"
|
||||
Margin="0,30,0,-30"
|
||||
Stroke="#FFADADAD"
|
||||
StrokeThickness="1"
|
||||
X1="14"
|
||||
X2="585"
|
||||
Y1="340"
|
||||
Y2="340" />
|
||||
|
||||
</Grid>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</Window>
|
||||
|
||||
@@ -1,14 +1,22 @@
|
||||
<Page x:Class="BeWo.LockedPage"
|
||||
Title="LockedPage"
|
||||
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:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
mc:Ignorable="d" Width="Auto" Background="{StaticResource LoginBackground}" SnapsToDevicePixels="False" Focusable="True">
|
||||
<Page
|
||||
x:Class="BeWo.LockedPage"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
Title="LockedPage"
|
||||
Width="Auto"
|
||||
Background="{StaticResource LoginBackground}"
|
||||
Focusable="True"
|
||||
SnapsToDevicePixels="False"
|
||||
mc:Ignorable="d">
|
||||
<Page.Resources>
|
||||
<Storyboard x:Key="OnLoaded1">
|
||||
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="GridLogin" Storyboard.TargetProperty="(UIElement.Opacity)">
|
||||
<DoubleAnimationUsingKeyFrames
|
||||
BeginTime="00:00:00"
|
||||
Storyboard.TargetName="GridLogin"
|
||||
Storyboard.TargetProperty="(UIElement.Opacity)">
|
||||
<SplineDoubleKeyFrame KeyTime="00:00:00" Value="0" />
|
||||
<SplineDoubleKeyFrame KeyTime="00:00:01" Value="1" />
|
||||
</DoubleAnimationUsingKeyFrames>
|
||||
@@ -21,7 +29,14 @@
|
||||
</Page.Triggers>
|
||||
<Grid>
|
||||
<StackPanel HorizontalAlignment="Center">
|
||||
<Grid Background="{x:Null}" Height="400" Width="600" Visibility="Visible" x:Name="GridLogin" RenderTransformOrigin="0.5,0.5" Margin="0,0,0,0">
|
||||
<Grid
|
||||
x:Name="GridLogin"
|
||||
Width="600"
|
||||
Height="400"
|
||||
Margin="0,0,0,0"
|
||||
Background="{x:Null}"
|
||||
RenderTransformOrigin="0.5,0.5"
|
||||
Visibility="Visible">
|
||||
<Grid.RenderTransform>
|
||||
<TransformGroup>
|
||||
<ScaleTransform ScaleX="1" ScaleY="1" />
|
||||
@@ -30,7 +45,12 @@
|
||||
<TranslateTransform X="0" Y="0" />
|
||||
</TransformGroup>
|
||||
</Grid.RenderTransform>
|
||||
<Border CornerRadius="7,7,7,7" BorderThickness="2,2,2,2" Padding="5,5,5,5" BorderBrush="#FF606060" Background="{DynamicResource LoginBackgroundColor}">
|
||||
<Border
|
||||
Padding="5,5,5,5"
|
||||
Background="{DynamicResource LoginBackgroundColor}"
|
||||
BorderBrush="#FF606060"
|
||||
BorderThickness="2,2,2,2"
|
||||
CornerRadius="7,7,7,7">
|
||||
<Grid Opacity="1">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="100" />
|
||||
@@ -44,31 +64,142 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Image Grid.Row="0" Grid.ColumnSpan="4" HorizontalAlignment="Left" VerticalAlignment="Top" Source="Ressources\Icons\bewoplaner_logo_small.png" Height="45" Margin="7,7,0,0"/>
|
||||
<Label VerticalAlignment="Top" HorizontalAlignment="Right" Content="Version x.x.x" Foreground="#FF818181" Margin="5,7,3,0" Grid.Row="0" Grid.ColumnSpan="4" Grid.Column="0" FontSize="10" x:Name="LblVersion" />
|
||||
<StackPanel Grid.Column="1" Grid.Row="0" Grid.ColumnSpan="2" Margin="0,100,0,0" MaxWidth="330">
|
||||
<Label x:Name="lblGesperrt" Content="Gesperrt" Foreground="#FF000000" FontSize="12" FontWeight="Bold" Margin="0,30,0,0" HorizontalAlignment="Center" />
|
||||
<TextBlock Text="Bitte melden Sie sich an, um den BeWoPlaner zu entsperren." TextWrapping="Wrap" Foreground="#FF000000" FontSize="12" />
|
||||
<Image
|
||||
Grid.Row="0"
|
||||
Grid.ColumnSpan="4"
|
||||
Height="45"
|
||||
Margin="7,7,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Top"
|
||||
Source="Ressources\Icons\bewoplaner_logo_small.png" />
|
||||
<Label
|
||||
x:Name="LblVersion"
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="4"
|
||||
Margin="5,7,3,0"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Top"
|
||||
Content="Version x.x.x"
|
||||
FontSize="10"
|
||||
Foreground="#FF818181" />
|
||||
<StackPanel
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="2"
|
||||
MaxWidth="330"
|
||||
Margin="0,100,0,0">
|
||||
<Label
|
||||
x:Name="lblGesperrt"
|
||||
Margin="0,30,0,0"
|
||||
HorizontalAlignment="Center"
|
||||
Content="Gesperrt"
|
||||
FontSize="12"
|
||||
FontWeight="Bold"
|
||||
Foreground="#FF000000" />
|
||||
<TextBlock
|
||||
FontSize="12"
|
||||
Foreground="#FF000000"
|
||||
Text="Bitte melden Sie sich an, um den BeWoPlaner zu entsperren."
|
||||
TextWrapping="Wrap" />
|
||||
</StackPanel>
|
||||
<Label Grid.Column="1" Grid.Row="1" VerticalAlignment="Center" HorizontalAlignment="Right" Content="{markup:Translate Benutzername:}" Foreground="#FF000000" Background="#00000000" />
|
||||
<Label Grid.Column="1" Grid.Row="2" VerticalAlignment="Center" HorizontalAlignment="Left" Content="Passwort:" Foreground="#FF000000" Background="#00000000" />
|
||||
<TextBox TabIndex="0" SnapsToDevicePixels="True" Grid.Column="2" Grid.Row="1" Margin="10,10,20,10" Height="24" x:Name="TextBoxUsername" HorizontalAlignment="Stretch" Text="" />
|
||||
<PasswordBox Margin="10,0,20,0" Height="24" Grid.Column="2" Grid.Row="2" x:Name="PasswordBoxPassword" Password="" HorizontalAlignment="Stretch" TabIndex="1" />
|
||||
<Button Margin="10,30,20,50" Height="30" x:Name="ButtonLogin" Grid.Column="2" Grid.Row="3" HorizontalAlignment="Stretch" Content="Anmelden" IsDefault="True" Foreground="White" TabIndex="2" />
|
||||
<Label VerticalAlignment="Bottom" HorizontalAlignment="Left" Content="Copyright 2010 | ownSoft GmbH" Foreground="#FF818181" Margin="5,0,0,3" Grid.Row="3" Grid.ColumnSpan="3" Grid.Column="0" FontSize="10" />
|
||||
<TextBlock Grid.Row="3" Grid.Column="3" HorizontalAlignment="Right" VerticalAlignment="Bottom" FontSize="10" Margin="0,0,12,10">
|
||||
<Hyperlink TargetName="newWindow" Foreground="#FF818181" NavigateUri="https://www.ownsoft.de/">www.ownsoft.de</Hyperlink>
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Background="#00000000"
|
||||
Content="{markup:Translate Benutzername:}"
|
||||
Foreground="#FF000000" />
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Center"
|
||||
Background="#00000000"
|
||||
Content="Passwort:"
|
||||
Foreground="#FF000000" />
|
||||
<TextBox
|
||||
x:Name="TextBoxUsername"
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Height="24"
|
||||
Margin="10,10,20,10"
|
||||
HorizontalAlignment="Stretch"
|
||||
SnapsToDevicePixels="True"
|
||||
TabIndex="0"
|
||||
Text="" />
|
||||
<PasswordBox
|
||||
x:Name="PasswordBoxPassword"
|
||||
Grid.Row="2"
|
||||
Grid.Column="2"
|
||||
Height="24"
|
||||
Margin="10,0,20,0"
|
||||
HorizontalAlignment="Stretch"
|
||||
Password=""
|
||||
TabIndex="1" />
|
||||
<Button
|
||||
x:Name="ButtonLogin"
|
||||
Grid.Row="3"
|
||||
Grid.Column="2"
|
||||
Height="30"
|
||||
Margin="10,30,20,50"
|
||||
HorizontalAlignment="Stretch"
|
||||
Content="Anmelden"
|
||||
Foreground="White"
|
||||
IsDefault="True"
|
||||
TabIndex="2" />
|
||||
<Label
|
||||
Grid.Row="3"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="5,0,0,3"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Bottom"
|
||||
Content="Copyright 2010 | ownSoft GmbH"
|
||||
FontSize="10"
|
||||
Foreground="#FF818181" />
|
||||
<TextBlock
|
||||
Grid.Row="3"
|
||||
Grid.Column="3"
|
||||
Margin="0,0,12,10"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Bottom"
|
||||
FontSize="10">
|
||||
<Hyperlink
|
||||
Foreground="#FF818181"
|
||||
NavigateUri="https://www.ownsoft.de/"
|
||||
TargetName="newWindow">
|
||||
www.ownsoft.de
|
||||
</Hyperlink>
|
||||
</TextBlock>
|
||||
</Grid>
|
||||
</Border>
|
||||
<Line Grid.ColumnSpan="4" Stroke="#FFADADAD" X1="14" Y1="70" X2="585" Y2="70" StrokeThickness="1"></Line>
|
||||
<Line Grid.ColumnSpan="4" Stroke="#FFADADAD" X1="14" Y1="370" X2="585" Y2="370" StrokeThickness="1"></Line>
|
||||
<Line
|
||||
Grid.ColumnSpan="4"
|
||||
Stroke="#FFADADAD"
|
||||
StrokeThickness="1"
|
||||
X1="14"
|
||||
X2="585"
|
||||
Y1="70"
|
||||
Y2="70" />
|
||||
<Line
|
||||
Grid.ColumnSpan="4"
|
||||
Stroke="#FFADADAD"
|
||||
StrokeThickness="1"
|
||||
X1="14"
|
||||
X2="585"
|
||||
Y1="370"
|
||||
Y2="370" />
|
||||
</Grid>
|
||||
<Rectangle Width="600" Height="400" RenderTransformOrigin="0.5,0.5">
|
||||
<Rectangle
|
||||
Width="600"
|
||||
Height="400"
|
||||
RenderTransformOrigin="0.5,0.5">
|
||||
<Rectangle.OpacityMask>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0.418">
|
||||
<GradientStop Color="#00000000" Offset="0" />
|
||||
<GradientStop Color="#4CFFFFFF" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0.418" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#00000000" />
|
||||
<GradientStop Offset="1" Color="#4CFFFFFF" />
|
||||
</LinearGradientBrush>
|
||||
</Rectangle.OpacityMask>
|
||||
<Rectangle.RenderTransform>
|
||||
|
||||
@@ -1,15 +1,25 @@
|
||||
<UserControl x:Class="BeWo.LoginControl"
|
||||
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:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
mc:Ignorable="d"
|
||||
Width="Auto" Background="{StaticResource LoginBackground}"
|
||||
d:DesignHeight="600" d:DesignWidth="800">
|
||||
<Grid Name="grid_root" >
|
||||
<UserControl
|
||||
x:Class="BeWo.LoginControl"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
Width="Auto"
|
||||
d:DesignHeight="600"
|
||||
d:DesignWidth="800"
|
||||
Background="{StaticResource LoginBackground}"
|
||||
mc:Ignorable="d">
|
||||
<Grid Name="grid_root">
|
||||
<StackPanel HorizontalAlignment="Center">
|
||||
<Grid Background="{x:Null}" Height="400" Width="600" Visibility="Visible" x:Name="gridLogin" RenderTransformOrigin="0.5,0.5" Margin="0,0,0,0">
|
||||
<Grid
|
||||
x:Name="gridLogin"
|
||||
Width="600"
|
||||
Height="400"
|
||||
Margin="0,0,0,0"
|
||||
Background="{x:Null}"
|
||||
RenderTransformOrigin="0.5,0.5"
|
||||
Visibility="Visible">
|
||||
<Grid.RenderTransform>
|
||||
<TransformGroup>
|
||||
<ScaleTransform ScaleX="1" ScaleY="1" />
|
||||
@@ -18,7 +28,13 @@
|
||||
<TranslateTransform X="0" Y="0" />
|
||||
</TransformGroup>
|
||||
</Grid.RenderTransform>
|
||||
<Border CornerRadius="7,7,7,7" BorderThickness="2,2,2,2" Padding="5,5,5,5" BorderBrush="#FF606060" Background="{DynamicResource LoginBackgroundColor}" KeyDown="UIElement_OnKeyDown">
|
||||
<Border
|
||||
Padding="5,5,5,5"
|
||||
Background="{DynamicResource LoginBackgroundColor}"
|
||||
BorderBrush="#FF606060"
|
||||
BorderThickness="2,2,2,2"
|
||||
CornerRadius="7,7,7,7"
|
||||
KeyDown="UIElement_OnKeyDown">
|
||||
<Grid Opacity="1">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="100" />
|
||||
@@ -34,152 +50,369 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Image Grid.Row="0" Grid.ColumnSpan="4" HorizontalAlignment="Left" VerticalAlignment="Top" Source="Ressources\Icons\bewoplaner_logo_small.png" Height="44" Margin="7,7,0,0"/>
|
||||
<Label VerticalAlignment="Top" HorizontalAlignment="Right" Content="Version x.x.x" Foreground="#FF818181" Margin="5,7,3,0" Grid.Row="0" Grid.ColumnSpan="4"
|
||||
Grid.Column="0" FontSize="10" x:Name="lblVersion" />
|
||||
<StackPanel Grid.Column="1" Grid.Row="0" Grid.ColumnSpan="2" Margin="0,80,0,0">
|
||||
<Label Content="Herzlich willkommen beim BeWoPlaner!" Foreground="#FF000000" FontSize="12" FontWeight="Bold" Margin="0,30,0,0" />
|
||||
<Label Content="{markup:Translate Bitte geben Sie Ihren Benutzernamen und Ihr Passwort ein.}" Foreground="#FF000000" FontSize="12" />
|
||||
<Image
|
||||
Grid.Row="0"
|
||||
Grid.ColumnSpan="4"
|
||||
Height="44"
|
||||
Margin="7,7,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Top"
|
||||
Source="Ressources\Icons\bewoplaner_logo_small.png" />
|
||||
<Label
|
||||
x:Name="lblVersion"
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="4"
|
||||
Margin="5,7,3,0"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Top"
|
||||
Content="Version x.x.x"
|
||||
FontSize="10"
|
||||
Foreground="#FF818181" />
|
||||
<StackPanel
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="0,80,0,0">
|
||||
<Label
|
||||
Margin="0,30,0,0"
|
||||
Content="Herzlich willkommen beim BeWoPlaner!"
|
||||
FontSize="12"
|
||||
FontWeight="Bold"
|
||||
Foreground="#FF000000" />
|
||||
<Label
|
||||
Content="{markup:Translate Bitte geben Sie Ihren Benutzernamen und Ihr Passwort ein.}"
|
||||
FontSize="12"
|
||||
Foreground="#FF000000" />
|
||||
</StackPanel>
|
||||
|
||||
|
||||
<Label x:Name="lblPin" Content="PIN:" Grid.Column="1" Grid.Row="1" Foreground="#FF000000" Background="#00000000" VerticalAlignment="Center" Visibility="Collapsed"/>
|
||||
<TextBox x:Name="PINTextBox" Grid.Column="2" Grid.Row="1" Margin="10,0,20,0" Height="24" SnapsToDevicePixels="True" HorizontalAlignment="Stretch" Visibility="Collapsed"/>
|
||||
<Label
|
||||
x:Name="lblPin"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
VerticalAlignment="Center"
|
||||
Background="#00000000"
|
||||
Content="PIN:"
|
||||
Foreground="#FF000000"
|
||||
Visibility="Collapsed" />
|
||||
<TextBox
|
||||
x:Name="PINTextBox"
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Height="24"
|
||||
Margin="10,0,20,0"
|
||||
HorizontalAlignment="Stretch"
|
||||
SnapsToDevicePixels="True"
|
||||
Visibility="Collapsed" />
|
||||
|
||||
<Label Grid.Column="1" Grid.Row="2" VerticalAlignment="Center" HorizontalAlignment="Right" Content="{markup:Translate Benutzername:}" Foreground="#FF000000" Background="#00000000" />
|
||||
<Label Grid.Column="1" Grid.Row="3" VerticalAlignment="Center" HorizontalAlignment="Left" Content="Passwort:" Foreground="#FF000000" Background="#00000000" />
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Background="#00000000"
|
||||
Content="{markup:Translate Benutzername:}"
|
||||
Foreground="#FF000000" />
|
||||
<Label
|
||||
Grid.Row="3"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Center"
|
||||
Background="#00000000"
|
||||
Content="Passwort:"
|
||||
Foreground="#FF000000" />
|
||||
|
||||
<TextBox TabIndex="0" SnapsToDevicePixels="True" Grid.Column="2" Grid.Row="2" Margin="10,10,20,10" Height="24" x:Name="TextBox_Username" HorizontalAlignment="Stretch" Text="" GotFocus="TextBox_Username_OnGotFocus" />
|
||||
<TextBox
|
||||
x:Name="TextBox_Username"
|
||||
Grid.Row="2"
|
||||
Grid.Column="2"
|
||||
Height="24"
|
||||
Margin="10,10,20,10"
|
||||
HorizontalAlignment="Stretch"
|
||||
GotFocus="TextBox_Username_OnGotFocus"
|
||||
SnapsToDevicePixels="True"
|
||||
TabIndex="0"
|
||||
Text="" />
|
||||
|
||||
<PasswordBox Margin="10,0,20,0" Height="24" Grid.Column="2" Grid.Row="3" x:Name="PasswordBox_Password" Password="" HorizontalAlignment="Stretch" GotFocus="PasswordBox_Password_OnGotFocus" TabIndex="1"/>
|
||||
<PasswordBox
|
||||
x:Name="PasswordBox_Password"
|
||||
Grid.Row="3"
|
||||
Grid.Column="2"
|
||||
Height="24"
|
||||
Margin="10,0,20,0"
|
||||
HorizontalAlignment="Stretch"
|
||||
GotFocus="PasswordBox_Password_OnGotFocus"
|
||||
Password=""
|
||||
TabIndex="1" />
|
||||
|
||||
|
||||
<Label x:Name="profileLabel" Grid.Column="1" Grid.Row="5" Content="Profil:" Foreground="#FF000000" FontSize="12" Visibility="Collapsed" VerticalAlignment="Center"/>
|
||||
|
||||
<StackPanel x:Name="profileStackPanel" Grid.Row="5" Grid.Column="2" Orientation="Horizontal" Margin="0,10,20,0" Visibility="Collapsed" >
|
||||
<ComboBox HorizontalAlignment="Left" x:Name="profileSelectionComboBox" Width="175" Height="24" ItemsSource="{Binding Path=ProfileList}" SelectedIndex="0" Margin="10,0,0,0" />
|
||||
<Button Click="button_addProfile_Click" Content="@" FontFamily="Webdings" FontSize="14" Height="23" Width="23" Margin="3,0,0,0" ToolTip="Profile bearbeiten"/>
|
||||
<Label
|
||||
x:Name="profileLabel"
|
||||
Grid.Row="5"
|
||||
Grid.Column="1"
|
||||
VerticalAlignment="Center"
|
||||
Content="Profil:"
|
||||
FontSize="12"
|
||||
Foreground="#FF000000"
|
||||
Visibility="Collapsed" />
|
||||
|
||||
<StackPanel
|
||||
x:Name="profileStackPanel"
|
||||
Grid.Row="5"
|
||||
Grid.Column="2"
|
||||
Margin="0,10,20,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="Collapsed">
|
||||
<ComboBox
|
||||
x:Name="profileSelectionComboBox"
|
||||
Width="175"
|
||||
Height="24"
|
||||
Margin="10,0,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
ItemsSource="{Binding Path=ProfileList}"
|
||||
SelectedIndex="0" />
|
||||
<Button
|
||||
Width="23"
|
||||
Height="23"
|
||||
Margin="3,0,0,0"
|
||||
Click="button_addProfile_Click"
|
||||
Content="@"
|
||||
FontFamily="Webdings"
|
||||
FontSize="14"
|
||||
ToolTip="Profile bearbeiten" />
|
||||
</StackPanel>
|
||||
<Label x:Name="proxyLabel" Grid.Column="1" Grid.Row="6" Content="Proxy:" Foreground="#FF000000" FontSize="12" Visibility="Collapsed" VerticalAlignment="Center"/>
|
||||
<Label
|
||||
x:Name="proxyLabel"
|
||||
Grid.Row="6"
|
||||
Grid.Column="1"
|
||||
VerticalAlignment="Center"
|
||||
Content="Proxy:"
|
||||
FontSize="12"
|
||||
Foreground="#FF000000"
|
||||
Visibility="Collapsed" />
|
||||
|
||||
<StackPanel x:Name="proxyStackPanel" Grid.Row="6" Grid.Column="2" Orientation="Horizontal" Margin="0,5,20,0" Visibility="Collapsed">
|
||||
<TextBox HorizontalAlignment="Left" x:Name="proxyTextBox" Width="175" Height="24" Margin="10,0,0,0" IsReadOnly="True"/>
|
||||
<Button Click="button_configureProxy_Click" Content="@" FontFamily="Webdings" FontSize="14" Height="23" Width="23" Margin="3,0,0,0" ToolTip="Proxy bearbeiten"/>
|
||||
<StackPanel
|
||||
x:Name="proxyStackPanel"
|
||||
Grid.Row="6"
|
||||
Grid.Column="2"
|
||||
Margin="0,5,20,0"
|
||||
Orientation="Horizontal"
|
||||
Visibility="Collapsed">
|
||||
<TextBox
|
||||
x:Name="proxyTextBox"
|
||||
Width="175"
|
||||
Height="24"
|
||||
Margin="10,0,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
IsReadOnly="True" />
|
||||
<Button
|
||||
Width="23"
|
||||
Height="23"
|
||||
Margin="3,0,0,0"
|
||||
Click="button_configureProxy_Click"
|
||||
Content="@"
|
||||
FontFamily="Webdings"
|
||||
FontSize="14"
|
||||
ToolTip="Proxy bearbeiten" />
|
||||
</StackPanel>
|
||||
|
||||
|
||||
<ToggleButton x:Name="showProfileSelectionBtn" Click="ShowProfileStackPanel" HorizontalAlignment="Right" Content="Erweitert" Grid.Row="4" Grid.Column="2" Margin="0,5,20,0" Foreground="#FF818181">
|
||||
<ToggleButton.Template>
|
||||
<ControlTemplate TargetType="{x:Type ToggleButton}">
|
||||
<Grid >
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="18"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<ContentPresenter x:Name="ButtonContent"/>
|
||||
<Path Grid.Column="1"
|
||||
x:Name="Down_Arrow"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Fill="{TemplateBinding Foreground}"
|
||||
Data="M 0 0 L 4 4 L 8 0 L 4 2 Z" Margin="0,3,0,0"
|
||||
/>
|
||||
<Path Grid.Column="1"
|
||||
x:Name="Down_Arrow2"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Fill="{TemplateBinding Foreground}"
|
||||
Data="M 0 0 L 4 4 L 8 0 L 4 2 Z" Margin="0,-3,0,0"
|
||||
/>
|
||||
|
||||
<Path Grid.Column="1"
|
||||
x:Name="Up_Arrow"
|
||||
Visibility="Collapsed"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Fill="{TemplateBinding Foreground}"
|
||||
Data="M 0 4 L 4 0 L 8 4 L 4 2 Z" Margin="0,-3,0,0"
|
||||
/>
|
||||
<Path Grid.Column="1"
|
||||
x:Name="Up_Arrow2"
|
||||
Visibility="Collapsed"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Fill="{TemplateBinding Foreground}"
|
||||
Data="M 0 4 L 4 0 L 8 4 L 4 2 Z" Margin="0,3,0,0"
|
||||
/>
|
||||
</Grid>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="true">
|
||||
<Setter Property="Fill" Value="#FF333333" TargetName="Down_Arrow"/>
|
||||
<Setter Property="Fill" Value="#FF333333" TargetName="Down_Arrow2"/>
|
||||
<Setter Property="Fill" Value="#FF333333" TargetName="Up_Arrow"/>
|
||||
<Setter Property="Fill" Value="#FF333333" TargetName="Up_Arrow2"/>
|
||||
<Setter Property="TextBlock.Foreground" Value="#FF333333" TargetName="ButtonContent"/>
|
||||
</Trigger>
|
||||
|
||||
<Trigger Property="IsChecked" Value="true">
|
||||
<Setter Property="Visibility" Value="Collapsed" TargetName="Down_Arrow"/>
|
||||
<Setter Property="Visibility" Value="Collapsed" TargetName="Down_Arrow2"/>
|
||||
<Setter Property="Visibility" Value="Visible" TargetName="Up_Arrow"/>
|
||||
<Setter Property="Visibility" Value="Visible" TargetName="Up_Arrow2"/>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</ToggleButton.Template>
|
||||
<ToggleButton.Triggers>
|
||||
<EventTrigger RoutedEvent="Button.Click">
|
||||
<BeginStoryboard>
|
||||
<Storyboard>
|
||||
<DoubleAnimation
|
||||
Storyboard.TargetName="gridLogin"
|
||||
Storyboard.TargetProperty="Height"
|
||||
From="{Binding HeightFrom, UpdateSourceTrigger=PropertyChanged}" To="{Binding HeightTo, UpdateSourceTrigger=PropertyChanged}" Duration="0:0:0.1"
|
||||
AutoReverse="False" Completed="AnimationComplete" />
|
||||
<DoubleAnimation
|
||||
Storyboard.TargetName="linkLine"
|
||||
Storyboard.TargetProperty="Y1"
|
||||
From="{Binding LineYCoordFrom, UpdateSourceTrigger=PropertyChanged}" To="{Binding LineYCoordTo, UpdateSourceTrigger=PropertyChanged}" Duration="0:0:0.1"
|
||||
AutoReverse="False" Completed="Animation2Complete" />
|
||||
<DoubleAnimation
|
||||
Storyboard.TargetName="linkLine"
|
||||
Storyboard.TargetProperty="Y2"
|
||||
From="{Binding LineYCoordFrom, UpdateSourceTrigger=PropertyChanged}" To="{Binding LineYCoordTo, UpdateSourceTrigger=PropertyChanged}" Duration="0:0:0.1"
|
||||
AutoReverse="False" />
|
||||
</Storyboard>
|
||||
</BeginStoryboard>
|
||||
</EventTrigger>
|
||||
</ToggleButton.Triggers>
|
||||
</ToggleButton>
|
||||
|
||||
|
||||
<StackPanel Margin="10,30,20,50" Grid.Column="2" Grid.Row="7" Orientation="Vertical" HorizontalAlignment="Stretch">
|
||||
<Button Height="30" x:Name="button_login" HorizontalAlignment="Stretch" Content="Anmelden" Click="button_login_Click" IsDefault="True" Foreground="White" Margin="3" />
|
||||
<TextBlock VerticalAlignment="Center" Visibility="Collapsed" HorizontalAlignment="Center" Foreground="{DynamicResource MainGroupBoxForegroundBrush}" Margin="3">
|
||||
<Hyperlink RequestNavigate="PasswortVergessenLinkOnRequestNavigate" NavigateUri="#" >
|
||||
<TextBlock Text="Passwort vergessen" HorizontalAlignment="Center" FontSize="10" VerticalAlignment="Center" />
|
||||
</Hyperlink>
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
<TextBlock x:Name="txtCopyright" Grid.Row="7" Grid.Column="0" Grid.ColumnSpan="3" HorizontalAlignment="Left" VerticalAlignment="Bottom" FontSize="10" Margin="10,5,0,5" Text="Copyright 2022 | ownSoft GmbH" Foreground="#FF818181"/>
|
||||
|
||||
<TextBlock Grid.Row="7" Grid.Column="3" HorizontalAlignment="Right" VerticalAlignment="Bottom" FontSize="10" Margin="0,5,12,5">
|
||||
<Hyperlink x:Name="hyperlink" TargetName="newWindow" Foreground="#FF818181" NavigateUri="https://www.ownsoft.de" RequestNavigate="Hyperlink_OnRequestNavigate">www.ownsoft.de</Hyperlink>
|
||||
<ToggleButton
|
||||
x:Name="showProfileSelectionBtn"
|
||||
Grid.Row="4"
|
||||
Grid.Column="2"
|
||||
Margin="0,5,20,0"
|
||||
HorizontalAlignment="Right"
|
||||
Click="ShowProfileStackPanel"
|
||||
Content="Erweitert"
|
||||
Foreground="#FF818181">
|
||||
<ToggleButton.Template>
|
||||
<ControlTemplate TargetType="{x:Type ToggleButton}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="18" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<ContentPresenter x:Name="ButtonContent" />
|
||||
<Path
|
||||
x:Name="Down_Arrow"
|
||||
Grid.Column="1"
|
||||
Margin="0,3,0,0"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Data="M 0 0 L 4 4 L 8 0 L 4 2 Z"
|
||||
Fill="{TemplateBinding Foreground}" />
|
||||
<Path
|
||||
x:Name="Down_Arrow2"
|
||||
Grid.Column="1"
|
||||
Margin="0,-3,0,0"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Data="M 0 0 L 4 4 L 8 0 L 4 2 Z"
|
||||
Fill="{TemplateBinding Foreground}" />
|
||||
|
||||
<Path
|
||||
x:Name="Up_Arrow"
|
||||
Grid.Column="1"
|
||||
Margin="0,-3,0,0"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Data="M 0 4 L 4 0 L 8 4 L 4 2 Z"
|
||||
Fill="{TemplateBinding Foreground}"
|
||||
Visibility="Collapsed" />
|
||||
<Path
|
||||
x:Name="Up_Arrow2"
|
||||
Grid.Column="1"
|
||||
Margin="0,3,0,0"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Data="M 0 4 L 4 0 L 8 4 L 4 2 Z"
|
||||
Fill="{TemplateBinding Foreground}"
|
||||
Visibility="Collapsed" />
|
||||
</Grid>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="true">
|
||||
<Setter TargetName="Down_Arrow" Property="Fill" Value="#FF333333" />
|
||||
<Setter TargetName="Down_Arrow2" Property="Fill" Value="#FF333333" />
|
||||
<Setter TargetName="Up_Arrow" Property="Fill" Value="#FF333333" />
|
||||
<Setter TargetName="Up_Arrow2" Property="Fill" Value="#FF333333" />
|
||||
<Setter TargetName="ButtonContent" Property="TextBlock.Foreground" Value="#FF333333" />
|
||||
</Trigger>
|
||||
|
||||
<Trigger Property="IsChecked" Value="true">
|
||||
<Setter TargetName="Down_Arrow" Property="Visibility" Value="Collapsed" />
|
||||
<Setter TargetName="Down_Arrow2" Property="Visibility" Value="Collapsed" />
|
||||
<Setter TargetName="Up_Arrow" Property="Visibility" Value="Visible" />
|
||||
<Setter TargetName="Up_Arrow2" Property="Visibility" Value="Visible" />
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</ToggleButton.Template>
|
||||
<ToggleButton.Triggers>
|
||||
<EventTrigger RoutedEvent="Button.Click">
|
||||
<BeginStoryboard>
|
||||
<Storyboard>
|
||||
<DoubleAnimation
|
||||
AutoReverse="False"
|
||||
Completed="AnimationComplete"
|
||||
Storyboard.TargetName="gridLogin"
|
||||
Storyboard.TargetProperty="Height"
|
||||
From="{Binding HeightFrom, UpdateSourceTrigger=PropertyChanged}"
|
||||
To="{Binding HeightTo, UpdateSourceTrigger=PropertyChanged}"
|
||||
Duration="0:0:0.1" />
|
||||
<DoubleAnimation
|
||||
AutoReverse="False"
|
||||
Completed="Animation2Complete"
|
||||
Storyboard.TargetName="linkLine"
|
||||
Storyboard.TargetProperty="Y1"
|
||||
From="{Binding LineYCoordFrom, UpdateSourceTrigger=PropertyChanged}"
|
||||
To="{Binding LineYCoordTo, UpdateSourceTrigger=PropertyChanged}"
|
||||
Duration="0:0:0.1" />
|
||||
<DoubleAnimation
|
||||
AutoReverse="False"
|
||||
Storyboard.TargetName="linkLine"
|
||||
Storyboard.TargetProperty="Y2"
|
||||
From="{Binding LineYCoordFrom, UpdateSourceTrigger=PropertyChanged}"
|
||||
To="{Binding LineYCoordTo, UpdateSourceTrigger=PropertyChanged}"
|
||||
Duration="0:0:0.1" />
|
||||
</Storyboard>
|
||||
</BeginStoryboard>
|
||||
</EventTrigger>
|
||||
</ToggleButton.Triggers>
|
||||
</ToggleButton>
|
||||
|
||||
|
||||
<StackPanel
|
||||
Grid.Row="7"
|
||||
Grid.Column="2"
|
||||
Margin="10,30,20,50"
|
||||
HorizontalAlignment="Stretch"
|
||||
Orientation="Vertical">
|
||||
<Button
|
||||
x:Name="button_login"
|
||||
Height="30"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Stretch"
|
||||
Click="button_login_Click"
|
||||
Content="Anmelden"
|
||||
Foreground="White"
|
||||
IsDefault="True" />
|
||||
<TextBlock
|
||||
Margin="3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Foreground="{DynamicResource MainGroupBoxForegroundBrush}"
|
||||
Visibility="Collapsed">
|
||||
<Hyperlink NavigateUri="#" RequestNavigate="PasswortVergessenLinkOnRequestNavigate">
|
||||
<TextBlock
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
FontSize="10"
|
||||
Text="Passwort vergessen" />
|
||||
</Hyperlink>
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
<TextBlock
|
||||
x:Name="txtCopyright"
|
||||
Grid.Row="7"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="10,5,0,5"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Bottom"
|
||||
FontSize="10"
|
||||
Foreground="#FF818181"
|
||||
Text="Copyright 2022 | ownSoft GmbH" />
|
||||
|
||||
<TextBlock
|
||||
Grid.Row="7"
|
||||
Grid.Column="3"
|
||||
Margin="0,5,12,5"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Bottom"
|
||||
FontSize="10">
|
||||
<Hyperlink
|
||||
x:Name="hyperlink"
|
||||
Foreground="#FF818181"
|
||||
NavigateUri="https://www.ownsoft.de"
|
||||
RequestNavigate="Hyperlink_OnRequestNavigate"
|
||||
TargetName="newWindow">
|
||||
www.ownsoft.de
|
||||
</Hyperlink>
|
||||
</TextBlock>
|
||||
</Grid>
|
||||
</Border>
|
||||
<Line Grid.ColumnSpan="4" Stroke="#FFADADAD" X1="14" Y1="70" X2="585" Y2="70" StrokeThickness="1"></Line>
|
||||
<Line x:Name="linkLine" Stroke="#FFADADAD" X1="14" Y1="340" X2="585" Y2="340" StrokeThickness="1" Margin="0,30,0,-30"></Line>
|
||||
<Line
|
||||
Grid.ColumnSpan="4"
|
||||
Stroke="#FFADADAD"
|
||||
StrokeThickness="1"
|
||||
X1="14"
|
||||
X2="585"
|
||||
Y1="70"
|
||||
Y2="70" />
|
||||
<Line
|
||||
x:Name="linkLine"
|
||||
Margin="0,30,0,-30"
|
||||
Stroke="#FFADADAD"
|
||||
StrokeThickness="1"
|
||||
X1="14"
|
||||
X2="585"
|
||||
Y1="340"
|
||||
Y2="340" />
|
||||
|
||||
</Grid>
|
||||
<Rectangle Width="600" Height="400" RenderTransformOrigin="0.5,0.5">
|
||||
<Rectangle
|
||||
Width="600"
|
||||
Height="400"
|
||||
RenderTransformOrigin="0.5,0.5">
|
||||
<Rectangle.OpacityMask>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0.418">
|
||||
<GradientStop Color="#00000000" Offset="0" />
|
||||
<GradientStop Color="#4CFFFFFF" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0.418" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#00000000" />
|
||||
<GradientStop Offset="1" Color="#4CFFFFFF" />
|
||||
</LinearGradientBrush>
|
||||
</Rectangle.OpacityMask>
|
||||
<Rectangle.RenderTransform>
|
||||
@@ -195,6 +428,6 @@
|
||||
</Rectangle.Fill>
|
||||
</Rectangle>
|
||||
</StackPanel>
|
||||
<Border x:Name="profileEditPopUp" />
|
||||
<Border x:Name="profileEditPopUp" />
|
||||
</Grid>
|
||||
</UserControl>
|
||||
|
||||
@@ -1,6 +1,20 @@
|
||||
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" x:Class="BeWo.LogoPage" x:Name="Page" WindowTitle="Page" FlowDirection="LeftToRight" Width="640" Height="480" WindowWidth="640" WindowHeight="480" xmlns:BeWo="clr-namespace:BeWo">
|
||||
<Page
|
||||
x:Class="BeWo.LogoPage"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:BeWo="clr-namespace:BeWo"
|
||||
x:Name="Page"
|
||||
Width="640"
|
||||
Height="480"
|
||||
FlowDirection="LeftToRight"
|
||||
WindowHeight="480"
|
||||
WindowTitle="Page"
|
||||
WindowWidth="640">
|
||||
|
||||
<Grid x:Name="LayoutRoot" Width="300" Height="300">
|
||||
<BeWo:BSLogoControl Width="400" Height="400" />
|
||||
</Grid>
|
||||
<Grid
|
||||
x:Name="LayoutRoot"
|
||||
Width="300"
|
||||
Height="300">
|
||||
<BeWo:BSLogoControl Width="400" Height="400" />
|
||||
</Grid>
|
||||
</Page>
|
||||
@@ -8,8 +8,8 @@
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:r="clr-namespace:BeWo.Security"
|
||||
xmlns:t="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
d:DesignHeight="300"
|
||||
d:DesignWidth="300"
|
||||
d:DesignHeight="1080"
|
||||
d:DesignWidth="1920"
|
||||
Background="{DynamicResource ApplicationBackground}"
|
||||
RenderTransformOrigin="0.5,0.5"
|
||||
SnapsToDevicePixels="True"
|
||||
@@ -830,6 +830,27 @@
|
||||
</TransformGroup>
|
||||
</Button.RenderTransform>
|
||||
</localView:ImageButton>
|
||||
|
||||
<localView:ImageButton
|
||||
x:Name="button_ai_chat"
|
||||
Width="90"
|
||||
HorizontalAlignment="Stretch"
|
||||
Background="{StaticResource ModuleAiChatTabItem}"
|
||||
Click="button_ai_chat_Click"
|
||||
Content="{t:Translate AiModuleMenuItem}"
|
||||
ImageSource="Ressources\Icons\chatbot2.png"
|
||||
RenderTransformOrigin="0.5,0.5"
|
||||
Style="{StaticResource NavBarButton}"
|
||||
Visibility="Collapsed">
|
||||
<Button.RenderTransform>
|
||||
<TransformGroup>
|
||||
<ScaleTransform ScaleX="1" ScaleY="1" />
|
||||
<SkewTransform AngleX="0" AngleY="0" />
|
||||
<RotateTransform Angle="0" />
|
||||
<TranslateTransform X="0" Y="0" />
|
||||
</TransformGroup>
|
||||
</Button.RenderTransform>
|
||||
</localView:ImageButton>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</ScrollViewer>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,9 +1,16 @@
|
||||
<Window x:Class="BeWo.MainWindow"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="BeWoPlaner" Height="768" Width="1024" WindowStartupLocation="CenterScreen" WindowState="Maximized"
|
||||
BorderThickness="1" Closing="MainWindow_OnClosing" SizeChanged="Window_SizeChanged">
|
||||
<Window
|
||||
x:Class="BeWo.MainWindow"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="BeWoPlaner"
|
||||
Width="1024"
|
||||
Height="768"
|
||||
BorderThickness="1"
|
||||
Closing="MainWindow_OnClosing"
|
||||
SizeChanged="Window_SizeChanged"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
WindowState="Maximized">
|
||||
<Grid x:Name="rootGrid">
|
||||
<ComboBox Width="100"></ComboBox>
|
||||
<ComboBox Width="100" />
|
||||
</Grid>
|
||||
</Window>
|
||||
|
||||
@@ -1,13 +1,20 @@
|
||||
<Window x:Class="BeWo.OpenOrSaveDialog"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="OpenOrSaveDialog" Height="150" Width="300"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
WindowStyle="None"
|
||||
AllowsTransparency="True"
|
||||
Background="Transparent" ResizeMode="NoResize" >
|
||||
<Window
|
||||
x:Class="BeWo.OpenOrSaveDialog"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="OpenOrSaveDialog"
|
||||
Width="300"
|
||||
Height="150"
|
||||
AllowsTransparency="True"
|
||||
Background="Transparent"
|
||||
ResizeMode="NoResize"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
WindowStyle="None">
|
||||
<Grid>
|
||||
<GroupBox Style="{StaticResource MainContentGroupBoxWithoutMaximizeBtnStyle}" Header="Download" MouseLeftButtonDown="UIElement_OnMouseLeftButtonDown">
|
||||
<GroupBox
|
||||
Header="Download"
|
||||
MouseLeftButtonDown="UIElement_OnMouseLeftButtonDown"
|
||||
Style="{StaticResource MainContentGroupBoxWithoutMaximizeBtnStyle}">
|
||||
<Grid Background="{DynamicResource ObjectEditBackgroundBrush}">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
@@ -18,10 +25,35 @@
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding Question}" Grid.ColumnSpan="3" HorizontalAlignment="Center" VerticalAlignment="Center" TextWrapping="Wrap" TextAlignment="Center" Foreground="#FF202020"/>
|
||||
<Button Margin="0,0,0,5" Grid.Row="1" Grid.Column="0" Content="Öffnen" Width="85" Command="Open" />
|
||||
<Button Margin="0,0,0,5" Grid.Row="1" Grid.Column="1" Content="Speichern" Width="85" Command="Save" />
|
||||
<Button Margin="0,0,0,5" Grid.Row="1" Grid.Column="2" Content="Abbrechen" Width="85" Command="Close" />
|
||||
<TextBlock
|
||||
Grid.ColumnSpan="3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Foreground="#FF202020"
|
||||
Text="{Binding Question}"
|
||||
TextAlignment="Center"
|
||||
TextWrapping="Wrap" />
|
||||
<Button
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Width="85"
|
||||
Margin="0,0,0,5"
|
||||
Command="Open"
|
||||
Content="Öffnen" />
|
||||
<Button
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Width="85"
|
||||
Margin="0,0,0,5"
|
||||
Command="Save"
|
||||
Content="Speichern" />
|
||||
<Button
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Width="85"
|
||||
Margin="0,0,0,5"
|
||||
Command="Close"
|
||||
Content="Abbrechen" />
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</Grid>
|
||||
|
||||
@@ -1,20 +1,75 @@
|
||||
<Window x:Class="BeWo.ProxyLoginView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
Title="Proxy Einstellungen" Height="200" Width="300">
|
||||
<Window
|
||||
x:Class="BeWo.ProxyLoginView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
Title="Proxy Einstellungen"
|
||||
Width="300"
|
||||
Height="200">
|
||||
<Grid>
|
||||
<Button x:Name="proxyOK" Content="OK" HorizontalAlignment="Left" Margin="75,120,0,0" VerticalAlignment="Top" Width="100" Click="proxyOK_Click"/>
|
||||
<Button x:Name="proxyAbbr" Content="Abbrechen" HorizontalAlignment="Left" Margin="180,120,0,0" VerticalAlignment="Top" Width="100" Click="proxyAbbr_Click"/>
|
||||
|
||||
|
||||
<Label Content="Proxyname:" HorizontalAlignment="Left" Margin="10,15,0,0" VerticalAlignment="Top" Width="100"/>
|
||||
<Label Content="{markup:Translate Benutzername:}" HorizontalAlignment="Left" Margin="10,45,0,0" VerticalAlignment="Top" Width="100"/>
|
||||
<Label Content="Passwort:" HorizontalAlignment="Left" Margin="10,75,0,0" VerticalAlignment="Top" Width="100"/>
|
||||
|
||||
<TextBox x:Name="proxynametxt" HorizontalAlignment="Left" Height="23" Margin="120,15,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="160" SelectionOpacity="0.5" />
|
||||
<TextBox x:Name="proxybenutzer" HorizontalAlignment="Left" Height="23" Margin="120,45,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="160" SelectionOpacity="0.5"/>
|
||||
<PasswordBox x:Name="proxypasswort" HorizontalAlignment="Left" Height="23" Margin="120,75,0,0" VerticalAlignment="Top" Width="160" SelectionOpacity="0.5"/>
|
||||
<Button
|
||||
x:Name="proxyOK"
|
||||
Width="100"
|
||||
Margin="75,120,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Top"
|
||||
Click="proxyOK_Click"
|
||||
Content="OK" />
|
||||
<Button
|
||||
x:Name="proxyAbbr"
|
||||
Width="100"
|
||||
Margin="180,120,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Top"
|
||||
Click="proxyAbbr_Click"
|
||||
Content="Abbrechen" />
|
||||
|
||||
|
||||
<Label
|
||||
Width="100"
|
||||
Margin="10,15,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Top"
|
||||
Content="Proxyname:" />
|
||||
<Label
|
||||
Width="100"
|
||||
Margin="10,45,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Top"
|
||||
Content="{markup:Translate Benutzername:}" />
|
||||
<Label
|
||||
Width="100"
|
||||
Margin="10,75,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Top"
|
||||
Content="Passwort:" />
|
||||
|
||||
<TextBox
|
||||
x:Name="proxynametxt"
|
||||
Width="160"
|
||||
Height="23"
|
||||
Margin="120,15,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Top"
|
||||
SelectionOpacity="0.5"
|
||||
TextWrapping="Wrap" />
|
||||
<TextBox
|
||||
x:Name="proxybenutzer"
|
||||
Width="160"
|
||||
Height="23"
|
||||
Margin="120,45,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Top"
|
||||
SelectionOpacity="0.5"
|
||||
TextWrapping="Wrap" />
|
||||
<PasswordBox
|
||||
x:Name="proxypasswort"
|
||||
Width="160"
|
||||
Height="23"
|
||||
Margin="120,75,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Top"
|
||||
SelectionOpacity="0.5" />
|
||||
|
||||
</Grid>
|
||||
</Window>
|
||||
|
||||
@@ -1,31 +1,71 @@
|
||||
<Window x:Class="BeWo.PwVergessenView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
Title="PwVergessenView" Height="135" Width="322" WindowStartupLocation="CenterScreen" WindowStyle="None"
|
||||
AllowsTransparency="True"
|
||||
Background="Transparent"
|
||||
ResizeMode="NoResize">
|
||||
<Window
|
||||
x:Class="BeWo.PwVergessenView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
Title="PwVergessenView"
|
||||
Width="322"
|
||||
Height="135"
|
||||
AllowsTransparency="True"
|
||||
Background="Transparent"
|
||||
ResizeMode="NoResize"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
WindowStyle="None">
|
||||
<Grid>
|
||||
<GroupBox Header="Passwort anfordern" Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}" MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown">
|
||||
<Grid Background="{StaticResource ObjectEditBackgroundBrush}">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="2" Height="20" VerticalAlignment="Center" HorizontalAlignment="Center" Foreground="Red" Margin="3,8,3,3"/>
|
||||
<Label Grid.Row="1" Grid.Column="0" Margin="3" Content="{markup:Translate Benutzername}" />
|
||||
<TextBox x:Name="BenutzernamenTextBox" Grid.Row="1" Grid.Column="1" MaxLines="1" Margin="3" />
|
||||
<StackPanel Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" Orientation="Horizontal" HorizontalAlignment="Stretch">
|
||||
<Button Margin="3" Content="Neues Passwort anfordern" Width="150" Click="AnfordernClick" IsDefault="True" VerticalContentAlignment="Center" />
|
||||
<Button Margin="3" Content="Abbrechen" Width="150" Command="Close" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</Grid>
|
||||
<GroupBox
|
||||
Header="Passwort anfordern"
|
||||
MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown"
|
||||
Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}">
|
||||
<Grid Background="{StaticResource ObjectEditBackgroundBrush}">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
Height="20"
|
||||
Margin="3,8,3,3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Foreground="Red" />
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Content="{markup:Translate Benutzername}" />
|
||||
<TextBox
|
||||
x:Name="BenutzernamenTextBox"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Margin="3"
|
||||
MaxLines="1" />
|
||||
<StackPanel
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
HorizontalAlignment="Stretch"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
Width="150"
|
||||
Margin="3"
|
||||
VerticalContentAlignment="Center"
|
||||
Click="AnfordernClick"
|
||||
Content="Neues Passwort anfordern"
|
||||
IsDefault="True" />
|
||||
<Button
|
||||
Width="150"
|
||||
Margin="3"
|
||||
Command="Close"
|
||||
Content="Abbrechen" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</Grid>
|
||||
</Window>
|
||||
|
||||
BIN
BeWo/Ressources/Icons/chatbot2.png
Normal file
BIN
BeWo/Ressources/Icons/chatbot2.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 10 KiB |
File diff suppressed because it is too large
Load Diff
@@ -1,171 +1,379 @@
|
||||
<dx:DXWindow x:Class="BeWo.Scheduler.View.RequestAnswerView"
|
||||
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:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:drawing="http://schemas.devexpress.com/winfx/2008/xaml/scheduler/internal"
|
||||
xmlns:view="clr-namespace:BeWo.Scheduler.View"
|
||||
mc:Ignorable="d" ShowIcon="False" MinHeight="300" MinWidth="500"
|
||||
Height="400" Width="650" dx:ThemeManager.ThemeName="Office2010Black" WindowStartupLocation="CenterScreen" Closing="RequestAnswerView_OnClosing">
|
||||
<dx:DXWindow.Resources>
|
||||
<drawing:TimeSpanToDateTimeConverter x:Key="TimeSpanToDateTimeConverter"/>
|
||||
<view:LVItemConverter x:Key="LvItemConverter" />
|
||||
<view:OriginatorExtraxtor x:Key="OriginatorExtraxtor" />
|
||||
<view:Int2VisibilityConverter x:Key="Int2VisibilityConverter" />
|
||||
<view:SerienterminDauerAnzeigeConverter x:Key="SerienterminDauerAnzeigeConverter" />
|
||||
<LinearGradientBrush x:Key="NavigationContentBrush" EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#FF04B4D0" Offset="0" />
|
||||
<GradientStop Color="#FF038195" Offset="1" />
|
||||
</LinearGradientBrush>
|
||||
</dx:DXWindow.Resources>
|
||||
<dx:DXWindow
|
||||
x:Class="BeWo.Scheduler.View.RequestAnswerView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:drawing="http://schemas.devexpress.com/winfx/2008/xaml/scheduler/internal"
|
||||
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:view="clr-namespace:BeWo.Scheduler.View"
|
||||
Width="650"
|
||||
Height="400"
|
||||
MinWidth="500"
|
||||
MinHeight="300"
|
||||
dx:ThemeManager.ThemeName="Office2010Black"
|
||||
Closing="RequestAnswerView_OnClosing"
|
||||
ShowIcon="False"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
mc:Ignorable="d">
|
||||
<dx:DXWindow.Resources>
|
||||
<drawing:TimeSpanToDateTimeConverter x:Key="TimeSpanToDateTimeConverter" />
|
||||
<view:LVItemConverter x:Key="LvItemConverter" />
|
||||
<view:OriginatorExtraxtor x:Key="OriginatorExtraxtor" />
|
||||
<view:Int2VisibilityConverter x:Key="Int2VisibilityConverter" />
|
||||
<view:SerienterminDauerAnzeigeConverter x:Key="SerienterminDauerAnzeigeConverter" />
|
||||
<LinearGradientBrush x:Key="NavigationContentBrush" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#FF04B4D0" />
|
||||
<GradientStop Offset="1" Color="#FF038195" />
|
||||
</LinearGradientBrush>
|
||||
</dx:DXWindow.Resources>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Row="0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<ListView x:Name="OTListView" Grid.Column="0" MinWidth="120" SelectionMode="Single" Margin="3" ItemsSource="{Binding Path=OffeneTermine, UpdateSourceTrigger=PropertyChanged}" MaxWidth="300" SelectionChanged="Selector_OnSelected" Background="{StaticResource NavigationContentBrush}" SelectedIndex="0">
|
||||
<ListView.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type ListViewItem}">
|
||||
<Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
|
||||
<Setter Property="VerticalContentAlignment" Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
|
||||
<Setter Property="Margin" Value="0,2,1,0" />
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate>
|
||||
<Grid>
|
||||
<Border CornerRadius="5" MinHeight="20" Background="Transparent" />
|
||||
<Border x:Name="ItemBorder" CornerRadius="5" MinHeight="20" Background="#FF000000">
|
||||
<Border.OpacityMask>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#19000000" Offset="0" />
|
||||
<GradientStop Color="#26000000" Offset="1" />
|
||||
</LinearGradientBrush>
|
||||
</Border.OpacityMask>
|
||||
</Border>
|
||||
<Border x:Name="ItemContent" CornerRadius="5" MinHeight="20">
|
||||
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="5,3,5,3" OpacityMask="{x:Null}" SnapsToDevicePixels="True">
|
||||
<TextBlock VerticalAlignment="Center" Text="{Binding Converter={StaticResource LvItemConverter}, ConverterParameter=LabelId}" FontSize="12" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif" />
|
||||
</Grid>
|
||||
</Border>
|
||||
</Grid>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#33000000" Offset="0" />
|
||||
<GradientStop Color="#66000000" Offset="1" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Trigger>
|
||||
<Trigger Property="ListBoxItem.IsSelected" Value="True">
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#99000000" Offset="0" />
|
||||
<GradientStop Color="#CC000000" Offset="1" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Trigger>
|
||||
<MultiTrigger>
|
||||
<MultiTrigger.Conditions>
|
||||
<Condition Property="ListBoxItem.IsSelected" Value="True" />
|
||||
<Condition Property="Selector.IsSelectionActive" Value="False" />
|
||||
</MultiTrigger.Conditions>
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#99000000" Offset="0" />
|
||||
<GradientStop Color="#B2000000" Offset="1" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</MultiTrigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</ListView.ItemContainerStyle>
|
||||
</ListView>
|
||||
<Grid Grid.Column="1" Grid.Row="0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</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="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<TextBlock Grid.ColumnSpan="4" HorizontalAlignment="Center" Visibility="{Binding Path=SelektierterTermin, Converter={StaticResource Int2VisibilityConverter}, ConverterParameter=TerminVerstrichen}" Foreground="#9a0000">Dieser Termin liegt in der Vergangenheit</TextBlock>
|
||||
<Label Grid.Column="0" Grid.Row="1" Content="Betreff" Margin="3" />
|
||||
<TextBox Grid.Column="1" Grid.ColumnSpan="3" Grid.Row="1" Height="23" Margin="3" Text="{Binding Path=SelektierterTermin.Subject}" IsReadOnly="True" />
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Row="0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<ListView
|
||||
x:Name="OTListView"
|
||||
Grid.Column="0"
|
||||
MinWidth="120"
|
||||
MaxWidth="300"
|
||||
Margin="3"
|
||||
Background="{StaticResource NavigationContentBrush}"
|
||||
ItemsSource="{Binding Path=OffeneTermine, UpdateSourceTrigger=PropertyChanged}"
|
||||
SelectedIndex="0"
|
||||
SelectionChanged="Selector_OnSelected"
|
||||
SelectionMode="Single">
|
||||
<ListView.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type ListViewItem}">
|
||||
<Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
|
||||
<Setter Property="VerticalContentAlignment" Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
|
||||
<Setter Property="Margin" Value="0,2,1,0" />
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate>
|
||||
<Grid>
|
||||
<Border
|
||||
MinHeight="20"
|
||||
Background="Transparent"
|
||||
CornerRadius="5" />
|
||||
<Border
|
||||
x:Name="ItemBorder"
|
||||
MinHeight="20"
|
||||
Background="#FF000000"
|
||||
CornerRadius="5">
|
||||
<Border.OpacityMask>
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#19000000" />
|
||||
<GradientStop Offset="1" Color="#26000000" />
|
||||
</LinearGradientBrush>
|
||||
</Border.OpacityMask>
|
||||
</Border>
|
||||
<Border
|
||||
x:Name="ItemContent"
|
||||
MinHeight="20"
|
||||
CornerRadius="5">
|
||||
<Grid
|
||||
Margin="5,3,5,3"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
OpacityMask="{x:Null}"
|
||||
SnapsToDevicePixels="True">
|
||||
<TextBlock
|
||||
VerticalAlignment="Center"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="12"
|
||||
Foreground="#FFD2D2D2"
|
||||
Text="{Binding Converter={StaticResource LvItemConverter}, ConverterParameter=LabelId}" />
|
||||
</Grid>
|
||||
</Border>
|
||||
</Grid>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#33000000" />
|
||||
<GradientStop Offset="1" Color="#66000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Trigger>
|
||||
<Trigger Property="ListBoxItem.IsSelected" Value="True">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#99000000" />
|
||||
<GradientStop Offset="1" Color="#CC000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Trigger>
|
||||
<MultiTrigger>
|
||||
<MultiTrigger.Conditions>
|
||||
<Condition Property="ListBoxItem.IsSelected" Value="True" />
|
||||
<Condition Property="Selector.IsSelectionActive" Value="False" />
|
||||
</MultiTrigger.Conditions>
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#99000000" />
|
||||
<GradientStop Offset="1" Color="#B2000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</MultiTrigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</ListView.ItemContainerStyle>
|
||||
</ListView>
|
||||
<Grid Grid.Row="0" Grid.Column="1">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</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="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="2" Content="Ort" Margin="3" />
|
||||
<TextBox Grid.Column="1" Grid.ColumnSpan="3" Grid.Row="2" Height="23" Margin="3" Text="{Binding Path=SelektierterTermin.Location}" IsReadOnly="True" />
|
||||
<TextBlock
|
||||
Grid.ColumnSpan="4"
|
||||
HorizontalAlignment="Center"
|
||||
Foreground="#9a0000"
|
||||
Visibility="{Binding Path=SelektierterTermin, Converter={StaticResource Int2VisibilityConverter}, ConverterParameter=TerminVerstrichen}">
|
||||
Dieser Termin liegt in der Vergangenheit
|
||||
</TextBlock>
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Content="Betreff" />
|
||||
<TextBox
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
IsReadOnly="True"
|
||||
Text="{Binding Path=SelektierterTermin.Subject}" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="3" Content="Organisator" Margin="3" />
|
||||
<TextBox Grid.Column="1" Grid.ColumnSpan="3" Grid.Row="3" Height="23" Margin="3" Text="{Binding Path=SelektierterTermin, Converter={StaticResource OriginatorExtraxtor}}" IsReadOnly="True" />
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Content="Ort" />
|
||||
<TextBox
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
IsReadOnly="True"
|
||||
Text="{Binding Path=SelektierterTermin.Location}" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="4" VerticalAlignment="Center" Content="Start" Margin="3"/>
|
||||
<dxe:DateEdit Grid.Column="1" Grid.Row="4" MaskType="DateTimeAdvancingCaret" Background="White" Height="23" MinWidth="80" Margin="3" IsEnabled="True" EditValue="{Binding SelektierterTermin.Start}" IsReadOnly="True" PopupOpening="PopupBaseEdit_OnPopupOpening" />
|
||||
<dxe:TextEdit IsEnabled="True" Grid.Column="2" Grid.Row="4" MaskType="DateTime" Mask="t" MaskUseAsDisplayFormat="True" Margin="3" Height="23" EditValue ="{Binding SelektierterTermin.StartTime, Converter={StaticResource TimeSpanToDateTimeConverter}, Mode=OneWay}" IsReadOnly="True"/>
|
||||
<dxe:CheckEdit IsEnabled="False" Grid.Column="3" Grid.Row="4" Content="Ganztägig" EditValue ="{Binding SelektierterTermin.AllDay}" HorizontalAlignment="Right" Margin="3" IsReadOnly="True" />
|
||||
<Label
|
||||
Grid.Row="3"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Content="Organisator" />
|
||||
<TextBox
|
||||
Grid.Row="3"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
IsReadOnly="True"
|
||||
Text="{Binding Path=SelektierterTermin, Converter={StaticResource OriginatorExtraxtor}}" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="5" VerticalAlignment="Center" Content="Ende" Margin="3"/>
|
||||
<dxe:DateEdit IsEnabled="True" Grid.Column="1" Grid.Row="5" MaskType="DateTimeAdvancingCaret" Background="White" Height="23" MinWidth="80" Margin="3" EditValue="{Binding SelektierterTermin.End}" IsReadOnly="True" PopupOpening="PopupBaseEdit_OnPopupOpening" />
|
||||
<dxe:TextEdit IsEnabled="True" Grid.Column="2" Grid.Row="5" MaskType="DateTime" Mask="t" MaskUseAsDisplayFormat="True" Margin="3" Height="23" EditValue ="{Binding SelektierterTermin.EndTime, Converter={StaticResource TimeSpanToDateTimeConverter}, Mode=OneWay}" IsReadOnly="True"/>
|
||||
<Label
|
||||
Grid.Row="4"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
VerticalAlignment="Center"
|
||||
Content="Start" />
|
||||
<dxe:DateEdit
|
||||
Grid.Row="4"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
MinWidth="80"
|
||||
Margin="3"
|
||||
Background="White"
|
||||
EditValue="{Binding SelektierterTermin.Start}"
|
||||
IsEnabled="True"
|
||||
IsReadOnly="True"
|
||||
MaskType="DateTimeAdvancingCaret"
|
||||
PopupOpening="PopupBaseEdit_OnPopupOpening" />
|
||||
<dxe:TextEdit
|
||||
Grid.Row="4"
|
||||
Grid.Column="2"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
EditValue="{Binding SelektierterTermin.StartTime, Converter={StaticResource TimeSpanToDateTimeConverter}, Mode=OneWay}"
|
||||
IsEnabled="True"
|
||||
IsReadOnly="True"
|
||||
Mask="t"
|
||||
MaskType="DateTime"
|
||||
MaskUseAsDisplayFormat="True" />
|
||||
<dxe:CheckEdit
|
||||
Grid.Row="4"
|
||||
Grid.Column="3"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Right"
|
||||
Content="Ganztägig"
|
||||
EditValue="{Binding SelektierterTermin.AllDay}"
|
||||
IsEnabled="False"
|
||||
IsReadOnly="True" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="6" VerticalAlignment="Center" Content="Serientermin" Margin="3" Visibility="{Binding Path=SelektierterTermin, Converter={StaticResource Int2VisibilityConverter}, ConverterParameter=SerienterminLabel}" />
|
||||
<TextBlock Grid.Column="1" Grid.Row="6" Grid.ColumnSpan="3" Margin="3" Padding="0" Foreground="Black" VerticalAlignment="Center"
|
||||
Text="{Binding Path=SelektierterTermin, Converter={StaticResource SerienterminDauerAnzeigeConverter}}"
|
||||
Visibility="{Binding Path=SelektierterTermin, Converter={StaticResource Int2VisibilityConverter}, ConverterParameter=SerienterminLabel}"
|
||||
TextWrapping="WrapWithOverflow"/>
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="7" Margin="3" Content="Notiz"/>
|
||||
<TextBox Grid.Column="1" Grid.Row="7" Grid.ColumnSpan="3" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" VerticalAlignment="Stretch" HorizontalScrollBarVisibility="Disabled" Margin="3" TextWrapping="Wrap" Text="{Binding Path=SelektierterTermin.Description}" IsReadOnly="True" />
|
||||
<Label
|
||||
Grid.Row="5"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
VerticalAlignment="Center"
|
||||
Content="Ende" />
|
||||
<dxe:DateEdit
|
||||
Grid.Row="5"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
MinWidth="80"
|
||||
Margin="3"
|
||||
Background="White"
|
||||
EditValue="{Binding SelektierterTermin.End}"
|
||||
IsEnabled="True"
|
||||
IsReadOnly="True"
|
||||
MaskType="DateTimeAdvancingCaret"
|
||||
PopupOpening="PopupBaseEdit_OnPopupOpening" />
|
||||
<dxe:TextEdit
|
||||
Grid.Row="5"
|
||||
Grid.Column="2"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
EditValue="{Binding SelektierterTermin.EndTime, Converter={StaticResource TimeSpanToDateTimeConverter}, Mode=OneWay}"
|
||||
IsEnabled="True"
|
||||
IsReadOnly="True"
|
||||
Mask="t"
|
||||
MaskType="DateTime"
|
||||
MaskUseAsDisplayFormat="True" />
|
||||
|
||||
<Grid Grid.Row="8" Grid.Column="0" Grid.ColumnSpan="4">
|
||||
<Label
|
||||
Grid.Row="6"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
VerticalAlignment="Center"
|
||||
Content="Serientermin"
|
||||
Visibility="{Binding Path=SelektierterTermin, Converter={StaticResource Int2VisibilityConverter}, ConverterParameter=SerienterminLabel}" />
|
||||
<TextBlock
|
||||
Grid.Row="6"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="3"
|
||||
Padding="0"
|
||||
VerticalAlignment="Center"
|
||||
Foreground="Black"
|
||||
Text="{Binding Path=SelektierterTermin, Converter={StaticResource SerienterminDauerAnzeigeConverter}}"
|
||||
TextWrapping="WrapWithOverflow"
|
||||
Visibility="{Binding Path=SelektierterTermin, Converter={StaticResource Int2VisibilityConverter}, ConverterParameter=SerienterminLabel}" />
|
||||
|
||||
<Label
|
||||
Grid.Row="7"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Content="Notiz" />
|
||||
<TextBox
|
||||
Grid.Row="7"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="3"
|
||||
VerticalAlignment="Stretch"
|
||||
AcceptsReturn="True"
|
||||
HorizontalScrollBarVisibility="Disabled"
|
||||
IsReadOnly="True"
|
||||
Text="{Binding Path=SelektierterTermin.Description}"
|
||||
TextWrapping="Wrap"
|
||||
VerticalScrollBarVisibility="Auto" />
|
||||
|
||||
<Grid
|
||||
Grid.Row="8"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="4">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Button x:Name="AlleBestaetigen" Grid.Column="0" Content="Alle bestätigen" Margin="3" Click="ButtonBase_OnClick" Width="100" />
|
||||
<StackPanel x:Name="ZusagenStack" Grid.Column="1" HorizontalAlignment="Right" Orientation="Horizontal" Visibility="{Binding Path=SelektierterTermin, Converter={StaticResource Int2VisibilityConverter}, ConverterParameter=ZusagenStack}">
|
||||
<Button
|
||||
x:Name="AlleBestaetigen"
|
||||
Grid.Column="0"
|
||||
Width="100"
|
||||
Margin="3"
|
||||
Click="ButtonBase_OnClick"
|
||||
Content="Alle bestätigen" />
|
||||
<StackPanel
|
||||
x:Name="ZusagenStack"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{Binding Path=SelektierterTermin, Converter={StaticResource Int2VisibilityConverter}, ConverterParameter=ZusagenStack}">
|
||||
<StackPanel HorizontalAlignment="Right" Orientation="Horizontal">
|
||||
<Button Margin="3" Content="Zusagen" Click="Zusagen_OnClick" IsEnabled="{Binding SelektierterTermin, Converter={StaticResource ObjectBoolConverter}}" />
|
||||
<Button Margin="3" Content="Mit Vorbehalt" Click="MitVorbehalt_OnClick" IsEnabled="{Binding SelektierterTermin, Converter={StaticResource ObjectBoolConverter}}" />
|
||||
<Button Margin="3" Content="Absagen" Click="Absagen_OnClick" IsEnabled="{Binding SelektierterTermin, Converter={StaticResource ObjectBoolConverter}}" />
|
||||
<Button
|
||||
Margin="3"
|
||||
Click="Zusagen_OnClick"
|
||||
Content="Zusagen"
|
||||
IsEnabled="{Binding SelektierterTermin, Converter={StaticResource ObjectBoolConverter}}" />
|
||||
<Button
|
||||
Margin="3"
|
||||
Click="MitVorbehalt_OnClick"
|
||||
Content="Mit Vorbehalt"
|
||||
IsEnabled="{Binding SelektierterTermin, Converter={StaticResource ObjectBoolConverter}}" />
|
||||
<Button
|
||||
Margin="3"
|
||||
Click="Absagen_OnClick"
|
||||
Content="Absagen"
|
||||
IsEnabled="{Binding SelektierterTermin, Converter={StaticResource ObjectBoolConverter}}" />
|
||||
</StackPanel>
|
||||
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
||||
<Button x:Name="OkButton" Grid.Row="8" Grid.Column="0" Grid.ColumnSpan="4" HorizontalAlignment="Right" Margin="3" Width="100" Content="OK" Click="OK_OnClick" Visibility="{Binding Path=SelektierterTermin, Converter={StaticResource Int2VisibilityConverter}, ConverterParameter=OKBtn}" />
|
||||
</Grid>
|
||||
</Grid>
|
||||
<Button Grid.Row="1" x:Name="CloseBtn" Content="Schließen" HorizontalAlignment="Right" Margin="3" Width="100" Click="CloseButton_Click" />
|
||||
|
||||
<Button
|
||||
x:Name="OkButton"
|
||||
Grid.Row="8"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="4"
|
||||
Width="100"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Right"
|
||||
Click="OK_OnClick"
|
||||
Content="OK"
|
||||
Visibility="{Binding Path=SelektierterTermin, Converter={StaticResource Int2VisibilityConverter}, ConverterParameter=OKBtn}" />
|
||||
</Grid>
|
||||
</Grid>
|
||||
<Button
|
||||
x:Name="CloseBtn"
|
||||
Grid.Row="1"
|
||||
Width="100"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Right"
|
||||
Click="CloseButton_Click"
|
||||
Content="Schließen" />
|
||||
</Grid>
|
||||
</dx:DXWindow>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,22 +1,26 @@
|
||||
<dx:DXWindow x:Class="BeWo.Scheduling.View.AppointmentRecurrenceEditView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:dxsch="http://schemas.devexpress.com/winfx/2008/xaml/scheduling"
|
||||
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
|
||||
mc:Ignorable="d"
|
||||
Loaded="AppointmentRecurrenceEditView_OnLoaded"
|
||||
Background="{StaticResource ObjectEditBackgroundBrush}"
|
||||
ResizeMode="NoResize"
|
||||
Closing="AppointmentRecurrenceEditView_OnClosing"
|
||||
Title="AppointmentRecurrenceEditView" Height="Auto" Width="507" SizeToContent="Height">
|
||||
<dx:DXWindow
|
||||
x:Class="BeWo.Scheduling.View.AppointmentRecurrenceEditView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
|
||||
xmlns:dxsch="http://schemas.devexpress.com/winfx/2008/xaml/scheduling"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
Title="AppointmentRecurrenceEditView"
|
||||
Width="507"
|
||||
Height="Auto"
|
||||
Background="{StaticResource ObjectEditBackgroundBrush}"
|
||||
Closing="AppointmentRecurrenceEditView_OnClosing"
|
||||
Loaded="AppointmentRecurrenceEditView_OnLoaded"
|
||||
ResizeMode="NoResize"
|
||||
SizeToContent="Height"
|
||||
mc:Ignorable="d">
|
||||
<Window.Resources>
|
||||
<Style x:Key="RecurrenceInfoControlStyle" TargetType="dxsch:RecurrenceInfoControlBase">
|
||||
<Setter Property="RecurrenceInfo" Value="{Binding RecurrenceInfo}"/>
|
||||
<Setter Property="RecurrenceInfo" Value="{Binding RecurrenceInfo}" />
|
||||
<Style.Triggers>
|
||||
<Trigger Property="Visibility" Value="Collapsed">
|
||||
<Setter Property="RecurrenceInfo" Value="{x:Null}"/>
|
||||
<Setter Property="RecurrenceInfo" Value="{x:Null}" />
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
@@ -39,17 +43,47 @@
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="6" />
|
||||
</Grid.RowDefinitions>
|
||||
<Border BorderBrush="Transparent" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Grid.ColumnSpan="4" Grid.Column="0" CornerRadius="4" Grid.Row="1" Grid.RowSpan="3"/>
|
||||
<Border SnapsToDevicePixels="True" x:Name="Header" Grid.Column="1" Padding="3,1,3,0" Grid.Row="0" Grid.RowSpan="2">
|
||||
<ContentPresenter ContentSource="Header" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
|
||||
<Border
|
||||
Grid.Row="1"
|
||||
Grid.RowSpan="3"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="4"
|
||||
Background="{TemplateBinding Background}"
|
||||
BorderBrush="Transparent"
|
||||
BorderThickness="{TemplateBinding BorderThickness}"
|
||||
CornerRadius="4" />
|
||||
<Border
|
||||
x:Name="Header"
|
||||
Grid.Row="0"
|
||||
Grid.RowSpan="2"
|
||||
Grid.Column="1"
|
||||
Padding="3,1,3,0"
|
||||
SnapsToDevicePixels="True">
|
||||
<ContentPresenter
|
||||
ContentSource="Header"
|
||||
RecognizesAccessKey="True"
|
||||
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
|
||||
</Border>
|
||||
<ContentPresenter Grid.ColumnSpan="2" Grid.Column="1" Margin="{TemplateBinding Padding}" Grid.Row="2" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
|
||||
<Border SnapsToDevicePixels="True" Grid.Column="0" BorderBrush="Gray" BorderThickness="{TemplateBinding BorderThickness}" Grid.ColumnSpan="4" CornerRadius="4" Grid.Row="1" Grid.RowSpan="3">
|
||||
<ContentPresenter
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="{TemplateBinding Padding}"
|
||||
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
|
||||
<Border
|
||||
Grid.Row="1"
|
||||
Grid.RowSpan="3"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="4"
|
||||
BorderBrush="Gray"
|
||||
BorderThickness="{TemplateBinding BorderThickness}"
|
||||
CornerRadius="4"
|
||||
SnapsToDevicePixels="True">
|
||||
<Border.OpacityMask>
|
||||
<MultiBinding ConverterParameter="7" Converter="{StaticResource BorderGapMaskConverter}">
|
||||
<Binding ElementName="Header" Path="ActualWidth"/>
|
||||
<Binding Path="ActualWidth" RelativeSource="{RelativeSource Self}"/>
|
||||
<Binding Path="ActualHeight" RelativeSource="{RelativeSource Self}"/>
|
||||
<MultiBinding Converter="{StaticResource BorderGapMaskConverter}" ConverterParameter="7">
|
||||
<Binding ElementName="Header" Path="ActualWidth" />
|
||||
<Binding Path="ActualWidth" RelativeSource="{RelativeSource Self}" />
|
||||
<Binding Path="ActualHeight" RelativeSource="{RelativeSource Self}" />
|
||||
</MultiBinding>
|
||||
</Border.OpacityMask>
|
||||
</Border>
|
||||
@@ -65,35 +99,73 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<GroupBox Grid.Row="0" Header="Serienmuster" Style="{StaticResource GroupBoxStyle}" Margin="5">
|
||||
<GroupBox
|
||||
Grid.Row="0"
|
||||
Margin="5"
|
||||
Header="Serienmuster"
|
||||
Style="{StaticResource GroupBoxStyle}">
|
||||
<DockPanel>
|
||||
<dxsch:RecurrenceTypeControl DockPanel.Dock="Left" RecurrenceTypes="{Binding AvailableRecurrenceTypes}" RecurrenceType="{Binding RecurrenceInfo.Type, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
|
||||
<dxsch:RecurrenceTypeControl
|
||||
DockPanel.Dock="Left"
|
||||
RecurrenceType="{Binding RecurrenceInfo.Type, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
RecurrenceTypes="{Binding AvailableRecurrenceTypes}" />
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Separator />
|
||||
</StackPanel>
|
||||
<StackPanel MinHeight="90">
|
||||
<dxsch:DailyRecurrenceControl Style="{StaticResource RecurrenceInfoControlStyle}" Visibility="{Binding RecurrenceInfo.Type, Converter={dxsch:RecurrenceTypeToVisibilityConverter VisibleValue=Daily}}"/>
|
||||
<dxsch:WeeklyRecurrenceControl Style="{StaticResource RecurrenceInfoControlStyle}" Visibility="{Binding RecurrenceInfo.Type, Converter={dxsch:RecurrenceTypeToVisibilityConverter VisibleValue=Weekly}}" FirstDayOfWeek="{Binding FirstDayOfWeek}"/>
|
||||
<dxsch:MonthlyRecurrenceControl Style="{StaticResource RecurrenceInfoControlStyle}" Visibility="{Binding RecurrenceInfo.Type, Converter={dxsch:RecurrenceTypeToVisibilityConverter VisibleValue=Monthly}}"/>
|
||||
<dxsch:YearlyRecurrenceControl x:Name="YearlyRecurrence" Style="{StaticResource RecurrenceInfoControlStyle}" Visibility="{Binding RecurrenceInfo.Type, Converter={dxsch:RecurrenceTypeToVisibilityConverter VisibleValue=Yearly}}"/>
|
||||
<dxsch:DailyRecurrenceControl Style="{StaticResource RecurrenceInfoControlStyle}" Visibility="{Binding RecurrenceInfo.Type, Converter={dxsch:RecurrenceTypeToVisibilityConverter VisibleValue=Daily}}" />
|
||||
<dxsch:WeeklyRecurrenceControl
|
||||
FirstDayOfWeek="{Binding FirstDayOfWeek}"
|
||||
Style="{StaticResource RecurrenceInfoControlStyle}"
|
||||
Visibility="{Binding RecurrenceInfo.Type, Converter={dxsch:RecurrenceTypeToVisibilityConverter VisibleValue=Weekly}}" />
|
||||
<dxsch:MonthlyRecurrenceControl Style="{StaticResource RecurrenceInfoControlStyle}" Visibility="{Binding RecurrenceInfo.Type, Converter={dxsch:RecurrenceTypeToVisibilityConverter VisibleValue=Monthly}}" />
|
||||
<dxsch:YearlyRecurrenceControl
|
||||
x:Name="YearlyRecurrence"
|
||||
Style="{StaticResource RecurrenceInfoControlStyle}"
|
||||
Visibility="{Binding RecurrenceInfo.Type, Converter={dxsch:RecurrenceTypeToVisibilityConverter VisibleValue=Yearly}}" />
|
||||
</StackPanel>
|
||||
</DockPanel>
|
||||
</GroupBox>
|
||||
<GroupBox Grid.Row="1" Header="Serienende" Style="{StaticResource GroupBoxStyle}" Margin="5">
|
||||
<dxsch:RecurrenceRangeControl RecurrenceInfo="{Binding RecurrenceInfo}"/>
|
||||
<GroupBox
|
||||
Grid.Row="1"
|
||||
Margin="5"
|
||||
Header="Serienende"
|
||||
Style="{StaticResource GroupBoxStyle}">
|
||||
<dxsch:RecurrenceRangeControl RecurrenceInfo="{Binding RecurrenceInfo}" />
|
||||
</GroupBox>
|
||||
<Grid Grid.Row="2" VerticalAlignment="Bottom" Margin="0">
|
||||
<Border Height="40" Margin="0,10,0,0" VerticalAlignment="Bottom" Background="#FF000000">
|
||||
<Grid
|
||||
Grid.Row="2"
|
||||
Margin="0"
|
||||
VerticalAlignment="Bottom">
|
||||
<Border
|
||||
Height="40"
|
||||
Margin="0,10,0,0"
|
||||
VerticalAlignment="Bottom"
|
||||
Background="#FF000000">
|
||||
<Border.OpacityMask>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#19000000" Offset="0" />
|
||||
<GradientStop Color="#33FFFFFF" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#19000000" />
|
||||
<GradientStop Offset="1" Color="#33FFFFFF" />
|
||||
</LinearGradientBrush>
|
||||
</Border.OpacityMask>
|
||||
</Border>
|
||||
<StackPanel VerticalAlignment="Bottom" Height="40" Orientation="Horizontal" HorizontalAlignment="Right">
|
||||
<Button Content="OK" Width="80" Height="25" Margin="3" Click="OkButton_Click" />
|
||||
<Button Content="Abbrechen" Width="80" Height="25" Margin="3" Click="CloseButton_OnClick" />
|
||||
<StackPanel
|
||||
Height="40"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Bottom"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
Width="80"
|
||||
Height="25"
|
||||
Margin="3"
|
||||
Click="OkButton_Click"
|
||||
Content="OK" />
|
||||
<Button
|
||||
Width="80"
|
||||
Height="25"
|
||||
Margin="3"
|
||||
Click="CloseButton_OnClick"
|
||||
Content="Abbrechen" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
@@ -1,24 +1,30 @@
|
||||
<dx:DXWindow x:Class="BeWo.Scheduling.View.OpenAppointmentsView"
|
||||
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:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:drawing="http://schemas.devexpress.com/winfx/2008/xaml/scheduler/internal"
|
||||
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
|
||||
xmlns:converter="clr-namespace:BeWo.Scheduling.Converter"
|
||||
mc:Ignorable="d" Height="400" Width="650"
|
||||
ShowIcon="False" MinHeight="300" MinWidth="500"
|
||||
dx:ThemeManager.ThemeName="Office2010Black"
|
||||
WindowStartupLocation="CenterScreen" Closing="OpenAppointmentsView_OnClosing">
|
||||
<dx:DXWindow
|
||||
x:Class="BeWo.Scheduling.View.OpenAppointmentsView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:converter="clr-namespace:BeWo.Scheduling.Converter"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:drawing="http://schemas.devexpress.com/winfx/2008/xaml/scheduler/internal"
|
||||
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
Width="650"
|
||||
Height="400"
|
||||
MinWidth="500"
|
||||
MinHeight="300"
|
||||
dx:ThemeManager.ThemeName="Office2010Black"
|
||||
Closing="OpenAppointmentsView_OnClosing"
|
||||
ShowIcon="False"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
mc:Ignorable="d">
|
||||
<dx:DXWindow.Resources>
|
||||
<drawing:TimeSpanToDateTimeConverter x:Key="TimeSpanToDateTimeConverter"/>
|
||||
<drawing:TimeSpanToDateTimeConverter x:Key="TimeSpanToDateTimeConverter" />
|
||||
<converter:RecurringAppointmentDurationConverter x:Key="RecurringAppointmentDurationConverter" />
|
||||
<converter:RequestVisibilityConverter x:Key="RequestVisibilityConverter" />
|
||||
<converter:ParticipationRequestListViewConverter x:Key="ParticipationRequestListViewConverter" />
|
||||
<LinearGradientBrush x:Key="NavigationContentBrush" EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#FF04B4D0" Offset="0" />
|
||||
<GradientStop Color="#FF038195" Offset="1" />
|
||||
<LinearGradientBrush x:Key="NavigationContentBrush" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#FF04B4D0" />
|
||||
<GradientStop Offset="1" Color="#FF038195" />
|
||||
</LinearGradientBrush>
|
||||
</dx:DXWindow.Resources>
|
||||
<Grid>
|
||||
@@ -34,10 +40,17 @@
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<ListView x:Name="OpenAppointmentsList" Grid.Column="0" MinWidth="120" SelectionMode="Single" Margin="3"
|
||||
ItemsSource="{Binding OpenAppointments, UpdateSourceTrigger=PropertyChanged}" MaxWidth="300"
|
||||
SelectedItem="{Binding SelectedAppointment, UpdateSourceTrigger=PropertyChanged}"
|
||||
Background="{StaticResource NavigationContentBrush}" SelectedIndex="0">
|
||||
<ListView
|
||||
x:Name="OpenAppointmentsList"
|
||||
Grid.Column="0"
|
||||
MinWidth="120"
|
||||
MaxWidth="300"
|
||||
Margin="3"
|
||||
Background="{StaticResource NavigationContentBrush}"
|
||||
ItemsSource="{Binding OpenAppointments, UpdateSourceTrigger=PropertyChanged}"
|
||||
SelectedIndex="0"
|
||||
SelectedItem="{Binding SelectedAppointment, UpdateSourceTrigger=PropertyChanged}"
|
||||
SelectionMode="Single">
|
||||
<ListView.ItemContainerStyle>
|
||||
<Style TargetType="{x:Type ListViewItem}">
|
||||
<Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
|
||||
@@ -47,38 +60,58 @@
|
||||
<Setter.Value>
|
||||
<ControlTemplate>
|
||||
<Grid>
|
||||
<Border CornerRadius="5" MinHeight="20" Background="Transparent" />
|
||||
<Border x:Name="ItemBorder" CornerRadius="5" MinHeight="20" Background="#FF000000">
|
||||
<Border
|
||||
MinHeight="20"
|
||||
Background="Transparent"
|
||||
CornerRadius="5" />
|
||||
<Border
|
||||
x:Name="ItemBorder"
|
||||
MinHeight="20"
|
||||
Background="#FF000000"
|
||||
CornerRadius="5">
|
||||
<Border.OpacityMask>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#19000000" Offset="0" />
|
||||
<GradientStop Color="#26000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#19000000" />
|
||||
<GradientStop Offset="1" Color="#26000000" />
|
||||
</LinearGradientBrush>
|
||||
</Border.OpacityMask>
|
||||
</Border>
|
||||
<Border x:Name="ItemContent" CornerRadius="5" MinHeight="20">
|
||||
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="5,3,5,3" OpacityMask="{x:Null}" SnapsToDevicePixels="True">
|
||||
<TextBlock VerticalAlignment="Center" Text="{Binding Converter={StaticResource ParticipationRequestListViewConverter}, ConverterParameter=LabelId}" FontSize="12" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif" />
|
||||
<Border
|
||||
x:Name="ItemContent"
|
||||
MinHeight="20"
|
||||
CornerRadius="5">
|
||||
<Grid
|
||||
Margin="5,3,5,3"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
OpacityMask="{x:Null}"
|
||||
SnapsToDevicePixels="True">
|
||||
<TextBlock
|
||||
VerticalAlignment="Center"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="12"
|
||||
Foreground="#FFD2D2D2"
|
||||
Text="{Binding Converter={StaticResource ParticipationRequestListViewConverter}, ConverterParameter=LabelId}" />
|
||||
</Grid>
|
||||
</Border>
|
||||
</Grid>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#33000000" Offset="0" />
|
||||
<GradientStop Color="#66000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#33000000" />
|
||||
<GradientStop Offset="1" Color="#66000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Trigger>
|
||||
<Trigger Property="ListBoxItem.IsSelected" Value="True">
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#99000000" Offset="0" />
|
||||
<GradientStop Color="#CC000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#99000000" />
|
||||
<GradientStop Offset="1" Color="#CC000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
@@ -88,11 +121,11 @@
|
||||
<Condition Property="ListBoxItem.IsSelected" Value="True" />
|
||||
<Condition Property="Selector.IsSelectionActive" Value="False" />
|
||||
</MultiTrigger.Conditions>
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#99000000" Offset="0" />
|
||||
<GradientStop Color="#B2000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#99000000" />
|
||||
<GradientStop Offset="1" Color="#B2000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
@@ -104,7 +137,7 @@
|
||||
</Style>
|
||||
</ListView.ItemContainerStyle>
|
||||
</ListView>
|
||||
<Grid Grid.Column="1" Grid.Row="0">
|
||||
<Grid Grid.Row="0" Grid.Column="1">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
@@ -122,51 +155,221 @@
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Grid.ColumnSpan="4" HorizontalAlignment="Center" Visibility="{Binding Path=SelectedAppointment, Converter={StaticResource RequestVisibilityConverter}, ConverterParameter=TerminVerstrichen}" Foreground="#9a0000">Dieser Termin liegt in der Vergangenheit</TextBlock>
|
||||
<Label Grid.Column="0" Grid.Row="1" Content="Betreff" Margin="3" />
|
||||
<TextBox Grid.Column="1" Grid.ColumnSpan="3" Grid.Row="1" Height="23" Margin="3" Text="{Binding Path=SelectedAppointment.Subject, Mode=OneWay}" IsReadOnly="True" />
|
||||
<TextBlock
|
||||
Grid.ColumnSpan="4"
|
||||
HorizontalAlignment="Center"
|
||||
Foreground="#9a0000"
|
||||
Visibility="{Binding Path=SelectedAppointment, Converter={StaticResource RequestVisibilityConverter}, ConverterParameter=TerminVerstrichen}">
|
||||
Dieser Termin liegt in der Vergangenheit
|
||||
</TextBlock>
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Content="Betreff" />
|
||||
<TextBox
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
IsReadOnly="True"
|
||||
Text="{Binding Path=SelectedAppointment.Subject, Mode=OneWay}" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="2" Content="Ort" Margin="3" />
|
||||
<TextBox Grid.Column="1" Grid.ColumnSpan="3" Grid.Row="2" Height="23" Margin="3" Text="{Binding Path=SelectedAppointment.Location, Mode=OneWay}" IsReadOnly="True" />
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Content="Ort" />
|
||||
<TextBox
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
IsReadOnly="True"
|
||||
Text="{Binding Path=SelectedAppointment.Location, Mode=OneWay}" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="3" Content="Organisator" Margin="3" />
|
||||
<TextBox Grid.Column="1" Grid.ColumnSpan="3" Grid.Row="3" Height="23" Margin="3" Text="{Binding Path=SelectedAppointment.Originator.FirstNameLastName, Mode=OneWay}" IsReadOnly="True" />
|
||||
<Label
|
||||
Grid.Row="3"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Content="Organisator" />
|
||||
<TextBox
|
||||
Grid.Row="3"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
IsReadOnly="True"
|
||||
Text="{Binding Path=SelectedAppointment.Originator.FirstNameLastName, Mode=OneWay}" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="4" VerticalAlignment="Center" Content="Start" Margin="3"/>
|
||||
<dxe:DateEdit Grid.Column="1" Grid.Row="4" MaskType="DateTimeAdvancingCaret" Background="White" Height="23" MinWidth="80" Margin="3" IsEnabled="True" EditValue="{Binding SelectedAppointment.Start, Mode=OneWay}" IsReadOnly="True" PopupOpening="PopupBaseEdit_OnPopupOpening" />
|
||||
<dxe:TextEdit IsEnabled="True" Grid.Column="2" Grid.Row="4" MaskType="DateTime" Mask="t" MaskUseAsDisplayFormat="True" Margin="3" Height="23" EditValue ="{Binding SelectedAppointment.StartTime, Converter={StaticResource TimeSpanToDateTimeConverter}, Mode=OneWay}" IsReadOnly="True"/>
|
||||
<dxe:CheckEdit IsEnabled="False" Grid.Column="3" Grid.Row="4" Content="Ganztägig" EditValue ="{Binding SelectedAppointment.AllDay, Mode=OneWay}" HorizontalAlignment="Right" Margin="3" IsReadOnly="True" />
|
||||
<Label
|
||||
Grid.Row="4"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
VerticalAlignment="Center"
|
||||
Content="Start" />
|
||||
<dxe:DateEdit
|
||||
Grid.Row="4"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
MinWidth="80"
|
||||
Margin="3"
|
||||
Background="White"
|
||||
EditValue="{Binding SelectedAppointment.Start, Mode=OneWay}"
|
||||
IsEnabled="True"
|
||||
IsReadOnly="True"
|
||||
MaskType="DateTimeAdvancingCaret"
|
||||
PopupOpening="PopupBaseEdit_OnPopupOpening" />
|
||||
<dxe:TextEdit
|
||||
Grid.Row="4"
|
||||
Grid.Column="2"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
EditValue="{Binding SelectedAppointment.StartTime, Converter={StaticResource TimeSpanToDateTimeConverter}, Mode=OneWay}"
|
||||
IsEnabled="True"
|
||||
IsReadOnly="True"
|
||||
Mask="t"
|
||||
MaskType="DateTime"
|
||||
MaskUseAsDisplayFormat="True" />
|
||||
<dxe:CheckEdit
|
||||
Grid.Row="4"
|
||||
Grid.Column="3"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Right"
|
||||
Content="Ganztägig"
|
||||
EditValue="{Binding SelectedAppointment.AllDay, Mode=OneWay}"
|
||||
IsEnabled="False"
|
||||
IsReadOnly="True" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="5" VerticalAlignment="Center" Content="Ende" Margin="3"/>
|
||||
<dxe:DateEdit IsEnabled="True" Grid.Column="1" Grid.Row="5" MaskType="DateTimeAdvancingCaret" Background="White" Height="23" MinWidth="80" Margin="3" EditValue="{Binding SelectedAppointment.End, Mode=OneWay}" IsReadOnly="True" PopupOpening="PopupBaseEdit_OnPopupOpening" />
|
||||
<dxe:TextEdit IsEnabled="True" Grid.Column="2" Grid.Row="5" MaskType="DateTime" Mask="t" MaskUseAsDisplayFormat="True" Margin="3" Height="23" EditValue ="{Binding SelectedAppointment.EndTime, Converter={StaticResource TimeSpanToDateTimeConverter}, Mode=OneWay}" IsReadOnly="True"/>
|
||||
<Label
|
||||
Grid.Row="5"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
VerticalAlignment="Center"
|
||||
Content="Ende" />
|
||||
<dxe:DateEdit
|
||||
Grid.Row="5"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
MinWidth="80"
|
||||
Margin="3"
|
||||
Background="White"
|
||||
EditValue="{Binding SelectedAppointment.End, Mode=OneWay}"
|
||||
IsEnabled="True"
|
||||
IsReadOnly="True"
|
||||
MaskType="DateTimeAdvancingCaret"
|
||||
PopupOpening="PopupBaseEdit_OnPopupOpening" />
|
||||
<dxe:TextEdit
|
||||
Grid.Row="5"
|
||||
Grid.Column="2"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
EditValue="{Binding SelectedAppointment.EndTime, Converter={StaticResource TimeSpanToDateTimeConverter}, Mode=OneWay}"
|
||||
IsEnabled="True"
|
||||
IsReadOnly="True"
|
||||
Mask="t"
|
||||
MaskType="DateTime"
|
||||
MaskUseAsDisplayFormat="True" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="6" VerticalAlignment="Center" Content="Serientermin" Margin="3" Visibility="{Binding Path=SelectedAppointment, Converter={StaticResource RequestVisibilityConverter}, ConverterParameter=SerienterminLabel}" />
|
||||
<TextBlock Grid.Column="1" Grid.Row="6" Grid.ColumnSpan="3" Margin="3" Padding="0" Foreground="Black" VerticalAlignment="Center"
|
||||
Text="{Binding Path=SelectedAppointment, Converter={StaticResource RecurringAppointmentDurationConverter}}"
|
||||
Visibility="{Binding Path=SelectedAppointment, Converter={StaticResource RequestVisibilityConverter}, ConverterParameter=SerienterminLabel}"
|
||||
TextWrapping="WrapWithOverflow"/>
|
||||
<Label
|
||||
Grid.Row="6"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
VerticalAlignment="Center"
|
||||
Content="Serientermin"
|
||||
Visibility="{Binding Path=SelectedAppointment, Converter={StaticResource RequestVisibilityConverter}, ConverterParameter=SerienterminLabel}" />
|
||||
<TextBlock
|
||||
Grid.Row="6"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="3"
|
||||
Padding="0"
|
||||
VerticalAlignment="Center"
|
||||
Foreground="Black"
|
||||
Text="{Binding Path=SelectedAppointment, Converter={StaticResource RecurringAppointmentDurationConverter}}"
|
||||
TextWrapping="WrapWithOverflow"
|
||||
Visibility="{Binding Path=SelectedAppointment, Converter={StaticResource RequestVisibilityConverter}, ConverterParameter=SerienterminLabel}" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="7" Margin="3" Content="Notiz"/>
|
||||
<TextBox Grid.Column="1" Grid.Row="7" Grid.ColumnSpan="3" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" VerticalAlignment="Stretch" HorizontalScrollBarVisibility="Disabled" Margin="3" TextWrapping="Wrap" Text="{Binding Path=SelectedAppointment.Description, Mode=OneWay}" IsReadOnly="True" />
|
||||
<Label
|
||||
Grid.Row="7"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Content="Notiz" />
|
||||
<TextBox
|
||||
Grid.Row="7"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="3"
|
||||
VerticalAlignment="Stretch"
|
||||
AcceptsReturn="True"
|
||||
HorizontalScrollBarVisibility="Disabled"
|
||||
IsReadOnly="True"
|
||||
Text="{Binding Path=SelectedAppointment.Description, Mode=OneWay}"
|
||||
TextWrapping="Wrap"
|
||||
VerticalScrollBarVisibility="Auto" />
|
||||
|
||||
<Grid Grid.Row="8" Grid.Column="0" Grid.ColumnSpan="4">
|
||||
<Grid
|
||||
Grid.Row="8"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="4">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Button x:Name="AlleBestaetigen" Grid.Column="0" Content="Alle bestätigen" Margin="3" Click="ConfirmAllButton_OnClick" Width="100" />
|
||||
<StackPanel x:Name="ZusagenStack" Grid.Column="1" HorizontalAlignment="Right" Orientation="Horizontal" Visibility="{Binding Path=SelectedAppointment, Converter={StaticResource RequestVisibilityConverter}, ConverterParameter=ZusagenStack}">
|
||||
<Button
|
||||
x:Name="AlleBestaetigen"
|
||||
Grid.Column="0"
|
||||
Width="100"
|
||||
Margin="3"
|
||||
Click="ConfirmAllButton_OnClick"
|
||||
Content="Alle bestätigen" />
|
||||
<StackPanel
|
||||
x:Name="ZusagenStack"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Orientation="Horizontal"
|
||||
Visibility="{Binding Path=SelectedAppointment, Converter={StaticResource RequestVisibilityConverter}, ConverterParameter=ZusagenStack}">
|
||||
<StackPanel HorizontalAlignment="Right" Orientation="Horizontal">
|
||||
<Button Margin="3" Content="Zusagen" Click="ConfirmButton_OnClick" IsEnabled="{Binding SelectedAppointment, Converter={StaticResource ObjectBoolConverter}}" />
|
||||
<Button Margin="3" Content="Mit Vorbehalt" Click="ConfirmWithReservationButton_OnClick" IsEnabled="{Binding SelectedAppointment, Converter={StaticResource ObjectBoolConverter}}" />
|
||||
<Button Margin="3" Content="Absagen" Click="RejectButton_OnClick" IsEnabled="{Binding SelectedAppointment, Converter={StaticResource ObjectBoolConverter}}" />
|
||||
<Button
|
||||
Margin="3"
|
||||
Click="ConfirmButton_OnClick"
|
||||
Content="Zusagen"
|
||||
IsEnabled="{Binding SelectedAppointment, Converter={StaticResource ObjectBoolConverter}}" />
|
||||
<Button
|
||||
Margin="3"
|
||||
Click="ConfirmWithReservationButton_OnClick"
|
||||
Content="Mit Vorbehalt"
|
||||
IsEnabled="{Binding SelectedAppointment, Converter={StaticResource ObjectBoolConverter}}" />
|
||||
<Button
|
||||
Margin="3"
|
||||
Click="RejectButton_OnClick"
|
||||
Content="Absagen"
|
||||
IsEnabled="{Binding SelectedAppointment, Converter={StaticResource ObjectBoolConverter}}" />
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
<Button x:Name="OkButton" Grid.Row="8" Grid.Column="0" Grid.ColumnSpan="4" HorizontalAlignment="Right" Margin="3" Width="100" Content="OK" Click="OkButton_OnClick" Visibility="{Binding Path=SelectedAppointment, Converter={StaticResource RequestVisibilityConverter}, ConverterParameter=OKBtn}" />
|
||||
<Button
|
||||
x:Name="OkButton"
|
||||
Grid.Row="8"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="4"
|
||||
Width="100"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Right"
|
||||
Click="OkButton_OnClick"
|
||||
Content="OK"
|
||||
Visibility="{Binding Path=SelectedAppointment, Converter={StaticResource RequestVisibilityConverter}, ConverterParameter=OKBtn}" />
|
||||
</Grid>
|
||||
</Grid>
|
||||
<Button Grid.Row="1" x:Name="CloseBtn" Content="Schließen" HorizontalAlignment="Right" Margin="3" Width="100" Click="CloseButton_OnClick" />
|
||||
<Button
|
||||
x:Name="CloseBtn"
|
||||
Grid.Row="1"
|
||||
Width="100"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Right"
|
||||
Click="CloseButton_OnClick"
|
||||
Content="Schließen" />
|
||||
</Grid>
|
||||
</dx:DXWindow>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,14 +1,23 @@
|
||||
<Window x:Class="BeWo.SchulbegleitenderDienst.KrankheitsZeitraumView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:view="clr-namespace:BeWo.SchulbegleitenderDienst.View"
|
||||
mc:Ignorable="d"
|
||||
Background="Transparent" WindowStartupLocation="CenterScreen"
|
||||
d:DataContext="{d:DesignData Type=AbsenceTimeEditViewModel}"
|
||||
SizeToContent="WidthAndHeight" WindowStyle="None" AllowsTransparency="True">
|
||||
<GroupBox Header="Zeitraum auswählen" x:Name="rootGroupBox" Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}" Background="Transparent" MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown" >
|
||||
<Window
|
||||
x:Class="BeWo.SchulbegleitenderDienst.KrankheitsZeitraumView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:view="clr-namespace:BeWo.SchulbegleitenderDienst.View"
|
||||
d:DataContext="{d:DesignData Type=AbsenceTimeEditViewModel}"
|
||||
AllowsTransparency="True"
|
||||
Background="Transparent"
|
||||
SizeToContent="WidthAndHeight"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
WindowStyle="None"
|
||||
mc:Ignorable="d">
|
||||
<GroupBox
|
||||
x:Name="rootGroupBox"
|
||||
Background="Transparent"
|
||||
Header="Zeitraum auswählen"
|
||||
MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown"
|
||||
Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}">
|
||||
<Grid>
|
||||
<view:AbsenceTimeEditView />
|
||||
</Grid>
|
||||
|
||||
@@ -1,298 +1,536 @@
|
||||
<Window x:Class="BeWo.SchulbegleitenderDienst.VertretenderKlientSearchView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:view="clr-namespace:BeWo.View"
|
||||
xmlns:controls="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
xmlns:search="clr-namespace:BeWo.View.Search"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
Title="Vertretung auswählen" Height="650" Width="750" WindowStartupLocation="CenterScreen"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
ResizeMode="CanResizeWithGrip" WindowStyle="None" Background="Transparent">
|
||||
<Window
|
||||
x:Class="BeWo.SchulbegleitenderDienst.VertretenderKlientSearchView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
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:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:search="clr-namespace:BeWo.View.Search"
|
||||
xmlns:view="clr-namespace:BeWo.View"
|
||||
Title="Vertretung auswählen"
|
||||
Width="750"
|
||||
Height="650"
|
||||
Background="Transparent"
|
||||
ResizeMode="CanResizeWithGrip"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
WindowStyle="None">
|
||||
|
||||
<GroupBox Header="{markup:Translate Vertretenden auswählen}" x:Name="rootGroupBox" Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}" MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown" >
|
||||
<GroupBox
|
||||
x:Name="rootGroupBox"
|
||||
Header="{markup:Translate Vertretenden auswählen}"
|
||||
MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown"
|
||||
Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}">
|
||||
<Grid>
|
||||
|
||||
<Grid Background="White" x:Name="rootGroupBoxMitarbeiter" >
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="225"/>
|
||||
<RowDefinition Height="125"/>
|
||||
<RowDefinition Height="*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<!-- ############################### Oberes 1/3 auswahl Kriterien ################################################ -->
|
||||
<Grid Grid.Row="0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="250" />
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="100"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="100"/>
|
||||
<RowDefinition Height="125"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<GroupBox Header="{markup:Translate Mitarbeiter Wunsch Kriterien}" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3" >
|
||||
<!-- Ready machen für teilweise funktion / Combobox zur auswahl der tokens und TextBox zur anzeige der ausgewählten tokens -->
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid x:Name="rootGroupBoxMitarbeiter" Background="White">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="225" />
|
||||
<RowDefinition Height="125" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<!-- ############################### Oberes 1/3 auswahl Kriterien ################################################ -->
|
||||
<Grid Grid.Row="0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="250" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="100" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="100" />
|
||||
<RowDefinition Height="125" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<GroupBox
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,3,3,3"
|
||||
Header="{markup:Translate Mitarbeiter Wunsch Kriterien}"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
<!-- Ready machen für teilweise funktion / Combobox zur auswahl der tokens und TextBox zur anzeige der ausgewählten tokens -->
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
|
||||
|
||||
<!-- <controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="MitarbeiterWunschAuswahl" SelectionChanged="MitarbeiterWunschAuswahl_OnSelectionChanged" Width="200" Height="23" Visibility="Collapsed" /> -->
|
||||
|
||||
<TextBox Grid.Row="1" Grid.Column="0" Margin="3" x:Name="MitarbeiterWunschAnzeige" MinHeight="50" TextWrapping="Wrap" Width="200" IsReadOnly="True" />
|
||||
|
||||
|
||||
</Grid>
|
||||
|
||||
</GroupBox>
|
||||
<!-- <controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="MitarbeiterWunschAuswahl" SelectionChanged="MitarbeiterWunschAuswahl_OnSelectionChanged" Width="200" Height="23" Visibility="Collapsed" /> -->
|
||||
|
||||
<GroupBox Header="{markup:Translate Mitarbeiter Ausschluss Kriterien}" Grid.Row="0" Grid.Column="2" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3">
|
||||
<!-- Ready machen für teilweise funktion <ColumnDefinition Width="Auto"/>
|
||||
<TextBox
|
||||
x:Name="MitarbeiterWunschAnzeige"
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Width="200"
|
||||
MinHeight="50"
|
||||
Margin="3"
|
||||
IsReadOnly="True"
|
||||
TextWrapping="Wrap" />
|
||||
|
||||
|
||||
</Grid>
|
||||
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox
|
||||
Grid.Row="0"
|
||||
Grid.Column="2"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,3,3,3"
|
||||
Header="{markup:Translate Mitarbeiter Ausschluss Kriterien}"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
<!-- Ready machen für teilweise funktion <ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/> <RowDefinition Height="Auto"/>-->
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
|
||||
|
||||
<!-- <controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="MitarbeiterAussschlussAuswahl" SelectionChanged="MitarbeiterAussschlussAuswahl_OnSelectionChanged" Width="200" Height="23" Visibility="Collapsed"/> -->
|
||||
<!-- <controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="MitarbeiterAussschlussAuswahl" SelectionChanged="MitarbeiterAussschlussAuswahl_OnSelectionChanged" Width="200" Height="23" Visibility="Collapsed"/> -->
|
||||
|
||||
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" x:Name="MitarbeiterAussschlussAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
|
||||
<TextBox
|
||||
x:Name="MitarbeiterAussschlussAnzeige"
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Width="200"
|
||||
MinHeight="50"
|
||||
Margin="3"
|
||||
IsReadOnly="True"
|
||||
TextWrapping="Wrap" />
|
||||
|
||||
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
|
||||
<GroupBox Header="{markup:Translate Klient Wunsch Kriterien}" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3" >
|
||||
<GroupBox
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,3,3,3"
|
||||
Header="{markup:Translate Klient Wunsch Kriterien}"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
|
||||
<!-- ############### wird durch Token Combobox mit devexpress vers. 17 ersetzt ################################## -->
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
|
||||
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="KlientWunschAuswahl" SelectionChanged="KlientWunschAuswahl_OnSelectionChanged" Width="200" Height="23" />
|
||||
<!-- ############### wird durch Token Combobox mit devexpress vers. 17 ersetzt ################################## -->
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" x:Name="KlientWunschAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
|
||||
|
||||
</Grid>
|
||||
<controls:NullItemComboBox
|
||||
x:Name="KlientWunschAuswahl"
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Width="200"
|
||||
Height="23"
|
||||
SelectionChanged="KlientWunschAuswahl_OnSelectionChanged" />
|
||||
|
||||
<!-- ############################################################################################################## -->
|
||||
</GroupBox>
|
||||
<TextBox
|
||||
x:Name="KlientWunschAnzeige"
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Width="200"
|
||||
MinHeight="50"
|
||||
Margin="3"
|
||||
IsReadOnly="True"
|
||||
TextWrapping="Wrap" />
|
||||
|
||||
<GroupBox Header="{markup:Translate Klient Ausschluss Kriterien}" Grid.Row="1" Grid.Column="2" Grid.ColumnSpan="2" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3" >
|
||||
</Grid>
|
||||
|
||||
<!-- ############### wird durch Token Combobox mit devexpress vers. 17 ersetzt ################################## -->
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<controls:NullItemComboBox Grid.Row="0" Grid.Column="0" x:Name="KlientAussschlussAuswahl" SelectionChanged="KlientAussschlussAuswahl_OnSelectionChanged" Width="200" Height="23" />
|
||||
<!-- ############################################################################################################## -->
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,3,3,3"
|
||||
Header="{markup:Translate Klient Ausschluss Kriterien}"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
|
||||
<!-- ############### wird durch Token Combobox mit devexpress vers. 17 ersetzt ################################## -->
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<controls:NullItemComboBox
|
||||
x:Name="KlientAussschlussAuswahl"
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Width="200"
|
||||
Height="23"
|
||||
SelectionChanged="KlientAussschlussAuswahl_OnSelectionChanged" />
|
||||
|
||||
<TextBox
|
||||
x:Name="KlientAussschlussAnzeige"
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Width="200"
|
||||
MinHeight="50"
|
||||
Margin="3"
|
||||
IsReadOnly="True"
|
||||
TextWrapping="Wrap" />
|
||||
|
||||
</Grid>
|
||||
<!-- ############################################################################################################## -->
|
||||
</GroupBox>
|
||||
|
||||
|
||||
<GroupBox
|
||||
Grid.Row="0"
|
||||
Grid.Column="4"
|
||||
Margin="3,3,3,3"
|
||||
Header="Geschlecht"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
<WrapPanel Orientation="Horizontal">
|
||||
<CheckBox
|
||||
x:Name="RBMaennlich"
|
||||
Margin="3,3,3,3"
|
||||
Click="RBMaennlich_OnClick"
|
||||
Content="männlich"
|
||||
IsChecked="True" />
|
||||
<CheckBox
|
||||
x:Name="RBWeiblich"
|
||||
Margin="3,3,3,3"
|
||||
Click="RBWeiblich_OnClick"
|
||||
Content="weiblich"
|
||||
IsChecked="True" />
|
||||
</WrapPanel>
|
||||
</GroupBox>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<Grid
|
||||
Grid.Row="1"
|
||||
Margin="3,3,3,3"
|
||||
Column="4">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="60" />
|
||||
<RowDefinition Height="60" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<GroupBox
|
||||
Grid.Row="0"
|
||||
Margin="1"
|
||||
Header="{markup:Translate Klienten PLZ}"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<WrapPanel
|
||||
Grid.Column="0"
|
||||
Margin="1"
|
||||
HorizontalAlignment="Left"
|
||||
Orientation="Horizontal">
|
||||
<Label Content="Plz:" />
|
||||
<Label x:Name="LabelPlzMitarbeiter" Width="50" />
|
||||
</WrapPanel>
|
||||
|
||||
<WrapPanel
|
||||
Grid.Column="1"
|
||||
Margin="1"
|
||||
HorizontalAlignment="Right"
|
||||
Orientation="Horizontal">
|
||||
<Label Content="Ort:" />
|
||||
<Label x:Name="LabelOrtMitarbeiter" Width="100" />
|
||||
</WrapPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox
|
||||
Grid.Row="1"
|
||||
Margin="1"
|
||||
Header="Suche nach"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<WrapPanel
|
||||
Grid.Column="0"
|
||||
Margin="1"
|
||||
HorizontalAlignment="Left"
|
||||
Orientation="Horizontal">
|
||||
<Label Content="Plz:" />
|
||||
<dxe:TextEdit
|
||||
x:Name="PlzMitarbeiter"
|
||||
Width="50"
|
||||
Height="23"
|
||||
VerticalContentAlignment="Center"
|
||||
EditValueChanged="PlzMitarbeiter_OnEditValueChanged"
|
||||
Mask="\d{1,5}"
|
||||
MaskType="RegEx"
|
||||
ShowError="False" />
|
||||
</WrapPanel>
|
||||
|
||||
<WrapPanel
|
||||
Grid.Column="1"
|
||||
Margin="1"
|
||||
HorizontalAlignment="Right"
|
||||
Orientation="Horizontal">
|
||||
<Label Content="Ort:" />
|
||||
<TextBox
|
||||
x:Name="OrtMitarbeiter"
|
||||
Width="100"
|
||||
Height="23"
|
||||
VerticalContentAlignment="Center"
|
||||
TextChanged="OrtMitarbeiter_OnTextChanged" />
|
||||
</WrapPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
<TextBox Grid.Row="1" Margin="3" Grid.Column="0" x:Name="KlientAussschlussAnzeige" Width="200" MinHeight="50" TextWrapping="Wrap" IsReadOnly="True"/>
|
||||
|
||||
</Grid>
|
||||
<!-- ############################################################################################################## -->
|
||||
</GroupBox>
|
||||
</Grid>
|
||||
|
||||
|
||||
<GroupBox Header="Geschlecht" Grid.Row="0" Grid.Column="4" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3">
|
||||
<WrapPanel Orientation="Horizontal">
|
||||
<CheckBox Content="männlich" Margin="3,3,3,3" Click="RBMaennlich_OnClick" x:Name="RBMaennlich" IsChecked="True"/>
|
||||
<CheckBox Content="weiblich" Margin="3,3,3,3" Click="RBWeiblich_OnClick" x:Name="RBWeiblich" IsChecked="True" />
|
||||
</WrapPanel>
|
||||
</GroupBox>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<Grid Column="4" Grid.Row="1" Margin="3,3,3,3">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="60"/>
|
||||
<RowDefinition Height="60"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<GroupBox Grid.Row="0" Margin="1" Style="{StaticResource ObjectEditGroupBox}" Header="{markup:Translate Klienten PLZ}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<WrapPanel Orientation="Horizontal" Margin="1" HorizontalAlignment="Left" Grid.Column="0">
|
||||
<Label Content ="Plz:" />
|
||||
<Label x:Name="LabelPlzMitarbeiter" Width="50" />
|
||||
</WrapPanel>
|
||||
|
||||
<WrapPanel Orientation="Horizontal" Margin="1" HorizontalAlignment="Right" Grid.Column="1">
|
||||
<Label Content="Ort:"/>
|
||||
<Label x:Name="LabelOrtMitarbeiter" Width="100" />
|
||||
</WrapPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox Grid.Row="1" Margin="1" Style="{StaticResource ObjectEditGroupBox}" Header="Suche nach">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Left" Margin="1" Grid.Column="0">
|
||||
<Label Content="Plz:" />
|
||||
<dxe:TextEdit x:Name="PlzMitarbeiter" Height="23" Width="50" VerticalContentAlignment="Center" EditValueChanged="PlzMitarbeiter_OnEditValueChanged" MaskType="RegEx" Mask="\d{1,5}" ShowError="False" />
|
||||
</WrapPanel>
|
||||
|
||||
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Right" Margin="1" Grid.Column="1">
|
||||
<Label Content="Ort:" />
|
||||
<TextBox x:Name="OrtMitarbeiter" Height="23" Width="100" VerticalContentAlignment="Center" TextChanged="OrtMitarbeiter_OnTextChanged" />
|
||||
</WrapPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
<!-- ##################################################################################################################### -->
|
||||
|
||||
|
||||
|
||||
<!--Bereich einfügen um auszuwählen ob ganzen tag oder nur teilweise -->
|
||||
<GroupBox Header="Vertretungs Zeitraum" Grid.Row="1" Grid.Column="0" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3" >
|
||||
<Grid Grid.Row="0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<CheckBox Grid.Column="2" Grid.Row="0" Grid.ColumnSpan="2" Content="ganztägig" Unchecked="KVCheckBox_OnUnchecked" Checked="KVCheckBox_OnChecked"
|
||||
HorizontalAlignment="Left" x:Name="KVCheckBox" />
|
||||
|
||||
|
||||
<Label Grid.Row="1" Grid.Column="0" Content="Vertretung ab" />
|
||||
|
||||
<Label Grid.Row="2" Grid.Column="0" Content="Vertretung bis" />
|
||||
|
||||
<Label Grid.Row="1" Grid.Column="2" Content="Uhrzeit von" x:Name="KVLabelUhrzeitVon" />
|
||||
|
||||
<Label Grid.Row="2" Grid.Column="2" Content="Uhrzeit bis" x:Name="KVLabelUhrzeitBis" />
|
||||
|
||||
|
||||
<dxe:DateEdit x:Name="KVDatepickerVon" MaskType="DateTimeAdvancingCaret" Grid.Column="1" Grid.Row="1" Margin="3" Height="23" Width="125" EditValueChanged="KVDatepickerVon_OnEditValueChanged"/>
|
||||
|
||||
<dxe:DateEdit x:Name="KVDatepickerBis" MaskType="DateTimeAdvancingCaret" Grid.Column="1" Grid.Row="2" Margin="3" Height="23" Width="125" EditValueChanged="KVDatepickerBis_OnEditValueChanged" />
|
||||
|
||||
|
||||
<dxe:TextEdit Grid.Column="3" Grid.Row="1" MaskType="RegEx" Mask="(0?\d|1\d|2[0-3]):[0-5]\d" ShowError="False" MaskShowPlaceHolders="True" x:Name="KVDatepicker_UhrzeitVon"
|
||||
MaskUseAsDisplayFormat="True" InvalidValueBehavior="AllowLeaveEditor"
|
||||
Height="23" Grid.ColumnSpan="2" Visibility="Visible" Width="75"
|
||||
Margin="3,3,3,3"/>
|
||||
|
||||
<dxe:TextEdit Grid.Column="3" Grid.Row="2" MaskType="RegEx" Mask="(0?\d|1\d|2[0-3]):[0-5]\d" ShowError="False" MaskShowPlaceHolders="True" x:Name="KVDatepicker_UhrzeitBis"
|
||||
MaskUseAsDisplayFormat="True" InvalidValueBehavior="AllowLeaveEditor" Width="75"
|
||||
Height="23" Grid.ColumnSpan="2" Visibility="Visible"
|
||||
Margin="3,3,3,3"/>
|
||||
|
||||
</Grid>
|
||||
|
||||
</GroupBox>
|
||||
<!--##################################################################-->
|
||||
|
||||
|
||||
<!-- ##################################### unterer 2/3 Mitarbeiter Controll ####################################### -->
|
||||
|
||||
<!--<search:EmployeeSearchView Grid.Row="2" Grid.Column="0" x:Name="MitarbeiterVertretungsearchview" Margin="3,3,3,3" ItemSelected="MitarbeiterVertretungsearchview_OnItemSelected" />-->
|
||||
|
||||
<!-- Aus der SearchView ein Grid Bauen das mehr Informationen Enthält / zurzeit Name Adresse Arbeitszeit -->
|
||||
|
||||
<dxg:GridControl x:Name="GridDataControlKlientVertretungsearchview" Visibility="Visible" Grid.Row="2" Grid.Column="0" AllowDrop="true" Margin="3,3,3,3" VerticalContentAlignment="Center" >
|
||||
<dxg:GridControl.Columns >
|
||||
|
||||
<dxg:GridColumn FieldName="Name" Width="155" ReadOnly="True" Header="Name"/>
|
||||
<dxg:GridColumn FieldName="Postleitzahl" Width="75" ReadOnly="True" Header="Postleitzahl" />
|
||||
<dxg:GridColumn FieldName="Strasse" Width="100" ReadOnly="True" Header="Strasse" />
|
||||
<dxg:GridColumn FieldName="Stadt" Width="105" ReadOnly="True" Header="Stadt" />
|
||||
<dxg:GridColumn FieldName="Geschlecht" Width="75" ReadOnly="True" Header="Geschlecht" />
|
||||
|
||||
|
||||
</dxg:GridControl.Columns>
|
||||
<dxg:GridControl.View>
|
||||
<dxg:TableView AllowPerPixelScrolling="True" ShowTotalSummary="False" AutoWidth="True" />
|
||||
</dxg:GridControl.View>
|
||||
</dxg:GridControl>
|
||||
<!-- ##################################################################################################################### -->
|
||||
|
||||
|
||||
|
||||
<!-- Bereich einfügen um auszuwählen ob ganzen tag oder nur teilweise -->
|
||||
<GroupBox
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Margin="3,3,3,3"
|
||||
Header="Vertretungs Zeitraum"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
<Grid Grid.Row="0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<CheckBox
|
||||
x:Name="KVCheckBox"
|
||||
Grid.Row="0"
|
||||
Grid.Column="2"
|
||||
Grid.ColumnSpan="2"
|
||||
HorizontalAlignment="Left"
|
||||
Checked="KVCheckBox_OnChecked"
|
||||
Content="ganztägig"
|
||||
Unchecked="KVCheckBox_OnUnchecked" />
|
||||
|
||||
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Content="Vertretung ab" />
|
||||
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Content="Vertretung bis" />
|
||||
|
||||
<Label
|
||||
x:Name="KVLabelUhrzeitVon"
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Content="Uhrzeit von" />
|
||||
|
||||
<Label
|
||||
x:Name="KVLabelUhrzeitBis"
|
||||
Grid.Row="2"
|
||||
Grid.Column="2"
|
||||
Content="Uhrzeit bis" />
|
||||
|
||||
|
||||
<dxe:DateEdit
|
||||
x:Name="KVDatepickerVon"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Width="125"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
EditValueChanged="KVDatepickerVon_OnEditValueChanged"
|
||||
MaskType="DateTimeAdvancingCaret" />
|
||||
|
||||
<dxe:DateEdit
|
||||
x:Name="KVDatepickerBis"
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Width="125"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
EditValueChanged="KVDatepickerBis_OnEditValueChanged"
|
||||
MaskType="DateTimeAdvancingCaret" />
|
||||
|
||||
|
||||
<dxe:TextEdit
|
||||
x:Name="KVDatepicker_UhrzeitVon"
|
||||
Grid.Row="1"
|
||||
Grid.Column="3"
|
||||
Grid.ColumnSpan="2"
|
||||
Width="75"
|
||||
Height="23"
|
||||
Margin="3,3,3,3"
|
||||
InvalidValueBehavior="AllowLeaveEditor"
|
||||
Mask="(0?\d|1\d|2[0-3]):[0-5]\d"
|
||||
MaskShowPlaceHolders="True"
|
||||
MaskType="RegEx"
|
||||
MaskUseAsDisplayFormat="True"
|
||||
ShowError="False"
|
||||
Visibility="Visible" />
|
||||
|
||||
<dxe:TextEdit
|
||||
x:Name="KVDatepicker_UhrzeitBis"
|
||||
Grid.Row="2"
|
||||
Grid.Column="3"
|
||||
Grid.ColumnSpan="2"
|
||||
Width="75"
|
||||
Height="23"
|
||||
Margin="3,3,3,3"
|
||||
InvalidValueBehavior="AllowLeaveEditor"
|
||||
Mask="(0?\d|1\d|2[0-3]):[0-5]\d"
|
||||
MaskShowPlaceHolders="True"
|
||||
MaskType="RegEx"
|
||||
MaskUseAsDisplayFormat="True"
|
||||
ShowError="False"
|
||||
Visibility="Visible" />
|
||||
|
||||
</Grid>
|
||||
|
||||
</GroupBox>
|
||||
<!-- ################################################################## -->
|
||||
|
||||
|
||||
<!-- ##################################### unterer 2/3 Mitarbeiter Controll ####################################### -->
|
||||
|
||||
<!--<search:EmployeeSearchView Grid.Row="2" Grid.Column="0" x:Name="MitarbeiterVertretungsearchview" Margin="3,3,3,3" ItemSelected="MitarbeiterVertretungsearchview_OnItemSelected" />-->
|
||||
|
||||
<!-- Aus der SearchView ein Grid Bauen das mehr Informationen Enthält / zurzeit Name Adresse Arbeitszeit -->
|
||||
|
||||
<dxg:GridControl
|
||||
x:Name="GridDataControlKlientVertretungsearchview"
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Margin="3,3,3,3"
|
||||
VerticalContentAlignment="Center"
|
||||
AllowDrop="true"
|
||||
Visibility="Visible">
|
||||
<dxg:GridControl.Columns>
|
||||
|
||||
<dxg:GridColumn
|
||||
Width="155"
|
||||
FieldName="Name"
|
||||
Header="Name"
|
||||
ReadOnly="True" />
|
||||
<dxg:GridColumn
|
||||
Width="75"
|
||||
FieldName="Postleitzahl"
|
||||
Header="Postleitzahl"
|
||||
ReadOnly="True" />
|
||||
<dxg:GridColumn
|
||||
Width="100"
|
||||
FieldName="Strasse"
|
||||
Header="Strasse"
|
||||
ReadOnly="True" />
|
||||
<dxg:GridColumn
|
||||
Width="105"
|
||||
FieldName="Stadt"
|
||||
Header="Stadt"
|
||||
ReadOnly="True" />
|
||||
<dxg:GridColumn
|
||||
Width="75"
|
||||
FieldName="Geschlecht"
|
||||
Header="Geschlecht"
|
||||
ReadOnly="True" />
|
||||
|
||||
|
||||
</dxg:GridControl.Columns>
|
||||
<dxg:GridControl.View>
|
||||
<dxg:TableView
|
||||
AllowPerPixelScrolling="True"
|
||||
AutoWidth="True"
|
||||
ShowTotalSummary="False" />
|
||||
</dxg:GridControl.View>
|
||||
</dxg:GridControl>
|
||||
|
||||
|
||||
|
||||
<!-- ################################################################################################## Margin="3,3,3,3" -->
|
||||
|
||||
<StackPanel Grid.Row="3" Grid.Column="0">
|
||||
|
||||
|
||||
<WrapPanel
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Bottom"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
Width="90"
|
||||
Margin="3,3,3,3"
|
||||
Click="ButtonBase_OnClick"
|
||||
Content="Übernehmen" />
|
||||
<Button
|
||||
Width="90"
|
||||
Margin="3,3,3,3"
|
||||
Click="ButtonClose_OnClick"
|
||||
Content="Schließen" />
|
||||
</WrapPanel>
|
||||
</StackPanel>
|
||||
|
||||
<!-- ####################### Closed="popup_Closed" Opened="popup_Opened"###StaysOpen="False"Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" #################################################################################### -->
|
||||
|
||||
</Grid>
|
||||
|
||||
|
||||
|
||||
<!-- ################################################################################################## Margin="3,3,3,3"-->
|
||||
|
||||
<StackPanel Grid.Row="3" Grid.Column="0" >
|
||||
|
||||
|
||||
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Right" VerticalAlignment="Bottom" >
|
||||
<Button Content="Übernehmen" Width="90" Click="ButtonBase_OnClick" Margin="3,3,3,3" />
|
||||
<Button Content="Schließen" Width="90" Click="ButtonClose_OnClick" Margin="3,3,3,3"/>
|
||||
</WrapPanel>
|
||||
</StackPanel>
|
||||
|
||||
<!-- ####################### Closed="popup_Closed" Opened="popup_Opened"###StaysOpen="False"Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" #################################################################################### -->
|
||||
|
||||
</Grid>
|
||||
|
||||
|
||||
|
||||
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</GroupBox>
|
||||
</Window>
|
||||
|
||||
|
||||
|
||||
@@ -1,163 +1,420 @@
|
||||
<Window x:Class="BeWo.SchulbegleitenderDienst.VertretungsSearchView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
xmlns:dxmvvm="http://schemas.devexpress.com/winfx/2008/xaml/mvvm"
|
||||
xmlns:dxgt="http://schemas.devexpress.com/winfx/2008/xaml/grid/themekeys"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
Title="Vertretung auswählen" SizeToContent="WidthAndHeight" AllowsTransparency="True" WindowStartupLocation="CenterScreen"
|
||||
ResizeMode="CanResizeWithGrip" WindowStyle="None" Background="Transparent" d:DataContext="{d:DesignData VertretungsSearchView}">
|
||||
<Window.Resources>
|
||||
<Window
|
||||
x:Class="BeWo.SchulbegleitenderDienst.VertretungsSearchView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
xmlns:dxgt="http://schemas.devexpress.com/winfx/2008/xaml/grid/themekeys"
|
||||
xmlns:dxmvvm="http://schemas.devexpress.com/winfx/2008/xaml/mvvm"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
Title="Vertretung auswählen"
|
||||
d:DataContext="{d:DesignData VertretungsSearchView}"
|
||||
AllowsTransparency="True"
|
||||
Background="Transparent"
|
||||
ResizeMode="CanResizeWithGrip"
|
||||
SizeToContent="WidthAndHeight"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
WindowStyle="None"
|
||||
mc:Ignorable="d">
|
||||
<Window.Resources>
|
||||
<dxmvvm:NumericToVisibilityConverter x:Key="NumericToVisibilityConverter" Inverse="True" />
|
||||
<ControlTemplate x:Key="{dxgt:TableViewThemeKey ResourceKey=DataPresenterTemplate, ThemeName=Office2010Black}" TargetType="{x:Type dxg:DataPresenter}">
|
||||
<Border Background="White">
|
||||
<Grid>
|
||||
<ContentPresenter/>
|
||||
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Text="Es wurden keine Datensätze gefunden" Opacity="1"
|
||||
Visibility="{Binding VisibleRowCount, Converter={StaticResource NumericToVisibilityConverter}, RelativeSource={RelativeSource AncestorType=dxg:GridControl}}" />
|
||||
<ContentPresenter />
|
||||
<TextBlock
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Opacity="1"
|
||||
Text="Es wurden keine Datensätze gefunden"
|
||||
Visibility="{Binding VisibleRowCount, Converter={StaticResource NumericToVisibilityConverter}, RelativeSource={RelativeSource AncestorType=dxg:GridControl}}" />
|
||||
</Grid>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Window.Resources>
|
||||
<GroupBox Header="Vertretung auswählen" x:Name="rootGroupBox" Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}" MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown" >
|
||||
<Grid>
|
||||
<Grid Background="White" x:Name="GridMain">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Row="0" Margin="3,3,3,0" HorizontalAlignment="Stretch">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Label Grid.Row="0" Grid.Column="0" Content="{markup:Translate Klient/in:}" Margin="3,2,3,0" FontWeight="Bold"/>
|
||||
<Label x:Name="lblCustomerName" Grid.Row="1" Grid.Column="0" Grid.RowSpan="2" Margin="3,0,3,2" Content="Max Mustermann"/>
|
||||
|
||||
|
||||
<Label Grid.Row="0" Grid.Column="1" Content="Schule:" Margin="15,2,2,0" FontWeight="Bold"/>
|
||||
<Label x:Name="lblSchoolName" Grid.Row="1" Grid.Column="1" Grid.RowSpan="2" Margin="15,0,3,2" Content="Max Mustermann"/>
|
||||
|
||||
<Label Grid.Row="0" Grid.Column="2" Content="Betreuungszeiten:" Margin="15,2,2,0" FontWeight="Bold"/>
|
||||
<Label x:Name="lblBetreuungszeiten" Grid.Row="1" Grid.Column="2" Grid.RowSpan="2" Margin="15,0,3,2" Content="Max Mustermann"/>
|
||||
<GroupBox
|
||||
x:Name="rootGroupBox"
|
||||
Header="Vertretung auswählen"
|
||||
MouseLeftButtonDown="RootGroupBox_OnMouseLeftButtonDown"
|
||||
Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}">
|
||||
<Grid>
|
||||
<Grid x:Name="GridMain" Background="White">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid
|
||||
Grid.Row="0"
|
||||
Margin="3,3,3,0"
|
||||
HorizontalAlignment="Stretch">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Margin="3,2,3,0"
|
||||
Content="{markup:Translate Klient/in:}"
|
||||
FontWeight="Bold" />
|
||||
<Label
|
||||
x:Name="lblCustomerName"
|
||||
Grid.Row="1"
|
||||
Grid.RowSpan="2"
|
||||
Grid.Column="0"
|
||||
Margin="3,0,3,2"
|
||||
Content="Max Mustermann" />
|
||||
|
||||
|
||||
<Label Grid.Row="0" Grid.Column="3" Content="{markup:Translate Klient Wunschkriterien}" Margin="15,2,3,0" FontWeight="Bold"/>
|
||||
<dxg:LookUpEdit Grid.Row="1" Grid.Column="3" Grid.RowSpan="2" Margin="15,0,3,2" x:Name="TokenBoxWunschAnzeige" ValidateOnTextInput="True" ValidateOnEnterKeyPressed="True" TextWrapping="Wrap" IsReadOnly="True"
|
||||
MinHeight="50" Width="150" PopupHeight="500" PopupWidth="750" PopupMinHeight="100" PopupMinWidth="100" IsPopupAutoWidth="False" >
|
||||
<dxg:LookUpEdit.StyleSettings>
|
||||
<dxg:TokenLookUpEditStyleSettings EnableTokenWrapping="True"/>
|
||||
</dxg:LookUpEdit.StyleSettings>
|
||||
</dxg:LookUpEdit>
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Margin="15,2,2,0"
|
||||
Content="Schule:"
|
||||
FontWeight="Bold" />
|
||||
<Label
|
||||
x:Name="lblSchoolName"
|
||||
Grid.Row="1"
|
||||
Grid.RowSpan="2"
|
||||
Grid.Column="1"
|
||||
Margin="15,0,3,2"
|
||||
Content="Max Mustermann" />
|
||||
|
||||
<Label Grid.Row="0" Grid.Column="4" Content="{markup:Translate Klient Ausschlusskriterien}" Margin="15,2,2,0" FontWeight="Bold"/>
|
||||
<dxg:LookUpEdit Grid.Row="1" Grid.Column="4" Grid.RowSpan="2" Margin="15,0,2,3" x:Name="TokenBoxAusschlussAnzeige" ValidateOnTextInput="True" ValidateOnEnterKeyPressed="True" TextWrapping="Wrap" IsReadOnly="True"
|
||||
MinHeight="50" Width="150" PopupHeight="500" PopupWidth="750" PopupMinHeight="100" PopupMinWidth="100" IsPopupAutoWidth="False" >
|
||||
<dxg:LookUpEdit.StyleSettings>
|
||||
<dxg:TokenLookUpEditStyleSettings EnableTokenWrapping="True"/>
|
||||
</dxg:LookUpEdit.StyleSettings>
|
||||
</dxg:LookUpEdit>
|
||||
</Grid>
|
||||
<GroupBox Header="" Grid.Row="1" Margin="3,0,3,3" Style="{DynamicResource ObjectEditGroupBox}">
|
||||
<Grid >
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Label Grid.Row="0" Grid.Column="0" Content="Vertretung ab" Margin="3"/>
|
||||
<Label Grid.Row="1" Grid.Column="0" Content="Vertretung bis" Margin="3" />
|
||||
<dxe:DateEdit x:Name="KVDatepickerVon" EditValue="{Binding Path=SubstitutionStart, UpdateSourceTrigger=PropertyChanged}" MaskType="DateTimeAdvancingCaret" AllowNullInput="False" Grid.Column="1" Grid.Row="0" Margin="3" Height="23" Width="125" />
|
||||
<dxe:DateEdit x:Name="KVDatepickerBis" EditValue="{Binding Path=SubstitutionEnd, UpdateSourceTrigger=PropertyChanged}" MaskType="DateTimeAdvancingCaret" AllowNullInput="False" Grid.Column="1" Grid.Row="1" Margin="3" Height="23" Width="125" />
|
||||
<Label Grid.Column="2" Grid.Row="0" Content="Uhrzeit" Margin="3" />
|
||||
<dxe:TextEdit Grid.Column="3" Grid.Row="0" MaskType="RegEx" Mask="(0?\d|1\d|2[0-3]):[0-5]\d" ShowError="False" MaskShowPlaceHolders="True"
|
||||
MaskUseAsDisplayFormat="True" x:Name="startTime" Height="23" Width="60" Margin="3"/>
|
||||
<Label Grid.Column="2" Grid.Row="1" Content="Uhrzeit" Margin="3" />
|
||||
<dxe:TextEdit Grid.Column="3" Grid.Row="1" MaskType="RegEx" Mask="(0?\d|1\d|2[0-3]):[0-5]\d" ShowError="False" MaskShowPlaceHolders="True"
|
||||
MaskUseAsDisplayFormat="True" x:Name="endTime" Height="23" Width="60" Margin="3"/>
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="2"
|
||||
Margin="15,2,2,0"
|
||||
Content="Betreuungszeiten:"
|
||||
FontWeight="Bold" />
|
||||
<Label
|
||||
x:Name="lblBetreuungszeiten"
|
||||
Grid.Row="1"
|
||||
Grid.RowSpan="2"
|
||||
Grid.Column="2"
|
||||
Margin="15,0,3,2"
|
||||
Content="Max Mustermann" />
|
||||
|
||||
<Label x:Name="lblZuletztVertreten" Grid.Row="0" Grid.Column="5" Margin="3" Content="Letzte Vertretung" />
|
||||
<ListBox Grid.Row="0" Grid.Column="6" Width="200" Height="54" Grid.RowSpan="2" Margin="3" x:Name="ListBoxLetzteVertreter" LostFocus="LetzteVertreter_OnLostFocus" SelectionChanged="LetzteVertreter_OnSelectionChanged" />
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
<GroupBox Header="" Grid.Row="2" Grid.Column="0" Style="{StaticResource ObjectEditGroupBox}" Margin="3,3,3,3" >
|
||||
<Grid >
|
||||
<Grid.ColumnDefinitions>
|
||||
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="3"
|
||||
Margin="15,2,3,0"
|
||||
Content="{markup:Translate Klient Wunschkriterien}"
|
||||
FontWeight="Bold" />
|
||||
<dxg:LookUpEdit
|
||||
x:Name="TokenBoxWunschAnzeige"
|
||||
Grid.Row="1"
|
||||
Grid.RowSpan="2"
|
||||
Grid.Column="3"
|
||||
Width="150"
|
||||
MinHeight="50"
|
||||
Margin="15,0,3,2"
|
||||
IsPopupAutoWidth="False"
|
||||
IsReadOnly="True"
|
||||
PopupHeight="500"
|
||||
PopupMinHeight="100"
|
||||
PopupMinWidth="100"
|
||||
PopupWidth="750"
|
||||
TextWrapping="Wrap"
|
||||
ValidateOnEnterKeyPressed="True"
|
||||
ValidateOnTextInput="True">
|
||||
<dxg:LookUpEdit.StyleSettings>
|
||||
<dxg:TokenLookUpEditStyleSettings EnableTokenWrapping="True" />
|
||||
</dxg:LookUpEdit.StyleSettings>
|
||||
</dxg:LookUpEdit>
|
||||
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="4"
|
||||
Margin="15,2,2,0"
|
||||
Content="{markup:Translate Klient Ausschlusskriterien}"
|
||||
FontWeight="Bold" />
|
||||
<dxg:LookUpEdit
|
||||
x:Name="TokenBoxAusschlussAnzeige"
|
||||
Grid.Row="1"
|
||||
Grid.RowSpan="2"
|
||||
Grid.Column="4"
|
||||
Width="150"
|
||||
MinHeight="50"
|
||||
Margin="15,0,2,3"
|
||||
IsPopupAutoWidth="False"
|
||||
IsReadOnly="True"
|
||||
PopupHeight="500"
|
||||
PopupMinHeight="100"
|
||||
PopupMinWidth="100"
|
||||
PopupWidth="750"
|
||||
TextWrapping="Wrap"
|
||||
ValidateOnEnterKeyPressed="True"
|
||||
ValidateOnTextInput="True">
|
||||
<dxg:LookUpEdit.StyleSettings>
|
||||
<dxg:TokenLookUpEditStyleSettings EnableTokenWrapping="True" />
|
||||
</dxg:LookUpEdit.StyleSettings>
|
||||
</dxg:LookUpEdit>
|
||||
</Grid>
|
||||
<GroupBox
|
||||
Grid.Row="1"
|
||||
Margin="3,0,3,3"
|
||||
Header=""
|
||||
Style="{DynamicResource ObjectEditGroupBox}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<WrapPanel Orientation="Horizontal" Margin="0,3,0,3">
|
||||
<CheckBox Content="{markup:Translate männlich}" Margin="3,0,3,0" Click="RBMaennlich_OnClick" x:Name="RBMaennlich" IsChecked="True" VerticalAlignment="Center"/>
|
||||
<CheckBox Content="{markup:Translate weiblich}" Margin="3,0,3,0" Click="RBWeiblich_OnClick" x:Name="RBWeiblich" IsChecked="True" VerticalAlignment="Center"/>
|
||||
|
||||
<Label Content="PLZ:" Margin="10,0,3,0"/>
|
||||
<dxe:TextEdit x:Name="PlzKlient" Margin="3,0,3,0" Height="23" Width="70" VerticalContentAlignment="Center" EditValueChanged="PlzKlient_OnTextChanged" MaskType="RegEx" Mask="\d{1,5}" ShowError="False" />
|
||||
|
||||
|
||||
<Label Content="Ort:" Margin="3,0,3,0"/>
|
||||
<TextBox x:Name="OrtKlient" Margin="3,0,3,0" Height="23" Width="200" VerticalContentAlignment="Center" TextChanged="OrtKlient_OnTextChanged" />
|
||||
|
||||
<CheckBox Content="{markup:Translate Verwende Abstandsmessung}" Margin="3,0,3,0" x:Name="chkEntfernungssuche" IsChecked="False" VerticalAlignment="Center" ToolTip="{markup:Translate Das Aktivieren der Option verwendet die Google Suche um den Abstand zwischen Adressen zu messen. Dieser Vorgang kann etwas mehr Zeit benötigen.}"/>
|
||||
</WrapPanel>
|
||||
<Button Grid.Row="1" Content="Suche starten" Width="90" Click="ButtonSuche_OnClick" Margin="3,3,3,3" HorizontalAlignment="Right" />
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Content="Vertretung ab" />
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Content="Vertretung bis" />
|
||||
<dxe:DateEdit
|
||||
x:Name="KVDatepickerVon"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Width="125"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
AllowNullInput="False"
|
||||
EditValue="{Binding Path=SubstitutionStart, UpdateSourceTrigger=PropertyChanged}"
|
||||
MaskType="DateTimeAdvancingCaret" />
|
||||
<dxe:DateEdit
|
||||
x:Name="KVDatepickerBis"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Width="125"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
AllowNullInput="False"
|
||||
EditValue="{Binding Path=SubstitutionEnd, UpdateSourceTrigger=PropertyChanged}"
|
||||
MaskType="DateTimeAdvancingCaret" />
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="2"
|
||||
Margin="3"
|
||||
Content="Uhrzeit" />
|
||||
<dxe:TextEdit
|
||||
x:Name="startTime"
|
||||
Grid.Row="0"
|
||||
Grid.Column="3"
|
||||
Width="60"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Mask="(0?\d|1\d|2[0-3]):[0-5]\d"
|
||||
MaskShowPlaceHolders="True"
|
||||
MaskType="RegEx"
|
||||
MaskUseAsDisplayFormat="True"
|
||||
ShowError="False" />
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Margin="3"
|
||||
Content="Uhrzeit" />
|
||||
<dxe:TextEdit
|
||||
x:Name="endTime"
|
||||
Grid.Row="1"
|
||||
Grid.Column="3"
|
||||
Width="60"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Mask="(0?\d|1\d|2[0-3]):[0-5]\d"
|
||||
MaskShowPlaceHolders="True"
|
||||
MaskType="RegEx"
|
||||
MaskUseAsDisplayFormat="True"
|
||||
ShowError="False" />
|
||||
|
||||
<Label
|
||||
x:Name="lblZuletztVertreten"
|
||||
Grid.Row="0"
|
||||
Grid.Column="5"
|
||||
Margin="3"
|
||||
Content="Letzte Vertretung" />
|
||||
<ListBox
|
||||
x:Name="ListBoxLetzteVertreter"
|
||||
Grid.Row="0"
|
||||
Grid.RowSpan="2"
|
||||
Grid.Column="6"
|
||||
Width="200"
|
||||
Height="54"
|
||||
Margin="3"
|
||||
LostFocus="LetzteVertreter_OnLostFocus"
|
||||
SelectionChanged="LetzteVertreter_OnSelectionChanged" />
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
<dxg:GridControl x:Name="GridControlPossibleVertreter" Grid.Row="3" Grid.Column="0" Margin="3,3,3,3" Visibility="Visible" Height="200">
|
||||
<dxg:GridControl.Columns>
|
||||
<dxg:GridColumn FieldName="Nachname" ReadOnly="True" Header="Nachname" SortOrder="Ascending" />
|
||||
<dxg:GridColumn FieldName="Vorname" ReadOnly="True" Header="Vorname"/>
|
||||
<dxg:GridColumn FieldName="Arbeitszeit" ReadOnly="True" Header="Betreuungszeiten"/>
|
||||
<dxg:GridColumn FieldName="Postleitzahl" ReadOnly="True" Header="Postleitzahl" />
|
||||
<dxg:GridColumn FieldName="Strasse" ReadOnly="True" Header="Strasse" />
|
||||
<dxg:GridColumn FieldName="Stadt" ReadOnly="True" Header="Stadt" />
|
||||
<dxg:GridColumn FieldName="Geschlecht" ReadOnly="True" Header="Geschlecht" />
|
||||
</dxg:GridControl.Columns>
|
||||
<dxg:GridControl.View>
|
||||
<dxg:TableView AllowPerPixelScrolling="True" BestFitMode="AllRows" AllowBestFit="True" ShowTotalSummary="False" ShowGroupPanel="False" RowDoubleClick="TableView_OnRowDoubleClick" ShowGridMenu="TableView_OnShowGridMenu"/>
|
||||
</dxg:GridControl.View>
|
||||
</dxg:GridControl>
|
||||
<StackPanel Grid.Row="4" Grid.Column="0" Margin="3" >
|
||||
<WrapPanel Orientation="Horizontal" HorizontalAlignment="Right" VerticalAlignment="Bottom" >
|
||||
<Button Content="Übernehmen" Width="90" Click="ButtonBase_OnClick" Margin="3,3,3,3" />
|
||||
<Button Content="Schließen" Width="90" Click="ButtonClose_OnClick" Margin="3,3,3,3"/>
|
||||
</WrapPanel>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</GroupBox>
|
||||
<GroupBox
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Margin="3,3,3,3"
|
||||
Header=""
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<WrapPanel Margin="0,3,0,3" Orientation="Horizontal">
|
||||
<CheckBox
|
||||
x:Name="RBMaennlich"
|
||||
Margin="3,0,3,0"
|
||||
VerticalAlignment="Center"
|
||||
Click="RBMaennlich_OnClick"
|
||||
Content="{markup:Translate männlich}"
|
||||
IsChecked="True" />
|
||||
<CheckBox
|
||||
x:Name="RBWeiblich"
|
||||
Margin="3,0,3,0"
|
||||
VerticalAlignment="Center"
|
||||
Click="RBWeiblich_OnClick"
|
||||
Content="{markup:Translate weiblich}"
|
||||
IsChecked="True" />
|
||||
|
||||
<Label Margin="10,0,3,0" Content="PLZ:" />
|
||||
<dxe:TextEdit
|
||||
x:Name="PlzKlient"
|
||||
Width="70"
|
||||
Height="23"
|
||||
Margin="3,0,3,0"
|
||||
VerticalContentAlignment="Center"
|
||||
EditValueChanged="PlzKlient_OnTextChanged"
|
||||
Mask="\d{1,5}"
|
||||
MaskType="RegEx"
|
||||
ShowError="False" />
|
||||
|
||||
|
||||
<Label Margin="3,0,3,0" Content="Ort:" />
|
||||
<TextBox
|
||||
x:Name="OrtKlient"
|
||||
Width="200"
|
||||
Height="23"
|
||||
Margin="3,0,3,0"
|
||||
VerticalContentAlignment="Center"
|
||||
TextChanged="OrtKlient_OnTextChanged" />
|
||||
|
||||
<CheckBox
|
||||
x:Name="chkEntfernungssuche"
|
||||
Margin="3,0,3,0"
|
||||
VerticalAlignment="Center"
|
||||
Content="{markup:Translate Verwende Abstandsmessung}"
|
||||
IsChecked="False"
|
||||
ToolTip="{markup:Translate Das Aktivieren der Option verwendet die Google Suche um den Abstand zwischen Adressen zu messen. Dieser Vorgang kann etwas mehr Zeit benötigen.}" />
|
||||
</WrapPanel>
|
||||
<Button
|
||||
Grid.Row="1"
|
||||
Width="90"
|
||||
Margin="3,3,3,3"
|
||||
HorizontalAlignment="Right"
|
||||
Click="ButtonSuche_OnClick"
|
||||
Content="Suche starten" />
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
<dxg:GridControl
|
||||
x:Name="GridControlPossibleVertreter"
|
||||
Grid.Row="3"
|
||||
Grid.Column="0"
|
||||
Height="200"
|
||||
Margin="3,3,3,3"
|
||||
Visibility="Visible">
|
||||
<dxg:GridControl.Columns>
|
||||
<dxg:GridColumn
|
||||
FieldName="Nachname"
|
||||
Header="Nachname"
|
||||
ReadOnly="True"
|
||||
SortOrder="Ascending" />
|
||||
<dxg:GridColumn
|
||||
FieldName="Vorname"
|
||||
Header="Vorname"
|
||||
ReadOnly="True" />
|
||||
<dxg:GridColumn
|
||||
FieldName="Arbeitszeit"
|
||||
Header="Betreuungszeiten"
|
||||
ReadOnly="True" />
|
||||
<dxg:GridColumn
|
||||
FieldName="Postleitzahl"
|
||||
Header="Postleitzahl"
|
||||
ReadOnly="True" />
|
||||
<dxg:GridColumn
|
||||
FieldName="Strasse"
|
||||
Header="Strasse"
|
||||
ReadOnly="True" />
|
||||
<dxg:GridColumn
|
||||
FieldName="Stadt"
|
||||
Header="Stadt"
|
||||
ReadOnly="True" />
|
||||
<dxg:GridColumn
|
||||
FieldName="Geschlecht"
|
||||
Header="Geschlecht"
|
||||
ReadOnly="True" />
|
||||
</dxg:GridControl.Columns>
|
||||
<dxg:GridControl.View>
|
||||
<dxg:TableView
|
||||
AllowBestFit="True"
|
||||
AllowPerPixelScrolling="True"
|
||||
BestFitMode="AllRows"
|
||||
RowDoubleClick="TableView_OnRowDoubleClick"
|
||||
ShowGridMenu="TableView_OnShowGridMenu"
|
||||
ShowGroupPanel="False"
|
||||
ShowTotalSummary="False" />
|
||||
</dxg:GridControl.View>
|
||||
</dxg:GridControl>
|
||||
<StackPanel
|
||||
Grid.Row="4"
|
||||
Grid.Column="0"
|
||||
Margin="3">
|
||||
<WrapPanel
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Bottom"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
Width="90"
|
||||
Margin="3,3,3,3"
|
||||
Click="ButtonBase_OnClick"
|
||||
Content="Übernehmen" />
|
||||
<Button
|
||||
Width="90"
|
||||
Margin="3,3,3,3"
|
||||
Click="ButtonClose_OnClick"
|
||||
Content="Schließen" />
|
||||
</WrapPanel>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</Window>
|
||||
|
||||
33
BeWo/Scripts/ServiceReferences_AiEnhancedService.bat
Normal file
33
BeWo/Scripts/ServiceReferences_AiEnhancedService.bat
Normal file
@@ -0,0 +1,33 @@
|
||||
..\svcutil.exe /noConfig /noLogo /edb /n:*,BeWo.ServiceProxy /out:..\ServiceProxy\GeneratedAiEnhancedService.cs /ct:System.Collections.Generic.List`1 /r:..\..\Shared\bin\Debug\BS.Shared.dll http://localhost:3777/Host/AiEnhancedService.svc?wsdl
|
||||
|
||||
@echo off
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
set "input=..\ServiceProxy\GeneratedAiEnhancedService.cs"
|
||||
set "output=temp.txt"
|
||||
set /a start=12
|
||||
set /a end=162
|
||||
set /a line=0
|
||||
|
||||
REM Zeilen zählen
|
||||
set /a total=0
|
||||
for /f "usebackq delims=" %%A in ("%input%") do (
|
||||
set /a total+=1
|
||||
)
|
||||
|
||||
REM Nur löschen, wenn genug Zeilen vorhanden
|
||||
if %total% leq %end% (
|
||||
echo Datei hat nur %total% Zeilen – nichts wird gelöscht.
|
||||
copy /y "%input%" "%input2%"
|
||||
goto :eof
|
||||
)
|
||||
|
||||
> "%output%" (
|
||||
for /f "usebackq delims=" %%A in ("%input%") do (
|
||||
set /a line+=1
|
||||
if !line! lss %start% echo(%%A
|
||||
if !line! gtr %end% echo(%%A
|
||||
)
|
||||
)
|
||||
|
||||
move /y "%output%" "%input%"
|
||||
23
BeWo/Scripts/ServiceReferences_AiEnhancedService_Log.bat
Normal file
23
BeWo/Scripts/ServiceReferences_AiEnhancedService_Log.bat
Normal file
@@ -0,0 +1,23 @@
|
||||
@echo off
|
||||
REM Diese Batch-Datei führt eine andere Batch-Datei aus und schreibt das Ergebnis in eine Log-Datei
|
||||
|
||||
REM Pfad zur anderen Batch-Datei
|
||||
set "SCRIPT_PATH=ServiceReferences_AiEnhancedService.bat"
|
||||
|
||||
REM Pfad zur Log-Datei
|
||||
set "LOG_FILE=ServiceReferences_AiEnhancedService_Log.log.txt"
|
||||
|
||||
REM Leere die Log-Datei vor dem Start
|
||||
echo. > %LOG_FILE%
|
||||
|
||||
REM Führe die andere Batch-Datei aus und leite die Ausgabe in die Log-Datei um
|
||||
call %SCRIPT_PATH% >> %LOG_FILE% 2>&1
|
||||
|
||||
REM Überprüfe, ob die Ausführung erfolgreich war
|
||||
if %errorlevel% equ 0 (
|
||||
echo Die Ausführung von %SCRIPT_PATH% war erfolgreich. >> %LOG_FILE%
|
||||
) else (
|
||||
echo Die Ausführung von %SCRIPT_PATH% ist fehlgeschlagen. >> %LOG_FILE%
|
||||
)
|
||||
|
||||
echo Log wurde in %LOG_FILE% geschrieben.
|
||||
33
BeWo/Scripts/ServiceReferences_OperationsEnhancedService.bat
Normal file
33
BeWo/Scripts/ServiceReferences_OperationsEnhancedService.bat
Normal file
@@ -0,0 +1,33 @@
|
||||
..\svcutil.exe /noConfig /noLogo /edb /n:*,BeWo.ServiceProxy /out:..\ServiceProxy\GeneratedOperationsEnhancedService.cs /ct:System.Collections.Generic.List`1 /r:..\..\Shared\bin\Debug\BS.Shared.dll http://localhost:3777/Host/OperationsEnhancedService.svc?wsdl
|
||||
|
||||
@echo off
|
||||
setlocal EnableDelayedExpansion
|
||||
|
||||
set "input=..\ServiceProxy\GeneratedOperationsEnhancedService.cs"
|
||||
set "output=temp.txt"
|
||||
set /a start=12
|
||||
set /a end=162
|
||||
set /a line=0
|
||||
|
||||
REM Zeilen zählen
|
||||
set /a total=0
|
||||
for /f "usebackq delims=" %%A in ("%input%") do (
|
||||
set /a total+=1
|
||||
)
|
||||
|
||||
REM Nur löschen, wenn genug Zeilen vorhanden
|
||||
if %total% leq %end% (
|
||||
echo Datei hat nur %total% Zeilen – nichts wird gelöscht.
|
||||
copy /y "%input%" "%input2%"
|
||||
goto :eof
|
||||
)
|
||||
|
||||
> "%output%" (
|
||||
for /f "usebackq delims=" %%A in ("%input%") do (
|
||||
set /a line+=1
|
||||
if !line! lss %start% echo(%%A
|
||||
if !line! gtr %end% echo(%%A
|
||||
)
|
||||
)
|
||||
|
||||
move /y "%output%" "%input%"
|
||||
@@ -0,0 +1,23 @@
|
||||
@echo off
|
||||
REM Diese Batch-Datei führt eine andere Batch-Datei aus und schreibt das Ergebnis in eine Log-Datei
|
||||
|
||||
REM Pfad zur anderen Batch-Datei
|
||||
set "SCRIPT_PATH=ServiceReferences_OperationsEnhancedService.bat"
|
||||
|
||||
REM Pfad zur Log-Datei
|
||||
set "LOG_FILE=ServiceReferences_OperationsEnhancedService_Log.log.txt"
|
||||
|
||||
REM Leere die Log-Datei vor dem Start
|
||||
echo. > %LOG_FILE%
|
||||
|
||||
REM Führe die andere Batch-Datei aus und leite die Ausgabe in die Log-Datei um
|
||||
call %SCRIPT_PATH% >> %LOG_FILE% 2>&1
|
||||
|
||||
REM Überprüfe, ob die Ausführung erfolgreich war
|
||||
if %errorlevel% equ 0 (
|
||||
echo Die Ausführung von %SCRIPT_PATH% war erfolgreich. >> %LOG_FILE%
|
||||
) else (
|
||||
echo Die Ausführung von %SCRIPT_PATH% ist fehlgeschlagen. >> %LOG_FILE%
|
||||
)
|
||||
|
||||
echo Log wurde in %LOG_FILE% geschrieben.
|
||||
6
BeWo/Scripts/sharedTypes.xml
Normal file
6
BeWo/Scripts/sharedTypes.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<types>
|
||||
<sharedType>
|
||||
<name>BeWoFault</name>
|
||||
<namespace>BeWo.ServiceProxy</namespace>
|
||||
</sharedType>
|
||||
</types>
|
||||
@@ -1916,7 +1916,18 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Reports.AuslastungAnalysisEmployeeDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.Reports.AuslastungAnalysisSupportConceptDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Reports.AuslastungAnalysisSupportConceptDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Invoicing.BankAccountDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SignatureType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.StatementType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SignatureStateType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Zahlungstyp))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ServiceRecordValidationResult))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.MessageType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.HomeViewPanelType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Auszahlungsintervall))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.VertretungsStatus))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SchulbegleitenderZugehoerigkeitsTyp))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.ServiceRecordValidationResult>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.UiElementType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.BargeldtransaktionshistoryDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.BargeldtransaktionshistoryDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.SignatureDC>))]
|
||||
@@ -1924,12 +1935,12 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AiChatDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AiSettingsDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.CheckObjectDeletionResultDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.ConfirmationReceiptSignatureDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.ConfirmationReceiptSignatureDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.DienstvertretungDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.DienstEintragDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.DienstEintragDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.DienstvertretungDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.ConfirmationReceiptSignatureDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.ConfirmationReceiptSignatureDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.VorlagentabelleDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.VorlagentabelleDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.DokumentvorlageDC))]
|
||||
@@ -2042,18 +2053,6 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.FLSAnalysisDataDetailDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.FLSAnalysisDataDetailDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.Compact.CompactTokenDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.StatementType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SignatureStateType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Zahlungstyp))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SignatureType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ServiceRecordValidationResult))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.MessageType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.HomeViewPanelType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Auszahlungsintervall))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.VertretungsStatus))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SchulbegleitenderZugehoerigkeitsTyp))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.ServiceRecordValidationResult>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.UiElementType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.SignatureType, System.Collections.Generic.List<long>>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<System.Collections.Generic.Dictionary<int, long>>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<int, long>))]
|
||||
@@ -2067,6 +2066,7 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.DataContracts.Compact.CompactCustomerDC, bool>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<long, bool>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.DataContracts.ServiceRecordDC, System.Collections.Generic.List<BS.Shared.ServiceRecordValidationResult>>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Invoicing.BankAccountDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.Reports.AuslastungAnalysisRootDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Reports.AccountingReportDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.Reports.AccountingReportRowDC>))]
|
||||
@@ -2101,6 +2101,7 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.ServiceInvoicePeriodDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.InvoiceNumberDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.InvoiceNumberDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AppResponseDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.InvoiceType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungViewFilterDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungCreateRequestDC))]
|
||||
@@ -2187,6 +2188,11 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/ICustomerService/ImportSupportConceptBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.ImportSupportConceptResultDC ImportSupportConcept(BS.Shared.DataContracts.HilfeplanImportDC hidc);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ICustomerService/GetAllActiveCustomersForEmployee", ReplyAction="http://tempuri.org/ICustomerService/GetAllActiveCustomersForEmployeeResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/ICustomerService/GetAllActiveCustomersForEmployeeBeWoFaultFaul" +
|
||||
"t", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
System.Collections.Generic.List<BS.Shared.DataContracts.Compact.CompactCustomerDC> GetAllActiveCustomersForEmployee(bool fetchReferenceNumbers);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/ICustomerService/UpdateCustomer", ReplyAction="http://tempuri.org/ICustomerService/UpdateCustomerResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/ICustomerService/UpdateCustomerBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
long UpdateCustomer(BS.Shared.DataContracts.CustomerDC pCustomerDC);
|
||||
@@ -3071,6 +3077,11 @@ namespace BeWo.ServiceProxy
|
||||
return base.Channel.ImportSupportConcept(hidc);
|
||||
}
|
||||
|
||||
public System.Collections.Generic.List<BS.Shared.DataContracts.Compact.CompactCustomerDC> GetAllActiveCustomersForEmployee(bool fetchReferenceNumbers)
|
||||
{
|
||||
return base.Channel.GetAllActiveCustomersForEmployee(fetchReferenceNumbers);
|
||||
}
|
||||
|
||||
public long UpdateCustomer(BS.Shared.DataContracts.CustomerDC pCustomerDC)
|
||||
{
|
||||
return base.Channel.UpdateCustomer(pCustomerDC);
|
||||
@@ -5500,6 +5511,13 @@ namespace BeWo.ServiceProxy
|
||||
public interface IOperationsService
|
||||
{
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/CheckForConfirmationReceiptSignatureForServ" +
|
||||
"iceRecord", ReplyAction="http://tempuri.org/IOperationsService/CheckForConfirmationReceiptSignatureForServ" +
|
||||
"iceRecordResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/CheckForConfirmationReceiptSignatureForServ" +
|
||||
"iceRecordBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
bool CheckForConfirmationReceiptSignatureForServiceRecord(long serviceRecordOid, BS.Shared.SignatureType signatureType);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/GetDakotaFileFormat", ReplyAction="http://tempuri.org/IOperationsService/GetDakotaFileFormatResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/GetDakotaFileFormatBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<System.Nullable<long>>))]
|
||||
@@ -5812,7 +5830,18 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Reports.AuslastungAnalysisEmployeeDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.Reports.AuslastungAnalysisSupportConceptDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Reports.AuslastungAnalysisSupportConceptDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Invoicing.BankAccountDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SignatureType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.StatementType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SignatureStateType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Zahlungstyp))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ServiceRecordValidationResult))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.MessageType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.HomeViewPanelType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Auszahlungsintervall))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.VertretungsStatus))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SchulbegleitenderZugehoerigkeitsTyp))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.ServiceRecordValidationResult>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.UiElementType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.BargeldtransaktionshistoryDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.BargeldtransaktionshistoryDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.SignatureDC>))]
|
||||
@@ -5820,12 +5849,12 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AiChatDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AiSettingsDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.CheckObjectDeletionResultDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.ConfirmationReceiptSignatureDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.ConfirmationReceiptSignatureDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.DienstvertretungDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.DienstEintragDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.DienstEintragDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.DienstvertretungDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.ConfirmationReceiptSignatureDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.ConfirmationReceiptSignatureDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.VorlagentabelleDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.VorlagentabelleDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.DokumentvorlageDC))]
|
||||
@@ -5938,18 +5967,6 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.FLSAnalysisDataDetailDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.FLSAnalysisDataDetailDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.Compact.CompactTokenDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.StatementType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SignatureStateType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Zahlungstyp))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SignatureType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.ServiceRecordValidationResult))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.MessageType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.HomeViewPanelType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.Auszahlungsintervall))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.VertretungsStatus))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.SchulbegleitenderZugehoerigkeitsTyp))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.ServiceRecordValidationResult>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.UiElementType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.SignatureType, System.Collections.Generic.List<long>>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<System.Collections.Generic.Dictionary<int, long>>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<int, long>))]
|
||||
@@ -5963,6 +5980,7 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.DataContracts.Compact.CompactCustomerDC, bool>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<long, bool>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.Dictionary<BS.Shared.DataContracts.ServiceRecordDC, System.Collections.Generic.List<BS.Shared.ServiceRecordValidationResult>>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Invoicing.BankAccountDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.Reports.AuslastungAnalysisRootDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.Reports.AccountingReportDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.Reports.AccountingReportRowDC>))]
|
||||
@@ -5997,6 +6015,7 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.ServiceInvoicePeriodDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.InvoiceNumberDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(System.Collections.Generic.List<BS.Shared.DataContracts.InvoiceNumberDC>))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.AppResponseDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.InvoiceType))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungViewFilterDC))]
|
||||
[System.ServiceModel.ServiceKnownTypeAttribute(typeof(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungCreateRequestDC))]
|
||||
@@ -6101,6 +6120,13 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/CheckObjectDeletionAllowedBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.CheckObjectDeletionResultDC CheckObjectDeletionAllowed(long objectoid, BS.Shared.TableID tableId);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/HasConfirmationReceiptSignatureByDateAndEmp" +
|
||||
"loyeeAndCustomer", ReplyAction="http://tempuri.org/IOperationsService/HasConfirmationReceiptSignatureByDateAndEmp" +
|
||||
"loyeeAndCustomerResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/HasConfirmationReceiptSignatureByDateAndEmp" +
|
||||
"loyeeAndCustomerBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
bool HasConfirmationReceiptSignatureByDateAndEmployeeAndCustomer(out System.Collections.Generic.List<BS.Shared.DataContracts.ConfirmationReceiptSignatureDC> confirmationReceiptSignatures, long customerOid, long employeeOid, System.DateTime start, System.DateTime end, long costBearer2SupportConceptOid);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/DeleteDienstvertretung2", ReplyAction="http://tempuri.org/IOperationsService/DeleteDienstvertretung2Response")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/DeleteDienstvertretung2BeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
bool DeleteDienstvertretung2(long empId, long wohnId, int zeile, System.DateTime date, BS.Shared.DataContracts.DienstvertretungDC dienstvertretung, System.Collections.Generic.List<BS.Shared.DataContracts.DienstEintragDC> alleDiensteintraege, System.Collections.Generic.List<BS.Shared.DataContracts.DienstvertretungDC> alleDienstvertretungen, int day, System.DateTime pflichtStart, System.DateTime pflichtEnde);
|
||||
@@ -6156,6 +6182,10 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/InsertTemplateBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.DokumentvorlageDC InsertTemplate(BS.Shared.DataContracts.DokumentvorlageDC dc);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/LoadTemplate", ReplyAction="http://tempuri.org/IOperationsService/LoadTemplateResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/LoadTemplateBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.DokumentvorlageDC LoadTemplate(long oid);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/GetPlatzhalterForTemplate", ReplyAction="http://tempuri.org/IOperationsService/GetPlatzhalterForTemplateResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/GetPlatzhalterForTemplateBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
System.Collections.Generic.List<BS.Shared.DataContracts.PlatzhalterDC> GetPlatzhalterForTemplate(BS.Shared.DataContracts.VorlagentabelleDC vt);
|
||||
@@ -6412,13 +6442,6 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/DeleteSignatureBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
void DeleteSignature(long signatureOid, long serviceRecordOid);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/CheckForConfirmationReceiptSignatureForServ" +
|
||||
"iceRecord", ReplyAction="http://tempuri.org/IOperationsService/CheckForConfirmationReceiptSignatureForServ" +
|
||||
"iceRecordResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/CheckForConfirmationReceiptSignatureForServ" +
|
||||
"iceRecordBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
bool CheckForConfirmationReceiptSignatureForServiceRecord(long serviceRecordOid, BS.Shared.SignatureType signatureType);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsService/GetMessageFromServer", ReplyAction="http://tempuri.org/IOperationsService/GetMessageFromServerResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsService/GetMessageFromServerBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
string GetMessageFromServer(BS.Shared.TableID pObjectTid, System.Nullable<long> pObjectOid, BS.Shared.MessageType pMessageType);
|
||||
@@ -7604,6 +7627,11 @@ namespace BeWo.ServiceProxy
|
||||
{
|
||||
}
|
||||
|
||||
public bool CheckForConfirmationReceiptSignatureForServiceRecord(long serviceRecordOid, BS.Shared.SignatureType signatureType)
|
||||
{
|
||||
return base.Channel.CheckForConfirmationReceiptSignatureForServiceRecord(serviceRecordOid, signatureType);
|
||||
}
|
||||
|
||||
public string GetDakotaFileFormat(object param)
|
||||
{
|
||||
return base.Channel.GetDakotaFileFormat(param);
|
||||
@@ -7679,6 +7707,11 @@ namespace BeWo.ServiceProxy
|
||||
return base.Channel.CheckObjectDeletionAllowed(objectoid, tableId);
|
||||
}
|
||||
|
||||
public bool HasConfirmationReceiptSignatureByDateAndEmployeeAndCustomer(out System.Collections.Generic.List<BS.Shared.DataContracts.ConfirmationReceiptSignatureDC> confirmationReceiptSignatures, long customerOid, long employeeOid, System.DateTime start, System.DateTime end, long costBearer2SupportConceptOid)
|
||||
{
|
||||
return base.Channel.HasConfirmationReceiptSignatureByDateAndEmployeeAndCustomer(out confirmationReceiptSignatures, customerOid, employeeOid, start, end, costBearer2SupportConceptOid);
|
||||
}
|
||||
|
||||
public bool DeleteDienstvertretung2(long empId, long wohnId, int zeile, System.DateTime date, BS.Shared.DataContracts.DienstvertretungDC dienstvertretung, System.Collections.Generic.List<BS.Shared.DataContracts.DienstEintragDC> alleDiensteintraege, System.Collections.Generic.List<BS.Shared.DataContracts.DienstvertretungDC> alleDienstvertretungen, int day, System.DateTime pflichtStart, System.DateTime pflichtEnde)
|
||||
{
|
||||
return base.Channel.DeleteDienstvertretung2(empId, wohnId, zeile, date, dienstvertretung, alleDiensteintraege, alleDienstvertretungen, day, pflichtStart, pflichtEnde);
|
||||
@@ -7734,6 +7767,11 @@ namespace BeWo.ServiceProxy
|
||||
return base.Channel.InsertTemplate(dc);
|
||||
}
|
||||
|
||||
public BS.Shared.DataContracts.DokumentvorlageDC LoadTemplate(long oid)
|
||||
{
|
||||
return base.Channel.LoadTemplate(oid);
|
||||
}
|
||||
|
||||
public System.Collections.Generic.List<BS.Shared.DataContracts.PlatzhalterDC> GetPlatzhalterForTemplate(BS.Shared.DataContracts.VorlagentabelleDC vt)
|
||||
{
|
||||
return base.Channel.GetPlatzhalterForTemplate(vt);
|
||||
@@ -7994,11 +8032,6 @@ namespace BeWo.ServiceProxy
|
||||
base.Channel.DeleteSignature(signatureOid, serviceRecordOid);
|
||||
}
|
||||
|
||||
public bool CheckForConfirmationReceiptSignatureForServiceRecord(long serviceRecordOid, BS.Shared.SignatureType signatureType)
|
||||
{
|
||||
return base.Channel.CheckForConfirmationReceiptSignatureForServiceRecord(serviceRecordOid, signatureType);
|
||||
}
|
||||
|
||||
public string GetMessageFromServer(BS.Shared.TableID pObjectTid, System.Nullable<long> pObjectOid, BS.Shared.MessageType pMessageType)
|
||||
{
|
||||
return base.Channel.GetMessageFromServer(pObjectTid, pObjectOid, pMessageType);
|
||||
@@ -9774,6 +9807,42 @@ namespace BeWo.ServiceProxy
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccountingService/StorniereInvoiceBases", ReplyAction="http://tempuri.org/IAccountingService/StorniereInvoiceBasesResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAccountingService/StorniereInvoiceBasesBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
void StorniereInvoiceBases(System.Collections.Generic.List<BS.Shared.DataContracts.InvoiceBaseDC> invoices);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccountingService/GetGkvAbrechnung", ReplyAction="http://tempuri.org/IAccountingService/GetGkvAbrechnungResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAccountingService/GetGkvAbrechnungBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungDC GetGkvAbrechnung(long oid);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccountingService/GetAllGkvAbrechnungen", ReplyAction="http://tempuri.org/IAccountingService/GetAllGkvAbrechnungenResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAccountingService/GetAllGkvAbrechnungenBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
System.Collections.Generic.List<BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungDC> GetAllGkvAbrechnungen();
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccountingService/GetFilteredGkvAbrechnungen", ReplyAction="http://tempuri.org/IAccountingService/GetFilteredGkvAbrechnungenResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAccountingService/GetFilteredGkvAbrechnungenBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
System.Collections.Generic.List<BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungDC> GetFilteredGkvAbrechnungen(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungViewFilterDC gkvAbrechnungViewFilter);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccountingService/GetProtokollRawDataString", ReplyAction="http://tempuri.org/IAccountingService/GetProtokollRawDataStringResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAccountingService/GetProtokollRawDataStringBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
string GetProtokollRawDataString(long oid, BS.Shared.GkvRawDataType gkvRawData);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccountingService/CreateNewGkvAbrechnung", ReplyAction="http://tempuri.org/IAccountingService/CreateNewGkvAbrechnungResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAccountingService/CreateNewGkvAbrechnungBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungCreateResponseDC CreateNewGkvAbrechnung(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungCreateRequestDC request);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccountingService/UpdateGkvAbrechnung", ReplyAction="http://tempuri.org/IAccountingService/UpdateGkvAbrechnungResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAccountingService/UpdateGkvAbrechnungBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungDC UpdateGkvAbrechnung(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungDC abrechnung);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccountingService/DeleteGkvAbrechnung", ReplyAction="http://tempuri.org/IAccountingService/DeleteGkvAbrechnungResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAccountingService/DeleteGkvAbrechnungBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
void DeleteGkvAbrechnung(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungDC abrechnung);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccountingService/SendNewGkvAbrechnung", ReplyAction="http://tempuri.org/IAccountingService/SendNewGkvAbrechnungResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAccountingService/SendNewGkvAbrechnungBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungSendResponseDC SendNewGkvAbrechnung(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungSendRequestDC req);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAccountingService/SendGetIKRequest", ReplyAction="http://tempuri.org/IAccountingService/SendGetIKRequestResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAccountingService/SendGetIKRequestBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungGetIKResponseDC SendGetIKRequest(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungGetIKRequestDC req);
|
||||
}
|
||||
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
|
||||
@@ -9969,6 +10038,51 @@ namespace BeWo.ServiceProxy
|
||||
{
|
||||
base.Channel.StorniereInvoiceBases(invoices);
|
||||
}
|
||||
|
||||
public BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungDC GetGkvAbrechnung(long oid)
|
||||
{
|
||||
return base.Channel.GetGkvAbrechnung(oid);
|
||||
}
|
||||
|
||||
public System.Collections.Generic.List<BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungDC> GetAllGkvAbrechnungen()
|
||||
{
|
||||
return base.Channel.GetAllGkvAbrechnungen();
|
||||
}
|
||||
|
||||
public System.Collections.Generic.List<BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungDC> GetFilteredGkvAbrechnungen(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungViewFilterDC gkvAbrechnungViewFilter)
|
||||
{
|
||||
return base.Channel.GetFilteredGkvAbrechnungen(gkvAbrechnungViewFilter);
|
||||
}
|
||||
|
||||
public string GetProtokollRawDataString(long oid, BS.Shared.GkvRawDataType gkvRawData)
|
||||
{
|
||||
return base.Channel.GetProtokollRawDataString(oid, gkvRawData);
|
||||
}
|
||||
|
||||
public BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungCreateResponseDC CreateNewGkvAbrechnung(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungCreateRequestDC request)
|
||||
{
|
||||
return base.Channel.CreateNewGkvAbrechnung(request);
|
||||
}
|
||||
|
||||
public BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungDC UpdateGkvAbrechnung(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungDC abrechnung)
|
||||
{
|
||||
return base.Channel.UpdateGkvAbrechnung(abrechnung);
|
||||
}
|
||||
|
||||
public void DeleteGkvAbrechnung(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungDC abrechnung)
|
||||
{
|
||||
base.Channel.DeleteGkvAbrechnung(abrechnung);
|
||||
}
|
||||
|
||||
public BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungSendResponseDC SendNewGkvAbrechnung(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungSendRequestDC req)
|
||||
{
|
||||
return base.Channel.SendNewGkvAbrechnung(req);
|
||||
}
|
||||
|
||||
public BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungGetIKResponseDC SendGetIKRequest(BS.Shared.DataContracts.GkvAbrechnung.GkvAbrechnungGetIKRequestDC req)
|
||||
{
|
||||
return base.Channel.SendGetIKRequest(req);
|
||||
}
|
||||
}
|
||||
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
|
||||
|
||||
124
BeWo/ServiceProxy/GeneratedAiEnhancedService.cs
Normal file
124
BeWo/ServiceProxy/GeneratedAiEnhancedService.cs
Normal file
@@ -0,0 +1,124 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// Dieser Code wurde von einem Tool generiert.
|
||||
// Laufzeitversion:4.0.30319.42000
|
||||
//
|
||||
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
|
||||
// der Code erneut generiert wird.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
namespace BeWo.ServiceProxy
|
||||
{
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
|
||||
[System.ServiceModel.ServiceContractAttribute(ConfigurationName="BeWo.ServiceProxy.IAiEnhancedService")]
|
||||
public interface IAiEnhancedService
|
||||
{
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAiEnhancedService/GetAiConfig", ReplyAction="http://tempuri.org/IAiEnhancedService/GetAiConfigResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAiEnhancedService/GetAiConfigBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.Feature.AI.AiConfigDC GetAiConfig();
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAiEnhancedService/UpdateAiConfig", ReplyAction="http://tempuri.org/IAiEnhancedService/UpdateAiConfigResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAiEnhancedService/UpdateAiConfigBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.Feature.AI.AiConfigDC UpdateAiConfig(BS.Shared.DataContracts.Feature.AI.AiConfigDC toUpdate);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAiEnhancedService/GetAiModels", ReplyAction="http://tempuri.org/IAiEnhancedService/GetAiModelsResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAiEnhancedService/GetAiModelsBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
System.Collections.Generic.List<BS.Shared.DataContracts.Feature.AI.AiModelDC> GetAiModels();
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAiEnhancedService/GetAiConversations", ReplyAction="http://tempuri.org/IAiEnhancedService/GetAiConversationsResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAiEnhancedService/GetAiConversationsBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
System.Collections.Generic.List<BS.Shared.DataContracts.Feature.AI.AiConversationDC> GetAiConversations(int uicontext, long? oid);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAiEnhancedService/CreateAiConversation", ReplyAction="http://tempuri.org/IAiEnhancedService/CreateAiConversationResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAiEnhancedService/CreateAiConversationBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.Feature.AI.AiConversationDC CreateAiConversation(BS.Shared.DataContracts.Feature.AI.AiConversationDC conversation, long modell_oid);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAiEnhancedService/CloneAiConversation", ReplyAction="http://tempuri.org/IAiEnhancedService/CloneAiConversationResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAiEnhancedService/CloneAiConversationBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
BS.Shared.DataContracts.Feature.AI.AiConversationDC CloneAiConversation(long conversation_oid, System.Nullable<long> message_oid);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAiEnhancedService/DeleteAiConversation", ReplyAction="http://tempuri.org/IAiEnhancedService/DeleteAiConversationResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAiEnhancedService/DeleteAiConversationBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
void DeleteAiConversation(long conversation_oid);
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IAiEnhancedService/SendNewMessage", ReplyAction="http://tempuri.org/IAiEnhancedService/SendNewMessageResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IAiEnhancedService/SendNewMessageBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
System.Collections.Generic.List<BS.Shared.DataContracts.AiConversationMessageDC> SendNewMessage(long conversation, string message);
|
||||
}
|
||||
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
|
||||
public interface IAiEnhancedServiceChannel : BeWo.ServiceProxy.IAiEnhancedService, System.ServiceModel.IClientChannel
|
||||
{
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
|
||||
public partial class AiEnhancedServiceClient : System.ServiceModel.ClientBase<BeWo.ServiceProxy.IAiEnhancedService>, BeWo.ServiceProxy.IAiEnhancedService
|
||||
{
|
||||
|
||||
public AiEnhancedServiceClient()
|
||||
{
|
||||
}
|
||||
|
||||
public AiEnhancedServiceClient(string endpointConfigurationName) :
|
||||
base(endpointConfigurationName)
|
||||
{
|
||||
}
|
||||
|
||||
public AiEnhancedServiceClient(string endpointConfigurationName, string remoteAddress) :
|
||||
base(endpointConfigurationName, remoteAddress)
|
||||
{
|
||||
}
|
||||
|
||||
public AiEnhancedServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
|
||||
base(endpointConfigurationName, remoteAddress)
|
||||
{
|
||||
}
|
||||
|
||||
public AiEnhancedServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
|
||||
base(binding, remoteAddress)
|
||||
{
|
||||
}
|
||||
|
||||
public BS.Shared.DataContracts.Feature.AI.AiConfigDC GetAiConfig()
|
||||
{
|
||||
return base.Channel.GetAiConfig();
|
||||
}
|
||||
|
||||
public BS.Shared.DataContracts.Feature.AI.AiConfigDC UpdateAiConfig(BS.Shared.DataContracts.Feature.AI.AiConfigDC toUpdate)
|
||||
{
|
||||
return base.Channel.UpdateAiConfig(toUpdate);
|
||||
}
|
||||
|
||||
public System.Collections.Generic.List<BS.Shared.DataContracts.Feature.AI.AiModelDC> GetAiModels()
|
||||
{
|
||||
return base.Channel.GetAiModels();
|
||||
}
|
||||
|
||||
public System.Collections.Generic.List<BS.Shared.DataContracts.Feature.AI.AiConversationDC> GetAiConversations(int uicontext, long? oid)
|
||||
{
|
||||
return base.Channel.GetAiConversations(uicontext, oid);
|
||||
}
|
||||
|
||||
public BS.Shared.DataContracts.Feature.AI.AiConversationDC CreateAiConversation(BS.Shared.DataContracts.Feature.AI.AiConversationDC conversation, long modell_oid)
|
||||
{
|
||||
return base.Channel.CreateAiConversation(conversation, modell_oid);
|
||||
}
|
||||
|
||||
public BS.Shared.DataContracts.Feature.AI.AiConversationDC CloneAiConversation(long conversation_oid, System.Nullable<long> message_oid)
|
||||
{
|
||||
return base.Channel.CloneAiConversation(conversation_oid, message_oid);
|
||||
}
|
||||
|
||||
public void DeleteAiConversation(long conversation_oid)
|
||||
{
|
||||
base.Channel.DeleteAiConversation(conversation_oid);
|
||||
}
|
||||
|
||||
public System.Collections.Generic.List<BS.Shared.DataContracts.AiConversationMessageDC> SendNewMessage(long conversation, string message)
|
||||
{
|
||||
return base.Channel.SendNewMessage(conversation, message);
|
||||
}
|
||||
}
|
||||
}
|
||||
61
BeWo/ServiceProxy/GeneratedOperationsEnhancedService.cs
Normal file
61
BeWo/ServiceProxy/GeneratedOperationsEnhancedService.cs
Normal file
@@ -0,0 +1,61 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// Dieser Code wurde von einem Tool generiert.
|
||||
// Laufzeitversion:4.0.30319.42000
|
||||
//
|
||||
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
|
||||
// der Code erneut generiert wird.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
namespace BeWo.ServiceProxy
|
||||
{
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
|
||||
[System.ServiceModel.ServiceContractAttribute(ConfigurationName="BeWo.ServiceProxy.IOperationsEnhancedService")]
|
||||
public interface IOperationsEnhancedService
|
||||
{
|
||||
|
||||
[System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IOperationsEnhancedService/HelloWorld", ReplyAction="http://tempuri.org/IOperationsEnhancedService/HelloWorldResponse")]
|
||||
[System.ServiceModel.FaultContractAttribute(typeof(BeWo.ServiceProxy.BeWoFault), Action="http://tempuri.org/IOperationsEnhancedService/HelloWorldBeWoFaultFault", Name="BeWoFault", Namespace="http://schemas.datacontract.org/2004/07/BeWo.Service.ServiceContracts")]
|
||||
void HelloWorld();
|
||||
}
|
||||
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
|
||||
public interface IOperationsEnhancedServiceChannel : BeWo.ServiceProxy.IOperationsEnhancedService, System.ServiceModel.IClientChannel
|
||||
{
|
||||
}
|
||||
|
||||
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
|
||||
public partial class OperationsEnhancedServiceClient : System.ServiceModel.ClientBase<BeWo.ServiceProxy.IOperationsEnhancedService>, BeWo.ServiceProxy.IOperationsEnhancedService
|
||||
{
|
||||
|
||||
public OperationsEnhancedServiceClient()
|
||||
{
|
||||
}
|
||||
|
||||
public OperationsEnhancedServiceClient(string endpointConfigurationName) :
|
||||
base(endpointConfigurationName)
|
||||
{
|
||||
}
|
||||
|
||||
public OperationsEnhancedServiceClient(string endpointConfigurationName, string remoteAddress) :
|
||||
base(endpointConfigurationName, remoteAddress)
|
||||
{
|
||||
}
|
||||
|
||||
public OperationsEnhancedServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
|
||||
base(endpointConfigurationName, remoteAddress)
|
||||
{
|
||||
}
|
||||
|
||||
public OperationsEnhancedServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
|
||||
base(binding, remoteAddress)
|
||||
{
|
||||
}
|
||||
|
||||
public void HelloWorld()
|
||||
{
|
||||
base.Channel.HelloWorld();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -15,6 +15,7 @@ using BS.Shared;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.DataContracts.Compact;
|
||||
using DevExpress.CodeParser;
|
||||
using DevExpress.Export.Xl;
|
||||
|
||||
namespace BeWo.ServiceProxy
|
||||
{
|
||||
@@ -48,22 +49,24 @@ namespace BeWo.ServiceProxy
|
||||
_ServerName += "/";
|
||||
|
||||
_EndpointAddresses = new Dictionary<Type, EndpointAddress>
|
||||
{
|
||||
{ typeof(IQueryService), new EndpointAddress(_ServerName + "QueryService.svc") },
|
||||
{ typeof(IStreamingService), new EndpointAddress(_ServerName + "StreamingService.svc") },
|
||||
{ typeof(IEmployeeService), new EndpointAddress(_ServerName + "EmployeeService.svc") },
|
||||
{ typeof(ICustomerService), new EndpointAddress(_ServerName + "CustomerService.svc") },
|
||||
{ typeof(IUserService), new EndpointAddress(_ServerName + "UserService.svc") },
|
||||
{ typeof(IValueListService), new EndpointAddress(_ServerName + "ValueListService.svc") },
|
||||
{ typeof(IDownloadService), new EndpointAddress(_ServerName + "DownloadService.svc") },
|
||||
{ typeof(IResourceService), new EndpointAddress(_ServerName + "ResourceService.svc") },
|
||||
{ typeof(IOperationsService), new EndpointAddress(_ServerName + "OperationsService.svc") },
|
||||
{ typeof(IAnalysisService), new EndpointAddress(_ServerName + "AnalysisService.svc") },
|
||||
{ typeof(IMailService), new EndpointAddress(_ServerName + "MailService.svc") },
|
||||
{ typeof(IAccountingService), new EndpointAddress(_ServerName + "AccountingService.svc") },
|
||||
{ typeof(IGkvAccountingService), new EndpointAddress(_ServerName + "GkvAccountingService.svc") },
|
||||
{ typeof(IReportService), new EndpointAddress(_ServerName + "ReportService.svc") }
|
||||
};
|
||||
{
|
||||
{ typeof(IQueryService), new EndpointAddress(_ServerName + "QueryService.svc") },
|
||||
{ typeof(IStreamingService), new EndpointAddress(_ServerName + "StreamingService.svc") },
|
||||
{ typeof(IEmployeeService), new EndpointAddress(_ServerName + "EmployeeService.svc") },
|
||||
{ typeof(ICustomerService), new EndpointAddress(_ServerName + "CustomerService.svc") },
|
||||
{ typeof(IUserService), new EndpointAddress(_ServerName + "UserService.svc") },
|
||||
{ typeof(IValueListService), new EndpointAddress(_ServerName + "ValueListService.svc") },
|
||||
{ typeof(IDownloadService), new EndpointAddress(_ServerName + "DownloadService.svc") },
|
||||
{ typeof(IResourceService), new EndpointAddress(_ServerName + "ResourceService.svc") },
|
||||
{ typeof(IOperationsService), new EndpointAddress(_ServerName + "OperationsService.svc") },
|
||||
{ typeof(IOperationsEnhancedService), new EndpointAddress(_ServerName + "OperationsEnhancedService.svc") },
|
||||
{ typeof(IAnalysisService), new EndpointAddress(_ServerName + "AnalysisService.svc") },
|
||||
{ typeof(IMailService), new EndpointAddress(_ServerName + "MailService.svc") },
|
||||
{ typeof(IAccountingService), new EndpointAddress(_ServerName + "AccountingService.svc") },
|
||||
{ typeof(IGkvAccountingService), new EndpointAddress(_ServerName + "GkvAccountingService.svc") },
|
||||
{ typeof(IReportService), new EndpointAddress(_ServerName + "ReportService.svc") },
|
||||
{ typeof(IAiEnhancedService), new EndpointAddress(_ServerName + "AiEnhancedService.svc") }
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -72,6 +75,29 @@ namespace BeWo.ServiceProxy
|
||||
_ProxyCache = new Dictionary<Type, object>();
|
||||
}
|
||||
|
||||
#region AiEnhancedService
|
||||
public static void DoAiEnhancedServiceSnyc(Action<IAiEnhancedService> pAction)
|
||||
=> DoSync<AiEnhancedServiceClient, IAiEnhancedService>(pAction);
|
||||
public static T DoAiEnhancedServiceSnyc<T>(Func<IAiEnhancedService, T> pFunc)
|
||||
=> DoSync<AiEnhancedServiceClient, IAiEnhancedService, T>(pFunc);
|
||||
public static void DoAiEnhancedServiceAsnyc(Action<IAiEnhancedService> pAction, Action pCallback = null, Action<Exception> pErrorCallback = null, bool showWaitDialog = true, UserControl caller = null)
|
||||
=> DoAsync<AiEnhancedServiceClient, IAiEnhancedService>(pAction, pCallback, pErrorCallback, showWaitDialog, caller?.Dispatcher);
|
||||
public static void DoAiEnhancedServiceAsnyc<T>(Func<IAiEnhancedService, T> pFunc, Action<T> pCallback = null, Action<Exception> pErrorCallback = null, bool showWaitDialog = true, UserControl caller = null)
|
||||
=> DoAsync<AiEnhancedServiceClient, IAiEnhancedService, T>(pFunc, pCallback, pErrorCallback, showWaitDialog, caller?.Dispatcher);
|
||||
#endregion
|
||||
|
||||
#region OperationsEnhancedService
|
||||
public static void DoOperationsEnhancedServiceSnyc(Action<IOperationsEnhancedService> pAction)
|
||||
=> DoSync<OperationsEnhancedServiceClient, IOperationsEnhancedService>(pAction);
|
||||
public static T DoOperationsEnhancedServiceSnyc<T>(Func<IOperationsEnhancedService, T> pFunc)
|
||||
=> DoSync<OperationsEnhancedServiceClient, IOperationsEnhancedService, T>(pFunc);
|
||||
public static void DoOperationsEnhancedServiceAsnyc(Action<IOperationsEnhancedService> pAction, Action pCallback = null, Action<Exception> pErrorCallback = null, bool showWaitDialog = true, UserControl caller = null)
|
||||
=> DoAsync<OperationsEnhancedServiceClient, IOperationsEnhancedService>(pAction, pCallback, pErrorCallback, showWaitDialog, caller?.Dispatcher);
|
||||
public static void DoOperationsEnhancedServiceAsnyc<T>(Func<IOperationsEnhancedService, T> pFunc, Action<T> pCallback = null, Action<Exception> pErrorCallback = null, bool showWaitDialog = true, UserControl caller = null)
|
||||
=> DoAsync<OperationsEnhancedServiceClient, IOperationsEnhancedService, T>(pFunc, pCallback, pErrorCallback, showWaitDialog, caller?.Dispatcher);
|
||||
#endregion
|
||||
|
||||
|
||||
public static void DoAccountingServiceAsync<T>(Func<IAccountingService, T> pFunc, Action<T> pCallBack, bool showWaitDialog)
|
||||
{
|
||||
DoAsync<AccountingServiceClient, IAccountingService, T>(pFunc, pCallBack, showWaitDialog);
|
||||
@@ -104,17 +130,17 @@ namespace BeWo.ServiceProxy
|
||||
public static void DoAnalysisServiceAsync<T>(Func<IAnalysisService, T> pFunc, Action<T> pCallBack)
|
||||
{
|
||||
DoAsync<AnalysisServiceClient, IAnalysisService, T>(pFunc, pCallBack, true);
|
||||
|
||||
}
|
||||
public static void DoAnalysisServiceAsync<T>(Func<IAnalysisService, T> pFunc, Action<T> pCallBack, bool showWaitDialog)
|
||||
{
|
||||
DoAsync<AnalysisServiceClient, IAnalysisService, T>(pFunc, pCallBack, showWaitDialog);
|
||||
|
||||
}
|
||||
public static void DoAccountingServiceSync(Action<IAccountingService> pAction)
|
||||
{
|
||||
pAction.Invoke(GetInstance<AccountingServiceClient, IAccountingService>());
|
||||
}
|
||||
}
|
||||
public static void DoAnalysisServiceAsync<T>(Func<IAnalysisService, T> pFunc, Action<T> pCallBack, bool showWaitDialog)
|
||||
{
|
||||
DoAsync<AnalysisServiceClient, IAnalysisService, T>(pFunc, pCallBack, showWaitDialog);
|
||||
|
||||
}
|
||||
public static void DoAccountingServiceSync(Action<IAccountingService> pAction)
|
||||
{
|
||||
pAction.Invoke(GetInstance<AccountingServiceClient, IAccountingService>());
|
||||
}
|
||||
|
||||
//
|
||||
public static void DoAnalysisServiceAsync(Action<IAnalysisService> pAction)
|
||||
@@ -180,21 +206,21 @@ namespace BeWo.ServiceProxy
|
||||
}
|
||||
}
|
||||
|
||||
public static T DoDownloadServiceSync<T>(Func<IDownloadService, T> pFunc)
|
||||
{
|
||||
try
|
||||
{
|
||||
return pFunc.Invoke(GetInstance<DownloadServiceClient, IDownloadService>());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ShowErrorMessage(e);
|
||||
}
|
||||
public static T DoDownloadServiceSync<T>(Func<IDownloadService, T> pFunc)
|
||||
{
|
||||
try
|
||||
{
|
||||
return pFunc.Invoke(GetInstance<DownloadServiceClient, IDownloadService>());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ShowErrorMessage(e);
|
||||
}
|
||||
|
||||
return default(T);
|
||||
}
|
||||
return default(T);
|
||||
}
|
||||
|
||||
public static void DoEmployeeServiceAsync<T>(Func<IEmployeeService, T> pFunc, Action<T> pCallBack, bool showWaitDialog)
|
||||
public static void DoEmployeeServiceAsync<T>(Func<IEmployeeService, T> pFunc, Action<T> pCallBack, bool showWaitDialog)
|
||||
{
|
||||
DoAsync<EmployeeServiceClient, IEmployeeService, T>(pFunc, pCallBack, showWaitDialog);
|
||||
}
|
||||
@@ -221,57 +247,57 @@ namespace BeWo.ServiceProxy
|
||||
}
|
||||
}
|
||||
|
||||
public static T DoEmployeeServiceSync<T>(Func<IEmployeeService, T> pFunc)
|
||||
{
|
||||
try
|
||||
{
|
||||
return pFunc.Invoke(GetInstance<EmployeeServiceClient, IEmployeeService>());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ShowErrorMessage(e);
|
||||
}
|
||||
public static T DoEmployeeServiceSync<T>(Func<IEmployeeService, T> pFunc)
|
||||
{
|
||||
try
|
||||
{
|
||||
return pFunc.Invoke(GetInstance<EmployeeServiceClient, IEmployeeService>());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ShowErrorMessage(e);
|
||||
}
|
||||
|
||||
return default(T);
|
||||
}
|
||||
return default(T);
|
||||
}
|
||||
|
||||
#region Wohnheim
|
||||
public static void DoWohnheimServiceAsync<T>(Func<ICustomerService, T> pFunc, Action<T> pCallBack, bool showWaitDialog)
|
||||
{
|
||||
DoAsync<CustomerServiceClient, ICustomerService, T>(pFunc, pCallBack, showWaitDialog);
|
||||
}
|
||||
public static void DoWohnheimServiceAsync<T>(Func<ICustomerService, T> pFunc, Action<T> pCallBack)
|
||||
{
|
||||
DoAsync<CustomerServiceClient, ICustomerService, T>(pFunc, pCallBack, true);
|
||||
}
|
||||
public static void DoWohnheimServiceAsync(Action<ICustomerService> pAction)
|
||||
{
|
||||
DoAsync<CustomerServiceClient,ICustomerService>(pAction, true);
|
||||
}
|
||||
public static void DoWohnheimServiceSync(Action<ICustomerService> pAction)
|
||||
{
|
||||
try
|
||||
{
|
||||
pAction.Invoke(GetInstance<CustomerServiceClient, ICustomerService>());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ShowErrorMessage(e);
|
||||
}
|
||||
}
|
||||
public static T DoWohnheimServiceSync<T>(Func<ICustomerService, T> pFunc)
|
||||
{
|
||||
try
|
||||
{
|
||||
return pFunc.Invoke(GetInstance<CustomerServiceClient, ICustomerService>());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ShowErrorMessage(e);
|
||||
}
|
||||
{
|
||||
DoAsync<CustomerServiceClient, ICustomerService, T>(pFunc, pCallBack, showWaitDialog);
|
||||
}
|
||||
public static void DoWohnheimServiceAsync<T>(Func<ICustomerService, T> pFunc, Action<T> pCallBack)
|
||||
{
|
||||
DoAsync<CustomerServiceClient, ICustomerService, T>(pFunc, pCallBack, true);
|
||||
}
|
||||
public static void DoWohnheimServiceAsync(Action<ICustomerService> pAction)
|
||||
{
|
||||
DoAsync<CustomerServiceClient, ICustomerService>(pAction, true);
|
||||
}
|
||||
public static void DoWohnheimServiceSync(Action<ICustomerService> pAction)
|
||||
{
|
||||
try
|
||||
{
|
||||
pAction.Invoke(GetInstance<CustomerServiceClient, ICustomerService>());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ShowErrorMessage(e);
|
||||
}
|
||||
}
|
||||
public static T DoWohnheimServiceSync<T>(Func<ICustomerService, T> pFunc)
|
||||
{
|
||||
try
|
||||
{
|
||||
return pFunc.Invoke(GetInstance<CustomerServiceClient, ICustomerService>());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ShowErrorMessage(e);
|
||||
}
|
||||
|
||||
return default(T);
|
||||
}
|
||||
return default(T);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region GkvAccounting
|
||||
@@ -285,7 +311,7 @@ namespace BeWo.ServiceProxy
|
||||
}
|
||||
public static void DoGkvAccountingServiceAsync(Action<IGkvAccountingService> pAction, Action pCallBack)
|
||||
{
|
||||
DoAsync<GkvAccountingServiceClient, IGkvAccountingService>(pAction, pCallBack, true);
|
||||
DoAsync<GkvAccountingServiceClient, IGkvAccountingService, T>(pFunc, pCallBack, null, true, dispatcher);
|
||||
}
|
||||
public static void DoGkvAccountingServiceAsync(Action<IGkvAccountingService> pAction)
|
||||
{
|
||||
@@ -341,7 +367,7 @@ namespace BeWo.ServiceProxy
|
||||
|
||||
return default(T);
|
||||
}
|
||||
|
||||
|
||||
public static void DoMultipleAccountingServicesAsync(List<Action<IAccountingService>> pActions, Action pAllDoneCallBack)
|
||||
{
|
||||
DoMulitpleAsync<AccountingServiceClient, IAccountingService>(pActions, pAllDoneCallBack, true);
|
||||
@@ -489,14 +515,16 @@ namespace BeWo.ServiceProxy
|
||||
DoAsync<ResourceServiceClient, IResourceService>(pAction, true);
|
||||
}
|
||||
|
||||
public static void DoResourceServiceAsync(Action<IResourceService> pAction, Action pCallback)
|
||||
{
|
||||
DoAsync<ResourceServiceClient, IResourceService>(pAction, pCallback, true);
|
||||
}
|
||||
|
||||
public static void DoResourceServiceAsync(Action<IResourceService> pAction, Action pCallback)
|
||||
{
|
||||
DoAsync<ResourceServiceClient, IResourceService>(pAction, pCallback, true);
|
||||
}
|
||||
|
||||
public static void DoStreamingServiceAsync<T>(Func<IStreamingService, T> pFunc, Action<T> pCallBack, Action pErrorCallBack)
|
||||
{
|
||||
DoAsync<StreamingServiceClient, IStreamingService, T>(pFunc, pCallBack, pErrorCallBack, true);
|
||||
Action<Exception> tErrorCallBack = (e) => pErrorCallBack();
|
||||
|
||||
DoAsync<StreamingServiceClient, IStreamingService, T>(pFunc, pCallBack, tErrorCallBack, true);
|
||||
}
|
||||
|
||||
public static void DoStreamingServiceAsync(Action<IStreamingService> pAction)
|
||||
@@ -509,20 +537,20 @@ namespace BeWo.ServiceProxy
|
||||
DoAsync<UserServiceClient, IUserService, T>(pFunc, pCallBack, showWaitDialog);
|
||||
}
|
||||
|
||||
public static T DoUserServiceSync<T>(Func<IUserService, T> pFunc)
|
||||
{
|
||||
return pFunc.Invoke(GetInstance<UserServiceClient, IUserService>());
|
||||
}
|
||||
public static T DoUserServiceSync<T>(Func<IUserService, T> pFunc)
|
||||
{
|
||||
return pFunc.Invoke(GetInstance<UserServiceClient, IUserService>());
|
||||
}
|
||||
|
||||
public static void DoUserServiceAsync(Action<IUserService> pAction, bool showWaitDialog)
|
||||
{
|
||||
DoAsync<UserServiceClient, IUserService>(pAction, showWaitDialog);
|
||||
}
|
||||
|
||||
public static void DoUserServiceAsync(Action<IUserService> pAction, Action pCallBack, bool showWaitDialog)
|
||||
{
|
||||
DoAsync<UserServiceClient, IUserService>(pAction, pCallBack, showWaitDialog);
|
||||
}
|
||||
public static void DoUserServiceAsync(Action<IUserService> pAction, Action pCallBack, bool showWaitDialog)
|
||||
{
|
||||
DoAsync<UserServiceClient, IUserService>(pAction, pCallBack, showWaitDialog);
|
||||
}
|
||||
|
||||
public static void DoValueListServiceAsync<T>(Func<IValueListService, T> pFunc, Action<T> pCallBack)
|
||||
{
|
||||
@@ -558,12 +586,12 @@ namespace BeWo.ServiceProxy
|
||||
DoAsync<ReportServiceClient, IReportService, T>(pFunc, pCallBack, true);
|
||||
}
|
||||
|
||||
public static void DoReportServiceAsync<T>(Func<IReportService, T> pFunc, Action<T> pCallBack, bool showWaitDialog)
|
||||
{
|
||||
DoAsync<ReportServiceClient, IReportService, T>(pFunc, pCallBack, showWaitDialog);
|
||||
}
|
||||
public static void DoReportServiceAsync<T>(Func<IReportService, T> pFunc, Action<T> pCallBack, bool showWaitDialog)
|
||||
{
|
||||
DoAsync<ReportServiceClient, IReportService, T>(pFunc, pCallBack, showWaitDialog);
|
||||
}
|
||||
|
||||
public static void DoReportServiceSync(Action<IReportService> pAction)
|
||||
public static void DoReportServiceSync(Action<IReportService> pAction)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -644,14 +672,14 @@ namespace BeWo.ServiceProxy
|
||||
{
|
||||
DoUserServiceAsync(s => s.GetAllUsersCompact().Cast<T>().ToList(), r => pCallBack(r), true);
|
||||
}
|
||||
else if (typeof (T) == typeof (ResourceDC))
|
||||
else if (typeof(T) == typeof(ResourceDC))
|
||||
{
|
||||
DoResourceServiceAsync(s => s.GetAllResources().Cast<T>().ToList(), pCallBack, true);
|
||||
}
|
||||
else if (typeof (T) == typeof (TextModuleDC))
|
||||
{
|
||||
DoOperationsServiceAsync(s => s.GetAllTextModules().Cast<T>().ToList(), pCallBack);
|
||||
}
|
||||
else if (typeof(T) == typeof(TextModuleDC))
|
||||
{
|
||||
DoOperationsServiceAsync(s => s.GetAllTextModules().Cast<T>().ToList(), pCallBack);
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
@@ -667,7 +695,33 @@ namespace BeWo.ServiceProxy
|
||||
DoAsync<TClient, TInterface, T>(pFunc, pCallback, null, showWaitDialog);
|
||||
}
|
||||
|
||||
private static void DoAsync<TClient, TInterface, T>(Func<TInterface, T> pFunc, Action<T> pCallback, Action pErrorCallback, bool showWaitDialog)
|
||||
private static void DoAsync<TClient, TInterface, T>(Func<TInterface, T> pFunc, Action<T> pCallback, Action<Exception> pErrorCallback, bool showWaitDialog, Dispatcher dispatcher)
|
||||
where TClient : ClientBase<TInterface>, TInterface, new()
|
||||
where TInterface : class
|
||||
{
|
||||
if (dispatcher is null)
|
||||
{
|
||||
dispatcher = BeWoApp.Current.Dispatcher;
|
||||
}
|
||||
|
||||
Action<T> tCallback = (t) => dispatcher.BeginInvoke(
|
||||
DispatcherPriority.Normal,
|
||||
(Action)delegate
|
||||
{
|
||||
pCallback?.Invoke(t);
|
||||
});
|
||||
|
||||
Action<Exception> tErrorCallback = (t) => dispatcher.BeginInvoke(
|
||||
DispatcherPriority.Normal,
|
||||
(Action)delegate
|
||||
{
|
||||
pErrorCallback?.Invoke(t);
|
||||
});
|
||||
|
||||
DoAsync<TClient, TInterface, T>(pFunc, tCallback, tErrorCallback, showWaitDialog);
|
||||
}
|
||||
|
||||
private static void DoAsync<TClient, TInterface, T>(Func<TInterface, T> pFunc, Action<T> pCallback, Action<Exception> pErrorCallback, bool showWaitDialog)
|
||||
where TClient : ClientBase<TInterface>, TInterface, new()
|
||||
where TInterface : class
|
||||
{
|
||||
@@ -707,9 +761,10 @@ namespace BeWo.ServiceProxy
|
||||
}
|
||||
|
||||
ShowErrorMessage(e);
|
||||
|
||||
if (pErrorCallback != null)
|
||||
{
|
||||
pErrorCallback();
|
||||
pErrorCallback(e);
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -738,11 +793,44 @@ namespace BeWo.ServiceProxy
|
||||
DoAsync<TClient, TInterface>(pAction, null, showWaitDialog);
|
||||
}
|
||||
|
||||
private static void DoAsync<TClient, TInterface>(Action<TInterface> pAction, Action pCallback, Action<Exception> pErrorCallback, bool showWaitDialog, Dispatcher dispatcher)
|
||||
where TClient : ClientBase<TInterface>, TInterface, new()
|
||||
where TInterface : class
|
||||
{
|
||||
if (dispatcher is null)
|
||||
{
|
||||
dispatcher = BeWoApp.Current.Dispatcher;
|
||||
}
|
||||
|
||||
Action tCallback = () => dispatcher.BeginInvoke(
|
||||
DispatcherPriority.Normal,
|
||||
(Action)delegate
|
||||
{
|
||||
pCallback();
|
||||
});
|
||||
|
||||
Action<Exception> tErrorCallback = (t) => dispatcher.BeginInvoke(
|
||||
DispatcherPriority.Normal,
|
||||
(Action)delegate
|
||||
{
|
||||
pErrorCallback(t);
|
||||
});
|
||||
|
||||
DoAsync<TClient, TInterface>(pAction, tCallback, tErrorCallback, showWaitDialog);
|
||||
}
|
||||
|
||||
// private static void DoAsync<TClient, TInterface>(Action<TInterface> pAction, Action pCallback, bool )
|
||||
// void with callback
|
||||
private static void DoAsync<TClient, TInterface>(Action<TInterface> pAction, Action pCallback, bool showWaitDialog)
|
||||
where TClient : ClientBase<TInterface>, TInterface, new()
|
||||
where TInterface : class
|
||||
{
|
||||
DoAsync<TClient, TInterface>(pAction, pCallback, null, showWaitDialog);
|
||||
}
|
||||
|
||||
private static void DoAsync<TClient, TInterface>(Action<TInterface> pAction, Action pCallback, Action<Exception> pErrorCallback, bool showWaitDialog)
|
||||
where TClient : ClientBase<TInterface>, TInterface, new()
|
||||
where TInterface : class
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -780,6 +868,11 @@ namespace BeWo.ServiceProxy
|
||||
}
|
||||
|
||||
ShowErrorMessage(e);
|
||||
|
||||
if (pErrorCallback != null)
|
||||
{
|
||||
pErrorCallback(e);
|
||||
}
|
||||
}
|
||||
},
|
||||
null);
|
||||
@@ -847,6 +940,36 @@ namespace BeWo.ServiceProxy
|
||||
}
|
||||
}
|
||||
|
||||
private static void DoSync<TClient, TInterface>(Action<TInterface> pAction)
|
||||
where TClient : ClientBase<TInterface>, TInterface, new()
|
||||
where TInterface : class
|
||||
{
|
||||
try
|
||||
{
|
||||
pAction.Invoke(GetInstance<TClient, TInterface>());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ShowErrorMessage(e);
|
||||
}
|
||||
}
|
||||
|
||||
private static T DoSync<TClient, TInterface, T>(Func<TInterface, T> pFunc)
|
||||
where TClient : ClientBase<TInterface>, TInterface, new()
|
||||
where TInterface : class
|
||||
{
|
||||
try
|
||||
{
|
||||
return pFunc.Invoke(GetInstance<TClient, TInterface>());
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
ShowErrorMessage(e);
|
||||
}
|
||||
|
||||
return default(T);
|
||||
}
|
||||
|
||||
private static TInterface GetInstance<TClient, TInterface>()
|
||||
where TClient : ClientBase<TInterface>, TInterface, new()
|
||||
where TInterface : class
|
||||
@@ -885,17 +1008,17 @@ namespace BeWo.ServiceProxy
|
||||
{
|
||||
lClient = new TClient();
|
||||
|
||||
if(!_ProxyCache.ContainsKey(lClient.GetType()))
|
||||
{
|
||||
_ProxyCache.Add(typeof(TClient), lClient);
|
||||
}
|
||||
if (!_ProxyCache.ContainsKey(lClient.GetType()))
|
||||
{
|
||||
_ProxyCache.Add(typeof(TClient), lClient);
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
if (DebugConfig.CurrentConfig is DebugConfig current && current.EnableAutoRemoteDebugging)
|
||||
{
|
||||
if (lClient.Endpoint.Binding is BasicHttpBinding binding)
|
||||
{
|
||||
if(_ServerName?.StartsWith("https") ?? true)
|
||||
if (_ServerName?.StartsWith("https") ?? true)
|
||||
{
|
||||
binding.Security.Mode = BasicHttpSecurityMode.Transport;
|
||||
}
|
||||
@@ -911,11 +1034,8 @@ namespace BeWo.ServiceProxy
|
||||
lClient.Endpoint.Behaviors.Add(new MultitenancyEndpointBehavior());
|
||||
|
||||
lClient.Endpoint.Address = EndpointAddresses[typeof(TInterface)];
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
return lClient;
|
||||
}
|
||||
|
||||
@@ -929,7 +1049,10 @@ namespace BeWo.ServiceProxy
|
||||
Monitor.Enter(_Lock);
|
||||
if ((++_RunningAsyncs) == 1 && BeWoApp.MainControl != null)
|
||||
{
|
||||
BeWoApp.MainControl.StartWaiting();
|
||||
if (BeWoApp.MainControl.CurrentAnimatedBeWoWindow is null)
|
||||
BeWoApp.MainControl.StartWaiting();
|
||||
else
|
||||
BeWoApp.MainControl.CurrentAnimatedBeWoWindow.StartWaiting();
|
||||
}
|
||||
|
||||
Monitor.Exit(_Lock);
|
||||
@@ -940,6 +1063,7 @@ namespace BeWo.ServiceProxy
|
||||
Monitor.Enter(_Lock);
|
||||
if ((--_RunningAsyncs) == 0 && BeWoApp.MainControl != null)
|
||||
{
|
||||
BeWoApp.MainControl.CurrentAnimatedBeWoWindow?.EndWaiting();
|
||||
BeWoApp.MainControl.EndWaiting();
|
||||
}
|
||||
|
||||
|
||||
23
BeWo/ServiceReferencesWithLog.bat
Normal file
23
BeWo/ServiceReferencesWithLog.bat
Normal file
@@ -0,0 +1,23 @@
|
||||
@echo off
|
||||
REM Diese Batch-Datei führt eine andere Batch-Datei aus und schreibt das Ergebnis in eine Log-Datei
|
||||
|
||||
REM Pfad zur anderen Batch-Datei
|
||||
set "SCRIPT_PATH=ServiceReferences.bat"
|
||||
|
||||
REM Pfad zur Log-Datei
|
||||
set "LOG_FILE=ServiceReferencesWithLog.log.txt"
|
||||
|
||||
REM Leere die Log-Datei vor dem Start
|
||||
echo. > %LOG_FILE%
|
||||
|
||||
REM Führe die andere Batch-Datei aus und leite die Ausgabe in die Log-Datei um
|
||||
call %SCRIPT_PATH% >> %LOG_FILE% 2>&1
|
||||
|
||||
REM Überprüfe, ob die Ausführung erfolgreich war
|
||||
if %errorlevel% equ 0 (
|
||||
echo Die Ausführung von %SCRIPT_PATH% war erfolgreich. >> %LOG_FILE%
|
||||
) else (
|
||||
echo Die Ausführung von %SCRIPT_PATH% ist fehlgeschlagen. >> %LOG_FILE%
|
||||
)
|
||||
|
||||
echo Log wurde in %LOG_FILE% geschrieben.
|
||||
72
BeWo/Services/BeWoControlFactory.cs
Normal file
72
BeWo/Services/BeWoControlFactory.cs
Normal file
@@ -0,0 +1,72 @@
|
||||
using BeWo.View.Detail.AI;
|
||||
using BS.Shared;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
|
||||
namespace BeWo.Services
|
||||
{
|
||||
internal class BeWoControlFactory : IControlFactory
|
||||
{
|
||||
public Control GetAiConversationControl(UIContext uIContext, Dictionary<TableID, long[]> context, long? reference_oid = null)
|
||||
{
|
||||
var styleString = getStyleString(uIContext);
|
||||
var control = styleString is object ? new AiConversationChatView(styleString) : new AiConversationChatView();
|
||||
|
||||
control.ViewModel.UIContext = (int)uIContext;
|
||||
control.ViewModel.ReferenceObjectOid = reference_oid;
|
||||
control.ViewModel.ContextBeWoObjects = context;
|
||||
|
||||
return control;
|
||||
}
|
||||
|
||||
private string getStyleString(UIContext uIContext) {
|
||||
switch (uIContext)
|
||||
{
|
||||
case UIContext.SupportConcept: return "ModuleAiControlSupportConceptStyle";
|
||||
case UIContext.Customer: return "ModuleAiControlCustomerStyle";
|
||||
case UIContext.Person: return "ModuleAiControlPersonStyle";
|
||||
case UIContext.Employee: return "ModuleAiControlEmployeeStyle";
|
||||
case UIContext.Organisation: return "ModuleAiControlOrganisationStyle";
|
||||
case UIContext.Team:
|
||||
break;
|
||||
case UIContext.Dokumente:
|
||||
break;
|
||||
case UIContext.User:
|
||||
break;
|
||||
case UIContext.UserGroup:
|
||||
break;
|
||||
case UIContext.Report:
|
||||
break;
|
||||
case UIContext.Scheduler:
|
||||
break;
|
||||
case UIContext.Wohnheim:
|
||||
break;
|
||||
case UIContext.Vertretungen:
|
||||
break;
|
||||
case UIContext.CustomerTeam:
|
||||
break;
|
||||
case UIContext.Scheduling:
|
||||
break;
|
||||
case UIContext.Finance:
|
||||
break;
|
||||
case UIContext.Administration:
|
||||
break;
|
||||
case UIContext.AiConversation:
|
||||
break;
|
||||
case UIContext.AiConversationPopup:
|
||||
break;
|
||||
case UIContext.ServiceRecord: return "ModuleAiControlZeiterfassungStyle";
|
||||
case UIContext.CustomerSingle: return "ModuleAiControlCustomerStyle";
|
||||
case UIContext.PersonSingle: return "ModuleAiControlPersonStyle";
|
||||
case UIContext.EmployeeSingle: return "ModuleAiControlEmployeeStyle";
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
80
BeWo/Services/BeWoWindowFactory.cs
Normal file
80
BeWo/Services/BeWoWindowFactory.cs
Normal file
@@ -0,0 +1,80 @@
|
||||
using BeWo.View.Detail.AI;
|
||||
using BeWo.View.Windows;
|
||||
using BS.Shared;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
|
||||
namespace BeWo.Services
|
||||
{
|
||||
internal class BeWoWindowFactory : IWindowFactory
|
||||
{
|
||||
public Dictionary<UIContext, string> UIContext2Header { get; set; } = new Dictionary<UIContext, string>()
|
||||
{
|
||||
{UIContext.ServiceRecord, "Zeiterfassung KI Chat" },
|
||||
{UIContext.Customer, "Klienten Übersicht KI Chat" },
|
||||
{UIContext.Person, "Personen Übersicht KI Chat" },
|
||||
{UIContext.Employee, "Mitarbeiter Übersicht KI Chat" },
|
||||
{UIContext.Organisation, "Organisation Übersicht KI Chat" },
|
||||
{UIContext.SupportConcept, "Hilfeplan Übersicht KI Chat" },
|
||||
{UIContext.CustomerSingle, "Klient KI Chat" },
|
||||
};
|
||||
|
||||
public AnimatedBeWoWindow GetAiConversationWindow(UIContext uIContext, Control control, double height = 600, double width = 1200)
|
||||
{
|
||||
UIContext2Header.TryGetValue(uIContext, out string title);
|
||||
|
||||
if (string.IsNullOrEmpty(title))
|
||||
title = "default";
|
||||
|
||||
var window = GetAnimatedBeWoWindow(title, control,height, width);
|
||||
|
||||
return window;
|
||||
}
|
||||
|
||||
private AnimatedBeWoWindow GetAnimatedBeWoWindow(string title, Control control, double height = 600, double width = 600)
|
||||
{
|
||||
var beWoWindow = new AnimatedBeWoWindow();
|
||||
|
||||
beWoWindow.Height = height;
|
||||
beWoWindow.Width = width;
|
||||
|
||||
beWoWindow.WindowStartupLocation = WindowStartupLocation.CenterOwner;
|
||||
beWoWindow.Owner = BeWoApp.CurrentBeWo.MainWindow;
|
||||
beWoWindow.Title = title + " Fenster";
|
||||
beWoWindow.rootGroupBox.Header = title;
|
||||
beWoWindow.GroupBoxContent = control;
|
||||
|
||||
return beWoWindow;
|
||||
}
|
||||
|
||||
public Control GetAiModalViewWindow(UIContext uIContext, Control control, double height = 600, double width = 1200)
|
||||
{
|
||||
UIContext2Header.TryGetValue(uIContext, out string title);
|
||||
|
||||
if (string.IsNullOrEmpty(title))
|
||||
title = "default";
|
||||
|
||||
var popup = GetAiModalViewWindow(title, control, height, width);
|
||||
|
||||
return popup;
|
||||
}
|
||||
|
||||
private Control GetAiModalViewWindow(string title, Control control, double height = 600, double width = 600)
|
||||
{
|
||||
var popup = new GroupBox();
|
||||
|
||||
popup.Style = Application.Current.FindResource("PopUpWindowStyle") as Style;
|
||||
popup.Header = title;
|
||||
popup.Content = control;
|
||||
popup.Height = height;
|
||||
popup.Width = width;
|
||||
|
||||
return popup;
|
||||
}
|
||||
}
|
||||
}
|
||||
69
BeWo/Services/BeWoWindowService.cs
Normal file
69
BeWo/Services/BeWoWindowService.cs
Normal file
@@ -0,0 +1,69 @@
|
||||
using BeWo.View.Windows;
|
||||
using BS.Shared;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Input;
|
||||
|
||||
namespace BeWo.Services
|
||||
{
|
||||
internal class BeWoWindowService : IWindowService
|
||||
{
|
||||
private readonly IWindowFactory _builder;
|
||||
private readonly IControlFactory _controlFactory;
|
||||
|
||||
public BeWoWindowService(IWindowFactory builder, IControlFactory controlFactory)
|
||||
{
|
||||
_builder = builder;
|
||||
_controlFactory = controlFactory;
|
||||
}
|
||||
|
||||
public void ShowAiConversationWindow(UIContext uIContext, Dictionary<TableID, long[]> bewoObjects, long? reference_oid = null)
|
||||
{
|
||||
#if !DEBUG
|
||||
BeWoApp.ShowInfoMessage("Diese Funktion befindet sich in der Testphase.");
|
||||
return;
|
||||
#endif
|
||||
|
||||
ShowWindowDialog(
|
||||
cf => cf.GetAiConversationControl(uIContext, bewoObjects, reference_oid),
|
||||
(wf, ctrl) => wf.GetAiConversationWindow(uIContext, ctrl));
|
||||
}
|
||||
public void ShowAiConversationModalViewWindow(UIContext uIContext, Dictionary<TableID, long[]> bewoObjects, long? reference_oid = null)
|
||||
{
|
||||
#if !DEBUG
|
||||
BeWoApp.ShowInfoMessage("Diese Funktion befindet sich in der Testphase.");
|
||||
return;
|
||||
#endif
|
||||
|
||||
ShowModalViewWindow(cf => cf.GetAiConversationControl(uIContext, bewoObjects, reference_oid),
|
||||
(wf, ctrl) => wf.GetAiModalViewWindow(uIContext, ctrl));
|
||||
}
|
||||
|
||||
private void ShowWindow(Func<IControlFactory, Control> getControl, Func<IWindowFactory, Control, Window> getWindow)
|
||||
{
|
||||
var control = getControl(_controlFactory);
|
||||
var window = getWindow(_builder, control);
|
||||
window.Show();
|
||||
}
|
||||
|
||||
private void ShowWindowDialog(Func<IControlFactory, Control> getControl, Func<IWindowFactory, Control, Window> getWindow)
|
||||
{
|
||||
var control = getControl(_controlFactory);
|
||||
var window = getWindow(_builder, control);
|
||||
window.ShowDialog();
|
||||
}
|
||||
|
||||
private void ShowModalViewWindow(Func<IControlFactory, Control> getControl, Func<IWindowFactory, Control, Control> getPopup)
|
||||
{
|
||||
var control = getControl(_controlFactory);
|
||||
var window = getPopup(_builder, control);
|
||||
window.CommandBindings.Add(new CommandBinding(ApplicationCommands.Close, (s, e) => BeWoApp.MainControl.CloseCurrentPopUp()));
|
||||
BeWoApp.MainControl.ShowControlAsModalPopup(window);
|
||||
}
|
||||
}
|
||||
}
|
||||
16
BeWo/Services/IControlFactory.cs
Normal file
16
BeWo/Services/IControlFactory.cs
Normal file
@@ -0,0 +1,16 @@
|
||||
using BS.Shared;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
|
||||
namespace BeWo.Services
|
||||
{
|
||||
internal interface IControlFactory
|
||||
{
|
||||
Control GetAiConversationControl(UIContext uIContext, Dictionary<TableID, long[]> context, long? reference_oid = null);
|
||||
}
|
||||
}
|
||||
18
BeWo/Services/IWindowFactory.cs
Normal file
18
BeWo/Services/IWindowFactory.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
using BeWo.View.Windows;
|
||||
using BS.Shared;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
|
||||
namespace BeWo.Services
|
||||
{
|
||||
internal interface IWindowFactory
|
||||
{
|
||||
AnimatedBeWoWindow GetAiConversationWindow(UIContext uIContext, Control control, double height = 600, double width = 1200);
|
||||
Control GetAiModalViewWindow(UIContext uIContext, Control control, double height = 600, double width = 1200);
|
||||
}
|
||||
}
|
||||
17
BeWo/Services/IWindowService.cs
Normal file
17
BeWo/Services/IWindowService.cs
Normal file
@@ -0,0 +1,17 @@
|
||||
using BS.Shared;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
|
||||
namespace BeWo.Services
|
||||
{
|
||||
internal interface IWindowService
|
||||
{
|
||||
void ShowAiConversationWindow(UIContext uIContext, Dictionary<TableID, long[]> bewoObjects, long? reference_oid = null);
|
||||
void ShowAiConversationModalViewWindow(UIContext uIContext, Dictionary<TableID, long[]> bewoObjects, long? reference_oid = null);
|
||||
}
|
||||
}
|
||||
@@ -1,10 +1,135 @@
|
||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||
<SolidColorBrush x:Key="TextBoxBorderBrush" Color="#FF86878F" />
|
||||
|
||||
|
||||
<SolidColorBrush x:Key="ControlBackgroundBrush" Color="#FFFDC784" />
|
||||
<SolidColorBrush x:Key="ControlSelectedBackgroundBrush" Color="#FFFFD86C" />
|
||||
<SolidColorBrush x:Key="ControlMouseOverBackgroundBrush" Color="#FFDCA158" />
|
||||
|
||||
<SolidColorBrush x:Key="TabItemHotTextBrush" Color="#FFAB4A07" />
|
||||
|
||||
|
||||
<!-- Region Brushes -->
|
||||
<SolidColorBrush x:Key="TextModuleBrush" Color="#FFA9B8C2" />
|
||||
<SolidColorBrush x:Key="ZusageMitVorbehaltBrush" Color="#FFB927D9" />
|
||||
<SolidColorBrush x:Key="ZusageZugesagtBrush" Color="#FF48D44E" />
|
||||
<SolidColorBrush x:Key="ZusageAbgesagtBrush" Color="#FFAB0030" />
|
||||
<SolidColorBrush x:Key="GridPrintMenuLightBrush" Color="White" />
|
||||
<SolidColorBrush x:Key="BSOrangeBrush" Color="#FFFF5A00" />
|
||||
<SolidColorBrush x:Key="LightOrangeBrush" Color="#FFFB6F0E" />
|
||||
<SolidColorBrush x:Key="GroupBookingBackgroundBrush" Color="#FFFDC784" />
|
||||
<SolidColorBrush x:Key="GroupBookingSelectedBackgroundBrush" Color="#FFBE8A49" />
|
||||
<SolidColorBrush x:Key="GroupBookingMouseOverBackgroundBrush" Color="#FFDCA158" />
|
||||
<LinearGradientBrush x:Key="ApplicationBackground" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0.38" Color="#FFDADADB" />
|
||||
<GradientStop Offset="0.725" Color="#FFA9B8C2" />
|
||||
<GradientStop Offset="0.91" Color="#FF4E565A" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<LinearGradientBrush x:Key="LoginBackground" StartPoint="0.5,0.051" EndPoint="0.5,0.699">
|
||||
<GradientStop Color="#FF96A4AD" />
|
||||
<GradientStop Offset="0.888" Color="#FF9FADB6" />
|
||||
<GradientStop Offset="0.625" Color="#FFA9B8C2" />
|
||||
<GradientStop Offset="0.504" Color="#FF87929B" />
|
||||
<GradientStop Offset="0.33" Color="#FF8E9AA3" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<SolidColorBrush x:Key="ControlBackground" Color="#FFFCFAF2" />
|
||||
|
||||
<SolidColorBrush x:Key="MainGroupBoxForegroundBrush" Color="#FFD7D7D7" />
|
||||
<RadialGradientBrush x:Key="MainGroupBoxComboBackgroundBrush">
|
||||
<GradientStop Offset="0" Color="#4CD7D7D7" />
|
||||
<GradientStop Offset="0.995" Color="#00D7D7D7" />
|
||||
</RadialGradientBrush>
|
||||
|
||||
<LinearGradientBrush x:Key="MainGroupBoxSelectedItemBrush" StartPoint="0,0" EndPoint="0,1">
|
||||
<GradientStop Offset="0" Color="#24000000" />
|
||||
<GradientStop Offset="1" Color="#4C000000" />
|
||||
</LinearGradientBrush>
|
||||
<SolidColorBrush x:Key="GlyphBrush" Color="#FF0D82C0" />
|
||||
<LinearGradientBrush x:Key="ButtonNormalBackground" StartPoint="0,0" EndPoint="0,1">
|
||||
<GradientStop Offset="0" Color="#F3F3F3" />
|
||||
<GradientStop Offset="0.5" Color="#EBEBEB" />
|
||||
<GradientStop Offset="0.5" Color="#DDDDDD" />
|
||||
<GradientStop Offset="1" Color="#CDCDCD" />
|
||||
</LinearGradientBrush>
|
||||
<SolidColorBrush x:Key="ButtonNormalBorder" Color="#FF707070" />
|
||||
|
||||
<LinearGradientBrush x:Key="BorderBrush" MappingMode="Absolute" StartPoint="0,0" EndPoint="0,20">
|
||||
<GradientStop Offset="0.05" Color="#ABADB3" />
|
||||
<GradientStop Offset="0.07" Color="#E2E3EA" />
|
||||
<GradientStop Offset="1" Color="#E3E9EF" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<LinearGradientBrush x:Key="DevEx" StartPoint="0,0" EndPoint="0,1">
|
||||
<GradientStop Offset="0" Color="#FFFBF9F9" />
|
||||
<GradientStop Offset="1" Color="#FFDFDFDF" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<LinearGradientBrush x:Key="MouseOverBrush" StartPoint="0,0" EndPoint="0,1">
|
||||
<GradientStop Offset="0.0" Color="#FFF" />
|
||||
<GradientStop Offset="1.0" Color="#AAA" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<LinearGradientBrush x:Key="PressedBrush" StartPoint="0,0" EndPoint="0,1">
|
||||
<GradientStop Offset="0.0" Color="#BBB" />
|
||||
<GradientStop Offset="0.1" Color="#EEE" />
|
||||
<GradientStop Offset="0.9" Color="#EEE" />
|
||||
<GradientStop Offset="1.0" Color="#FFF" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<LinearGradientBrush x:Key="ToolbarBrushBlack" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#FF858585" />
|
||||
<GradientStop Offset="0.99" Color="#FF2B2B2B" />
|
||||
<GradientStop Offset="0.415" Color="#FF414141" />
|
||||
<GradientStop Offset="0.535" Color="#FF000000" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<SolidColorBrush x:Key="ToolbarTextBrush" Color="#FF000000" />
|
||||
|
||||
|
||||
<LinearGradientBrush x:Key="ToolbarBrush" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0.095" Color="#FFF6D7AE" />
|
||||
<GradientStop Offset="1" Color="#FFF7DE8C" />
|
||||
<GradientStop Offset="0.29" Color="#FFF9B14C" />
|
||||
<GradientStop Offset="0.546" Color="#FFFBC15C" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<SolidColorBrush x:Key="NavigationHeaderBrushTest" Color="#FF474747" />
|
||||
<LinearGradientBrush x:Key="NavigationContentBrushTest" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#FFBEAF00" />
|
||||
<GradientStop Offset="1" Color="#FF8C7D00" />
|
||||
</LinearGradientBrush>
|
||||
<!-- Endregion -->
|
||||
|
||||
<!-- Module AI Farben -->
|
||||
<Color x:Key="ModuleAiControlDefaultNavigationHeaderColor">#ffaaaaaa</Color>
|
||||
<Color x:Key="ModuleAiControlDefaultNavigationContentColor">#FFD7DADB</Color>
|
||||
<Color x:Key="ModuleAiControlDefaultNavigationContentColor2">#FF92A9B3</Color>
|
||||
|
||||
<Color x:Key="ModuleAiControlZeiterfassungNavigationHeaderColor">#FFC80000</Color>
|
||||
<Color x:Key="ModuleAiControlZeiterfassungNavigationContentColor">#FFD7DADB</Color>
|
||||
<Color x:Key="ModuleAiControlZeiterfassungNavigationContentColor2">#FF92A9B3</Color>
|
||||
|
||||
<Color x:Key="ModuleAiControlSupportConceptNavigationHeaderColor">#FF993B3B</Color>
|
||||
<Color x:Key="ModuleAiControlSupportConceptNavigationContentColor">#FFD7DADB</Color>
|
||||
<Color x:Key="ModuleAiControlSupportConceptNavigationContentColor2">#FF92A9B3</Color>
|
||||
|
||||
<Color x:Key="ModuleAiControlCustomerNavigationHeaderColor">#FF19485C</Color>
|
||||
<Color x:Key="ModuleAiControlCustomerNavigationContentColor">#FFD7DADB</Color>
|
||||
<Color x:Key="ModuleAiControlCustomerNavigationContentColor2">#FF92A9B3</Color>
|
||||
|
||||
<Color x:Key="ModuleAiControlPersonNavigationHeaderColor">#FF9E3D02</Color>
|
||||
<Color x:Key="ModuleAiControlPersonNavigationContentColor">#FFD7DADB</Color>
|
||||
<Color x:Key="ModuleAiControlPersonNavigationContentColor2">#FF92A9B3</Color>
|
||||
|
||||
<Color x:Key="ModuleAiControlEmployeeNavigationHeaderColor">#FF205C19</Color>
|
||||
<Color x:Key="ModuleAiControlEmployeeNavigationContentColor">#FFD7DADB</Color>
|
||||
<Color x:Key="ModuleAiControlEmployeeNavigationContentColor2">#FF92A9B3</Color>
|
||||
|
||||
<Color x:Key="ModuleAiControlOrganisationNavigationHeaderColor">#FFC8C000</Color>
|
||||
<Color x:Key="ModuleAiControlOrganisationNavigationContentColor">#FFD7DADB</Color>
|
||||
<Color x:Key="ModuleAiControlOrganisationNavigationContentColor2">#FF92A9B3</Color>
|
||||
|
||||
<SolidColorBrush x:Key="ModuleAiChatTabItem" Color="#FFFFFFBF" />
|
||||
<SolidColorBrush x:Key="ModuleAiChatPrimaryColor" Color="#FFCECF7F" />
|
||||
</ResourceDictionary>
|
||||
@@ -150,4 +150,168 @@
|
||||
TargetType="{x:Type Button}">
|
||||
<Setter Property="Height" Value="21" />
|
||||
</Style>
|
||||
|
||||
<!-- Region Weiße Buttons im ModalPopup -->
|
||||
<Style
|
||||
x:Key="PopupToolbarButtonStyle"
|
||||
BasedOn="{StaticResource HideDisabledButton}"
|
||||
TargetType="{x:Type Button}">
|
||||
<Setter Property="Foreground" Value="#FFFFFFFF" />
|
||||
<Setter Property="FontWeight" Value="Medium" />
|
||||
<Setter Property="FontSize" Value="16" />
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type Button}">
|
||||
<ControlTemplate.Resources>
|
||||
<Storyboard x:Key="Storyboard1">
|
||||
<DoubleAnimationUsingKeyFrames
|
||||
AccelerationRatio="1"
|
||||
BeginTime="00:00:00"
|
||||
Storyboard.TargetName="contentPresenter"
|
||||
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)"
|
||||
Duration="00:00:00.2">
|
||||
<SplineDoubleKeyFrame KeyTime="00:00:00.2" Value="1.2" />
|
||||
</DoubleAnimationUsingKeyFrames>
|
||||
<DoubleAnimationUsingKeyFrames
|
||||
AccelerationRatio="1"
|
||||
BeginTime="00:00:00"
|
||||
Storyboard.TargetName="contentPresenter"
|
||||
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)"
|
||||
Duration="00:00:00.2">
|
||||
<SplineDoubleKeyFrame KeyTime="00:00:00.2" Value="1.2" />
|
||||
</DoubleAnimationUsingKeyFrames>
|
||||
</Storyboard>
|
||||
<Storyboard x:Key="Storyboard2">
|
||||
<DoubleAnimationUsingKeyFrames
|
||||
BeginTime="00:00:00"
|
||||
DecelerationRatio="1"
|
||||
Storyboard.TargetName="contentPresenter"
|
||||
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)"
|
||||
Duration="00:00:00.2">
|
||||
<SplineDoubleKeyFrame KeyTime="00:00:00.2" Value="1" />
|
||||
</DoubleAnimationUsingKeyFrames>
|
||||
<DoubleAnimationUsingKeyFrames
|
||||
BeginTime="00:00:00"
|
||||
DecelerationRatio="1"
|
||||
Storyboard.TargetName="contentPresenter"
|
||||
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)"
|
||||
Duration="00:00:00.2">
|
||||
<SplineDoubleKeyFrame KeyTime="00:00:00.2" Value="1" />
|
||||
</DoubleAnimationUsingKeyFrames>
|
||||
</Storyboard>
|
||||
</ControlTemplate.Resources>
|
||||
<ContentPresenter
|
||||
x:Name="contentPresenter"
|
||||
Width="Auto"
|
||||
Margin="3,0,3,0"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
RenderTransformOrigin="0.5,0.5">
|
||||
<ContentPresenter.RenderTransform>
|
||||
<TransformGroup>
|
||||
<ScaleTransform ScaleX="1" ScaleY="1" />
|
||||
<SkewTransform AngleX="0" AngleY="0" />
|
||||
<RotateTransform Angle="0" />
|
||||
<TranslateTransform X="0" Y="0" />
|
||||
</TransformGroup>
|
||||
</ContentPresenter.RenderTransform>
|
||||
</ContentPresenter>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Trigger.ExitActions>
|
||||
<BeginStoryboard x:Name="Storyboard2_BeginStoryboard" Storyboard="{StaticResource Storyboard2}" />
|
||||
</Trigger.ExitActions>
|
||||
<Trigger.EnterActions>
|
||||
<BeginStoryboard Storyboard="{StaticResource Storyboard1}" />
|
||||
</Trigger.EnterActions>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
<!-- EndRegion -->
|
||||
|
||||
<!-- Region Weiße Buttons im MainNavigationView -->
|
||||
<Style
|
||||
x:Key="NavigationToolbarButtonStyle"
|
||||
BasedOn="{StaticResource HideDisabledButton}"
|
||||
TargetType="{x:Type Button}">
|
||||
<Setter Property="VerticalContentAlignment" Value="Center" />
|
||||
<Setter Property="HorizontalAlignment" Value="Center" />
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type Button}">
|
||||
<ControlTemplate.Resources>
|
||||
<Storyboard x:Key="Storyboard1">
|
||||
<DoubleAnimationUsingKeyFrames
|
||||
AccelerationRatio="1"
|
||||
BeginTime="00:00:00"
|
||||
Storyboard.TargetName="contentPresenter"
|
||||
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)"
|
||||
Duration="00:00:00.2">
|
||||
<SplineDoubleKeyFrame KeyTime="00:00:00.2" Value="1.2" />
|
||||
</DoubleAnimationUsingKeyFrames>
|
||||
<DoubleAnimationUsingKeyFrames
|
||||
AccelerationRatio="1"
|
||||
BeginTime="00:00:00"
|
||||
Storyboard.TargetName="contentPresenter"
|
||||
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)"
|
||||
Duration="00:00:00.2">
|
||||
<SplineDoubleKeyFrame KeyTime="00:00:00.2" Value="1.2" />
|
||||
</DoubleAnimationUsingKeyFrames>
|
||||
</Storyboard>
|
||||
<Storyboard x:Key="Storyboard2">
|
||||
<DoubleAnimationUsingKeyFrames
|
||||
BeginTime="00:00:00"
|
||||
DecelerationRatio="1"
|
||||
Storyboard.TargetName="contentPresenter"
|
||||
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)"
|
||||
Duration="00:00:00.2">
|
||||
<SplineDoubleKeyFrame KeyTime="00:00:00.2" Value="1" />
|
||||
</DoubleAnimationUsingKeyFrames>
|
||||
<DoubleAnimationUsingKeyFrames
|
||||
BeginTime="00:00:00"
|
||||
DecelerationRatio="1"
|
||||
Storyboard.TargetName="contentPresenter"
|
||||
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)"
|
||||
Duration="00:00:00.2">
|
||||
<SplineDoubleKeyFrame KeyTime="00:00:00.2" Value="1" />
|
||||
</DoubleAnimationUsingKeyFrames>
|
||||
</Storyboard>
|
||||
</ControlTemplate.Resources>
|
||||
<ContentPresenter
|
||||
x:Name="contentPresenter"
|
||||
Width="Auto"
|
||||
Margin="3,0,3,0"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
RenderTransformOrigin="0.5,0.5">
|
||||
<ContentPresenter.RenderTransform>
|
||||
<TransformGroup>
|
||||
<ScaleTransform ScaleX="1" ScaleY="1" />
|
||||
<SkewTransform AngleX="0" AngleY="0" />
|
||||
<RotateTransform Angle="0" />
|
||||
<TranslateTransform X="0" Y="0" />
|
||||
</TransformGroup>
|
||||
</ContentPresenter.RenderTransform>
|
||||
</ContentPresenter>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Trigger.ExitActions>
|
||||
<BeginStoryboard x:Name="Storyboard2_BeginStoryboard" Storyboard="{StaticResource Storyboard2}" />
|
||||
</Trigger.ExitActions>
|
||||
<Trigger.EnterActions>
|
||||
<BeginStoryboard Storyboard="{StaticResource Storyboard1}" />
|
||||
</Trigger.EnterActions>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Setter Property="Foreground" Value="#FFFFFFFF" />
|
||||
<Setter Property="FontFamily" Value="Microsoft Sans Serif" />
|
||||
<Setter Property="FontSize" Value="16" />
|
||||
</Style>
|
||||
<!-- EndRegion -->
|
||||
</ResourceDictionary>
|
||||
@@ -1,4 +1,7 @@
|
||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<ResourceDictionary Source="..\DataTemplates\ControlTemplates.xaml" />
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
<Style x:Key="BaseGroupBox" TargetType="{x:Type GroupBox}">
|
||||
<Setter Property="BorderThickness" Value="1" />
|
||||
<Setter Property="Padding" Value="3" />
|
||||
|
||||
38
BeWo/Styles/ControlStyles/WindowStyles.xaml
Normal file
38
BeWo/Styles/ControlStyles/WindowStyles.xaml
Normal file
@@ -0,0 +1,38 @@
|
||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||
<Style x:Key="WindowBase" TargetType="{x:Type Window}" />
|
||||
|
||||
<Style
|
||||
x:Key="EmptyWindow"
|
||||
BasedOn="{StaticResource WindowBase}"
|
||||
TargetType="{x:Type Window}" />
|
||||
|
||||
<!-- Eine Ease-Out-Funktion für eine sanfte Bewegung -->
|
||||
<QuadraticEase x:Key="EaseOut" EasingMode="EaseOut" />
|
||||
|
||||
<Storyboard x:Key="WindowLoadedAnimation">
|
||||
<DoubleAnimation
|
||||
Storyboard.TargetProperty="Opacity"
|
||||
From="0"
|
||||
To="1"
|
||||
Duration="0:0:0.5" />
|
||||
<DoubleAnimation
|
||||
EasingFunction="{StaticResource EaseOut}"
|
||||
Storyboard.TargetProperty="RenderTransform.(TranslateTransform.Y)"
|
||||
From="50"
|
||||
To="0"
|
||||
Duration="0:0:0.5" />
|
||||
</Storyboard>
|
||||
<Storyboard x:Key="WindowClosingAnimation">
|
||||
<DoubleAnimation
|
||||
Storyboard.TargetProperty="Opacity"
|
||||
From="1"
|
||||
To="0"
|
||||
Duration="0:0:0.5" />
|
||||
<DoubleAnimation
|
||||
EasingFunction="{StaticResource EaseOut}"
|
||||
Storyboard.TargetProperty="RenderTransform.(TranslateTransform.Y)"
|
||||
From="0"
|
||||
To="50"
|
||||
Duration="0:0:0.5" />
|
||||
</Storyboard>
|
||||
</ResourceDictionary>
|
||||
@@ -2,6 +2,11 @@
|
||||
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.Aero">
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
|
||||
<ResourceDictionary Source="..\Colors\Colors.xaml" />
|
||||
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
<Style x:Key="ComboBoxFocusVisual">
|
||||
<Setter Property="Control.Template">
|
||||
<Setter.Value>
|
||||
@@ -89,4 +94,55 @@
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
|
||||
<ControlTemplate x:Key="NavigationGroupTemplate2" TargetType="{x:Type GroupBox}">
|
||||
<Grid SnapsToDevicePixels="True">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Border
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Background="{DynamicResource NavigationHeaderBrush}"
|
||||
CornerRadius="1,1,1,1">
|
||||
<Border
|
||||
x:Name="Header"
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Margin="8"
|
||||
Padding="0"
|
||||
Background="{x:Null}">
|
||||
<ContentPresenter
|
||||
Margin="0,0,0,0"
|
||||
Content="{TemplateBinding Header}"
|
||||
ContentSource="Header"
|
||||
ContentStringFormat="{TemplateBinding HeaderStringFormat}"
|
||||
ContentTemplate="{TemplateBinding HeaderTemplate}"
|
||||
RecognizesAccessKey="True"
|
||||
RenderTransformOrigin="0,0.5"
|
||||
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
|
||||
</Border>
|
||||
</Border>
|
||||
|
||||
|
||||
<Border
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Margin="0,2,0,0"
|
||||
Padding="0,0,0,0"
|
||||
Background="{DynamicResource NavigationContentBrush}"
|
||||
CornerRadius="1,1,1,1">
|
||||
<ContentPresenter
|
||||
Content="{TemplateBinding Content}"
|
||||
ContentStringFormat="{TemplateBinding ContentStringFormat}"
|
||||
ContentTemplate="{TemplateBinding ContentTemplate}"
|
||||
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
|
||||
</Border>
|
||||
</Grid>
|
||||
</ControlTemplate>
|
||||
</ResourceDictionary>
|
||||
3
BeWo/Styles/DataTemplates/WindowTemplates.xaml
Normal file
3
BeWo/Styles/DataTemplates/WindowTemplates.xaml
Normal file
@@ -0,0 +1,3 @@
|
||||
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||
</ResourceDictionary>
|
||||
314
BeWo/Styles/Features/AIChatStyles.xaml
Normal file
314
BeWo/Styles/Features/AIChatStyles.xaml
Normal file
@@ -0,0 +1,314 @@
|
||||
<ResourceDictionary
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:dxwui="http://schemas.devexpress.com/winfx/2008/xaml/windowsui"
|
||||
xmlns:templateselectors="clr-namespace:BeWo.View.TemplateSelectors"
|
||||
xmlns:viewmodel="clr-namespace:BeWo.ViewModel">
|
||||
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<ResourceDictionary Source="..\DataTemplates\ControlTemplates.xaml" />
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
|
||||
<Style x:Key="MessageTextBoxStyle" TargetType="{x:Type TextBox}">
|
||||
<Setter Property="Margin" Value="0" />
|
||||
<Setter Property="Height" Value="auto" />
|
||||
<Setter Property="Padding" Value="3" />
|
||||
<Setter Property="Background" Value="Transparent" />
|
||||
<Setter Property="BorderThickness" Value="0" />
|
||||
<Setter Property="IsReadOnly" Value="True" />
|
||||
<Setter Property="TextWrapping" Value="Wrap" />
|
||||
<Setter Property="Text" Value="{Binding Message, Converter={StaticResource NewlineConverter}}" />
|
||||
</Style>
|
||||
|
||||
<Style x:Key="TextBlockStyle" TargetType="{x:Type TextBlock}" />
|
||||
|
||||
<Style x:Key="ModuleAiControlDefaultStyle" TargetType="{x:Type GroupBox}">
|
||||
<Style.Resources>
|
||||
<SolidColorBrush x:Key="NavigationHeaderBrush" Color="{StaticResource ModuleAiControlDefaultNavigationHeaderColor}" />
|
||||
<LinearGradientBrush x:Key="NavigationContentBrush" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="{StaticResource ModuleAiControlDefaultNavigationContentColor}" />
|
||||
<GradientStop Offset="1" Color="{StaticResource ModuleAiControlDefaultNavigationContentColor2}" />
|
||||
</LinearGradientBrush>
|
||||
</Style.Resources>
|
||||
<Setter Property="Template" Value="{StaticResource NavigationGroupTemplate2}" />
|
||||
</Style>
|
||||
|
||||
<Style x:Key="ModuleAiControlZeiterfassungStyle" TargetType="{x:Type GroupBox}">
|
||||
<Style.Resources>
|
||||
<SolidColorBrush x:Key="NavigationHeaderBrush" Color="{StaticResource ModuleAiControlZeiterfassungNavigationHeaderColor}" />
|
||||
<LinearGradientBrush x:Key="NavigationContentBrush" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="{StaticResource ModuleAiControlZeiterfassungNavigationContentColor}" />
|
||||
<GradientStop Offset="1" Color="{StaticResource ModuleAiControlZeiterfassungNavigationContentColor2}" />
|
||||
</LinearGradientBrush>
|
||||
</Style.Resources>
|
||||
<Setter Property="Template" Value="{StaticResource NavigationGroupTemplate2}" />
|
||||
</Style>
|
||||
|
||||
<Style x:Key="ModuleAiControlSupportConceptStyle" TargetType="{x:Type GroupBox}">
|
||||
<Style.Resources>
|
||||
<SolidColorBrush x:Key="NavigationHeaderBrush" Color="{StaticResource ModuleAiControlSupportConceptNavigationHeaderColor}" />
|
||||
<LinearGradientBrush x:Key="NavigationContentBrush" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="{StaticResource ModuleAiControlSupportConceptNavigationContentColor}" />
|
||||
<GradientStop Offset="1" Color="{StaticResource ModuleAiControlSupportConceptNavigationContentColor2}" />
|
||||
</LinearGradientBrush>
|
||||
</Style.Resources>
|
||||
<Setter Property="Template" Value="{StaticResource NavigationGroupTemplate2}" />
|
||||
</Style>
|
||||
|
||||
<Style x:Key="ModuleAiControlCustomerStyle" TargetType="{x:Type GroupBox}">
|
||||
<Style.Resources>
|
||||
<SolidColorBrush x:Key="NavigationHeaderBrush" Color="{StaticResource ModuleAiControlCustomerNavigationHeaderColor}" />
|
||||
<LinearGradientBrush x:Key="NavigationContentBrush" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="{StaticResource ModuleAiControlCustomerNavigationContentColor}" />
|
||||
<GradientStop Offset="1" Color="{StaticResource ModuleAiControlCustomerNavigationContentColor2}" />
|
||||
</LinearGradientBrush>
|
||||
</Style.Resources>
|
||||
<Setter Property="Template" Value="{StaticResource NavigationGroupTemplate2}" />
|
||||
</Style>
|
||||
|
||||
<Style x:Key="ModuleAiControlPersonStyle" TargetType="{x:Type GroupBox}">
|
||||
<Style.Resources>
|
||||
<SolidColorBrush x:Key="NavigationHeaderBrush" Color="{StaticResource ModuleAiControlPersonNavigationHeaderColor}" />
|
||||
<LinearGradientBrush x:Key="NavigationContentBrush" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="{StaticResource ModuleAiControlPersonNavigationContentColor}" />
|
||||
<GradientStop Offset="1" Color="{StaticResource ModuleAiControlPersonNavigationContentColor2}" />
|
||||
</LinearGradientBrush>
|
||||
</Style.Resources>
|
||||
<Setter Property="Template" Value="{StaticResource NavigationGroupTemplate2}" />
|
||||
</Style>
|
||||
|
||||
<Style x:Key="ModuleAiControlEmployeeStyle" TargetType="{x:Type GroupBox}">
|
||||
<Style.Resources>
|
||||
<SolidColorBrush x:Key="NavigationHeaderBrush" Color="{StaticResource ModuleAiControlEmployeeNavigationHeaderColor}" />
|
||||
<LinearGradientBrush x:Key="NavigationContentBrush" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="{StaticResource ModuleAiControlEmployeeNavigationContentColor}" />
|
||||
<GradientStop Offset="1" Color="{StaticResource ModuleAiControlEmployeeNavigationContentColor2}" />
|
||||
</LinearGradientBrush>
|
||||
</Style.Resources>
|
||||
<Setter Property="Template" Value="{StaticResource NavigationGroupTemplate2}" />
|
||||
</Style>
|
||||
|
||||
<Style x:Key="ModuleAiControlOrganisationStyle" TargetType="{x:Type GroupBox}">
|
||||
<Style.Resources>
|
||||
<SolidColorBrush x:Key="NavigationHeaderBrush" Color="{StaticResource ModuleAiControlOrganisationNavigationHeaderColor}" />
|
||||
<LinearGradientBrush x:Key="NavigationContentBrush" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="{StaticResource ModuleAiControlOrganisationNavigationContentColor}" />
|
||||
<GradientStop Offset="1" Color="{StaticResource ModuleAiControlOrganisationNavigationContentColor2}" />
|
||||
</LinearGradientBrush>
|
||||
</Style.Resources>
|
||||
<Setter Property="Template" Value="{StaticResource NavigationGroupTemplate2}" />
|
||||
</Style>
|
||||
|
||||
<!-- OLD -->
|
||||
<Style x:Key="ModuleAiNavigationStyle" TargetType="{x:Type GroupBox}">
|
||||
<Style.Resources>
|
||||
<SolidColorBrush x:Key="NavigationHeaderBrush" Color="#FFC64605" />
|
||||
<LinearGradientBrush x:Key="NavigationContentBrush" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#FFFFC48A" />
|
||||
<GradientStop Offset="1" Color="#FFFF7830" />
|
||||
</LinearGradientBrush>
|
||||
</Style.Resources>
|
||||
|
||||
<Setter Property="Template" Value="{StaticResource NavigationGroupTemplate2}" />
|
||||
</Style>
|
||||
|
||||
<DataTemplate x:Key="ConversationHamburgerMenuItemTemplate" DataType="{x:Type viewmodel:AiConversationVM}">
|
||||
<dxwui:HamburgerMenuNavigationButton Content="{Binding Displayname}" />
|
||||
</DataTemplate>
|
||||
|
||||
<!-- Conversation Control -->
|
||||
<DataTemplate x:Key="ConversationTemplate">
|
||||
<Border
|
||||
Width="auto"
|
||||
Margin="0,0,0,0"
|
||||
HorizontalAlignment="Stretch"
|
||||
Background="#44000000"
|
||||
BorderBrush="Black"
|
||||
BorderThickness="1"
|
||||
CornerRadius="10, 10, 10, 10">
|
||||
<Grid Margin="8">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="auto" />
|
||||
<RowDefinition Height="auto" />
|
||||
<RowDefinition Height="auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock
|
||||
FontSize="12"
|
||||
FontWeight="SemiBold"
|
||||
Text="{Binding Displayname}"
|
||||
TextTrimming="CharacterEllipsis" />
|
||||
<TextBlock
|
||||
Grid.Row="1"
|
||||
FontSize="10"
|
||||
FontWeight="Thin"
|
||||
Style="{StaticResource TextBlockStyle}"
|
||||
Text="{Binding Created, StringFormat=Erstellt: {0:dd.MM.yyyy HH:mm:ss}}" />
|
||||
<TextBlock
|
||||
Grid.Row="2"
|
||||
FontSize="10"
|
||||
FontWeight="Thin"
|
||||
Style="{StaticResource TextBlockStyle}"
|
||||
Text="{Binding Updated, StringFormat=Aktualisiert: {0:dd.MM.yyyy HH:mm:ss}}" />
|
||||
<!--<TextBlock
|
||||
Grid.Row="2"
|
||||
FontSize="10"
|
||||
FontWeight="Thin"
|
||||
Style="{StaticResource TextBlockStyle}"
|
||||
Text="{Binding Modell.ModelName, StringFormat=Modell: {0}}" />-->
|
||||
</Grid>
|
||||
</Border>
|
||||
</DataTemplate>
|
||||
|
||||
<!-- Assistent Message Control -->
|
||||
<DataTemplate x:Key="AssistentMessageTemplate">
|
||||
<Grid Margin="0,0,30,0" HorizontalAlignment="Left">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Border
|
||||
Width="auto"
|
||||
Margin="0,4,0,0"
|
||||
Padding="4"
|
||||
VerticalAlignment="Top"
|
||||
Background="#09000000"
|
||||
BorderBrush="Black"
|
||||
BorderThickness="0"
|
||||
CornerRadius="10, 10, 10, 10">
|
||||
<Image
|
||||
Width="24"
|
||||
Height="24"
|
||||
Source="..\..\Ressources\Icons\chatbot2.png" />
|
||||
</Border>
|
||||
<Border
|
||||
Grid.Column="1"
|
||||
Padding="8,4,8,4"
|
||||
Background="#00000000"
|
||||
BorderBrush="Black"
|
||||
BorderThickness="0"
|
||||
CornerRadius="0, 10, 10, 10">
|
||||
<Grid Margin="4,0,0,4">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="auto" />
|
||||
<RowDefinition Height="auto" />
|
||||
<RowDefinition Height="auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock
|
||||
Margin="0"
|
||||
Padding="0"
|
||||
FontSize="12"
|
||||
FontWeight="SemiBold"
|
||||
Style="{StaticResource TextBlockStyle}"
|
||||
Text="{Binding ModelName}" />
|
||||
<TextBlock
|
||||
Grid.Column="1"
|
||||
Margin="8,0,0,0"
|
||||
Padding="0"
|
||||
VerticalAlignment="Bottom"
|
||||
FontSize="10"
|
||||
FontWeight="Medium"
|
||||
Style="{StaticResource TextBlockStyle}"
|
||||
Text="{Binding Created, StringFormat={}{0:dd.MM.yyyy HH:mm:ss}}" />
|
||||
<TextBlock
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="0,4,0,4"
|
||||
Padding="0"
|
||||
VerticalAlignment="Center"
|
||||
FontSize="11"
|
||||
FontWeight="Medium"
|
||||
Foreground="#888888"
|
||||
Style="{StaticResource TextBlockStyle}"
|
||||
Text="{Binding DurationSec, StringFormat=Nachgedacht für {0} Sekunden}" />
|
||||
<!--<TextBlock
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="0,4,0,0"
|
||||
Padding="0"
|
||||
FontSize="11"
|
||||
FontWeight="Medium"
|
||||
Foreground="#888888"
|
||||
Style="{StaticResource TextBlockStyle}"
|
||||
Text="{Binding DurationSec, StringFormat=Nachgedacht für {0} Sekunden}" />-->
|
||||
<TextBox
|
||||
Grid.Row="2"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="0,4,0,0"
|
||||
Padding="-3"
|
||||
Style="{StaticResource MessageTextBoxStyle}" />
|
||||
|
||||
</Grid>
|
||||
</Border>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
|
||||
<!-- System Message Control -->
|
||||
<DataTemplate x:Key="SystemMessageTemplate">
|
||||
<Border
|
||||
Width="auto"
|
||||
Margin="30,0,30,0"
|
||||
HorizontalAlignment="Center"
|
||||
Background="#33000000"
|
||||
BorderBrush="Black"
|
||||
BorderThickness="0"
|
||||
CornerRadius="0">
|
||||
<Grid>
|
||||
<TextBox Padding="8" Style="{StaticResource MessageTextBoxStyle}" />
|
||||
</Grid>
|
||||
</Border>
|
||||
</DataTemplate>
|
||||
|
||||
<!-- User Message Control -->
|
||||
<DataTemplate x:Key="UserMessageTemplate">
|
||||
<Border
|
||||
Width="auto"
|
||||
Margin="30,0,0,0"
|
||||
HorizontalAlignment="Right"
|
||||
Background="#15000000"
|
||||
BorderBrush="Black"
|
||||
BorderThickness="0"
|
||||
CornerRadius="15, 15, 15, 15">
|
||||
<Grid>
|
||||
<TextBox Padding="12,8,12,8" Style="{StaticResource MessageTextBoxStyle}" />
|
||||
</Grid>
|
||||
</Border>
|
||||
</DataTemplate>
|
||||
|
||||
<DataTemplate x:Key="CheckboxAssistentMessageTemplate">
|
||||
<StackPanel VerticalAlignment="Center" Orientation="Horizontal">
|
||||
<CheckBox
|
||||
Margin="4"
|
||||
VerticalAlignment="Center"
|
||||
IsChecked="{Binding IsChecked}" />
|
||||
|
||||
<ContentPresenter Content="{Binding}" ContentTemplate="{StaticResource AssistentMessageTemplate}" />
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
|
||||
<DataTemplate x:Key="CheckboxUserMessageTemplate">
|
||||
<StackPanel VerticalAlignment="Center" Orientation="Horizontal">
|
||||
<CheckBox
|
||||
Margin="4"
|
||||
VerticalAlignment="Center"
|
||||
IsChecked="{Binding IsChecked}" />
|
||||
|
||||
<ContentPresenter Content="{Binding}" ContentTemplate="{StaticResource UserMessageTemplate}" />
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
|
||||
<templateselectors:AiConversationMessageTemplateSelector
|
||||
x:Key="AiConversationMessageTemplateSelector"
|
||||
AssistentMessageTemplate="{StaticResource AssistentMessageTemplate}"
|
||||
SystemMessageTemplate="{StaticResource SystemMessageTemplate}"
|
||||
UserMessageTemplate="{StaticResource UserMessageTemplate}" />
|
||||
|
||||
<templateselectors:AiConversationMessageTemplateSelector
|
||||
x:Key="AiConversationCloneMessageTemplateSelector"
|
||||
AssistentMessageTemplate="{StaticResource CheckboxAssistentMessageTemplate}"
|
||||
SystemMessageTemplate="{StaticResource SystemMessageTemplate}"
|
||||
UserMessageTemplate="{StaticResource UserMessageTemplate}" />
|
||||
</ResourceDictionary>
|
||||
@@ -3,6 +3,7 @@
|
||||
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:templateselectors="clr-namespace:BeWo.View.TemplateSelectors"
|
||||
xmlns:uc="clr-namespace:BeWo.View.Controls">
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
|
||||
@@ -23,6 +24,9 @@
|
||||
<ResourceDictionary Source="ControlStyles\TextBoxStyles.xaml" />
|
||||
<ResourceDictionary Source="ControlStyles\TextEditStyles.xaml" />
|
||||
<ResourceDictionary Source="ControlStyles\ToggleButtonStyles.xaml" />
|
||||
<ResourceDictionary Source="ControlStyles\WindowStyles.xaml" />
|
||||
|
||||
<ResourceDictionary Source="Features\AIChatStyles.xaml" />
|
||||
|
||||
<!-- Benötigt TextBoxStyles + ToggleButtonStyles -->
|
||||
<ResourceDictionary Source="ControlStyles\NullItemComboBoxStyles.xaml" />
|
||||
@@ -40,4 +44,6 @@
|
||||
<Style BasedOn="{StaticResource BaseRadioButton}" TargetType="RadioButton" />
|
||||
<Style BasedOn="{StaticResource TextBoxBase}" TargetType="TextBox" />
|
||||
<Style BasedOn="{StaticResource BaseTextEdit}" TargetType="dxe:TextEdit" />
|
||||
<!-- Default Styles -->
|
||||
|
||||
</ResourceDictionary>
|
||||
@@ -14,100 +14,14 @@
|
||||
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
mc:Ignorable="d">
|
||||
|
||||
<!-- Region Brushes -->
|
||||
<SolidColorBrush x:Key="TextModuleBrush" Color="#FFA9B8C2" />
|
||||
<SolidColorBrush x:Key="ZusageMitVorbehaltBrush" Color="#FFB927D9" />
|
||||
<SolidColorBrush x:Key="ZusageZugesagtBrush" Color="#FF48D44E" />
|
||||
<SolidColorBrush x:Key="ZusageAbgesagtBrush" Color="#FFAB0030" />
|
||||
<SolidColorBrush x:Key="GridPrintMenuLightBrush" Color="White" />
|
||||
<SolidColorBrush x:Key="BSOrangeBrush" Color="#FFFF5A00" />
|
||||
<SolidColorBrush x:Key="LightOrangeBrush" Color="#FFFB6F0E" />
|
||||
<SolidColorBrush x:Key="GroupBookingBackgroundBrush" Color="#FFFDC784" />
|
||||
<SolidColorBrush x:Key="GroupBookingSelectedBackgroundBrush" Color="#FFBE8A49" />
|
||||
<SolidColorBrush x:Key="GroupBookingMouseOverBackgroundBrush" Color="#FFDCA158" />
|
||||
<LinearGradientBrush x:Key="ApplicationBackground" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0.38" Color="#FFDADADB" />
|
||||
<GradientStop Offset="0.725" Color="#FFA9B8C2" />
|
||||
<GradientStop Offset="0.91" Color="#FF4E565A" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<ResourceDictionary Source="Colors\Colors.xaml" />
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
|
||||
<conv:CustomerDCPrintURLConverter x:Key="CustomerDCPrintURLConverter" />
|
||||
<conv:InvoiceBaseDCPrintURLConverter x:Key="InvoiceBaseDCPrintURLConverter" />
|
||||
|
||||
<LinearGradientBrush x:Key="LoginBackground" StartPoint="0.5,0.051" EndPoint="0.5,0.699">
|
||||
<GradientStop Color="#FF96A4AD" />
|
||||
<GradientStop Offset="0.888" Color="#FF9FADB6" />
|
||||
<GradientStop Offset="0.625" Color="#FFA9B8C2" />
|
||||
<GradientStop Offset="0.504" Color="#FF87929B" />
|
||||
<GradientStop Offset="0.33" Color="#FF8E9AA3" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<SolidColorBrush x:Key="ControlBackground" Color="#FFFCFAF2" />
|
||||
|
||||
<SolidColorBrush x:Key="MainGroupBoxForegroundBrush" Color="#FFD7D7D7" />
|
||||
<RadialGradientBrush x:Key="MainGroupBoxComboBackgroundBrush">
|
||||
<GradientStop Offset="0" Color="#4CD7D7D7" />
|
||||
<GradientStop Offset="0.995" Color="#00D7D7D7" />
|
||||
</RadialGradientBrush>
|
||||
|
||||
<LinearGradientBrush x:Key="MainGroupBoxSelectedItemBrush" StartPoint="0,0" EndPoint="0,1">
|
||||
<GradientStop Offset="0" Color="#24000000" />
|
||||
<GradientStop Offset="1" Color="#4C000000" />
|
||||
</LinearGradientBrush>
|
||||
<SolidColorBrush x:Key="GlyphBrush" Color="#FF0D82C0" />
|
||||
<LinearGradientBrush x:Key="ButtonNormalBackground" StartPoint="0,0" EndPoint="0,1">
|
||||
<GradientStop Offset="0" Color="#F3F3F3" />
|
||||
<GradientStop Offset="0.5" Color="#EBEBEB" />
|
||||
<GradientStop Offset="0.5" Color="#DDDDDD" />
|
||||
<GradientStop Offset="1" Color="#CDCDCD" />
|
||||
</LinearGradientBrush>
|
||||
<SolidColorBrush x:Key="ButtonNormalBorder" Color="#FF707070" />
|
||||
|
||||
|
||||
<LinearGradientBrush x:Key="BorderBrush" MappingMode="Absolute" StartPoint="0,0" EndPoint="0,20">
|
||||
<GradientStop Offset="0.05" Color="#ABADB3" />
|
||||
<GradientStop Offset="0.07" Color="#E2E3EA" />
|
||||
<GradientStop Offset="1" Color="#E3E9EF" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<SolidColorBrush x:Key="TextBoxBorderBrush" Color="#FF86878F" />
|
||||
|
||||
|
||||
<LinearGradientBrush x:Key="DevEx" StartPoint="0,0" EndPoint="0,1">
|
||||
<GradientStop Offset="0" Color="#FFFBF9F9" />
|
||||
<GradientStop Offset="1" Color="#FFDFDFDF" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<LinearGradientBrush x:Key="MouseOverBrush" StartPoint="0,0" EndPoint="0,1">
|
||||
<GradientStop Offset="0.0" Color="#FFF" />
|
||||
<GradientStop Offset="1.0" Color="#AAA" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<LinearGradientBrush x:Key="PressedBrush" StartPoint="0,0" EndPoint="0,1">
|
||||
<GradientStop Offset="0.0" Color="#BBB" />
|
||||
<GradientStop Offset="0.1" Color="#EEE" />
|
||||
<GradientStop Offset="0.9" Color="#EEE" />
|
||||
<GradientStop Offset="1.0" Color="#FFF" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<LinearGradientBrush x:Key="ToolbarBrushBlack" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#FF858585" />
|
||||
<GradientStop Offset="0.99" Color="#FF2B2B2B" />
|
||||
<GradientStop Offset="0.415" Color="#FF414141" />
|
||||
<GradientStop Offset="0.535" Color="#FF000000" />
|
||||
</LinearGradientBrush>
|
||||
|
||||
<SolidColorBrush x:Key="ToolbarTextBrush" Color="#FF000000" />
|
||||
|
||||
|
||||
<LinearGradientBrush x:Key="ToolbarBrush" StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0.095" Color="#FFF6D7AE" />
|
||||
<GradientStop Offset="1" Color="#FFF7DE8C" />
|
||||
<GradientStop Offset="0.29" Color="#FFF9B14C" />
|
||||
<GradientStop Offset="0.546" Color="#FFFBC15C" />
|
||||
</LinearGradientBrush>
|
||||
<!-- Endregion -->
|
||||
|
||||
<!-- Region Controls -->
|
||||
|
||||
<Style TargetType="{x:Type TextBox}">
|
||||
|
||||
@@ -1,13 +1,20 @@
|
||||
<Window x:Class="BeWo.UploadDialog"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="UploadDialog" Height="150" Width="300"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
WindowStyle="None"
|
||||
AllowsTransparency="True"
|
||||
Background="Transparent" ResizeMode="NoResize" >
|
||||
<Window
|
||||
x:Class="BeWo.UploadDialog"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Title="UploadDialog"
|
||||
Width="300"
|
||||
Height="150"
|
||||
AllowsTransparency="True"
|
||||
Background="Transparent"
|
||||
ResizeMode="NoResize"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
WindowStyle="None">
|
||||
<Grid>
|
||||
<GroupBox Style="{StaticResource MainContentGroupBoxWithoutMaximizeBtnStyle}" Header="Download" MouseLeftButtonDown="UIElement_OnMouseLeftButtonDown">
|
||||
<GroupBox
|
||||
Header="Download"
|
||||
MouseLeftButtonDown="UIElement_OnMouseLeftButtonDown"
|
||||
Style="{StaticResource MainContentGroupBoxWithoutMaximizeBtnStyle}">
|
||||
<Grid Background="{DynamicResource ObjectEditBackgroundBrush}">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
@@ -18,9 +25,29 @@
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Margin="3" Text="{Binding Question}" Grid.ColumnSpan="3" HorizontalAlignment="Center" VerticalAlignment="Center" TextWrapping="Wrap" TextAlignment="Center" Foreground="#FF202020"/>
|
||||
<Button Margin="0,0,5,5" Grid.Row="1" Grid.Column="1" Content="Hochladen" Click="btn_Upload_Click" x:Name="Hochladebtn" />
|
||||
<Button Margin="0,0,5,5" Grid.Row="1" Grid.Column="2" Content="Abbrechen" Command="Close" x:Name="Abbrechbtn" />
|
||||
<TextBlock
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Foreground="#FF202020"
|
||||
Text="{Binding Question}"
|
||||
TextAlignment="Center"
|
||||
TextWrapping="Wrap" />
|
||||
<Button
|
||||
x:Name="Hochladebtn"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Margin="0,0,5,5"
|
||||
Click="btn_Upload_Click"
|
||||
Content="Hochladen" />
|
||||
<Button
|
||||
x:Name="Abbrechbtn"
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Margin="0,0,5,5"
|
||||
Command="Close"
|
||||
Content="Abbrechen" />
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</Grid>
|
||||
|
||||
@@ -1,17 +1,22 @@
|
||||
<view:BeWoView x:Class="BeWo.View.BargeldkassenView"
|
||||
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:view="clr-namespace:BeWo.View"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:validation="clr-namespace:BeWo.Validation"
|
||||
xmlns:core="clr-namespace:BS.Shared.Core;assembly=BS.Shared"
|
||||
xmlns:controls="clr-namespace:BeWo.View.Controls"
|
||||
xmlns:t="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
Height="Auto" Width="Auto" HorizontalAlignment="Stretch"
|
||||
mc:Ignorable="d" VerticalAlignment="Stretch" Focusable="True">
|
||||
<view:BeWoView
|
||||
x:Class="BeWo.View.BargeldkassenView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:controls="clr-namespace:BeWo.View.Controls"
|
||||
xmlns:core="clr-namespace:BS.Shared.Core;assembly=BS.Shared"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:t="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:validation="clr-namespace:BeWo.Validation"
|
||||
xmlns:view="clr-namespace:BeWo.View"
|
||||
Width="Auto"
|
||||
Height="Auto"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
Focusable="True"
|
||||
mc:Ignorable="d">
|
||||
<view:BeWoView.Resources>
|
||||
<Style x:Key="bargeldkassenListBoxItemStyle" TargetType="{x:Type ListBoxItem}">
|
||||
<Setter Property="Background" Value="#00FFFFFF" />
|
||||
@@ -21,15 +26,20 @@
|
||||
<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
|
||||
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">
|
||||
@@ -40,7 +50,7 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
|
||||
<Style x:Key="HyperlinkStyle" TargetType="{x:Type Hyperlink}">
|
||||
<Setter Property="Foreground" Value="#FF2B508B" />
|
||||
<!--<Style.Triggers>
|
||||
@@ -53,18 +63,29 @@
|
||||
<GroupBox Header="Bargeldkassen" Style="{StaticResource ObjectEditGroupBox}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Button Content="Neue Kasse hinzufügen" Margin="3" Click="ButtonOpenAddBargeldkasseClick" IsEnabled="{Binding Path=DarfBargeldTransaktionAnlegen, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}" />
|
||||
<Button
|
||||
Margin="3"
|
||||
Click="ButtonOpenAddBargeldkasseClick"
|
||||
Content="Neue Kasse hinzufügen"
|
||||
IsEnabled="{Binding Path=DarfBargeldTransaktionAnlegen, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}" />
|
||||
<controls:PopupNonTopmost x:Name="popup_newBargeldkasse">
|
||||
<Border Background="White" Padding="3" BorderThickness="1" BorderBrush="Gray">
|
||||
<GroupBox x:Name="groupbox_newBargeldkasse" Header="Neue Kasse hinzufügen" Style="{DynamicResource ObjectEditGroupBox}">
|
||||
<Border
|
||||
Padding="3"
|
||||
Background="White"
|
||||
BorderBrush="Gray"
|
||||
BorderThickness="1">
|
||||
<GroupBox
|
||||
x:Name="groupbox_newBargeldkasse"
|
||||
Header="Neue Kasse hinzufügen"
|
||||
Style="{DynamicResource ObjectEditGroupBox}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
@@ -76,25 +97,75 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="0" Content="Kassenname" VerticalAlignment="Center" />
|
||||
<TextBox Grid.Column="1" Grid.Row="0" VerticalAlignment="Center" Height="23" Margin="3,0,3,3" Text="{validation:ValidationBinding Path=NewVM.Kassenname}" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="1" Content="Auszahlungsintervall" VerticalAlignment="Center" />
|
||||
<dxe:ComboBoxEdit Grid.Column="1" Grid.Row="1" VerticalAlignment="Center" Height="23" HorizontalAlignment="Left" Width="150" IsTextEditable="False"
|
||||
Margin="3,0,3,3" IsEnabled="{Binding Path=DarfBargeldtransaktionenBearbeiten, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
ItemsSource="{Binding Path=Values, Source={x:Static core:DisplayEnum.Auszahlungsintervall}}" EditValue="{validation:ValidationBinding Path=NewVM.Auszahlungsintervall}" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="2" Content="Anfangsbestand" VerticalAlignment="Center" />
|
||||
<dxe:TextEdit Grid.Column="1" Grid.Row="2" MaskType="Numeric" Mask="########0.00" MaskUseAsDisplayFormat="True" Height="23" Margin="3"
|
||||
EditValue="{validation:ValidationBinding Path=NewVM.Anfangsbestand}"/>
|
||||
|
||||
<StackPanel Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="3" Orientation="Horizontal" HorizontalAlignment="Right">
|
||||
<Button Click="ButtonAddBargeldkasseClick" Content="Hinzufügen" Height="25"
|
||||
FontWeight="Normal" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Right" />
|
||||
|
||||
<Button HorizontalAlignment="Right" VerticalAlignment="Center" Height="25"
|
||||
Margin="3" Content="Abbrechen" Click="ButtonCancelAddBargeldkasseClick" />
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center"
|
||||
Content="Kassenname" />
|
||||
<TextBox
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3,0,3,3"
|
||||
VerticalAlignment="Center"
|
||||
Text="{validation:ValidationBinding Path=NewVM.Kassenname}" />
|
||||
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center"
|
||||
Content="Auszahlungsintervall" />
|
||||
<dxe:ComboBoxEdit
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Width="150"
|
||||
Height="23"
|
||||
Margin="3,0,3,3"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Center"
|
||||
EditValue="{validation:ValidationBinding Path=NewVM.Auszahlungsintervall}"
|
||||
IsEnabled="{Binding Path=DarfBargeldtransaktionenBearbeiten, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
IsTextEditable="False"
|
||||
ItemsSource="{Binding Path=Values, Source={x:Static core:DisplayEnum.Auszahlungsintervall}}" />
|
||||
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center"
|
||||
Content="Anfangsbestand" />
|
||||
<dxe:TextEdit
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
EditValue="{validation:ValidationBinding Path=NewVM.Anfangsbestand}"
|
||||
Mask="########0.00"
|
||||
MaskType="Numeric"
|
||||
MaskUseAsDisplayFormat="True" />
|
||||
|
||||
<StackPanel
|
||||
Grid.Row="3"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
HorizontalAlignment="Right"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
Height="25"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Click="ButtonAddBargeldkasseClick"
|
||||
Content="Hinzufügen"
|
||||
FontWeight="Normal" />
|
||||
|
||||
<Button
|
||||
Height="25"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Click="ButtonCancelAddBargeldkasseClick"
|
||||
Content="Abbrechen" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
@@ -102,8 +173,15 @@
|
||||
</controls:PopupNonTopmost>
|
||||
<!--<Button Content="Neue Zahlung hinzufügen" Margin="3" Click="ButtonOpenAddBargeldtransaktionClick" IsEnabled="{Binding Path=DarfBargeldTransaktionAnlegen, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}" />-->
|
||||
<controls:PopupNonTopmost x:Name="popup_newBargeldtransaktion" Placement="MousePoint">
|
||||
<Border Background="White" Padding="3" BorderThickness="1" BorderBrush="Gray">
|
||||
<GroupBox x:Name="groupbox_newBargeldtransaktion" Header="Neue Zahlung zu einer Kasse hinzufügen" Style="{DynamicResource ObjectEditGroupBox}">
|
||||
<Border
|
||||
Padding="3"
|
||||
Background="White"
|
||||
BorderBrush="Gray"
|
||||
BorderThickness="1">
|
||||
<GroupBox
|
||||
x:Name="groupbox_newBargeldtransaktion"
|
||||
Header="Neue Zahlung zu einer Kasse hinzufügen"
|
||||
Style="{DynamicResource ObjectEditGroupBox}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
@@ -117,100 +195,239 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<!-- RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}} -->
|
||||
<!-- RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}} -->
|
||||
<!--<Label Grid.Column="0" Grid.Row="0" Content="Kasse" VerticalAlignment="Center" />
|
||||
<dxe:ComboBoxEdit Grid.Column="1" Grid.Row="0" VerticalAlignment="Center" Height="23" Margin="3,0,3,3" ItemsSource="{Binding VMList}" Width="150" x:Name="NewTransaktionKassenCB"
|
||||
<dxe:ComboBoxEdit Grid.Column="1" Grid.Row="0" VerticalAlignment="Center" Height="23" Margin="3,0,3,3" ItemsSource="{Binding VMList}" Width="150" x:Name="NewTransaktionKassenCB"
|
||||
EditValue="{validation:ValidationBinding Path=SelectedBargeldkasse, UpdateSourceTrigger=PropertyChanged, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}" />-->
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="0" Content="Datum" VerticalAlignment="Center" />
|
||||
<dxe:DateEdit Grid.Column="1" Grid.Row="0" MaskType="DateTimeAdvancingCaret"
|
||||
EditValue="{validation:ValidationBinding Path=NewBargeldtransaktion.Zahlungsdatum, UpdateSourceTrigger=PropertyChanged, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}" Height="23" Margin="3" x:Name="NewTransaktionDatumDateEdit" />
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center"
|
||||
Content="Datum" />
|
||||
<dxe:DateEdit
|
||||
x:Name="NewTransaktionDatumDateEdit"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
EditValue="{validation:ValidationBinding Path=NewBargeldtransaktion.Zahlungsdatum,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
MaskType="DateTimeAdvancingCaret" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="1" Content="Art" VerticalAlignment="Center" />
|
||||
<dxe:ComboBoxEdit Grid.Column="1" Grid.Row="1" Height="23" IsTextEditable="False" Margin="3,0,3,3"
|
||||
ItemsSource="{Binding Path=Values, Source={x:Static core:DisplayEnum.Zahlungstyp}}" x:Name="NewTransaktionZahlungstypComboBoxEdit"
|
||||
EditValue="{validation:ValidationBinding Path=NewBargeldtransaktion.Zahlungstyp, UpdateSourceTrigger=PropertyChanged, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}" />
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center"
|
||||
Content="Art" />
|
||||
<dxe:ComboBoxEdit
|
||||
x:Name="NewTransaktionZahlungstypComboBoxEdit"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3,0,3,3"
|
||||
EditValue="{validation:ValidationBinding Path=NewBargeldtransaktion.Zahlungstyp,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
IsTextEditable="False"
|
||||
ItemsSource="{Binding Path=Values, Source={x:Static core:DisplayEnum.Zahlungstyp}}" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="2" Content="Betrag" VerticalAlignment="Center" />
|
||||
<dxe:TextEdit Grid.Column="1" Grid.Row="2" MaskType="Numeric" Mask="########0.00" MaskUseAsDisplayFormat="True" Height="23" Margin="3" x:Name="NewTransaktionBetragTextEdit"
|
||||
EditValue="{validation:ValidationBinding Path=NewBargeldtransaktion.Betrag, UpdateSourceTrigger=PropertyChanged, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}" />
|
||||
<Label Grid.Column="0" Grid.Row="3" Content="{t:Translate Belegnummer}" VerticalAlignment="Center" />
|
||||
<dxe:TextEdit Grid.Column="1" Grid.Row="3" Height="23" Margin="3" x:Name="NewTransaktionBelegnummerTextEdit"
|
||||
EditValue="{validation:ValidationBinding Path=NewBargeldtransaktion.Belegnummer, UpdateSourceTrigger=PropertyChanged, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}" />
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center"
|
||||
Content="Betrag" />
|
||||
<dxe:TextEdit
|
||||
x:Name="NewTransaktionBetragTextEdit"
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
EditValue="{validation:ValidationBinding Path=NewBargeldtransaktion.Betrag,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
Mask="########0.00"
|
||||
MaskType="Numeric"
|
||||
MaskUseAsDisplayFormat="True" />
|
||||
<Label
|
||||
Grid.Row="3"
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center"
|
||||
Content="{t:Translate Belegnummer}" />
|
||||
<dxe:TextEdit
|
||||
x:Name="NewTransaktionBelegnummerTextEdit"
|
||||
Grid.Row="3"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
EditValue="{validation:ValidationBinding Path=NewBargeldtransaktion.Belegnummer,
|
||||
UpdateSourceTrigger=PropertyChanged,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}" />
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="4" Content="Notiz" VerticalAlignment="Center" />
|
||||
<TextBox Grid.Column="1" Grid.Row="4" VerticalAlignment="Center" Height="60" Margin="3,0,3,3"
|
||||
ScrollViewer.CanContentScroll="False" VerticalScrollBarVisibility="Auto"
|
||||
HorizontalScrollBarVisibility="Hidden" TextWrapping="Wrap" AcceptsReturn="True"
|
||||
AutoWordSelection="True" Language="de-DE" SpellCheck.IsEnabled="True"
|
||||
x:Name="NewTransaktionNotizTextBox"
|
||||
Text="{Binding Path=NewBargeldtransaktion.Notice, UpdateSourceTrigger=PropertyChanged, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"/>
|
||||
<Label
|
||||
Grid.Row="4"
|
||||
Grid.Column="0"
|
||||
VerticalAlignment="Center"
|
||||
Content="Notiz" />
|
||||
<TextBox
|
||||
x:Name="NewTransaktionNotizTextBox"
|
||||
Grid.Row="4"
|
||||
Grid.Column="1"
|
||||
Height="60"
|
||||
Margin="3,0,3,3"
|
||||
VerticalAlignment="Center"
|
||||
AcceptsReturn="True"
|
||||
AutoWordSelection="True"
|
||||
HorizontalScrollBarVisibility="Hidden"
|
||||
Language="de-DE"
|
||||
ScrollViewer.CanContentScroll="False"
|
||||
SpellCheck.IsEnabled="True"
|
||||
Text="{Binding Path=NewBargeldtransaktion.Notice, UpdateSourceTrigger=PropertyChanged, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
TextWrapping="Wrap"
|
||||
VerticalScrollBarVisibility="Auto" />
|
||||
|
||||
<StackPanel Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="5" Orientation="Horizontal" HorizontalAlignment="Right">
|
||||
<Button Click="ButtonAddBargeldtransaktionClick" Content="Hinzufügen" Height="25"
|
||||
FontWeight="Normal" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Right" />
|
||||
<Button HorizontalAlignment="Right" VerticalAlignment="Center" Height="25"
|
||||
Margin="3" Content="Abbrechen" Click="ButtonCancelAddBargeldtransaktionClick" />
|
||||
<StackPanel
|
||||
Grid.Row="5"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
HorizontalAlignment="Right"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
Height="25"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Click="ButtonAddBargeldtransaktionClick"
|
||||
Content="Hinzufügen"
|
||||
FontWeight="Normal" />
|
||||
<Button
|
||||
Height="25"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Click="ButtonCancelAddBargeldtransaktionClick"
|
||||
Content="Abbrechen" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</Border>
|
||||
</controls:PopupNonTopmost>
|
||||
</StackPanel>
|
||||
<StackPanel Grid.Row="0" Grid.Column="1" Orientation="Horizontal" VerticalAlignment="Stretch">
|
||||
<StackPanel
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
VerticalAlignment="Stretch"
|
||||
Orientation="Horizontal">
|
||||
<Label Content="Sortierung" />
|
||||
<ComboBox Height="23" x:Name="SortComboBox" Margin="3" VerticalAlignment="Top" MinWidth="180" SelectionChanged="SortComboBox_SelectionChanged"/>
|
||||
<ComboBox
|
||||
x:Name="SortComboBox"
|
||||
Height="23"
|
||||
MinWidth="180"
|
||||
Margin="3"
|
||||
VerticalAlignment="Top"
|
||||
SelectionChanged="SortComboBox_SelectionChanged" />
|
||||
</StackPanel>
|
||||
<TabControl Grid.Row="1" Grid.ColumnSpan="2" Margin="5" ItemsSource="{Binding VMList}" x:Name="tabcontrol_bargeldkassen" Visibility="{Binding VMList.Count, Converter={StaticResource CollectionCountToVisibilityConverter}}">
|
||||
<TabControl
|
||||
x:Name="tabcontrol_bargeldkassen"
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="5"
|
||||
ItemsSource="{Binding VMList}"
|
||||
Visibility="{Binding VMList.Count, Converter={StaticResource CollectionCountToVisibilityConverter}}">
|
||||
<TabControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Label Content="{Binding Kassenname}" />
|
||||
<Button VerticalAlignment="Center" Height="20"
|
||||
ToolTip="Bargeldkasse umbenennen"
|
||||
Margin="3" Content="!" FontFamily="Wingdings"
|
||||
IsEnabled="{Binding Path=DarfBargeldtransaktionenBearbeiten, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
Click="KassennamenChangeButtonClick">
|
||||
<Button
|
||||
Height="20"
|
||||
Margin="3"
|
||||
VerticalAlignment="Center"
|
||||
Click="KassennamenChangeButtonClick"
|
||||
Content="!"
|
||||
FontFamily="Wingdings"
|
||||
IsEnabled="{Binding Path=DarfBargeldtransaktionenBearbeiten, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
ToolTip="Bargeldkasse umbenennen">
|
||||
<Button.Visibility>
|
||||
<MultiBinding Converter="{StaticResource BoolVisibilityMultiConverter }">
|
||||
<MultiBinding Converter="{StaticResource BoolVisibilityMultiConverter}">
|
||||
<Binding Path="IsSelected" RelativeSource="{RelativeSource AncestorType={x:Type TabItem}}" />
|
||||
</MultiBinding>
|
||||
</Button.Visibility>
|
||||
</Button>
|
||||
<controls:PopupNonTopmost x:Name="popup_kassennamenEdit">
|
||||
<Border Background="White" Padding="3" BorderThickness="1" BorderBrush="Gray">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<Label Grid.Row="0" Grid.Column="0" Content="Name"/>
|
||||
<TextBox Grid.Row="0" Grid.Column="1" Grid.ColumnSpan="3" MinWidth="200" Height="23" Margin="3" Text="{validation:ValidationBinding Path=Kassenname, UpdateSourceTrigger=PropertyChanged}" />
|
||||
<Label Grid.Row="1" Grid.Column="0" Content="Anfangsbestand"/>
|
||||
<dxe:TextEdit Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="3" MaskType="Numeric" Mask="########0.00" MaskUseAsDisplayFormat="True" Height="23" Margin="3"
|
||||
EditValue="{validation:ValidationBinding Path=Anfangsbestand, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
<Button Grid.Row="2" Grid.Column="2" Content="Speichern" Margin="3" Click="KassennamenChangeSaveButtonClick" />
|
||||
<Button Grid.Row="2" Grid.Column="3" Content="Abbrechen" Margin="3" Click="KassennamenChangeCancelButtonClick" />
|
||||
</Grid>
|
||||
<Border
|
||||
Padding="3"
|
||||
Background="White"
|
||||
BorderBrush="Gray"
|
||||
BorderThickness="1">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Content="Name" />
|
||||
<TextBox
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="23"
|
||||
MinWidth="200"
|
||||
Margin="3"
|
||||
Text="{validation:ValidationBinding Path=Kassenname,
|
||||
UpdateSourceTrigger=PropertyChanged}" />
|
||||
<Label
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Content="Anfangsbestand" />
|
||||
<dxe:TextEdit
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
EditValue="{validation:ValidationBinding Path=Anfangsbestand,
|
||||
UpdateSourceTrigger=PropertyChanged}"
|
||||
Mask="########0.00"
|
||||
MaskType="Numeric"
|
||||
MaskUseAsDisplayFormat="True" />
|
||||
<Button
|
||||
Grid.Row="2"
|
||||
Grid.Column="2"
|
||||
Margin="3"
|
||||
Click="KassennamenChangeSaveButtonClick"
|
||||
Content="Speichern" />
|
||||
<Button
|
||||
Grid.Row="2"
|
||||
Grid.Column="3"
|
||||
Margin="3"
|
||||
Click="KassennamenChangeCancelButtonClick"
|
||||
Content="Abbrechen" />
|
||||
</Grid>
|
||||
</Border>
|
||||
</controls:PopupNonTopmost>
|
||||
<Button VerticalAlignment="Center" Height="20"
|
||||
Click="BtnDeleteBargeldkasseClick"
|
||||
Tag="{Binding}"
|
||||
ToolTip="Bargeldkasse entfernen"
|
||||
Style="{DynamicResource CloseButtonStyle}" Margin="3" >
|
||||
<Button
|
||||
Height="20"
|
||||
Margin="3"
|
||||
VerticalAlignment="Center"
|
||||
Click="BtnDeleteBargeldkasseClick"
|
||||
Style="{DynamicResource CloseButtonStyle}"
|
||||
Tag="{Binding}"
|
||||
ToolTip="Bargeldkasse entfernen">
|
||||
<Button.Visibility>
|
||||
<MultiBinding Converter="{StaticResource BoolVisibilityMultiConverter }">
|
||||
<MultiBinding Converter="{StaticResource BoolVisibilityMultiConverter}">
|
||||
<Binding Path="IsSelected" RelativeSource="{RelativeSource AncestorType={x:Type TabItem}}" />
|
||||
<Binding Path="DarfBargeldTransaktionLoeschen" RelativeSource="{RelativeSource AncestorType={x:Type view:BargeldkassenView}}" />
|
||||
<Binding Path="DarfBargeldTransaktionLoeschen" RelativeSource="{RelativeSource AncestorType={x:Type view:BargeldkassenView}}" />
|
||||
</MultiBinding>
|
||||
</Button.Visibility>
|
||||
</Button>
|
||||
@@ -232,17 +449,41 @@
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
|
||||
<Button Grid.Row="0" Grid.Column="0" Content="Neue Zahlung hinzufügen" Margin="3" Tag="{Binding}" Click="ButtonOpenAddBargeldtransaktionClick" IsEnabled="{Binding Path=DarfBargeldTransaktionAnlegen, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}" />
|
||||
|
||||
|
||||
<Label Grid.Row="0" Grid.Column="1" Content="Anfangsbestand" VerticalAlignment="Center" HorizontalAlignment="Right" Margin="3"/>
|
||||
<dxe:TextEdit Grid.Row="0" Grid.Column="2" MaskType="Numeric" Mask="c" MaskUseAsDisplayFormat="True" Height="23" Margin="3" EditMode="InplaceInactive"
|
||||
EditValue="{Binding Path=Anfangsbestand, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" VerticalAlignment="Center" HorizontalContentAlignment="Left" FontWeight="Bold" />
|
||||
|
||||
<Button
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Click="ButtonOpenAddBargeldtransaktionClick"
|
||||
Content="Neue Zahlung hinzufügen"
|
||||
IsEnabled="{Binding Path=DarfBargeldTransaktionAnlegen, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
Tag="{Binding}" />
|
||||
|
||||
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Content="Anfangsbestand" />
|
||||
<dxe:TextEdit
|
||||
Grid.Row="0"
|
||||
Grid.Column="2"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
VerticalAlignment="Center"
|
||||
HorizontalContentAlignment="Left"
|
||||
EditMode="InplaceInactive"
|
||||
EditValue="{Binding Path=Anfangsbestand, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
FontWeight="Bold"
|
||||
Mask="c"
|
||||
MaskType="Numeric"
|
||||
MaskUseAsDisplayFormat="True" />
|
||||
|
||||
<!--<Label VerticalAlignment="Center">Auszahlungsintervall</Label>
|
||||
<dxe:ComboBoxEdit VerticalAlignment="Center" Height="23" HorizontalAlignment="Left" Width="100" IsTextEditable="False" Margin="3,0,3,3"
|
||||
@@ -252,84 +493,213 @@
|
||||
EditValueChanged="AuszahlungsIntervallCBEditValueChanged"/>-->
|
||||
|
||||
|
||||
<StackPanel Grid.Row="0" Grid.Column="7" Grid.ColumnSpan="2" Orientation="Horizontal" HorizontalAlignment="Left">
|
||||
<Label Grid.Row="0" Grid.Column="3" Content="Startdatum" VerticalAlignment="Center"/>
|
||||
<dxe:DateEdit Grid.Row="0" Grid.Column="4" x:Name="KassenBuchStartCB" MaskType="DateTimeAdvancingCaret" Height="23" Margin="3" EditValue="{Binding Path=PreselectedStartDate, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}, Mode=OneWay}" AllowNullInput="False" />
|
||||
<StackPanel
|
||||
Grid.Row="0"
|
||||
Grid.Column="7"
|
||||
Grid.ColumnSpan="2"
|
||||
HorizontalAlignment="Left"
|
||||
Orientation="Horizontal">
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="3"
|
||||
VerticalAlignment="Center"
|
||||
Content="Startdatum" />
|
||||
<dxe:DateEdit
|
||||
x:Name="KassenBuchStartCB"
|
||||
Grid.Row="0"
|
||||
Grid.Column="4"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
AllowNullInput="False"
|
||||
EditValue="{Binding Path=PreselectedStartDate, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}, Mode=OneWay}"
|
||||
MaskType="DateTimeAdvancingCaret" />
|
||||
|
||||
<Label Grid.Row="0" Grid.Column="5" Content="Enddatum" VerticalAlignment="Center"/>
|
||||
<dxe:DateEdit Grid.Row="0" Grid.Column="6" x:Name="KassenBuchEndCB" MaskType="DateTimeAdvancingCaret" Height="23" Margin="3" EditValue="{Binding Path=PreselectedEndDate, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}, Mode=OneWay}" AllowNullInput="False"/>
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="5"
|
||||
VerticalAlignment="Center"
|
||||
Content="Enddatum" />
|
||||
<dxe:DateEdit
|
||||
x:Name="KassenBuchEndCB"
|
||||
Grid.Row="0"
|
||||
Grid.Column="6"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
AllowNullInput="False"
|
||||
EditValue="{Binding Path=PreselectedEndDate, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}, Mode=OneWay}"
|
||||
MaskType="DateTimeAdvancingCaret" />
|
||||
|
||||
|
||||
<!--<uc:NullItemComboBox x:Name="KassenbuchMonatsCB" Margin="3" ItemsSource="{Binding Path=MonatsComboBoxSource, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
<!--<uc:NullItemComboBox x:Name="KassenbuchMonatsCB" Margin="3" ItemsSource="{Binding Path=MonatsComboBoxSource, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
SelectedItem="{Binding Path=PreselectedMonth, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}, Mode=OneWay}"/>
|
||||
|
||||
|
||||
<uc:NullItemComboBox x:Name="KassenbuchJahresCB" Margin="3" ItemsSource="{Binding Path=JahresComboBoxSource, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
SelectedItem="{Binding Path=PreselectedYear, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}, Mode=OneWay}"/>-->
|
||||
|
||||
<TextBlock Grid.Row="0" Margin="3" FontSize="14" VerticalAlignment="Center" PreviewMouseLeftButtonDown="KlassenbuchLinkOnPreviewMouseLeftButtonDown" Tag="{Binding}" IsEnabled="{Binding Path=Bargeldtransaktionen.VMList.Count, Converter={StaticResource CollectionCountToBoolConverter}, UpdateSourceTrigger=PropertyChanged}">
|
||||
<Hyperlink x:Name="LinkKassenbuchDrucken" TargetName="_NewWindow" Style="{StaticResource HyperlinkStyle}">
|
||||
<Run Text="Kassenbuch drucken" />
|
||||
</Hyperlink>
|
||||
</TextBlock>
|
||||
<TextBlock
|
||||
Grid.Row="0"
|
||||
Margin="3"
|
||||
VerticalAlignment="Center"
|
||||
FontSize="14"
|
||||
IsEnabled="{Binding Path=Bargeldtransaktionen.VMList.Count, Converter={StaticResource CollectionCountToBoolConverter}, UpdateSourceTrigger=PropertyChanged}"
|
||||
PreviewMouseLeftButtonDown="KlassenbuchLinkOnPreviewMouseLeftButtonDown"
|
||||
Tag="{Binding}">
|
||||
<Hyperlink
|
||||
x:Name="LinkKassenbuchDrucken"
|
||||
Style="{StaticResource HyperlinkStyle}"
|
||||
TargetName="_NewWindow">
|
||||
<Run Text="Kassenbuch drucken" />
|
||||
</Hyperlink>
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
|
||||
|
||||
|
||||
<GroupBox Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="10" x:Name="BlubbTest" Style="{StaticResource ObjectEditGroupBox}">
|
||||
|
||||
<GroupBox
|
||||
x:Name="BlubbTest"
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="10"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock FontSize="16" Foreground="{StaticResource TabItemHotTextBrush}" FontFamily="Microsoft Sans Serif" Text="Ein- und Auszahlungen" Margin="3,5,3,3"/>
|
||||
<Label Content="Saldo" VerticalAlignment="Center" Margin="3,3,3,3"/>
|
||||
<dxe:TextEdit MaskType="Numeric" Mask="c" MaskUseAsDisplayFormat="True" Height="23" Margin="3,3,3,3" EditMode="InplaceInactive"
|
||||
EditValue="{Binding Path=Kassenbestand, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" VerticalAlignment="Center" FontWeight="Bold" />
|
||||
<Label Content="Stichtag" VerticalAlignment="Center" Margin="3,3,3,3"/>
|
||||
<dxe:DateEdit MaskType="DateTimeAdvancingCaret" Height="23" Width="100" Margin="3" EditValue="{Binding Path=Stichtag, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" AllowNullInput="True"/>
|
||||
<TextBlock
|
||||
Margin="3,5,3,3"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="16"
|
||||
Foreground="{StaticResource TabItemHotTextBrush}"
|
||||
Text="Ein- und Auszahlungen" />
|
||||
<Label
|
||||
Margin="3,3,3,3"
|
||||
VerticalAlignment="Center"
|
||||
Content="Saldo" />
|
||||
<dxe:TextEdit
|
||||
Height="23"
|
||||
Margin="3,3,3,3"
|
||||
VerticalAlignment="Center"
|
||||
EditMode="InplaceInactive"
|
||||
EditValue="{Binding Path=Kassenbestand, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
FontWeight="Bold"
|
||||
Mask="c"
|
||||
MaskType="Numeric"
|
||||
MaskUseAsDisplayFormat="True" />
|
||||
<Label
|
||||
Margin="3,3,3,3"
|
||||
VerticalAlignment="Center"
|
||||
Content="Stichtag" />
|
||||
<dxe:DateEdit
|
||||
Width="100"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
AllowNullInput="True"
|
||||
EditValue="{Binding Path=Stichtag, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
MaskType="DateTimeAdvancingCaret" />
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<dxg:GridControl Name="grid_bargeldtransaktionen" Tag="{Binding}" MaxWidth="{Binding ElementName=BlubbTest, Path=ActualWidth}" ItemsSource="{Binding Path=Bargeldtransaktionen.VMList}" CustomColumnSort="GridBargeldtransaktionenOnCustomColumnSort">
|
||||
<dxg:GridControl
|
||||
Name="grid_bargeldtransaktionen"
|
||||
MaxWidth="{Binding ElementName=BlubbTest, Path=ActualWidth}"
|
||||
CustomColumnSort="GridBargeldtransaktionenOnCustomColumnSort"
|
||||
ItemsSource="{Binding Path=Bargeldtransaktionen.VMList}"
|
||||
Tag="{Binding}">
|
||||
<dxg:GridControl.Columns>
|
||||
<dxg:GridColumn Header="" FixedWidth="True" Width="24" ReadOnly="True" Visible="{Binding Path=DarfBargeldtransaktionenBearbeiten, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}">
|
||||
<dxg:GridColumn
|
||||
Width="24"
|
||||
FixedWidth="True"
|
||||
Header=""
|
||||
ReadOnly="True"
|
||||
Visible="{Binding Path=DarfBargeldtransaktionenBearbeiten, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}">
|
||||
<dxg:GridColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Button Content="r" Tag="{Binding}" Click="ButtonBargeldtransaktionDeleteClick" FontFamily="Webdings" Width="18" Height="18" VerticalAlignment="Center" IsEnabled="{Binding Path=DarfBargeldTransaktionLoeschen, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}" />
|
||||
<Button
|
||||
Width="18"
|
||||
Height="18"
|
||||
VerticalAlignment="Center"
|
||||
Click="ButtonBargeldtransaktionDeleteClick"
|
||||
Content="r"
|
||||
FontFamily="Webdings"
|
||||
IsEnabled="{Binding Path=DarfBargeldTransaktionLoeschen, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
Tag="{Binding}" />
|
||||
</DataTemplate>
|
||||
</dxg:GridColumn.CellTemplate>
|
||||
</dxg:GridColumn>
|
||||
<dxg:GridColumn Header="Datum" FixedWidth="True" SortOrder="Descending" FieldName="Zahlungsdatum" EditSettings="{dxe:DateSettings DisplayFormat=d}" AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}" />
|
||||
<dxg:GridColumn Header="Art" FixedWidth="True" FieldName="Zahlungstyp" AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}">
|
||||
<dxg:GridColumn
|
||||
AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
EditSettings="{dxe:DateSettings DisplayFormat=d}"
|
||||
FieldName="Zahlungsdatum"
|
||||
FixedWidth="True"
|
||||
Header="Datum"
|
||||
SortOrder="Descending" />
|
||||
<dxg:GridColumn
|
||||
AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
FieldName="Zahlungstyp"
|
||||
FixedWidth="True"
|
||||
Header="Art">
|
||||
<dxg:GridColumn.EditSettings>
|
||||
<dxe:ComboBoxEditSettings ItemsSource="{Binding Path=Values, Source={x:Static core:DisplayEnum.Zahlungstyp}}" IsTextEditable="False" />
|
||||
<dxe:ComboBoxEditSettings IsTextEditable="False" ItemsSource="{Binding Path=Values, Source={x:Static core:DisplayEnum.Zahlungstyp}}" />
|
||||
</dxg:GridColumn.EditSettings>
|
||||
</dxg:GridColumn>
|
||||
<dxg:GridColumn Header="Betrag" FixedWidth="True" FieldName="Betrag" AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}">
|
||||
<dxg:GridColumn
|
||||
AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
FieldName="Betrag"
|
||||
FixedWidth="True"
|
||||
Header="Betrag">
|
||||
<dxg:GridColumn.EditSettings>
|
||||
<dxe:TextEditSettings MaskType="Numeric" Mask="c" MaskUseAsDisplayFormat="True" />
|
||||
<dxe:TextEditSettings
|
||||
Mask="c"
|
||||
MaskType="Numeric"
|
||||
MaskUseAsDisplayFormat="True" />
|
||||
</dxg:GridColumn.EditSettings>
|
||||
</dxg:GridColumn>
|
||||
<dxg:GridColumn Header="{t:Translate Belegnummer}" FixedWidth="True" FieldName="Belegnummer" AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}">
|
||||
<dxg:GridColumn
|
||||
AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
FieldName="Belegnummer"
|
||||
FixedWidth="True"
|
||||
Header="{t:Translate Belegnummer}">
|
||||
<dxg:GridColumn.EditSettings>
|
||||
<dxe:TextEditSettings />
|
||||
</dxg:GridColumn.EditSettings>
|
||||
</dxg:GridColumn>
|
||||
<dxg:GridColumn Header="Angelegt von" FixedWidth="True" FieldName="InsUser" AllowEditing="False">
|
||||
|
||||
</dxg:GridColumn>
|
||||
<dxg:GridColumn Header="Notiz" FieldName="Notice" AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"/>
|
||||
|
||||
<dxg:GridColumn FieldName="X" Header="Drucken" ReadOnly="True">
|
||||
<dxg:GridColumn
|
||||
AllowEditing="False"
|
||||
FieldName="InsUser"
|
||||
FixedWidth="True"
|
||||
Header="Angelegt von" />
|
||||
<dxg:GridColumn
|
||||
AllowEditing="{Binding Path=BargeldtransaktionenBearbeitenAlsDefaultBooelan, RelativeSource={RelativeSource AncestorType={x:Type view:BargeldkassenView}}}"
|
||||
FieldName="Notice"
|
||||
Header="Notiz" />
|
||||
|
||||
<dxg:GridColumn
|
||||
FieldName="X"
|
||||
Header="Drucken"
|
||||
ReadOnly="True">
|
||||
<dxg:GridColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock x:Name="textblock_link_pdfexport" VerticalAlignment="Center" Margin="3,0,0,0">
|
||||
<Hyperlink x:Name="LinkZahlungsbelegDrucken" Click="LinkZahlungsbelegDruckenClick" TargetName="_NewWindow" Foreground="#FF2B508B">
|
||||
<Run Text="Zahlungsbeleg drucken" />
|
||||
</Hyperlink>
|
||||
<TextBlock
|
||||
x:Name="textblock_link_pdfexport"
|
||||
Margin="3,0,0,0"
|
||||
VerticalAlignment="Center">
|
||||
<Hyperlink
|
||||
x:Name="LinkZahlungsbelegDrucken"
|
||||
Click="LinkZahlungsbelegDruckenClick"
|
||||
Foreground="#FF2B508B"
|
||||
TargetName="_NewWindow">
|
||||
<Run Text="Zahlungsbeleg drucken" />
|
||||
</Hyperlink>
|
||||
</TextBlock>
|
||||
</DataTemplate>
|
||||
</dxg:GridColumn.CellTemplate>
|
||||
</dxg:GridColumn>
|
||||
</dxg:GridControl.Columns>
|
||||
<dxg:GridControl.View>
|
||||
<dxg:TableView NavigationStyle="Cell" Margin="2,2,2,2" AutoWidth="True" ShowGroupPanel="False" ShowGroupedColumns="False" ShowTotalSummary="False" />
|
||||
<dxg:TableView
|
||||
Margin="2,2,2,2"
|
||||
AutoWidth="True"
|
||||
NavigationStyle="Cell"
|
||||
ShowGroupPanel="False"
|
||||
ShowGroupedColumns="False"
|
||||
ShowTotalSummary="False" />
|
||||
</dxg:GridControl.View>
|
||||
</dxg:GridControl>
|
||||
</GroupBox>
|
||||
|
||||
@@ -35,6 +35,7 @@ namespace BeWo.View
|
||||
InitializeComponent();
|
||||
|
||||
rootGroupBox.Content = fe;
|
||||
|
||||
CommandBindings.Add(new CommandBinding(ApplicationCommands.Close, (s, e) => Close()));
|
||||
}
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
</StackPanel>
|
||||
<Popup Grid.Row="1" x:Name="TreeViewPopup" AllowsTransparency="True"
|
||||
IsOpen="False" StaysOpen="False"
|
||||
Closed="PopUpClosedEvent" PopupAnimation="Slide">
|
||||
Closed="PopUpClosedEvent" PopupAnimation="Slide" MaxWidth="1200">
|
||||
<Border BorderBrush="Black" BorderThickness="2" Background="#788991">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using BeWo.Core;
|
||||
using BeWo.ServiceProxy;
|
||||
using BeWo.View.Windows;
|
||||
using BeWo.ViewModel;
|
||||
using BeWo.ViewModel.ListViewModel;
|
||||
using BS.Shared.DataContracts.GkvAbrechnung;
|
||||
|
||||
@@ -6,7 +6,7 @@ using System.Windows.Interop;
|
||||
|
||||
namespace BeWo.View.Controls
|
||||
{
|
||||
public class PopupNonTopmost : Popup
|
||||
public class PopupNonTopmost : System.Windows.Controls.Primitives.Popup
|
||||
{
|
||||
public static DependencyProperty TopmostProperty = Window.TopmostProperty.AddOwner(typeof (PopupNonTopmost), new FrameworkPropertyMetadata(false, OnTopmostChanged));
|
||||
|
||||
|
||||
@@ -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>
|
||||
@@ -1,26 +1,39 @@
|
||||
<UserControl x:Class="BeWo.View.Controls.TextViewer"
|
||||
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:BeWo.View.Controls"
|
||||
mc:Ignorable="d">
|
||||
<UserControl
|
||||
x:Class="BeWo.View.Controls.TextViewer"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:local="clr-namespace:BeWo.View.Controls"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
mc:Ignorable="d">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*"/>
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*"/>
|
||||
<RowDefinition Height="auto"/>
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Row="0">
|
||||
<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto" Margin="3" Background="#eeeeee">
|
||||
<TextBox x:Name="txt" IsReadOnly="True" Text="test" Foreground="Black" Background="#f1f1f1" BorderThickness="1">
|
||||
|
||||
</TextBox>
|
||||
<ScrollViewer
|
||||
Margin="3"
|
||||
Background="#eeeeee"
|
||||
HorizontalScrollBarVisibility="Auto"
|
||||
VerticalScrollBarVisibility="Auto">
|
||||
<TextBox
|
||||
x:Name="txt"
|
||||
Background="#f1f1f1"
|
||||
BorderThickness="1"
|
||||
Foreground="Black"
|
||||
IsReadOnly="True"
|
||||
Text="test" />
|
||||
</ScrollViewer>
|
||||
</Grid>
|
||||
|
||||
<Button Grid.Row="1" Content="Inhalt in Zwischenablage kopieren" Click="Button_Click" Margin="3"/>
|
||||
<Button
|
||||
Grid.Row="1"
|
||||
Margin="3"
|
||||
Click="Button_Click"
|
||||
Content="Inhalt in Zwischenablage kopieren" />
|
||||
</Grid>
|
||||
</UserControl>
|
||||
|
||||
90
BeWo/View/Detail/AI/AiConfigView.xaml
Normal file
90
BeWo/View/Detail/AI/AiConfigView.xaml
Normal file
@@ -0,0 +1,90 @@
|
||||
<UserControl
|
||||
x:Class="BeWo.View.Detail.AI.AiConfigView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:listviewmodel="clr-namespace:BeWo.ViewModel.ListViewModel"
|
||||
xmlns:local="clr-namespace:BeWo.View.Detail.AI"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:viewmodel="clr-namespace:BeWo.ViewModel"
|
||||
d:DataContext="{d:DesignInstance Type=listviewmodel:AiConversationListVM}"
|
||||
mc:Ignorable="d">
|
||||
<UserControl.Resources>
|
||||
<ResourceDictionary>
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<ResourceDictionary Source="..\..\..\Styles\ModernOrangeBlack.xaml" />
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
<Style TargetType="{x:Type Slider}">
|
||||
<Setter Property="Margin" Value="3" />
|
||||
<Setter Property="Height" Value="30" />
|
||||
<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>
|
||||
<GroupBox Style="{StaticResource ObjectEditGroupBox}">
|
||||
<GroupBox.Header>
|
||||
KI Module Einstellungen
|
||||
</GroupBox.Header>
|
||||
|
||||
<Grid Margin="16" HorizontalAlignment="Stretch">
|
||||
<!--<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" SharedSizeGroup="ai1" />
|
||||
<ColumnDefinition Width="100*" MaxWidth="600" />
|
||||
<ColumnDefinition Width="*" SharedSizeGroup="ai1" />
|
||||
</Grid.ColumnDefinitions>-->
|
||||
|
||||
<Grid Grid.Column="1" HorizontalAlignment="Stretch">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" MinWidth="100" />
|
||||
<ColumnDefinition Width="200" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="auto" />
|
||||
<RowDefinition Height="auto" />
|
||||
<RowDefinition Height="auto" />
|
||||
<RowDefinition Height="auto" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Label>
|
||||
Ausgewähltes Modell
|
||||
</Label>
|
||||
<ComboBox
|
||||
Grid.Column="1"
|
||||
ItemsSource="{Binding Models}"
|
||||
SelectedItem="{Binding Config.SelectedModel}" />
|
||||
|
||||
<Label Grid.Row="1" VerticalAlignment="Center">
|
||||
Temperatur
|
||||
</Label>
|
||||
<Slider
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
IsEnabled="False"
|
||||
Value="{Binding Config.Temperature}" />
|
||||
|
||||
<Label Grid.Row="2" VerticalAlignment="Center">
|
||||
top__p
|
||||
</Label>
|
||||
<Slider
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
IsEnabled="False"
|
||||
Value="{Binding Config.Top_P}" />
|
||||
|
||||
<Label Grid.Row="3">
|
||||
max__gen__len
|
||||
</Label>
|
||||
<dxe:TextEdit
|
||||
Grid.Row="3"
|
||||
Grid.Column="1"
|
||||
EditValue="{Binding Config.Max_Gen_Len}"
|
||||
IsEnabled="False"
|
||||
Style="{StaticResource TextEditNumber}" />
|
||||
</Grid>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</UserControl>
|
||||
28
BeWo/View/Detail/AI/AiConfigView.xaml.cs
Normal file
28
BeWo/View/Detail/AI/AiConfigView.xaml.cs
Normal file
@@ -0,0 +1,28 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
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 AiConfigView.xaml
|
||||
/// </summary>
|
||||
public partial class AiConfigView : UserControl
|
||||
{
|
||||
public AiConfigView()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
}
|
||||
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;
|
||||
}
|
||||
}
|
||||
}
|
||||
404
BeWo/View/Detail/AI/AiConversationChatView.xaml
Normal file
404
BeWo/View/Detail/AI/AiConversationChatView.xaml
Normal file
@@ -0,0 +1,404 @@
|
||||
<localView:BeWoView
|
||||
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"
|
||||
xmlns:conv="clr-namespace:BeWo.Converter.Features"
|
||||
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:shared="clr-namespace:BS.Shared;assembly=BS.Shared"
|
||||
xmlns:t="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
xmlns:viewmodel="clr-namespace:BeWo.ViewModel"
|
||||
Width="Auto"
|
||||
Height="Auto"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
d:DesignHeight="900"
|
||||
d:DesignWidth="900"
|
||||
Focusable="True"
|
||||
Loaded="BeWoView_Loaded"
|
||||
mc:Ignorable="d">
|
||||
<localView:BeWoView.Resources>
|
||||
<ResourceDictionary>
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<ResourceDictionary Source="..\..\..\Styles\ModernOrangeBlack.xaml" />
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
<conv:AiConversationMessageSystemConverter x:Key="AiConversationMessageSystemConverter" />
|
||||
</ResourceDictionary>
|
||||
</localView:BeWoView.Resources>
|
||||
<localView:BeWoView.DataContext>
|
||||
<listviewmodel:AiConversationListVM />
|
||||
</localView:BeWoView.DataContext>
|
||||
<Grid>
|
||||
<GroupBox x:Name="rootgroupbox" Style="{StaticResource ModuleAiControlDefaultStyle}">
|
||||
<GroupBox.Header>
|
||||
<StackPanel
|
||||
Grid.Row="0"
|
||||
Margin="0"
|
||||
Orientation="Horizontal">
|
||||
<!--<Label
|
||||
Margin="0,0,0,0"
|
||||
Padding="2"
|
||||
Content="Suche"
|
||||
FontSize="14"
|
||||
Foreground="#FFFFFFFF" />
|
||||
<TextBox
|
||||
x:Name="textbox_search"
|
||||
Width="300"
|
||||
Height="20"
|
||||
MinWidth="90"
|
||||
Margin="4,0,0,0"
|
||||
BorderThickness="0,0,0,0"
|
||||
IsEnabled="False"
|
||||
TabIndex="0"
|
||||
Template="{DynamicResource SearchTextBoxTemplate}" />
|
||||
<Button
|
||||
x:Name="ReloadButton"
|
||||
Width="36"
|
||||
Height="24"
|
||||
Margin="8,0,0,0"
|
||||
Command="{Binding ReloadConversationsCommand, RelativeSource={RelativeSource AncestorType={x:Type localView:BeWoView}, Mode=FindAncestor}}"
|
||||
ToolTip="Liste aktualisieren">
|
||||
<Button.Template>
|
||||
<ControlTemplate TargetType="{x:Type Button}">
|
||||
<Grid>
|
||||
<Image x:Name="imgDisabled" Source="..\..\Ressources\Icons\SymbolRefresh32Disabled.png" />
|
||||
<Image
|
||||
x:Name="imgEnabled"
|
||||
Opacity="0"
|
||||
Source="..\..\Ressources\Icons\SymbolRefresh32.png" />
|
||||
</Grid>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="true">
|
||||
<Setter TargetName="imgEnabled" Property="Opacity" Value="1" />
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Button.Template>
|
||||
</Button>-->
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
|
||||
<Grid Margin="0,0,0,0">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Row="1">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="200" />
|
||||
<ColumnDefinition Width="*" MinWidth="200" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<!--<dxwui:HamburgerMenu
|
||||
Background="Transparent"
|
||||
ItemTemplate="{StaticResource ConversationHamburgerMenuItemTemplate}"
|
||||
ItemsSource="{Binding VMList}">
|
||||
<dxwui:HamburgerMenu.Content>
|
||||
|
||||
<dxwui:HamburgerMenuNavigationButton />
|
||||
</dxwui:HamburgerMenu.Content>
|
||||
</dxwui:HamburgerMenu>-->
|
||||
|
||||
<Grid Background="#33000000">
|
||||
<ListView
|
||||
x:Name="listbox_conversations"
|
||||
Padding="4"
|
||||
Background="Transparent"
|
||||
BorderThickness="0"
|
||||
ItemTemplate="{StaticResource ConversationTemplate}"
|
||||
ItemsSource="{Binding VMList}"
|
||||
ScrollViewer.CanContentScroll="False"
|
||||
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
|
||||
SelectedItem="{Binding SelectedVM, Mode=TwoWay}">
|
||||
<ListView.ItemContainerStyle>
|
||||
<Style TargetType="ListViewItem">
|
||||
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
|
||||
<Setter Property="Padding" Value="2" />
|
||||
<Setter Property="BorderThickness" Value="0" />
|
||||
</Style>
|
||||
</ListView.ItemContainerStyle>
|
||||
</ListView>
|
||||
</Grid>
|
||||
|
||||
<Grid Grid.Column="1" PreviewKeyDown="Grid_PreviewKeyDown">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="1000000*" MaxWidth="1200" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<ListView
|
||||
x:Name="listbox_messages"
|
||||
Grid.Column="1"
|
||||
Padding="3"
|
||||
Background="Transparent"
|
||||
BorderThickness="0"
|
||||
ItemTemplateSelector="{StaticResource AiConversationMessageTemplateSelector}"
|
||||
ItemsSource="{Binding SelectedVM.Messages.VMList, Converter={StaticResource AiConversationMessageSystemConverter}, UpdateSourceTrigger=PropertyChanged}"
|
||||
ScrollViewer.CanContentScroll="False"
|
||||
ScrollViewer.HorizontalScrollBarVisibility="Disabled">
|
||||
<ListView.ItemContainerStyle>
|
||||
<Style TargetType="ListViewItem">
|
||||
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
|
||||
<Setter Property="Padding" Value="4" />
|
||||
<Setter Property="BorderThickness" Value="0" />
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type ListViewItem}">
|
||||
<ContentPresenter Margin="{TemplateBinding Padding}" />
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</ListView.ItemContainerStyle>
|
||||
<ListView.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<StackPanel Orientation="Vertical" />
|
||||
</ItemsPanelTemplate>
|
||||
</ListView.ItemsPanel>
|
||||
</ListView>
|
||||
<Grid
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Margin="4">
|
||||
<Grid.Visibility>
|
||||
<MultiBinding Converter="{StaticResource BooleanAndVisibilityMultiConverter}">
|
||||
<Binding Converter="{StaticResource ObjectBoolConverter}" Path="SelectedVM" />
|
||||
<Binding Converter="{StaticResource UserPermission2BoolConverter}" ConverterParameter="{x:Static shared:UserRightType.AiModuleChatAdd}" />
|
||||
</MultiBinding>
|
||||
</Grid.Visibility>
|
||||
<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="0,0,4,0"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
AcceptsReturn="True"
|
||||
IsReadOnly="{Binding IsSending}"
|
||||
Text="{Binding MessageInput, UpdateSourceTrigger=PropertyChanged}" />
|
||||
<Button
|
||||
Grid.Column="2"
|
||||
Height="auto"
|
||||
MinHeight="25"
|
||||
MaxHeight="100"
|
||||
Margin="0"
|
||||
VerticalAlignment="Stretch"
|
||||
Command="{Binding SendNewMessageCommand}"
|
||||
Content="Senden"
|
||||
Visibility="Visible" />
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Grid>
|
||||
<Border
|
||||
Grid.Row="2"
|
||||
Height="35"
|
||||
Margin="0,0,0,0"
|
||||
VerticalAlignment="Stretch">
|
||||
<Grid>
|
||||
<Grid.Resources>
|
||||
<Style BasedOn="{StaticResource PopupToolbarButtonStyle}" TargetType="Button" />
|
||||
</Grid.Resources>
|
||||
<Rectangle Fill="#FF000000">
|
||||
<Rectangle.OpacityMask>
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#33000000" />
|
||||
<GradientStop Offset="1" Color="#99FFFFFF" />
|
||||
</LinearGradientBrush>
|
||||
</Rectangle.OpacityMask>
|
||||
</Rectangle>
|
||||
<StackPanel
|
||||
Height="Auto"
|
||||
Margin="5,5,5,0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Center"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
x:Name="btnNew"
|
||||
Margin="0,0,0,0"
|
||||
Command="{Binding RequestNewConversationCommand}"
|
||||
Content="Neuer Chat" />
|
||||
<Button
|
||||
x:Name="btnSettings"
|
||||
Margin="4,0,0,0"
|
||||
Command="{Binding OpenSettingCommand}"
|
||||
Content="Einstellungen" />
|
||||
<Button
|
||||
x:Name="btnTest"
|
||||
Margin="4,0,0,0"
|
||||
Command="{Binding TestCommand}"
|
||||
Content="Test Szenario"
|
||||
Visibility="Collapsed" />
|
||||
<Button
|
||||
x:Name="btnClone"
|
||||
Margin="4,0,0,0"
|
||||
Command="{Binding OpenCloneCommand}"
|
||||
Content="Klonen" />
|
||||
<Button
|
||||
x:Name="btnDelete"
|
||||
Margin="4,0,0,0"
|
||||
Command="{Binding AskDeleteCommand}"
|
||||
Content="Löschen" />
|
||||
</StackPanel>
|
||||
<StackPanel
|
||||
Height="Auto"
|
||||
Margin="5,5,5,0"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
x:Name="btnClose"
|
||||
Height="25"
|
||||
Margin="0,0,0,0"
|
||||
Command="ApplicationCommands.Close"
|
||||
Content="Schließen"
|
||||
FontWeight="Medium"
|
||||
Style="{StaticResource NavigationToolbarButtonStyle}"
|
||||
Visibility="Collapsed" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Border>
|
||||
<Popup
|
||||
x:Name="popup_newview"
|
||||
Width="200"
|
||||
Height="200"
|
||||
StaysOpen="True">
|
||||
<Grid Margin="5" Background="Orange">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="auto" />
|
||||
<ColumnDefinition Width="auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="auto" />
|
||||
<RowDefinition Height="auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label>Kontext</Label>
|
||||
<ComboBox Grid.Column="1" />
|
||||
</Grid>
|
||||
</Popup>
|
||||
<Popup
|
||||
x:Name="popup_settings"
|
||||
Width="auto"
|
||||
Height="auto"
|
||||
IsOpen="{Binding IsSettingsOpen}"
|
||||
Placement="Center"
|
||||
StaysOpen="False">
|
||||
<Border
|
||||
Padding="5"
|
||||
Background="{DynamicResource NavigationContentBrush}"
|
||||
BorderThickness="1"
|
||||
CornerRadius="5">
|
||||
<ai:AiConfigView />
|
||||
</Border>
|
||||
|
||||
|
||||
<!--<Grid Margin="5" Background="Orange">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="auto" />
|
||||
<ColumnDefinition Width="auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="auto" />
|
||||
<RowDefinition Height="auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label>Modell:</Label>
|
||||
<ComboBox
|
||||
Grid.Column="1"
|
||||
ItemsSource="{Binding Models}"
|
||||
SelectedItem="{Binding Config.SelectedModel, Mode=TwoWay}" />
|
||||
</Grid>-->
|
||||
</Popup>
|
||||
<Popup
|
||||
x:Name="popup_conversation_clone"
|
||||
IsOpen="{Binding IsCloneOpen}"
|
||||
Loaded="popup_conversation_clone_Loaded"
|
||||
Placement="Center"
|
||||
StaysOpen="False">
|
||||
<Border
|
||||
Width="400"
|
||||
Height="600"
|
||||
Padding="0"
|
||||
Background="{DynamicResource NavigationContentBrush}"
|
||||
BorderThickness="1"
|
||||
CornerRadius="5">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<ListView
|
||||
x:Name="listbox_messages_clone"
|
||||
Padding="3"
|
||||
Background="Transparent"
|
||||
BorderThickness="0"
|
||||
ItemTemplateSelector="{StaticResource AiConversationCloneMessageTemplateSelector}"
|
||||
ItemsSource="{Binding SelectedVM.Messages.VMList, Converter={StaticResource AiConversationMessageSystemConverter}, UpdateSourceTrigger=PropertyChanged}"
|
||||
ScrollViewer.CanContentScroll="False"
|
||||
ScrollViewer.HorizontalScrollBarVisibility="Disabled">
|
||||
<ListView.ItemContainerStyle>
|
||||
<Style TargetType="ListViewItem">
|
||||
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
|
||||
<Setter Property="Padding" Value="4" />
|
||||
<Setter Property="BorderThickness" Value="0" />
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type ListViewItem}">
|
||||
<ContentPresenter Margin="{TemplateBinding Padding}" />
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</ListView.ItemContainerStyle>
|
||||
<ListView.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<StackPanel Orientation="Vertical" />
|
||||
</ItemsPanelTemplate>
|
||||
</ListView.ItemsPanel>
|
||||
</ListView>
|
||||
<Button
|
||||
Grid.Row="1"
|
||||
Margin="8,4,8,8"
|
||||
Command="{Binding CloneCommand}">
|
||||
Klonen
|
||||
</Button>
|
||||
</Grid>
|
||||
</Border>
|
||||
<!-- AiConversationCloneMessageTemplateSelector -->
|
||||
|
||||
</Popup>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</Grid>
|
||||
</localView:BeWoView>
|
||||
101
BeWo/View/Detail/AI/AiConversationChatView.xaml.cs
Normal file
101
BeWo/View/Detail/AI/AiConversationChatView.xaml.cs
Normal file
@@ -0,0 +1,101 @@
|
||||
using BeWo.Core;
|
||||
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 AiConversationChatView : BeWoView
|
||||
{
|
||||
public AiConversationChatView()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
((INotifyCollectionChanged)listbox_messages.Items).CollectionChanged += listbox_conversations_SelectionChanged;
|
||||
|
||||
popup_settings.Closed += (s, e) => ViewModel.UpdateConfig();
|
||||
|
||||
ViewModel.SendNewMessageSuccess += (s, e) =>
|
||||
{
|
||||
if (txt_input_message.Visibility == Visibility.Visible)
|
||||
txt_input_message.Focus();
|
||||
};
|
||||
}
|
||||
|
||||
public AiConversationChatView(string stylestring) : this()
|
||||
{
|
||||
rootgroupbox.Style = (Style)FindResource(stylestring);
|
||||
}
|
||||
|
||||
public AiConversationListVM ViewModel
|
||||
{
|
||||
get => DataContext as AiConversationListVM;
|
||||
set => DataContext = value;
|
||||
}
|
||||
|
||||
private void BeWoView_Loaded(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (BeWoApp.IsInDesignMode)
|
||||
return;
|
||||
|
||||
ViewModel.ReloadConfigCommand.Execute(null);
|
||||
ViewModel.ReloadConversationsCommand.Execute(null);
|
||||
}
|
||||
|
||||
private void listbox_conversations_SelectionChanged(object sender, NotifyCollectionChangedEventArgs e)
|
||||
{
|
||||
BeWoWpfUtils.ScrollToBottom(listbox_messages);
|
||||
}
|
||||
|
||||
private void popup_conversation_clone_Loaded(object sender, RoutedEventArgs e)
|
||||
{
|
||||
BeWoWpfUtils.ScrollToBottom(listbox_messages_clone);
|
||||
}
|
||||
|
||||
private void Grid_PreviewKeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
if (e.Key == Key.Enter)
|
||||
{
|
||||
if ((Keyboard.Modifiers & ModifierKeys.Shift) == ModifierKeys.Shift)
|
||||
{
|
||||
// Shift + Enter gedrückt
|
||||
Console.WriteLine("Shift + Enter erkannt");
|
||||
}
|
||||
else
|
||||
{
|
||||
// Nur Enter gedrückt
|
||||
// Console.WriteLine("Enter erkannt");
|
||||
|
||||
object p = null;
|
||||
if(ViewModel.SendNewMessageCommand.CanExecute(p))
|
||||
ViewModel.SendNewMessageCommand.Execute(p);
|
||||
|
||||
e.Handled = true;
|
||||
}
|
||||
|
||||
// Optional: Event als behandelt markieren, wenn du die Standardaktion unterdrücken willst
|
||||
// e.Handled = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,23 +1,44 @@
|
||||
<localView:BeWoView x:Class="BeWo.View.Detail.AbsenceReasonView"
|
||||
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:val="clr-namespace:BeWo.Validation" xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:diagnostics="clr-namespace:System.Diagnostics;assembly=WindowsBase"
|
||||
xmlns:s="clr-namespace:System;assembly=mscorlib"
|
||||
xmlns:core="clr-namespace:BS.Shared.Core;assembly=BS.Shared"
|
||||
xmlns:xtraEditors="clr-namespace:DevExpress.XtraEditors;assembly=DevExpress.XtraEditors.v23.2"
|
||||
Height="Auto" Width="Auto" HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch" Focusable="True">
|
||||
<GroupBox Name="root" Header="Aktuell definierte Abwesenheitskategorien" Style="{StaticResource ObjectEditGroupBox}">
|
||||
<localView:BeWoView
|
||||
x:Class="BeWo.View.Detail.AbsenceReasonView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:core="clr-namespace:BS.Shared.Core;assembly=BS.Shared"
|
||||
xmlns:diagnostics="clr-namespace:System.Diagnostics;assembly=WindowsBase"
|
||||
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:s="clr-namespace:System;assembly=mscorlib"
|
||||
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
xmlns:val="clr-namespace:BeWo.Validation"
|
||||
xmlns:xtraEditors="clr-namespace:DevExpress.XtraEditors;assembly=DevExpress.XtraEditors.v23.2"
|
||||
Width="Auto"
|
||||
Height="Auto"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
Focusable="True">
|
||||
<GroupBox
|
||||
Name="root"
|
||||
Header="Aktuell definierte Abwesenheitskategorien"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
|
||||
<Grid.Resources>
|
||||
<DataTemplate x:Key="DropDownItemTemplate">
|
||||
<Border Height="20" MinWidth="20" Background="{Binding}" BorderThickness="1" CornerRadius="2" HorizontalAlignment="Stretch" BorderBrush="Black" />
|
||||
<Border
|
||||
Height="20"
|
||||
MinWidth="20"
|
||||
HorizontalAlignment="Stretch"
|
||||
Background="{Binding}"
|
||||
BorderBrush="Black"
|
||||
BorderThickness="1"
|
||||
CornerRadius="2" />
|
||||
</DataTemplate>
|
||||
<DataTemplate x:Key="SelectedItemTemplate">
|
||||
<Border HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Background="{Binding}" BorderBrush="Black" BorderThickness="1" />
|
||||
<Border
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
Background="{Binding}"
|
||||
BorderBrush="Black"
|
||||
BorderThickness="1" />
|
||||
</DataTemplate>
|
||||
</Grid.Resources>
|
||||
<Grid.ColumnDefinitions>
|
||||
@@ -34,28 +55,72 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label Grid.Column="0" Grid.Row="0">Bezeichnung</Label>
|
||||
<TextBox Grid.Column="1" Grid.Row="0" Margin="3" Height="23"
|
||||
Text="{val:ValidationBinding Path=NewVM.Description, UpdateSourceTrigger=PropertyChanged}" Width="125" />
|
||||
<Label Grid.Column="2" Grid.Row="0">max. abrechenbare Stunden (pro Woche)</Label>
|
||||
|
||||
<dxe:SpinEdit Name="spinedit_hours" AllowNullInput="True" IsFloatValue="False" MinValue="0" Grid.Column="3" Grid.Row="0"
|
||||
Height="23" Width="50" EditValue="{Binding Path=NewVM.Hours, Converter={StaticResource Int2DecimalConverter}, UpdateSourceTrigger=PropertyChanged}" />
|
||||
<Label Grid.Column="4" Grid.Row="0">Minuten</Label>
|
||||
<dxe:SpinEdit Name="spinedit_minutes" AllowNullInput="True" IsFloatValue="False" Grid.Column="5" Grid.Row="0"
|
||||
Height="23" Width="50" MinValue="0"
|
||||
MaxValue="59"
|
||||
EditValue="{Binding Path=NewVM.Minutes, Converter={StaticResource Int2DecimalConverter}, UpdateSourceTrigger=PropertyChanged}" />
|
||||
<Button Name="button_addReason" Click="button_addReason_Click" Grid.Column="4" Grid.Row="1" Height="25"
|
||||
Margin="3" IsDefault="True" Grid.ColumnSpan="2" HorizontalAlignment="Right">Hinzufügen</Button>
|
||||
<Label Grid.Column="0" Grid.Row="1">
|
||||
<Label Grid.Row="0" Grid.Column="0">Bezeichnung</Label>
|
||||
<TextBox
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Width="125"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
Text="{val:ValidationBinding Path=NewVM.Description,
|
||||
UpdateSourceTrigger=PropertyChanged}" />
|
||||
<Label Grid.Row="0" Grid.Column="2">max. abrechenbare Stunden (pro Woche)</Label>
|
||||
|
||||
<dxe:SpinEdit
|
||||
Name="spinedit_hours"
|
||||
Grid.Row="0"
|
||||
Grid.Column="3"
|
||||
Width="50"
|
||||
Height="23"
|
||||
AllowNullInput="True"
|
||||
EditValue="{Binding Path=NewVM.Hours, Converter={StaticResource Int2DecimalConverter}, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsFloatValue="False"
|
||||
MinValue="0" />
|
||||
<Label Grid.Row="0" Grid.Column="4">Minuten</Label>
|
||||
<dxe:SpinEdit
|
||||
Name="spinedit_minutes"
|
||||
Grid.Row="0"
|
||||
Grid.Column="5"
|
||||
Width="50"
|
||||
Height="23"
|
||||
AllowNullInput="True"
|
||||
EditValue="{Binding Path=NewVM.Minutes, Converter={StaticResource Int2DecimalConverter}, UpdateSourceTrigger=PropertyChanged}"
|
||||
IsFloatValue="False"
|
||||
MaxValue="59"
|
||||
MinValue="0" />
|
||||
<Button
|
||||
Name="button_addReason"
|
||||
Grid.Row="1"
|
||||
Grid.Column="4"
|
||||
Grid.ColumnSpan="2"
|
||||
Height="25"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Right"
|
||||
Click="button_addReason_Click"
|
||||
IsDefault="True">
|
||||
Hinzufügen
|
||||
</Button>
|
||||
<Label Grid.Row="1" Grid.Column="0">
|
||||
Farbe im Belegungsplan
|
||||
</Label>
|
||||
<ComboBox HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" SelectedItem="{val:ValidationBinding Path=NewVM.Brush}" Name="combobox_brush" Grid.Column="1" Grid.Row="1" Height="23" Margin="3" ItemsSource="{Binding Path=AllBrushes, Mode=OneWay}" Width="125">
|
||||
<ComboBox
|
||||
Name="combobox_brush"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Width="125"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
HorizontalContentAlignment="Stretch"
|
||||
VerticalContentAlignment="Stretch"
|
||||
ItemsSource="{Binding Path=AllBrushes, Mode=OneWay}"
|
||||
SelectedItem="{val:ValidationBinding Path=NewVM.Brush}">
|
||||
|
||||
<ComboBox.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<UniformGrid Columns="12" Rows="12" IsItemsHost="True" />
|
||||
<UniformGrid
|
||||
Columns="12"
|
||||
IsItemsHost="True"
|
||||
Rows="12" />
|
||||
</ItemsPanelTemplate>
|
||||
</ComboBox.ItemsPanel>
|
||||
<ComboBox.ItemContainerStyle>
|
||||
@@ -65,57 +130,124 @@
|
||||
</Style>
|
||||
</ComboBox.ItemContainerStyle>
|
||||
</ComboBox>
|
||||
<StackPanel Grid.Column="2" Grid.Row="1" Grid.ColumnSpan="2" Orientation="Horizontal">
|
||||
<StackPanel
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Grid.ColumnSpan="2"
|
||||
Orientation="Horizontal">
|
||||
<Label>Nur auswählbar für</Label>
|
||||
<ComboBox x:Name="combo_visibilitytype"
|
||||
Grid.Column="3" Grid.Row="1" VerticalAlignment="Center" Margin="3,1,3,3"
|
||||
HorizontalAlignment="Stretch"
|
||||
ItemsSource="{x:Static core:EnumTranslations.AbsenceReasonVisibility2Translations}"
|
||||
SelectedValue="{Binding NewVM.Sichtbarkeit, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
SelectedValuePath="Key"
|
||||
DisplayMemberPath="Value"
|
||||
Height="23" Width="200"/>
|
||||
<ComboBox
|
||||
x:Name="combo_visibilitytype"
|
||||
Grid.Row="1"
|
||||
Grid.Column="3"
|
||||
Width="200"
|
||||
Height="23"
|
||||
Margin="3,1,3,3"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Center"
|
||||
DisplayMemberPath="Value"
|
||||
ItemsSource="{x:Static core:EnumTranslations.AbsenceReasonVisibility2Translations}"
|
||||
SelectedValue="{Binding NewVM.Sichtbarkeit, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
SelectedValuePath="Key" />
|
||||
</StackPanel>
|
||||
<dxg:GridControl x:Name="datagrid_absencereasons" Margin="0,10,0,0" Grid.Column="0" Grid.Row="2"
|
||||
Grid.ColumnSpan="7" DataSource="{Binding VMList}">
|
||||
<dxg:GridControl
|
||||
x:Name="datagrid_absencereasons"
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="7"
|
||||
Margin="0,10,0,0"
|
||||
DataSource="{Binding VMList}">
|
||||
<dxg:GridControl.Columns>
|
||||
<dxg:GridColumn FieldName="IsDeleteable" Header="" FixedWidth="True" Width="24" ReadOnly="True">
|
||||
<dxg:GridColumn
|
||||
Width="24"
|
||||
FieldName="IsDeleteable"
|
||||
FixedWidth="True"
|
||||
Header=""
|
||||
ReadOnly="True">
|
||||
<dxg:GridColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Button Content="r"
|
||||
Visibility="{Binding Path=EditValue, Converter={StaticResource BoolVisibilityConverter}}"
|
||||
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"
|
||||
Visibility="{Binding Path=EditValue, Converter={StaticResource BoolVisibilityConverter}}" />
|
||||
</DataTemplate>
|
||||
</dxg:GridColumn.CellTemplate>
|
||||
</dxg:GridColumn>
|
||||
<dxg:GridColumn FieldName="Description" Header="Bezeichnung" Width="180" />
|
||||
<dxg:GridColumn FieldName="Hours" Header="max. abrechenbare Stunden" Width="180" />
|
||||
<dxg:GridColumn FieldName="Minutes" Header="Minuten" Width="180" />
|
||||
<dxg:GridColumn x:Name="column_visibility" FieldName="Sichtbarkeit" Header="Nur auswählbar für" Width="150" />
|
||||
<dxg:GridColumn x:Name="column_Color" FieldName="Brush" Header="Farbe" Width="70">
|
||||
<dxg:GridColumn.DisplayTemplate>
|
||||
<ControlTemplate>
|
||||
<Border HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Background="{Binding Value, diagnostics:PresentationTraceSources.TraceLevel=High }" BorderBrush="Black" BorderThickness="1" />
|
||||
</ControlTemplate>
|
||||
</dxg:GridColumn.DisplayTemplate>
|
||||
<dxg:GridColumn.EditTemplate>
|
||||
<ControlTemplate>
|
||||
<Button x:Name="PART_Editor" BorderThickness="0" Style="{x:Null}" Background="{Binding EditValue}" Foreground="{Binding EditValue}" Height="21" HorizontalAlignment="Stretch" Click="button_select_color_Click"></Button>
|
||||
</ControlTemplate>
|
||||
</dxg:GridColumn.EditTemplate>
|
||||
</dxg:GridColumn>
|
||||
<dxg:GridColumn
|
||||
Width="180"
|
||||
FieldName="Description"
|
||||
Header="Bezeichnung" />
|
||||
<dxg:GridColumn
|
||||
Width="180"
|
||||
FieldName="Hours"
|
||||
Header="max. abrechenbare Stunden" />
|
||||
<dxg:GridColumn
|
||||
Width="180"
|
||||
FieldName="Minutes"
|
||||
Header="Minuten" />
|
||||
<dxg:GridColumn
|
||||
x:Name="column_visibility"
|
||||
Width="150"
|
||||
FieldName="Sichtbarkeit"
|
||||
Header="Nur auswählbar für" />
|
||||
<dxg:GridColumn
|
||||
x:Name="column_Color"
|
||||
Width="70"
|
||||
FieldName="Brush"
|
||||
Header="Farbe">
|
||||
<dxg:GridColumn.DisplayTemplate>
|
||||
<ControlTemplate>
|
||||
<Border
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
Background="{Binding Value, diagnostics:PresentationTraceSources.TraceLevel=High}"
|
||||
BorderBrush="Black"
|
||||
BorderThickness="1" />
|
||||
</ControlTemplate>
|
||||
</dxg:GridColumn.DisplayTemplate>
|
||||
<dxg:GridColumn.EditTemplate>
|
||||
<ControlTemplate>
|
||||
<Button
|
||||
x:Name="PART_Editor"
|
||||
Height="21"
|
||||
HorizontalAlignment="Stretch"
|
||||
Background="{Binding EditValue}"
|
||||
BorderThickness="0"
|
||||
Click="button_select_color_Click"
|
||||
Foreground="{Binding EditValue}"
|
||||
Style="{x:Null}" />
|
||||
</ControlTemplate>
|
||||
</dxg:GridColumn.EditTemplate>
|
||||
</dxg:GridColumn>
|
||||
</dxg:GridControl.Columns>
|
||||
<dxg:GridControl.View>
|
||||
<dxg:TableView AutoWidth="true" ShowGroupPanel="False" ShowGroupedColumns="false" ShowTotalSummary="False"
|
||||
NavigationStyle="Cell" />
|
||||
<dxg:TableView
|
||||
AutoWidth="true"
|
||||
NavigationStyle="Cell"
|
||||
ShowGroupPanel="False"
|
||||
ShowGroupedColumns="false"
|
||||
ShowTotalSummary="False" />
|
||||
</dxg:GridControl.View>
|
||||
</dxg:GridControl>
|
||||
<Popup x:Name="popup_color" StaysOpen="false" Placement="MousePoint">
|
||||
<ListBox x:Name="listbox_colorpicker" BorderThickness="0" Loaded="colorEditor_Loaded" SelectionChanged="listbox_colorpicker_SelectionChanged">
|
||||
<Popup
|
||||
x:Name="popup_color"
|
||||
Placement="MousePoint"
|
||||
StaysOpen="false">
|
||||
<ListBox
|
||||
x:Name="listbox_colorpicker"
|
||||
BorderThickness="0"
|
||||
Loaded="colorEditor_Loaded"
|
||||
SelectionChanged="listbox_colorpicker_SelectionChanged">
|
||||
<ListBox.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<UniformGrid Columns="12" Rows="12" IsItemsHost="True" />
|
||||
<UniformGrid
|
||||
Columns="12"
|
||||
IsItemsHost="True"
|
||||
Rows="12" />
|
||||
</ItemsPanelTemplate>
|
||||
</ListBox.ItemsPanel>
|
||||
<ListBox.ItemContainerStyle>
|
||||
|
||||
@@ -8,7 +8,7 @@ using BeWo.ServiceProxy;
|
||||
using BeWo.ViewModel;
|
||||
using BeWo.ViewModel.ListViewModel;
|
||||
using BS.Shared.Extensions;
|
||||
|
||||
using BS.Shared.Translation;
|
||||
using DependencyObject = System.Windows.DependencyObject;
|
||||
|
||||
namespace BeWo.View.Detail
|
||||
@@ -47,6 +47,8 @@ namespace BeWo.View.Detail
|
||||
RemoveAbsenceTimeCommand = new ButtonClickCommand(RemoveAbsenceTime);
|
||||
}
|
||||
|
||||
public bool CheckEnddate { get; set; }
|
||||
|
||||
private void AddAbsenceTimes()
|
||||
{
|
||||
bool doSave = true;
|
||||
@@ -57,13 +59,23 @@ namespace BeWo.View.Detail
|
||||
{
|
||||
doSave = false;
|
||||
if (MessageBox.Show(
|
||||
"Die Abwesenheit überschneidet sich mit mindestens einer bereits vorhandenen Abwesenheit.\nMöchten Sie trotzdem speichern?",
|
||||
"Die Abwesenheit überschneidet sich mit mindestens einer bereits vorhandenen Abwesenheit.\nMöchten Sie trotzdem fortfahren?",
|
||||
"BeWo Planer", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
|
||||
{
|
||||
doSave = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (CheckEnddate && !WurdeEnddatumEingetragen())
|
||||
{
|
||||
doSave = false;
|
||||
if (MessageBox.Show(Translator.Translate(
|
||||
"Die Abwesenheit hat kein Enddatum.\nBeachten Sie, dass Abwesenheiten ohne Enddatum unbegrenzt weiterlaufen und es dadurch " +
|
||||
"zu Fehlberechnungen im Stunden- und Urlaubskonto kommen kann.\nMöchten Sie trotzdem fortfahren?"),
|
||||
"BeWo Planer", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes)
|
||||
{
|
||||
doSave = true;
|
||||
}
|
||||
}
|
||||
if (doSave)
|
||||
{
|
||||
AbsenceTimes?.NewVM.ValidateDates(() =>
|
||||
@@ -76,32 +88,39 @@ namespace BeWo.View.Detail
|
||||
|
||||
private List<AbsenceTimeVM> PruefeAufUeberschneidungen()
|
||||
{
|
||||
|
||||
var neu = AbsenceTimes.NewVM;
|
||||
|
||||
DateTime neuStart = neu.Start ?? DateTime.MinValue;
|
||||
DateTime neuEnd = neu.End ?? DateTime.MaxValue;
|
||||
|
||||
|
||||
List<AbsenceTimeVM> abwesenheitenMitUeberschneidungen = new List<AbsenceTimeVM>();
|
||||
|
||||
foreach (var alt in AbsenceTimes.VMList)
|
||||
if (AbsenceTimes != null)
|
||||
{
|
||||
var neu = AbsenceTimes.NewVM;
|
||||
|
||||
DateTime altStart = alt.Start ?? DateTime.MinValue;
|
||||
DateTime altEnd = alt.End ?? DateTime.MaxValue;
|
||||
DateTime neuStart = neu.Start ?? DateTime.MinValue;
|
||||
DateTime neuEnd = neu.End ?? DateTime.MaxValue;
|
||||
|
||||
if (neuEnd >= altStart && neuStart <= altEnd)
|
||||
|
||||
|
||||
|
||||
foreach (var alt in AbsenceTimes.VMList)
|
||||
{
|
||||
abwesenheitenMitUeberschneidungen.Add(alt);
|
||||
|
||||
DateTime altStart = alt.Start ?? DateTime.MinValue;
|
||||
DateTime altEnd = alt.End ?? DateTime.MaxValue;
|
||||
|
||||
if (neuEnd >= altStart && neuStart <= altEnd)
|
||||
{
|
||||
abwesenheitenMitUeberschneidungen.Add(alt);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return abwesenheitenMitUeberschneidungen;
|
||||
}
|
||||
private bool WurdeEnddatumEingetragen()
|
||||
{
|
||||
var neu = AbsenceTimes.NewVM;
|
||||
|
||||
return neu.End.HasValue;
|
||||
}
|
||||
|
||||
|
||||
private void RemoveAbsenceTime()
|
||||
{
|
||||
AbsenceTimes?.VMList.Remove(DataGridAbsenceTimes.GetCurrentValue<AbsenceTimeVM>());
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -14,6 +14,7 @@ using System.Windows.Threading;
|
||||
using BeWo.Core;
|
||||
using BeWo.ServiceProxy;
|
||||
using BeWo.View.Controls;
|
||||
using BeWo.View.Windows;
|
||||
using BeWo.ViewModel;
|
||||
using BeWo.ViewModel.Light;
|
||||
using BeWo.ViewModel.ListViewModel;
|
||||
|
||||
@@ -1334,7 +1334,7 @@ namespace BeWo.View.Detail
|
||||
|
||||
if (lValid)
|
||||
{
|
||||
lValid = BeWoUtils.ValidateServiceRecordVM(ViewModel.PrototypeVM, ViewModel.StatisticsDC, selectedNode, false, ViewModel.SelectedEmployee, null, null);
|
||||
lValid = BeWoUtils.ValidateServiceRecordVM(ViewModel.PrototypeVM, ViewModel.StatisticsDC, selectedNode, false, ViewModel.SelectedEmployee, null, null, 1);
|
||||
|
||||
if (lValid)
|
||||
{
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
<Window x:Class="BeWo.View.Detail.CustomerHistoryDialog"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:detail="clr-namespace:BeWo.View.Detail"
|
||||
Title="CustomerHistoryDialog" Height="300" Width="300">
|
||||
<Window
|
||||
x:Class="BeWo.View.Detail.CustomerHistoryDialog"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:detail="clr-namespace:BeWo.View.Detail"
|
||||
Title="CustomerHistoryDialog"
|
||||
Width="300"
|
||||
Height="300">
|
||||
<Grid>
|
||||
<detail:CustomerHistoryView x:Name="CustomerHistoryView"></detail:CustomerHistoryView>
|
||||
<detail:CustomerHistoryView x:Name="CustomerHistoryView" />
|
||||
</Grid>
|
||||
</Window>
|
||||
|
||||
@@ -783,7 +783,7 @@
|
||||
FontSize="22"
|
||||
Foreground="#FFFFFFFF"
|
||||
Text="{Binding CustomerAlias}"
|
||||
TextDecorations="" />
|
||||
TextDecorations="None" />
|
||||
<TextBox
|
||||
Margin="0,0,0,0"
|
||||
Padding="0,0,0,0"
|
||||
@@ -804,6 +804,7 @@
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="10" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Rectangle Height="6" Fill="{StaticResource CustomerContentBrush}" />
|
||||
@@ -1490,13 +1491,13 @@
|
||||
Selector.Selected="tabitem_SchulDienst_Selected" />
|
||||
<TabItem
|
||||
Name="tabitem_gemeinnutzigearbeit"
|
||||
Header="Vermittlung Arbeit"
|
||||
Header="Vermittlung gemeinnütziger Arbeit"
|
||||
Visibility="{Binding Path=PermissionGemeinnutzigeArbeitView, Converter={StaticResource BoolVisibilityConverter}}">
|
||||
<detail:CustomerVermittlungArbeitView />
|
||||
</TabItem>
|
||||
<TabItem
|
||||
Name="tabitem_wohnhilfe"
|
||||
Header="Wohnhilfe"
|
||||
Header="Basisdaten BAGW"
|
||||
Visibility="{Binding Path=PermissionWohnhilfeView, Converter={StaticResource BoolVisibilityConverter}}">
|
||||
<detail:CustomerWohnhilfeView />
|
||||
</TabItem>
|
||||
@@ -2617,7 +2618,7 @@
|
||||
</TabItem>
|
||||
<TabItem r:DemandUserRight.VisibleDemands="Customer_ViewAbsenceTimes" Header="Abwesenheiten">
|
||||
<Grid>
|
||||
<detail:AbsenceTimesView x:Name="AbsenceTimesView" AbsenceTimes="{Binding ViewModel.AbsenceTimes, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay, ElementName=CustomerBeWoView}" />
|
||||
<detail:AbsenceTimesView x:Name="AbsenceTimesView" CheckEnddate="False" AbsenceTimes="{Binding ViewModel.AbsenceTimes, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay, ElementName=CustomerBeWoView}" />
|
||||
</Grid>
|
||||
</TabItem>
|
||||
<TabItem Header="Umfeld" Selector.Selected="TabItemPersons_Selected">
|
||||
@@ -3786,10 +3787,10 @@
|
||||
Selector.Selected="tabitem_log_Selected" />
|
||||
</TabControl>
|
||||
<Border
|
||||
Grid.Row="2"
|
||||
Grid.Row="3"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="40"
|
||||
Margin="0,10,0,0"
|
||||
Margin="0,0,0,0"
|
||||
VerticalAlignment="Stretch"
|
||||
Background="#FF000000">
|
||||
<Border.OpacityMask>
|
||||
@@ -3798,12 +3799,40 @@
|
||||
<GradientStop Offset="1" Color="#33FFFFFF" />
|
||||
</LinearGradientBrush>
|
||||
</Border.OpacityMask>
|
||||
|
||||
</Border>
|
||||
<StackPanel
|
||||
Grid.Row="2"
|
||||
Grid.Row="3"
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Center"
|
||||
Orientation="Horizontal">
|
||||
<StackPanel.Resources>
|
||||
<ResourceDictionary>
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<ResourceDictionary Source="..\..\Styles\ModernOrangeBlack.xaml" />
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
</ResourceDictionary>
|
||||
</StackPanel.Resources>
|
||||
<Button
|
||||
x:Name="btnOpenAi2"
|
||||
Margin="10,0,0,0"
|
||||
Command="{Binding Path=OpenAiWindowCommand, RelativeSource={RelativeSource AncestorType={x:Type localView:BeWoView}}}"
|
||||
Content="AI Chat Window"
|
||||
Style="{StaticResource NavigationToolbarButtonStyle}" />
|
||||
<Button
|
||||
x:Name="btnOpenAi3"
|
||||
Margin="10,0,0,0"
|
||||
Command="{Binding Path=OpenAiPopupCommand, RelativeSource={RelativeSource AncestorType={x:Type localView:BeWoView}}}"
|
||||
Content="AI Chat Popup"
|
||||
Style="{StaticResource NavigationToolbarButtonStyle}" />
|
||||
</StackPanel>
|
||||
<StackPanel
|
||||
Grid.Row="3"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="Auto"
|
||||
Margin="5,10,0,0"
|
||||
Margin="5,0,0,0"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Orientation="Horizontal">
|
||||
@@ -3920,6 +3949,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>
|
||||
@@ -51,6 +51,9 @@ using Hyperlink = System.Windows.Documents.Hyperlink;
|
||||
using MessageBox = System.Windows.MessageBox;
|
||||
using VerticalAlignment = System.Windows.VerticalAlignment;
|
||||
using BeWo.AI;
|
||||
using BeWo.View.Navigation;
|
||||
using DevExpress.Mvvm;
|
||||
using System.Collections;
|
||||
|
||||
namespace BeWo.View.Detail
|
||||
{
|
||||
@@ -96,10 +99,12 @@ namespace BeWo.View.Detail
|
||||
public CustomerView(CustomerVM pCustomerVM)
|
||||
{
|
||||
InitializeComponent();
|
||||
DataContext = ViewModel;
|
||||
|
||||
DataContext = ViewModel;
|
||||
OpenAiWindowCommand = new DelegateCommand(OpenAiWindow, () => BeWoApp.HasLoggedOnUserRight(UserRightType.AiModuleView) && !ViewModel.IsNew);
|
||||
OpenAiPopupCommand = new DelegateCommand(OpenAiPopup, () => BeWoApp.HasLoggedOnUserRight(UserRightType.AiModuleView2) && !ViewModel.IsNew);
|
||||
|
||||
BehinderungsartenSelection.CommandBindings.Add(new CommandBinding(ApplicationCommands.Close, (s, e) => this.Dispatch(() => { PopupBehinderungsarten.IsOpen = false; })));
|
||||
BehinderungsartenSelection.CommandBindings.Add(new CommandBinding(ApplicationCommands.Close, (s, e) => this.Dispatch(() => { PopupBehinderungsarten.IsOpen = false; })));
|
||||
MerkzeichenSelection.CommandBindings.Add(new CommandBinding(ApplicationCommands.Close, (s, e) => this.Dispatch(() => { PopupMerkzeichen.IsOpen = false; })));
|
||||
_AlleEintragKategorien = pCustomerVM.EintragKategorien;
|
||||
|
||||
@@ -289,7 +294,42 @@ namespace BeWo.View.Detail
|
||||
#endif
|
||||
}
|
||||
|
||||
void Image_EditValueChanged(object sender, DevExpress.Xpf.Editors.EditValueChangedEventArgs e)
|
||||
public DelegateCommand OpenAiWindowCommand { get; }
|
||||
public DelegateCommand OpenAiPopupCommand { get; }
|
||||
|
||||
public Dictionary<TableID, long[]> GetVisibleInformationReferences()
|
||||
{
|
||||
var visible = ViewModel;
|
||||
|
||||
return GetVisibleInformationReferences(visible);
|
||||
}
|
||||
|
||||
private Dictionary<TableID, long[]> GetVisibleInformationReferences(CustomerVM customer)
|
||||
{
|
||||
var dict = new Dictionary<TableID, long[]>() {
|
||||
{ TableID.Customer, new long[]{customer.DataContract.CustomerOid.Value } }
|
||||
};
|
||||
|
||||
return dict;
|
||||
}
|
||||
|
||||
private void OpenAiWindow()
|
||||
{
|
||||
var customer_oid = ViewModel.DataContract.CustomerOid;
|
||||
var context = GetVisibleInformationReferences();
|
||||
|
||||
MainControl.WindowService.ShowAiConversationWindow(UIContext.CustomerSingle, context, customer_oid);
|
||||
}
|
||||
|
||||
private void OpenAiPopup()
|
||||
{
|
||||
var customer_oid = ViewModel.DataContract.CustomerOid;
|
||||
var context = GetVisibleInformationReferences();
|
||||
|
||||
MainControl.WindowService.ShowAiConversationModalViewWindow(UIContext.CustomerSingle, context, customer_oid);
|
||||
}
|
||||
|
||||
void Image_EditValueChanged(object sender, DevExpress.Xpf.Editors.EditValueChangedEventArgs e)
|
||||
{
|
||||
_ViewModel.CustomerImage = Img.EditValue as byte[];
|
||||
}
|
||||
@@ -361,7 +401,7 @@ namespace BeWo.View.Detail
|
||||
//get { return BeWoApp.Tenant == "demo" && BeWoApp.UserName == "demo"; }
|
||||
}
|
||||
|
||||
private void Log(string log)
|
||||
private void Log(string log)
|
||||
{
|
||||
if (ShouldLog)
|
||||
{
|
||||
|
||||
@@ -1,12 +1,15 @@
|
||||
<Window x:Class="BeWo.View.Detail.DebugMessageLogView"
|
||||
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:BeWo.View.Detail"
|
||||
WindowStartupLocation="Manual"
|
||||
Title="Debug Log" mc:Ignorable="d"
|
||||
Height="900" Width="1000">
|
||||
<Window
|
||||
x:Class="BeWo.View.Detail.DebugMessageLogView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:local="clr-namespace:BeWo.View.Detail"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
Title="Debug Log"
|
||||
Width="1000"
|
||||
Height="900"
|
||||
WindowStartupLocation="Manual"
|
||||
mc:Ignorable="d">
|
||||
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
@@ -16,11 +19,20 @@
|
||||
<StackPanel Grid.Row="0">
|
||||
<Button Click="ButtonBase_OnClick">Leeren</Button>
|
||||
</StackPanel>
|
||||
<ListView x:Name="DebugListView" ItemsSource="{Binding DebugMessageList}" Background="GhostWhite" Grid.Row="1">
|
||||
<ListView
|
||||
x:Name="DebugListView"
|
||||
Grid.Row="1"
|
||||
Background="GhostWhite"
|
||||
ItemsSource="{Binding DebugMessageList}">
|
||||
<ListView.ItemTemplate>
|
||||
<DataTemplate DataType="local:DebugWindowMessage">
|
||||
<Grid>
|
||||
<TextBlock FontSize="16" FontWeight="Bold" FontFamily="Consolas" Text="{Binding MessageText}" Foreground="{Binding TextColor}"></TextBlock>
|
||||
<TextBlock
|
||||
FontFamily="Consolas"
|
||||
FontSize="16"
|
||||
FontWeight="Bold"
|
||||
Foreground="{Binding TextColor}"
|
||||
Text="{Binding MessageText}" />
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ListView.ItemTemplate>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,18 +1,30 @@
|
||||
<localView:BeWoView x:Class="BeWo.View.Detail.GroupOfPeopleView"
|
||||
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:localSearchView="clr-namespace:BeWo.View.Search"
|
||||
xmlns:val="clr-namespace:BeWo.Validation"
|
||||
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
Height="Auto"
|
||||
Width="Auto" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Focusable="True">
|
||||
<localView:BeWoView
|
||||
x:Class="BeWo.View.Detail.GroupOfPeopleView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:localSearchView="clr-namespace:BeWo.View.Search"
|
||||
xmlns:localView="clr-namespace:BeWo.View"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
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">
|
||||
<Grid>
|
||||
<GroupBox Style="{StaticResource PopUpWindowStyle}">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal" VerticalAlignment="Center" Margin="0">
|
||||
<Image Source="..\..\Ressources\Icons\UserGroupBusinessDisabled.png" RenderTransformOrigin="0.5,0.5" Width="Auto" Height="28" Margin="0,0,0,0">
|
||||
<StackPanel
|
||||
Margin="0"
|
||||
VerticalAlignment="Center"
|
||||
Orientation="Horizontal">
|
||||
<Image
|
||||
Width="Auto"
|
||||
Height="28"
|
||||
Margin="0,0,0,0"
|
||||
RenderTransformOrigin="0.5,0.5"
|
||||
Source="..\..\Ressources\Icons\UserGroupBusinessDisabled.png">
|
||||
<Image.RenderTransform>
|
||||
<TransformGroup>
|
||||
<ScaleTransform ScaleX="1" ScaleY="1" />
|
||||
@@ -22,7 +34,14 @@
|
||||
</TransformGroup>
|
||||
</Image.RenderTransform>
|
||||
</Image>
|
||||
<TextBlock Text="Gruppe bearbeiten" Margin="10,4,0,0" Background="{x:Null}" Foreground="#FFFFFFFF" FontSize="20" VerticalAlignment="Stretch" Padding="0,0,0,0" />
|
||||
<TextBlock
|
||||
Margin="10,4,0,0"
|
||||
Padding="0,0,0,0"
|
||||
VerticalAlignment="Stretch"
|
||||
Background="{x:Null}"
|
||||
FontSize="20"
|
||||
Foreground="#FFFFFFFF"
|
||||
Text="Gruppe bearbeiten" />
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<Grid Margin="0,0,0,0" Background="{DynamicResource ObjectEditBackgroundBrush}">
|
||||
@@ -31,8 +50,11 @@
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Rectangle Fill="{DynamicResource TeamContentBrush}" Height="6" />
|
||||
<Grid Grid.Row="1" Name="grid_root" Margin="10,10,10,0">
|
||||
<Rectangle Height="6" Fill="{DynamicResource TeamContentBrush}" />
|
||||
<Grid
|
||||
Name="grid_root"
|
||||
Grid.Row="1"
|
||||
Margin="10,10,10,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
@@ -41,8 +63,11 @@
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<GroupBox Width="180" Header="Alle Gruppen" Style="{StaticResource ObjectEditGroupBox}">
|
||||
<Grid >
|
||||
<GroupBox
|
||||
Width="180"
|
||||
Header="Alle Gruppen"
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
@@ -51,41 +76,106 @@
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Button x:Name="btnAddGroup" HorizontalAlignment="Right" Click="btnAddGroup_Click" Height="21" Margin="0,0,0,3" ToolTip="Neue Gruppe hinzufügen">
|
||||
<Button
|
||||
x:Name="btnAddGroup"
|
||||
Height="21"
|
||||
Margin="0,0,0,3"
|
||||
HorizontalAlignment="Right"
|
||||
Click="btnAddGroup_Click"
|
||||
ToolTip="Neue Gruppe hinzufügen">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid Width="18" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0,-2,0,0">
|
||||
<Line X1="4" X2="12" Y1="8" Y2="8" Fill="{x:Null}" Stroke="#FFFFFFFF" StrokeStartLineCap="Round" StrokeEndLineCap="Round" StrokeThickness="2" HorizontalAlignment="Center" VerticalAlignment="Center" Width="16" Height="16" />
|
||||
<Line X1="8" X2="8" Y1="4" Y2="12" Fill="{x:Null}" Stroke="#FFFFFFFF" StrokeStartLineCap="Round" StrokeEndLineCap="Round" StrokeThickness="2" HorizontalAlignment="Center" VerticalAlignment="Center" Width="16" Height="16" />
|
||||
<Grid
|
||||
Width="18"
|
||||
Margin="0,-2,0,0"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center">
|
||||
<Line
|
||||
Width="16"
|
||||
Height="16"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Fill="{x:Null}"
|
||||
Stroke="#FFFFFFFF"
|
||||
StrokeEndLineCap="Round"
|
||||
StrokeStartLineCap="Round"
|
||||
StrokeThickness="2"
|
||||
X1="4"
|
||||
X2="12"
|
||||
Y1="8"
|
||||
Y2="8" />
|
||||
<Line
|
||||
Width="16"
|
||||
Height="16"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Fill="{x:Null}"
|
||||
Stroke="#FFFFFFFF"
|
||||
StrokeEndLineCap="Round"
|
||||
StrokeStartLineCap="Round"
|
||||
StrokeThickness="2"
|
||||
X1="8"
|
||||
X2="8"
|
||||
Y1="4"
|
||||
Y2="12" />
|
||||
</Grid>
|
||||
<TextBlock Grid.Column="1" Text="Neue Gruppe"></TextBlock>
|
||||
<TextBlock Grid.Column="1" Text="Neue Gruppe" />
|
||||
</Grid>
|
||||
|
||||
</Button>
|
||||
</StackPanel>
|
||||
<ListBox Grid.Row="1" ItemsSource="{Binding VMList}" SelectedItem="{Binding EditVM}">
|
||||
<ListBox
|
||||
Grid.Row="1"
|
||||
ItemsSource="{Binding VMList}"
|
||||
SelectedItem="{Binding EditVM}">
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Button Style="{StaticResource {x:Type Button}}" HorizontalAlignment="Center" VerticalAlignment="Center" Height="18" Padding="0" Width="{Binding RelativeSource={RelativeSource Self}, Path=ActualHeight}" Margin="3 0 0 0" Click="button_removegroup_Click" Tag="{Binding}" ToolTip="Entfernen">
|
||||
<Button
|
||||
Width="{Binding RelativeSource={RelativeSource Self}, Path=ActualHeight}"
|
||||
Height="18"
|
||||
Margin="3,0,0,0"
|
||||
Padding="0"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Click="button_removegroup_Click"
|
||||
Style="{StaticResource {x:Type Button}}"
|
||||
Tag="{Binding}"
|
||||
ToolTip="Entfernen">
|
||||
<Canvas HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
|
||||
<Path Stroke="White" StrokeThickness="1.5" Data="M -3,-3 L 3, 3" StrokeStartLineCap="Round" StrokeEndLineCap="Round" />
|
||||
<Path Stroke="White" StrokeThickness="1.5" Data="M 3,-3 L -3, 3" StrokeStartLineCap="Round" StrokeEndLineCap="Round" />
|
||||
<Path
|
||||
Data="M -3,-3 L 3, 3"
|
||||
Stroke="White"
|
||||
StrokeEndLineCap="Round"
|
||||
StrokeStartLineCap="Round"
|
||||
StrokeThickness="1.5" />
|
||||
<Path
|
||||
Data="M 3,-3 L -3, 3"
|
||||
Stroke="White"
|
||||
StrokeEndLineCap="Round"
|
||||
StrokeStartLineCap="Round"
|
||||
StrokeThickness="1.5" />
|
||||
</Canvas>
|
||||
</Button>
|
||||
<Label Margin="3 0 0 3" Padding="0" Content="{Binding Path=Name}" />
|
||||
<Label
|
||||
Margin="3,0,0,3"
|
||||
Padding="0"
|
||||
Content="{Binding Path=Name}" />
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</ListBox.ItemTemplate>
|
||||
</ListBox>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
|
||||
<Grid Margin="10,0,0,0" Grid.Column="1" DataContext="{Binding EditVM}" >
|
||||
|
||||
|
||||
<Grid
|
||||
Grid.Column="1"
|
||||
Margin="10,0,0,0"
|
||||
DataContext="{Binding EditVM}">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="250" />
|
||||
@@ -100,11 +190,22 @@
|
||||
<RowDefinition Height="0" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Label IsEnabled="{Binding Converter={StaticResource ObjectBoolConverter}}" >Name der Gruppe</Label>
|
||||
<Label IsEnabled="{Binding Converter={StaticResource ObjectBoolConverter}}">Name der Gruppe</Label>
|
||||
|
||||
<TextBox Grid.Column="1" Height="23" Margin="3,0,3,0" Text="{val:ValidationBinding Path=Name, UpdateSourceTrigger=PropertyChanged}" IsEnabled="{Binding Converter={StaticResource ObjectBoolConverter}}" />
|
||||
<TextBox
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3,0,3,0"
|
||||
IsEnabled="{Binding Converter={StaticResource ObjectBoolConverter}}"
|
||||
Text="{val:ValidationBinding Path=Name,
|
||||
UpdateSourceTrigger=PropertyChanged}" />
|
||||
|
||||
<GroupBox Grid.Row="3" Grid.ColumnSpan="4" Header="Mitglieder hinzufügen" Margin="3,15,0,0" Style="{DynamicResource ObjectEditGroupBox}" >
|
||||
<GroupBox
|
||||
Grid.Row="3"
|
||||
Grid.ColumnSpan="4"
|
||||
Margin="3,15,0,0"
|
||||
Header="Mitglieder hinzufügen"
|
||||
Style="{DynamicResource ObjectEditGroupBox}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="220" />
|
||||
@@ -116,32 +217,97 @@
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Label VerticalAlignment="Bottom" IsEnabled="{Binding Converter={StaticResource ObjectBoolConverter}}" Content="{markup:Translate Zugeordnete Hilfepläne}" />
|
||||
<Label
|
||||
VerticalAlignment="Bottom"
|
||||
Content="{markup:Translate Zugeordnete Hilfepläne}"
|
||||
IsEnabled="{Binding Converter={StaticResource ObjectBoolConverter}}" />
|
||||
|
||||
<ListBox Name="listbox_teamMember" Grid.Row="1" ItemsSource="{Binding Path=SupportConceptList}" IsEnabled="{Binding Converter={StaticResource ObjectBoolConverter}}" >
|
||||
<ListBox
|
||||
Name="listbox_teamMember"
|
||||
Grid.Row="1"
|
||||
IsEnabled="{Binding Converter={StaticResource ObjectBoolConverter}}"
|
||||
ItemsSource="{Binding Path=SupportConceptList}">
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Button Style="{StaticResource {x:Type Button}}" HorizontalAlignment="Center" VerticalAlignment="Center" Height="18" Padding="0" Width="{Binding RelativeSource={RelativeSource Self}, Path=ActualHeight}" Margin="3 0 0 0" Click="button_remove_Click" Tag="{Binding}" ToolTip="Entfernen">
|
||||
<Button
|
||||
Width="{Binding RelativeSource={RelativeSource Self}, Path=ActualHeight}"
|
||||
Height="18"
|
||||
Margin="3,0,0,0"
|
||||
Padding="0"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Click="button_remove_Click"
|
||||
Style="{StaticResource {x:Type Button}}"
|
||||
Tag="{Binding}"
|
||||
ToolTip="Entfernen">
|
||||
<Canvas HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
|
||||
<Path Stroke="White" StrokeThickness="1.5" Data="M -3,-3 L 3, 3" StrokeStartLineCap="Round" StrokeEndLineCap="Round" />
|
||||
<Path Stroke="White" StrokeThickness="1.5" Data="M 3,-3 L -3, 3" StrokeStartLineCap="Round" StrokeEndLineCap="Round" />
|
||||
<Path
|
||||
Data="M -3,-3 L 3, 3"
|
||||
Stroke="White"
|
||||
StrokeEndLineCap="Round"
|
||||
StrokeStartLineCap="Round"
|
||||
StrokeThickness="1.5" />
|
||||
<Path
|
||||
Data="M 3,-3 L -3, 3"
|
||||
Stroke="White"
|
||||
StrokeEndLineCap="Round"
|
||||
StrokeStartLineCap="Round"
|
||||
StrokeThickness="1.5" />
|
||||
</Canvas>
|
||||
</Button>
|
||||
<Label Margin="3 0 0 3" Padding="0" Content="{Binding Path=LastName}" />
|
||||
<Label Margin="0" Padding="0" Content=", " />
|
||||
<Label Margin="0" Padding="0" Content="{Binding Path=FirstName}" />
|
||||
<Label Margin="0" Padding="0" Content=", " />
|
||||
<Label Margin="0" Padding="0" Content="{Binding Path=FirstCostBearerDetailString}" />
|
||||
<Label
|
||||
Margin="3,0,0,3"
|
||||
Padding="0"
|
||||
Content="{Binding Path=LastName}" />
|
||||
<Label
|
||||
Margin="0"
|
||||
Padding="0"
|
||||
Content=", " />
|
||||
<Label
|
||||
Margin="0"
|
||||
Padding="0"
|
||||
Content="{Binding Path=FirstName}" />
|
||||
<Label
|
||||
Margin="0"
|
||||
Padding="0"
|
||||
Content=", " />
|
||||
<Label
|
||||
Margin="0"
|
||||
Padding="0"
|
||||
Content="{Binding Path=FirstCostBearerDetailString}" />
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</ListBox.ItemTemplate>
|
||||
</ListBox>
|
||||
|
||||
<Button Name="button_add" Grid.Row="2" Content="<" FontWeight="Bold" Width="25" Grid.Column="1" VerticalAlignment="Center" Height="25" MinWidth="30" Margin="3" ToolTip="Neues Gruppenmitglied hinzufügen" Click="button_add_Click" IsEnabled="{Binding Converter={StaticResource ObjectBoolConverter}}" />
|
||||
<Button
|
||||
Name="button_add"
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Width="25"
|
||||
Height="25"
|
||||
MinWidth="30"
|
||||
Margin="3"
|
||||
VerticalAlignment="Center"
|
||||
Click="button_add_Click"
|
||||
Content="<"
|
||||
FontWeight="Bold"
|
||||
IsEnabled="{Binding Converter={StaticResource ObjectBoolConverter}}"
|
||||
ToolTip="Neues Gruppenmitglied hinzufügen" />
|
||||
|
||||
<Label VerticalAlignment="Bottom" Grid.Column="2" IsEnabled="{Binding Converter={StaticResource ObjectBoolConverter}}" Content="{markup:Translate Verfügbare Hilfepläne}"/>
|
||||
<localSearchView:SupportConceptSearchView x:Name="SupportConceptSearchView" IsMultiSelect="True" Grid.Column="2" Grid.Row="1" SearchMode="ActiveCostbearer2SupportConcepts" ShowFilterPanel="True"/>
|
||||
<Label
|
||||
Grid.Column="2"
|
||||
VerticalAlignment="Bottom"
|
||||
Content="{markup:Translate Verfügbare Hilfepläne}"
|
||||
IsEnabled="{Binding Converter={StaticResource ObjectBoolConverter}}" />
|
||||
<localSearchView:SupportConceptSearchView
|
||||
x:Name="SupportConceptSearchView"
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
IsMultiSelect="True"
|
||||
SearchMode="ActiveCostbearer2SupportConcepts"
|
||||
ShowFilterPanel="True" />
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
@@ -149,18 +315,41 @@
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
<Border Grid.Row="2" Grid.ColumnSpan="3" Height="40" Margin="0,10,0,0" VerticalAlignment="Stretch" Background="#FF000000">
|
||||
<Border
|
||||
Grid.Row="2"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="40"
|
||||
Margin="0,10,0,0"
|
||||
VerticalAlignment="Stretch"
|
||||
Background="#FF000000">
|
||||
<Border.OpacityMask>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#19000000" Offset="0" />
|
||||
<GradientStop Color="#33FFFFFF" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#19000000" />
|
||||
<GradientStop Offset="1" Color="#33FFFFFF" />
|
||||
</LinearGradientBrush>
|
||||
</Border.OpacityMask>
|
||||
|
||||
</Border>
|
||||
<StackPanel Grid.ColumnSpan="3" Grid.Row="2" Orientation="Horizontal" VerticalAlignment="Center" Height="Auto" Margin="5,10,0,0" HorizontalAlignment="Right">
|
||||
<Button x:Name="btnSave" Content="Speichern und schließen" Margin="0,0,2,0" Command="ApplicationCommands.Save" Height="25" />
|
||||
<Button x:Name="btnClose" Content="Schließen" Margin="0,0,3,0" Command="ApplicationCommands.Close" Height="25" />
|
||||
<StackPanel
|
||||
Grid.Row="2"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="Auto"
|
||||
Margin="5,10,0,0"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
x:Name="btnSave"
|
||||
Height="25"
|
||||
Margin="0,0,2,0"
|
||||
Command="ApplicationCommands.Save"
|
||||
Content="Speichern und schließen" />
|
||||
<Button
|
||||
x:Name="btnClose"
|
||||
Height="25"
|
||||
Margin="0,0,3,0"
|
||||
Command="ApplicationCommands.Close"
|
||||
Content="Schließen" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
@@ -1,15 +1,21 @@
|
||||
<Window x:Class="BeWo.View.Detail.MailMergeWindow"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:detail="clr-namespace:BeWo.View.Detail"
|
||||
xmlns:conv="clr-namespace:BeWo.Converter"
|
||||
xmlns:controls="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
WindowStyle="None"
|
||||
AllowsTransparency="True"
|
||||
Background="Transparent"
|
||||
Title="MailMergeWindow" Height="530" Width="750" ResizeMode="NoResize" WindowStartupLocation="CenterOwner" x:Name="SerienbriefFenster">
|
||||
<Window
|
||||
x:Class="BeWo.View.Detail.MailMergeWindow"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:controls="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
xmlns:conv="clr-namespace:BeWo.Converter"
|
||||
xmlns:detail="clr-namespace:BeWo.View.Detail"
|
||||
x:Name="SerienbriefFenster"
|
||||
Title="MailMergeWindow"
|
||||
Width="750"
|
||||
Height="530"
|
||||
AllowsTransparency="True"
|
||||
Background="Transparent"
|
||||
ResizeMode="NoResize"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
WindowStyle="None">
|
||||
<Window.Resources>
|
||||
<!-- Region HilfeplanTemplate -->
|
||||
<!-- Region HilfeplanTemplate -->
|
||||
<Style x:Key="SupportConceptMailMergeDetailStyle" TargetType="{x:Type ListBoxItem}">
|
||||
<Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
|
||||
<Setter Property="VerticalContentAlignment" Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
|
||||
@@ -18,16 +24,28 @@
|
||||
<Setter.Value>
|
||||
<ControlTemplate>
|
||||
<Grid x:Name="PART_DeinGridIstNichtMeinGridIstMeinUngrid">
|
||||
<Border x:Name="ItemBorder" CornerRadius="5" MinHeight="30" Background="#FF000000">
|
||||
<Border
|
||||
x:Name="ItemBorder"
|
||||
MinHeight="30"
|
||||
Background="#FF000000"
|
||||
CornerRadius="5">
|
||||
<Border.OpacityMask>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#19000000" Offset="0" />
|
||||
<GradientStop Color="#26000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#19000000" />
|
||||
<GradientStop Offset="1" Color="#26000000" />
|
||||
</LinearGradientBrush>
|
||||
</Border.OpacityMask>
|
||||
</Border>
|
||||
<Border x:Name="ItemContent" CornerRadius="5" MinHeight="30">
|
||||
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="5,3,5,3" OpacityMask="{x:Null}" SnapsToDevicePixels="True">
|
||||
<Border
|
||||
x:Name="ItemContent"
|
||||
MinHeight="30"
|
||||
CornerRadius="5">
|
||||
<Grid
|
||||
Margin="5,3,5,3"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
OpacityMask="{x:Null}"
|
||||
SnapsToDevicePixels="True">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" MinWidth="250" />
|
||||
@@ -38,20 +56,56 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<CheckBox x:Name="cb1" Grid.RowSpan="2" Margin="3" Tag="{Binding}" Checked="CheckBoxChecked" Unchecked="CheckBoxUnChecked" VerticalAlignment="Center" HorizontalAlignment="Center" Height="21" Width="21">
|
||||
<CheckBox
|
||||
x:Name="cb1"
|
||||
Grid.RowSpan="2"
|
||||
Width="21"
|
||||
Height="21"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Checked="CheckBoxChecked"
|
||||
Tag="{Binding}"
|
||||
Unchecked="CheckBoxUnChecked">
|
||||
<CheckBox.IsChecked>
|
||||
<MultiBinding Converter="{StaticResource CollectionContainsTag2BoolConverter}">
|
||||
<Binding ElementName="cb1" Path="Tag"/>
|
||||
<Binding Path="DataContext.SelectedForPrinting" RelativeSource="{RelativeSource FindAncestor, AncestorType={x:Type Window} }"/>
|
||||
<Binding ElementName="cb1" Path="Tag" />
|
||||
<Binding Path="DataContext.SelectedForPrinting" RelativeSource="{RelativeSource FindAncestor, AncestorType={x:Type Window}}" />
|
||||
</MultiBinding>
|
||||
</CheckBox.IsChecked>
|
||||
</CheckBox>
|
||||
<TextBlock x:Name="txtDetail1" Grid.Column="1" Grid.Row="0" Text="{Binding Path=DetailDescription}" FontSize="14" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif" />
|
||||
<TextBlock x:Name="txtDetail2" Grid.Column="1" Grid.Row="1" Text="{Binding Path=AddressString}" FontSize="12" Foreground="#FFA0A0A0" FontFamily="Microsoft Sans Serif" />
|
||||
<ListBox x:Name="listBoxDetail3" Grid.Row="0" Grid.Column="2" Grid.RowSpan="2" ItemsSource="{Binding Path=CostBearerDetailStrings}" FontSize="12" Foreground="{Binding ForegroundBrush}" FontFamily="Microsoft Sans Serif" Background="Transparent" BorderThickness="0" IsHitTestVisible="False" Margin="6,0,0,0">
|
||||
<TextBlock
|
||||
x:Name="txtDetail1"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFD2D2D2"
|
||||
Text="{Binding Path=DetailDescription}" />
|
||||
<TextBlock
|
||||
x:Name="txtDetail2"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="12"
|
||||
Foreground="#FFA0A0A0"
|
||||
Text="{Binding Path=AddressString}" />
|
||||
<ListBox
|
||||
x:Name="listBoxDetail3"
|
||||
Grid.Row="0"
|
||||
Grid.RowSpan="2"
|
||||
Grid.Column="2"
|
||||
Margin="6,0,0,0"
|
||||
Background="Transparent"
|
||||
BorderThickness="0"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="12"
|
||||
Foreground="{Binding ForegroundBrush}"
|
||||
IsHitTestVisible="False"
|
||||
ItemsSource="{Binding Path=CostBearerDetailStrings}">
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding}" Foreground="{Binding Foreground, RelativeSource={RelativeSource AncestorType={x:Type ListBox}, Mode=FindAncestor}}"/>
|
||||
<TextBlock Foreground="{Binding Foreground, RelativeSource={RelativeSource AncestorType={x:Type ListBox}, Mode=FindAncestor}}" Text="{Binding}" />
|
||||
</DataTemplate>
|
||||
</ListBox.ItemTemplate>
|
||||
</ListBox>
|
||||
@@ -60,26 +114,26 @@
|
||||
</Grid>
|
||||
<ControlTemplate.Triggers>
|
||||
<DataTrigger Binding="{Binding Path=IsArchived}" Value="True">
|
||||
<Setter Property="Foreground" TargetName="txtDetail1" Value="#FF808080" />
|
||||
<Setter Property="Foreground" TargetName="txtDetail2" Value="#FF808080" />
|
||||
<Setter Property="Foreground" TargetName="listBoxDetail3" Value="#FF808080" />
|
||||
<Setter TargetName="txtDetail1" Property="Foreground" Value="#FF808080" />
|
||||
<Setter TargetName="txtDetail2" Property="Foreground" Value="#FF808080" />
|
||||
<Setter TargetName="listBoxDetail3" Property="Foreground" Value="#FF808080" />
|
||||
</DataTrigger>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#33000000" Offset="0" />
|
||||
<GradientStop Color="#66000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#33000000" />
|
||||
<GradientStop Offset="1" Color="#66000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Trigger>
|
||||
<Trigger Property="ListBoxItem.IsSelected" Value="True">
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#99000000" Offset="0" />
|
||||
<GradientStop Color="#CC000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#99000000" />
|
||||
<GradientStop Offset="1" Color="#CC000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
@@ -89,11 +143,11 @@
|
||||
<Condition Property="ListBoxItem.IsSelected" Value="True" />
|
||||
<Condition Property="Selector.IsSelectionActive" Value="False" />
|
||||
</MultiTrigger.Conditions>
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#99000000" Offset="0" />
|
||||
<GradientStop Color="#B2000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#99000000" />
|
||||
<GradientStop Offset="1" Color="#B2000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
@@ -103,10 +157,10 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
<!-- EndRegion HilfeplanTemplate -->
|
||||
<!-- EndRegion HilfeplanTemplate -->
|
||||
|
||||
|
||||
<!-- Region KlientenTemplate -->
|
||||
<!-- Region KlientenTemplate -->
|
||||
<Style x:Key="CustomerDetailStyle" TargetType="{x:Type ListBoxItem}">
|
||||
<Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
|
||||
<Setter Property="VerticalContentAlignment" Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
|
||||
@@ -115,16 +169,28 @@
|
||||
<Setter.Value>
|
||||
<ControlTemplate>
|
||||
<Grid>
|
||||
<Border x:Name="ItemBorder" CornerRadius="5" MinHeight="30" Background="#FF000000">
|
||||
<Border
|
||||
x:Name="ItemBorder"
|
||||
MinHeight="30"
|
||||
Background="#FF000000"
|
||||
CornerRadius="5">
|
||||
<Border.OpacityMask>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#19000000" Offset="0" />
|
||||
<GradientStop Color="#26000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#19000000" />
|
||||
<GradientStop Offset="1" Color="#26000000" />
|
||||
</LinearGradientBrush>
|
||||
</Border.OpacityMask>
|
||||
</Border>
|
||||
<Border x:Name="ItemContent" CornerRadius="5" MinHeight="30">
|
||||
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="5,3,5,3" OpacityMask="{x:Null}" SnapsToDevicePixels="True">
|
||||
<Border
|
||||
x:Name="ItemContent"
|
||||
MinHeight="30"
|
||||
CornerRadius="5">
|
||||
<Grid
|
||||
Margin="5,3,5,3"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
OpacityMask="{x:Null}"
|
||||
SnapsToDevicePixels="True">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="Auto" SharedSizeGroup="CustomerDetailColumn" />
|
||||
@@ -135,50 +201,98 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<CheckBox x:Name="cb2" Grid.RowSpan="2" Margin="3" Tag="{Binding}" Checked="CheckBoxChecked" Unchecked="CheckBoxUnChecked" VerticalAlignment="Center" HorizontalAlignment="Center" Height="21" Width="21">
|
||||
<CheckBox
|
||||
x:Name="cb2"
|
||||
Grid.RowSpan="2"
|
||||
Width="21"
|
||||
Height="21"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Checked="CheckBoxChecked"
|
||||
Tag="{Binding}"
|
||||
Unchecked="CheckBoxUnChecked">
|
||||
<CheckBox.IsChecked>
|
||||
<MultiBinding Converter="{StaticResource CollectionContainsTag2BoolConverter}">
|
||||
<Binding ElementName="cb2" Path="Tag"/>
|
||||
<Binding Path="DataContext.SelectedForPrinting" RelativeSource="{RelativeSource FindAncestor, AncestorType={x:Type Window} }"/>
|
||||
<Binding ElementName="cb2" Path="Tag" />
|
||||
<Binding Path="DataContext.SelectedForPrinting" RelativeSource="{RelativeSource FindAncestor, AncestorType={x:Type Window}}" />
|
||||
</MultiBinding>
|
||||
</CheckBox.IsChecked>
|
||||
</CheckBox>
|
||||
<StackPanel Grid.Row="0" Grid.Column="1" Orientation="Horizontal">
|
||||
<TextBlock x:Name="txtDetail1" Text="{Binding Path=SimpleDescription}" FontSize="14" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif" />
|
||||
<TextBlock x:Name="txtDetail2" Text="{Binding Path=DateOfBirthString}" Margin="6,0,0,0" FontSize="14" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif" />
|
||||
<StackPanel
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Orientation="Horizontal">
|
||||
<TextBlock
|
||||
x:Name="txtDetail1"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFD2D2D2"
|
||||
Text="{Binding Path=SimpleDescription}" />
|
||||
<TextBlock
|
||||
x:Name="txtDetail2"
|
||||
Margin="6,0,0,0"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFD2D2D2"
|
||||
Text="{Binding Path=DateOfBirthString}" />
|
||||
</StackPanel>
|
||||
<StackPanel Grid.Column="1" Grid.Row="1" Orientation="Horizontal">
|
||||
<TextBlock x:Name="txtDetail3" Text="{Binding Path=AddressString}" FontSize="12" Foreground="#FFA0A0A0" FontFamily="Microsoft Sans Serif" />
|
||||
<StackPanel
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Orientation="Horizontal">
|
||||
<TextBlock
|
||||
x:Name="txtDetail3"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="12"
|
||||
Foreground="#FFA0A0A0"
|
||||
Text="{Binding Path=AddressString}" />
|
||||
</StackPanel>
|
||||
<TextBlock Grid.Row="0" Grid.Column="2" x:Name="txtDetail4" Text="{Binding Path=CurrentEmployeeRole}" Margin="16,0,0,0" FontSize="14" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif" />
|
||||
<TextBlock Grid.Column="2" Grid.Row="1" x:Name="txtDetail5" Text="{Binding Path=MainAttendant}" Margin="16,0,0,0" FontSize="14" Foreground="#FFA0A0A0" FontFamily="Microsoft Sans Serif" />
|
||||
<TextBlock
|
||||
x:Name="txtDetail4"
|
||||
Grid.Row="0"
|
||||
Grid.Column="2"
|
||||
Margin="16,0,0,0"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFD2D2D2"
|
||||
Text="{Binding Path=CurrentEmployeeRole}" />
|
||||
<TextBlock
|
||||
x:Name="txtDetail5"
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Margin="16,0,0,0"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFA0A0A0"
|
||||
Text="{Binding Path=MainAttendant}" />
|
||||
</Grid>
|
||||
</Border>
|
||||
</Grid>
|
||||
<ControlTemplate.Triggers>
|
||||
<DataTrigger Binding="{Binding Path=IsArchived}" Value="True">
|
||||
<Setter Property="Foreground" TargetName="txtDetail1" Value="#FF808080" />
|
||||
<Setter Property="Foreground" TargetName="txtDetail2" Value="#FF808080" />
|
||||
<Setter Property="Foreground" TargetName="txtDetail3" Value="#FF808080" />
|
||||
<Setter Property="Foreground" TargetName="txtDetail4" Value="#FF808080" />
|
||||
<Setter Property="Foreground" TargetName="txtDetail5" Value="#FF808080" />
|
||||
<Setter TargetName="txtDetail1" Property="Foreground" Value="#FF808080" />
|
||||
<Setter TargetName="txtDetail2" Property="Foreground" Value="#FF808080" />
|
||||
<Setter TargetName="txtDetail3" Property="Foreground" Value="#FF808080" />
|
||||
<Setter TargetName="txtDetail4" Property="Foreground" Value="#FF808080" />
|
||||
<Setter TargetName="txtDetail5" Property="Foreground" Value="#FF808080" />
|
||||
</DataTrigger>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#33000000" Offset="0" />
|
||||
<GradientStop Color="#66000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#33000000" />
|
||||
<GradientStop Offset="1" Color="#66000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Trigger>
|
||||
<Trigger Property="ListBoxItem.IsSelected" Value="True">
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#99000000" Offset="0" />
|
||||
<GradientStop Color="#CC000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#99000000" />
|
||||
<GradientStop Offset="1" Color="#CC000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
@@ -188,11 +302,11 @@
|
||||
<Condition Property="ListBoxItem.IsSelected" Value="True" />
|
||||
<Condition Property="Selector.IsSelectionActive" Value="False" />
|
||||
</MultiTrigger.Conditions>
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#99000000" Offset="0" />
|
||||
<GradientStop Color="#B2000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#99000000" />
|
||||
<GradientStop Offset="1" Color="#B2000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
@@ -202,10 +316,10 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
<!-- EndRegion KlientenTemplate -->
|
||||
<!-- EndRegion KlientenTemplate -->
|
||||
|
||||
|
||||
<!-- Region PersonenTemplate -->
|
||||
<!-- Region PersonenTemplate -->
|
||||
<Style x:Key="PersonDetailStyle" TargetType="{x:Type ListBoxItem}">
|
||||
<Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
|
||||
<Setter Property="VerticalContentAlignment" Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
|
||||
@@ -214,92 +328,165 @@
|
||||
<Setter.Value>
|
||||
<ControlTemplate>
|
||||
<Grid>
|
||||
<Border x:Name="ItemBorder" CornerRadius="5" MinHeight="30" Background="#FF000000">
|
||||
<Border
|
||||
x:Name="ItemBorder"
|
||||
MinHeight="30"
|
||||
Background="#FF000000"
|
||||
CornerRadius="5">
|
||||
<Border.OpacityMask>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#19000000" Offset="0" />
|
||||
<GradientStop Color="#26000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#19000000" />
|
||||
<GradientStop Offset="1" Color="#26000000" />
|
||||
</LinearGradientBrush>
|
||||
</Border.OpacityMask>
|
||||
</Border>
|
||||
<Border x:Name="ItemContent" CornerRadius="5" MinHeight="30">
|
||||
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="5,3,5,3" OpacityMask="{x:Null}" SnapsToDevicePixels="True" >
|
||||
<Border
|
||||
x:Name="ItemContent"
|
||||
MinHeight="30"
|
||||
CornerRadius="5">
|
||||
<Grid
|
||||
Margin="5,3,5,3"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
OpacityMask="{x:Null}"
|
||||
SnapsToDevicePixels="True">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" SharedSizeGroup="personDetailColumn1"/>
|
||||
<ColumnDefinition Width="Auto" SharedSizeGroup="personDetailColumn2"/>
|
||||
<ColumnDefinition Width="Auto" SharedSizeGroup="personDetailColumn3"/>
|
||||
<ColumnDefinition Width="Auto" SharedSizeGroup="personDetailColumn1" />
|
||||
<ColumnDefinition Width="Auto" SharedSizeGroup="personDetailColumn2" />
|
||||
<ColumnDefinition Width="Auto" SharedSizeGroup="personDetailColumn3" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<CheckBox x:Name="cb3" Grid.RowSpan="2" Margin="3" Tag="{Binding}" Checked="CheckBoxChecked" Unchecked="CheckBoxUnChecked" VerticalAlignment="Center" HorizontalAlignment="Center" Height="21" Width="21">
|
||||
<CheckBox
|
||||
x:Name="cb3"
|
||||
Grid.RowSpan="2"
|
||||
Width="21"
|
||||
Height="21"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Checked="CheckBoxChecked"
|
||||
Tag="{Binding}"
|
||||
Unchecked="CheckBoxUnChecked">
|
||||
<CheckBox.IsChecked>
|
||||
<MultiBinding Converter="{StaticResource CollectionContainsTag2BoolConverter}">
|
||||
<Binding ElementName="cb3" Path="Tag"/>
|
||||
<Binding Path="DataContext.SelectedForPrinting" RelativeSource="{RelativeSource FindAncestor, AncestorType={x:Type Window} }"/>
|
||||
<Binding ElementName="cb3" Path="Tag" />
|
||||
<Binding Path="DataContext.SelectedForPrinting" RelativeSource="{RelativeSource FindAncestor, AncestorType={x:Type Window}}" />
|
||||
</MultiBinding>
|
||||
</CheckBox.IsChecked>
|
||||
</CheckBox>
|
||||
<TextBlock x:Name="txtDetail1" Grid.Row="0" Grid.Column="1" Text="{Binding Path=DetailDescription}" FontSize="14" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif" />
|
||||
<TextBlock x:Name="txtDetail2" Grid.Column="1" Grid.Row="1" Text="{Binding Path=AddressString}" FontSize="12" Foreground="#FFA0A0A0" FontFamily="Microsoft Sans Serif" />
|
||||
<TextBlock x:Name="txtDetail3" Grid.Row="0" Grid.Column="2" Text="{Binding Path=Function}" FontSize="14" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif" Margin="10,0,10,0"/>
|
||||
<TextBlock Visibility="Collapsed" x:Name="txtDetail4" Grid.Column="3" Grid.Row="0" Grid.RowSpan="2" Text="{Binding Path=ContactSummaryInfo}" FontSize="14" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif" />
|
||||
<StackPanel Orientation="Vertical" Grid.Column="3" Grid.Row="0" Grid.RowSpan="2">
|
||||
<TextBlock FontSize="14" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif">
|
||||
<TextBlock
|
||||
x:Name="txtDetail1"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFD2D2D2"
|
||||
Text="{Binding Path=DetailDescription}" />
|
||||
<TextBlock
|
||||
x:Name="txtDetail2"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="12"
|
||||
Foreground="#FFA0A0A0"
|
||||
Text="{Binding Path=AddressString}" />
|
||||
<TextBlock
|
||||
x:Name="txtDetail3"
|
||||
Grid.Row="0"
|
||||
Grid.Column="2"
|
||||
Margin="10,0,10,0"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFD2D2D2"
|
||||
Text="{Binding Path=Function}" />
|
||||
<TextBlock
|
||||
x:Name="txtDetail4"
|
||||
Grid.Row="0"
|
||||
Grid.RowSpan="2"
|
||||
Grid.Column="3"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFD2D2D2"
|
||||
Text="{Binding Path=ContactSummaryInfo}"
|
||||
Visibility="Collapsed" />
|
||||
<StackPanel
|
||||
Grid.Row="0"
|
||||
Grid.RowSpan="2"
|
||||
Grid.Column="3"
|
||||
Orientation="Vertical">
|
||||
<TextBlock
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFD2D2D2">
|
||||
<TextBlock.Visibility>
|
||||
<Binding Path="Communication1">
|
||||
<Binding.Converter>
|
||||
<conv:ObjectVisibilityConverter/>
|
||||
<conv:ObjectVisibilityConverter />
|
||||
</Binding.Converter>
|
||||
</Binding>
|
||||
</TextBlock.Visibility>
|
||||
<TextBlock.Text>
|
||||
<MultiBinding StringFormat="{}Tel.: {0}">
|
||||
<Binding Path="Communication1"/>
|
||||
<Binding Path="Communication1" />
|
||||
</MultiBinding>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="14" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif">
|
||||
<TextBlock
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFD2D2D2">
|
||||
<TextBlock.Visibility>
|
||||
<Binding Path="Communication2">
|
||||
<Binding.Converter>
|
||||
<conv:ObjectVisibilityConverter/>
|
||||
<conv:ObjectVisibilityConverter />
|
||||
</Binding.Converter>
|
||||
</Binding>
|
||||
</TextBlock.Visibility>
|
||||
<TextBlock.Text>
|
||||
<MultiBinding StringFormat="{}Mobil: {0}">
|
||||
<Binding Path="Communication2"/>
|
||||
<Binding Path="Communication2" />
|
||||
</MultiBinding>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
<TextBlock Text="EMail: " FontSize="14" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif">
|
||||
<TextBlock
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFD2D2D2"
|
||||
Text="EMail: ">
|
||||
<TextBlock.Visibility>
|
||||
<Binding Path="Communication3">
|
||||
<Binding.Converter>
|
||||
<conv:ObjectVisibilityConverter/>
|
||||
<conv:ObjectVisibilityConverter />
|
||||
</Binding.Converter>
|
||||
</Binding>
|
||||
</TextBlock.Visibility>
|
||||
<TextBlock FontSize="14" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif">
|
||||
<TextBlock
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFD2D2D2">
|
||||
<TextBlock.Text>
|
||||
<Binding Path="Communication3"/>
|
||||
<Binding Path="Communication3" />
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
</TextBlock>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="14" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif">
|
||||
<TextBlock
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFD2D2D2">
|
||||
<TextBlock.Visibility>
|
||||
<Binding Path="Communication4">
|
||||
<Binding.Converter>
|
||||
<conv:ObjectVisibilityConverter/>
|
||||
<conv:ObjectVisibilityConverter />
|
||||
</Binding.Converter>
|
||||
</Binding>
|
||||
</TextBlock.Visibility>
|
||||
<TextBlock.Text>
|
||||
<MultiBinding StringFormat="{}Fax: {0}">
|
||||
<Binding Path="Communication4"/>
|
||||
<Binding Path="Communication4" />
|
||||
</MultiBinding>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
@@ -309,28 +496,28 @@
|
||||
</Grid>
|
||||
<ControlTemplate.Triggers>
|
||||
<DataTrigger Binding="{Binding Path=IsArchived}" Value="True">
|
||||
<Setter Property="Foreground" TargetName="txtDetail1" Value="#FF808080" />
|
||||
<Setter Property="Foreground" TargetName="txtDetail2" Value="#FF808080" />
|
||||
<Setter Property="Foreground" TargetName="txtDetail3" Value="#FF808080" />
|
||||
<Setter Property="Foreground" TargetName="txtDetail4" Value="#FF808080" />
|
||||
<Setter TargetName="txtDetail1" Property="Foreground" Value="#FF808080" />
|
||||
<Setter TargetName="txtDetail2" Property="Foreground" Value="#FF808080" />
|
||||
<Setter TargetName="txtDetail3" Property="Foreground" Value="#FF808080" />
|
||||
<Setter TargetName="txtDetail4" Property="Foreground" Value="#FF808080" />
|
||||
</DataTrigger>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#33000000" Offset="0" />
|
||||
<GradientStop Color="#66000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#33000000" />
|
||||
<GradientStop Offset="1" Color="#66000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Trigger>
|
||||
|
||||
<Trigger Property="ListBoxItem.IsSelected" Value="True">
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#99000000" Offset="0" />
|
||||
<GradientStop Color="#CC000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#99000000" />
|
||||
<GradientStop Offset="1" Color="#CC000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
@@ -340,11 +527,11 @@
|
||||
<Condition Property="ListBoxItem.IsSelected" Value="True" />
|
||||
<Condition Property="Selector.IsSelectionActive" Value="False" />
|
||||
</MultiTrigger.Conditions>
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#99000000" Offset="0" />
|
||||
<GradientStop Color="#B2000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#99000000" />
|
||||
<GradientStop Offset="1" Color="#B2000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
@@ -354,10 +541,10 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
<!-- EndRegion PersonenTemplate -->
|
||||
<!-- EndRegion PersonenTemplate -->
|
||||
|
||||
|
||||
<!-- Region OrganisationenTemplate -->
|
||||
<!-- Region OrganisationenTemplate -->
|
||||
<Style x:Key="OrganisationDetailStyle" TargetType="{x:Type ListBoxItem}">
|
||||
<Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
|
||||
<Setter Property="VerticalContentAlignment" Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type ItemsControl}, Mode=FindAncestor}}" />
|
||||
@@ -366,16 +553,28 @@
|
||||
<Setter.Value>
|
||||
<ControlTemplate>
|
||||
<Grid>
|
||||
<Border x:Name="ItemBorder" CornerRadius="5" MinHeight="30" Background="#FF000000">
|
||||
<Border
|
||||
x:Name="ItemBorder"
|
||||
MinHeight="30"
|
||||
Background="#FF000000"
|
||||
CornerRadius="5">
|
||||
<Border.OpacityMask>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#19000000" Offset="0" />
|
||||
<GradientStop Color="#26000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#19000000" />
|
||||
<GradientStop Offset="1" Color="#26000000" />
|
||||
</LinearGradientBrush>
|
||||
</Border.OpacityMask>
|
||||
</Border>
|
||||
<Border x:Name="ItemContent" CornerRadius="5" MinHeight="30">
|
||||
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="5,3,5,3" OpacityMask="{x:Null}" SnapsToDevicePixels="True">
|
||||
<Border
|
||||
x:Name="ItemContent"
|
||||
MinHeight="30"
|
||||
CornerRadius="5">
|
||||
<Grid
|
||||
Margin="5,3,5,3"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
OpacityMask="{x:Null}"
|
||||
SnapsToDevicePixels="True">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
@@ -384,40 +583,64 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<CheckBox x:Name="cb4" Checked="CheckBoxChecked" Unchecked="CheckBoxUnChecked" Grid.RowSpan="2" Margin="3" Tag="{Binding}" VerticalAlignment="Center" HorizontalAlignment="Center" Height="21" Width="21">
|
||||
<CheckBox
|
||||
x:Name="cb4"
|
||||
Grid.RowSpan="2"
|
||||
Width="21"
|
||||
Height="21"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Checked="CheckBoxChecked"
|
||||
Tag="{Binding}"
|
||||
Unchecked="CheckBoxUnChecked">
|
||||
<CheckBox.IsChecked>
|
||||
<MultiBinding Converter="{StaticResource CollectionContainsTag2BoolConverter}">
|
||||
<Binding ElementName="cb4" Path="Tag"/>
|
||||
<Binding Path="DataContext.SelectedForPrinting" RelativeSource="{RelativeSource FindAncestor, AncestorType={x:Type Window} }"/>
|
||||
<Binding ElementName="cb4" Path="Tag" />
|
||||
<Binding Path="DataContext.SelectedForPrinting" RelativeSource="{RelativeSource FindAncestor, AncestorType={x:Type Window}}" />
|
||||
</MultiBinding>
|
||||
</CheckBox.IsChecked>
|
||||
</CheckBox>
|
||||
<TextBlock x:Name="txtDetail1" Grid.Row="0" Grid.Column="1" Text="{Binding Path=DetailDescription}" FontSize="14" Foreground="#FFFFFFFF" FontFamily="Microsoft Sans Serif" />
|
||||
<TextBlock x:Name="txtDetail2" Grid.Column="1" Grid.Row="1" Text="{Binding Path=AddressString}" FontSize="12" Foreground="#FFD2D2D2" FontFamily="Microsoft Sans Serif" />
|
||||
<TextBlock
|
||||
x:Name="txtDetail1"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="#FFFFFFFF"
|
||||
Text="{Binding Path=DetailDescription}" />
|
||||
<TextBlock
|
||||
x:Name="txtDetail2"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="12"
|
||||
Foreground="#FFD2D2D2"
|
||||
Text="{Binding Path=AddressString}" />
|
||||
</Grid>
|
||||
</Border>
|
||||
</Grid>
|
||||
<ControlTemplate.Triggers>
|
||||
<DataTrigger Binding="{Binding Path=IsArchived}" Value="True">
|
||||
<Setter Property="Foreground" TargetName="txtDetail1" Value="#FF808080" />
|
||||
<Setter Property="Foreground" TargetName="txtDetail2" Value="#FF808080" />
|
||||
<Setter TargetName="txtDetail1" Property="Foreground" Value="#FF808080" />
|
||||
<Setter TargetName="txtDetail2" Property="Foreground" Value="#FF808080" />
|
||||
</DataTrigger>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#33000000" Offset="0" />
|
||||
<GradientStop Color="#66000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#33000000" />
|
||||
<GradientStop Offset="1" Color="#66000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Trigger>
|
||||
<Trigger Property="ListBoxItem.IsSelected" Value="True">
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#99000000" Offset="0" />
|
||||
<GradientStop Color="#CC000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#99000000" />
|
||||
<GradientStop Offset="1" Color="#CC000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
@@ -427,11 +650,11 @@
|
||||
<Condition Property="ListBoxItem.IsSelected" Value="True" />
|
||||
<Condition Property="Selector.IsSelectionActive" Value="False" />
|
||||
</MultiTrigger.Conditions>
|
||||
<Setter Property="OpacityMask" TargetName="ItemBorder">
|
||||
<Setter TargetName="ItemBorder" Property="OpacityMask">
|
||||
<Setter.Value>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#99000000" Offset="0" />
|
||||
<GradientStop Color="#B2000000" Offset="1" />
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#99000000" />
|
||||
<GradientStop Offset="1" Color="#B2000000" />
|
||||
</LinearGradientBrush>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
@@ -441,16 +664,17 @@
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
<!-- EndRegion OrganisationenTemplate -->
|
||||
<!-- EndRegion OrganisationenTemplate -->
|
||||
|
||||
|
||||
<detail:ListBoxItemStyleSelector x:Key="StyleSelector"
|
||||
SupportConceptStyle="{StaticResource SupportConceptMailMergeDetailStyle}"
|
||||
PersonStyle="{StaticResource PersonDetailStyle}"
|
||||
CustomerStyle="{StaticResource CustomerDetailStyle}"
|
||||
OrganisationStyle="{StaticResource OrganisationDetailStyle}" />
|
||||
<detail:ListBoxItemStyleSelector
|
||||
x:Key="StyleSelector"
|
||||
CustomerStyle="{StaticResource CustomerDetailStyle}"
|
||||
OrganisationStyle="{StaticResource OrganisationDetailStyle}"
|
||||
PersonStyle="{StaticResource PersonDetailStyle}"
|
||||
SupportConceptStyle="{StaticResource SupportConceptMailMergeDetailStyle}" />
|
||||
</Window.Resources>
|
||||
<GroupBox Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}" Header="Serienbrief drucken...">
|
||||
<GroupBox Header="Serienbrief drucken..." Style="{DynamicResource MainContentGroupBoxWithoutMaximizeBtnStyle}">
|
||||
<Grid Margin="0,3,0,0" Background="{DynamicResource ObjectEditBackgroundBrush}">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
@@ -464,29 +688,107 @@
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2">
|
||||
<Grid
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label Grid.Row="0" Grid.Column="0" Margin="3" Content="Vorlage" />
|
||||
<controls:NullItemComboBox x:Name="VorlagenComboBox" Grid.Row="0" Grid.Column="1" Margin="3" DisplayMemberPath="FileName" ItemsSource="{Binding Path=WordTemplates, UpdateSourceTrigger=PropertyChanged}" SelectedIndex="0"/>
|
||||
<Label
|
||||
Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Content="Vorlage" />
|
||||
<controls:NullItemComboBox
|
||||
x:Name="VorlagenComboBox"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Margin="3"
|
||||
DisplayMemberPath="FileName"
|
||||
ItemsSource="{Binding Path=WordTemplates, UpdateSourceTrigger=PropertyChanged}"
|
||||
SelectedIndex="0" />
|
||||
</Grid>
|
||||
<StackPanel Orientation="Horizontal" Grid.Row="1" Grid.Column="0" Margin="3" Grid.ColumnSpan="2">
|
||||
<Label Content="Suche" FontSize="14" Margin="0,-5,0,0" />
|
||||
<TextBox Foreground="Black" Height="20" x:Name="TextboxSearch" MinWidth="90" Margin="3,-5,0,0" Width="300" TabIndex="0" Template="{DynamicResource SearchTextBoxTemplate}" BorderThickness="0,0,0,0" />
|
||||
<TextBlock Margin="3,0,0,0" Foreground="Black" Text="{Binding Path=Items.Count, Converter={StaticResource StringFormatConverter}, ConverterParameter=Suchergebnisse: \{0\}, ElementName=ObjectListBox}" FontFamily="Microsoft Sans Serif" FontSize="14" />
|
||||
<StackPanel
|
||||
Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3"
|
||||
Orientation="Horizontal">
|
||||
<Label
|
||||
Margin="0,-5,0,0"
|
||||
Content="Suche"
|
||||
FontSize="14" />
|
||||
<TextBox
|
||||
x:Name="TextboxSearch"
|
||||
Width="300"
|
||||
Height="20"
|
||||
MinWidth="90"
|
||||
Margin="3,-5,0,0"
|
||||
BorderThickness="0,0,0,0"
|
||||
Foreground="Black"
|
||||
TabIndex="0"
|
||||
Template="{DynamicResource SearchTextBoxTemplate}" />
|
||||
<TextBlock
|
||||
Margin="3,0,0,0"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="14"
|
||||
Foreground="Black"
|
||||
Text="{Binding Path=Items.Count, Converter={StaticResource StringFormatConverter}, ConverterParameter=Suchergebnisse: \{0\}, ElementName=ObjectListBox}" />
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal" x:Name="SortPanel" Margin="3" Grid.Row="2" Grid.Column="0">
|
||||
<TextBlock Foreground="Black" HorizontalAlignment="Left" Text="Sortiert nach" FontFamily="Microsoft Sans Serif" FontSize="12" Margin="6,2,0,0" />
|
||||
<controls:NullItemComboBox x:Name="SortCombo" HorizontalAlignment="Left" FontFamily="Microsoft Sans Serif" FontSize="12" Margin="10,0,0,0" MinWidth="100" DisplayMemberPath="DisplayName" SelectionChanged="SortCombo_SelectionChanged" Style="{DynamicResource SortComboBox}" />
|
||||
<ToggleButton Style="{DynamicResource SortDirectionToggleButtonStyle}" x:Name="SortDirectionToggleButton" Click="SortDirectionToggleButton_Click" />
|
||||
<StackPanel
|
||||
x:Name="SortPanel"
|
||||
Grid.Row="2"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Orientation="Horizontal">
|
||||
<TextBlock
|
||||
Margin="6,2,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="12"
|
||||
Foreground="Black"
|
||||
Text="Sortiert nach" />
|
||||
<controls:NullItemComboBox
|
||||
x:Name="SortCombo"
|
||||
MinWidth="100"
|
||||
Margin="10,0,0,0"
|
||||
HorizontalAlignment="Left"
|
||||
DisplayMemberPath="DisplayName"
|
||||
FontFamily="Microsoft Sans Serif"
|
||||
FontSize="12"
|
||||
SelectionChanged="SortCombo_SelectionChanged"
|
||||
Style="{DynamicResource SortComboBox}" />
|
||||
<ToggleButton
|
||||
x:Name="SortDirectionToggleButton"
|
||||
Click="SortDirectionToggleButton_Click"
|
||||
Style="{DynamicResource SortDirectionToggleButtonStyle}" />
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal" Grid.Row="2" Grid.Column="1" HorizontalAlignment="Right">
|
||||
<CheckBox x:Name="ChkShowArchived" Margin="3" VerticalAlignment="Center" Unchecked="ChkShowArchived_OnUnchecked" />
|
||||
<CheckBox x:Name="ChkShowOnlyMyObjects" Click="ChkShowOnlyMyObjects_OnClick" Margin="3" VerticalAlignment="Center" Unchecked="ChkShowArchived_OnUnchecked" />
|
||||
<StackPanel
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
Orientation="Horizontal">
|
||||
<CheckBox
|
||||
x:Name="ChkShowArchived"
|
||||
Margin="3"
|
||||
VerticalAlignment="Center"
|
||||
Unchecked="ChkShowArchived_OnUnchecked" />
|
||||
<CheckBox
|
||||
x:Name="ChkShowOnlyMyObjects"
|
||||
Margin="3"
|
||||
VerticalAlignment="Center"
|
||||
Click="ChkShowOnlyMyObjects_OnClick"
|
||||
Unchecked="ChkShowArchived_OnUnchecked" />
|
||||
</StackPanel>
|
||||
<ListBox x:Name="ObjectListBox" Grid.Row="3" Grid.Column="0" Margin="3" Grid.ColumnSpan="2" ItemContainerStyleSelector="{StaticResource StyleSelector}">
|
||||
<ListBox
|
||||
x:Name="ObjectListBox"
|
||||
Grid.Row="3"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3"
|
||||
ItemContainerStyleSelector="{StaticResource StyleSelector}">
|
||||
<ListBox.ItemsSource>
|
||||
<MultiBinding Converter="{StaticResource FilterDCConverter}">
|
||||
<Binding />
|
||||
@@ -494,19 +796,47 @@
|
||||
<Binding ElementName="ChkShowArchived" Path="IsChecked" />
|
||||
<Binding Path="CustomFilter">
|
||||
<Binding.RelativeSource>
|
||||
<RelativeSource Mode="FindAncestor" AncestorType="{x:Type detail:MailMergeWindow}" />
|
||||
<RelativeSource AncestorType="{x:Type detail:MailMergeWindow}" Mode="FindAncestor" />
|
||||
</Binding.RelativeSource>
|
||||
</Binding>
|
||||
</MultiBinding>
|
||||
</ListBox.ItemsSource>
|
||||
</ListBox>
|
||||
<CheckBox x:Name="AlleWaehlenCheckBox" Content="Alle auswählen" Grid.Row="4" Grid.Column="0" Margin="3" Checked="AlleWaehlenCheckBox_OnChecked" Unchecked="AlleWehlenCheckBox_OnUnchecked" />
|
||||
<StackPanel Orientation="Horizontal" Grid.Row="5" Grid.Column="0" HorizontalAlignment="Left" VerticalAlignment="Center">
|
||||
<Button Margin="3" Click="PreviewBtnClick" Content="Vorschau" IsEnabled="{Binding SelectedForPrinting.Count, Converter={StaticResource CollectionCountToBoolConverter}}" />
|
||||
<Button Margin="3" Content="Drucken" Click="PrintBtnClick" IsEnabled="{Binding SelectedForPrinting.Count, Converter={StaticResource CollectionCountToBoolConverter}}" />
|
||||
<CheckBox
|
||||
x:Name="AlleWaehlenCheckBox"
|
||||
Grid.Row="4"
|
||||
Grid.Column="0"
|
||||
Margin="3"
|
||||
Checked="AlleWaehlenCheckBox_OnChecked"
|
||||
Content="Alle auswählen"
|
||||
Unchecked="AlleWehlenCheckBox_OnUnchecked" />
|
||||
<StackPanel
|
||||
Grid.Row="5"
|
||||
Grid.Column="0"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Center"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
Margin="3"
|
||||
Click="PreviewBtnClick"
|
||||
Content="Vorschau"
|
||||
IsEnabled="{Binding SelectedForPrinting.Count, Converter={StaticResource CollectionCountToBoolConverter}}" />
|
||||
<Button
|
||||
Margin="3"
|
||||
Click="PrintBtnClick"
|
||||
Content="Drucken"
|
||||
IsEnabled="{Binding SelectedForPrinting.Count, Converter={StaticResource CollectionCountToBoolConverter}}" />
|
||||
</StackPanel>
|
||||
<StackPanel Orientation="Horizontal" Grid.Row="5" Grid.Column="1" HorizontalAlignment="Right" VerticalAlignment="Center">
|
||||
<Button Margin="3" Content="Abbrechen" Command="Close" />
|
||||
<StackPanel
|
||||
Grid.Row="5"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
Margin="3"
|
||||
Command="Close"
|
||||
Content="Abbrechen" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
@@ -346,6 +346,9 @@
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="430" />
|
||||
@@ -358,9 +361,26 @@
|
||||
Margin="3,5,3,5"
|
||||
Content="{markup:Translate Dokumentationstext in der Zeiterfassung Pflichtfeld}"
|
||||
IsChecked="{Binding Path=IsServiceRecordNoticeMandatory}" />
|
||||
|
||||
<TextBlock
|
||||
<CheckBox
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,5,3,5"
|
||||
Content="{markup:Translate Ziele in der Zeiterfassung Pflichtfeld (falls Ziele vorhanden sind)}"
|
||||
IsChecked="{Binding Path=IsServiceRecordGoalMandatory}" />
|
||||
<CheckBox
|
||||
Grid.Row="2"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,5,3,5"
|
||||
Content="{markup:Translate Bewertung von Zielen in der Zeiterfassung Pflichtfeld (falls vorhanden)}"
|
||||
IsChecked="{Binding Path=IsServiceRecordRatingMandatory}" />
|
||||
<CheckBox
|
||||
Grid.Row="3"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,5,3,5"
|
||||
Content="{markup:Translate Bei Gruppenbuchungen nur Schnittmenge aller Leistungen anbieten}"
|
||||
IsChecked="{Binding Path=FilterGroupServiceCategories}" />
|
||||
<TextBlock
|
||||
Grid.Row="4"
|
||||
Grid.Column="0"
|
||||
Margin="3,5,3,5"
|
||||
VerticalAlignment="Center"
|
||||
@@ -368,7 +388,7 @@
|
||||
Text="{markup:Translate Anzahl Tage des Folgemonats\, nach denen die Zeiterfassungseinträge des vergangenen Monats nicht mehr verändert werden oder neue Zeiterfassungseinträge angelegt werden dürfen (0 für unbegrenzt).}"
|
||||
TextWrapping="Wrap" />
|
||||
<dxe:SpinEdit
|
||||
Grid.Row="1"
|
||||
Grid.Row="4"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3,5,3,5"
|
||||
@@ -378,7 +398,7 @@
|
||||
|
||||
|
||||
<TextBlock
|
||||
Grid.Row="2"
|
||||
Grid.Row="5"
|
||||
Grid.Column="0"
|
||||
Margin="3,5,3,5"
|
||||
VerticalAlignment="Center"
|
||||
@@ -386,7 +406,7 @@
|
||||
Text="{markup:Translate Anzahl Tage\, in der die Zeiterfassung erfolgen muss (0 für unbegrenzt)}"
|
||||
TextWrapping="Wrap" />
|
||||
<TextBlock
|
||||
Grid.Row="3"
|
||||
Grid.Row="6"
|
||||
Grid.Column="0"
|
||||
Margin="3,5,3,5"
|
||||
VerticalAlignment="Center"
|
||||
@@ -396,7 +416,7 @@
|
||||
|
||||
<dxe:SpinEdit
|
||||
x:Name="AnzTageZeiterfassErfolgt"
|
||||
Grid.Row="2"
|
||||
Grid.Row="5"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3,5,3,5"
|
||||
@@ -407,7 +427,7 @@
|
||||
|
||||
<dxe:SpinEdit
|
||||
x:Name="ZeiterfassungsSchwellwert"
|
||||
Grid.Row="3"
|
||||
Grid.Row="6"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3,5,3,5"
|
||||
@@ -419,7 +439,7 @@
|
||||
|
||||
|
||||
<TextBlock
|
||||
Grid.Row="4"
|
||||
Grid.Row="7"
|
||||
Grid.Column="0"
|
||||
Margin="3,5,3,5"
|
||||
VerticalAlignment="Center"
|
||||
@@ -428,7 +448,7 @@
|
||||
TextWrapping="Wrap" />
|
||||
<ComboBox
|
||||
x:Name="ComboZeiteinheit"
|
||||
Grid.Row="4"
|
||||
Grid.Row="7"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
Height="23"
|
||||
@@ -438,7 +458,7 @@
|
||||
|
||||
|
||||
<CheckBox
|
||||
Grid.Row="6"
|
||||
Grid.Row="8"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,5,3,5"
|
||||
Content="{markup:Translate Enddatum anzeigen}"
|
||||
@@ -446,7 +466,7 @@
|
||||
|
||||
<CheckBox
|
||||
x:Name="EnableArbeitszeiterfassung"
|
||||
Grid.Row="7"
|
||||
Grid.Row="9"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,20,3,5"
|
||||
Checked="EnableArbeitszeiterfassung_Checked"
|
||||
@@ -455,14 +475,14 @@
|
||||
Unchecked="EnableArbeitszeiterfassung_Checked" />
|
||||
<CheckBox
|
||||
x:Name="EnableAutomaticPauses"
|
||||
Grid.Row="8"
|
||||
Grid.Row="10"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,5,3,5"
|
||||
Content="{markup:Translate Automatischer Pausenabzug}"
|
||||
IsChecked="{Binding Path=EnableAutomaticPauses}" />
|
||||
<CheckBox
|
||||
x:Name="EnableRestTimeWarning"
|
||||
Grid.Row="9"
|
||||
Grid.Row="11"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,5,3,5"
|
||||
Content="{markup:Translate Warnung bei nicht einhalten der Ruhezeit}"
|
||||
@@ -470,7 +490,7 @@
|
||||
|
||||
<TextBlock
|
||||
x:Name="TextBlockShowWarning"
|
||||
Grid.Row="10"
|
||||
Grid.Row="12"
|
||||
Grid.Column="0"
|
||||
Margin="3,5,3,5"
|
||||
VerticalAlignment="Center"
|
||||
@@ -479,7 +499,7 @@
|
||||
TextWrapping="Wrap" />
|
||||
<dxe:SpinEdit
|
||||
x:Name="SpinEditShowWarning"
|
||||
Grid.Row="10"
|
||||
Grid.Row="12"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3,5,3,5"
|
||||
|
||||
@@ -1,12 +1,15 @@
|
||||
<Window x:Class="BeWo.View.Detail.ModalViewWindow"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Height="Auto" Width="Auto" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
WindowStyle="None"
|
||||
AllowsTransparency="True"
|
||||
Background="Transparent"
|
||||
ResizeMode="CanResizeWithGrip">
|
||||
<Grid x:Name="rootGrid">
|
||||
</Grid>
|
||||
<Window
|
||||
x:Class="BeWo.View.Detail.ModalViewWindow"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Width="Auto"
|
||||
Height="Auto"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
AllowsTransparency="True"
|
||||
Background="Transparent"
|
||||
ResizeMode="CanResizeWithGrip"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
WindowStyle="None">
|
||||
<Grid x:Name="rootGrid" />
|
||||
</Window>
|
||||
|
||||
@@ -236,7 +236,7 @@ namespace BeWo.View.Detail.Report
|
||||
}
|
||||
else if (BeWoApp.LoggedOnUser.HasRight(UserRightType.TeamView_ViewAll))
|
||||
{
|
||||
//Wenn man das Recht hat alle Team zu sehen muss man auch das Recht haben alle Klienten zu sehen.
|
||||
//Wenn man das Recht hat alle Teams zu sehen, muss man auch das Recht haben alle Klienten zu sehen.
|
||||
if (BeWoApp.LoggedOnUser.HasRight(UserRightType.CustomerView_View) || BeWoApp.LoggedOnUser.HasRight(UserRightType.ViewAll))
|
||||
{
|
||||
filterList.Add(new QBFilterItem(QBFilterEnum.TeamAuswahl));
|
||||
|
||||
@@ -37,6 +37,7 @@ using DevExpress.Xpf.Editors;
|
||||
using System.Windows.Navigation;
|
||||
using System.Windows.Documents;
|
||||
using System.Collections.ObjectModel;
|
||||
using BeWo.View.Windows;
|
||||
|
||||
namespace BeWo.View.Detail
|
||||
{
|
||||
|
||||
@@ -194,7 +194,7 @@ namespace BeWo.View.Detail
|
||||
var newName = pName;
|
||||
var counter = 1;
|
||||
|
||||
while(ViewModel.VMList.Any(a => a.Name.Equals(newName)))
|
||||
while(ViewModel.VMList.Any(a => a.Name != null && a.Name.Equals(newName)))
|
||||
{
|
||||
newName = pName + " " + counter;
|
||||
counter++;
|
||||
|
||||
@@ -1,250 +1,545 @@
|
||||
<localView:BeWoView x:Class="BeWo.View.Detail.UserView" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup" xmlns:t="clr-namespace:BeWo.MultiLanguage.Markup" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:localView="clr-namespace:BeWo.View" xmlns:localSearchView="clr-namespace:BeWo.View.Search" xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls" Height="Auto" Width="Auto" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Focusable="True">
|
||||
<Grid>
|
||||
<uc:ShadowChrome>
|
||||
<GroupBox Style="{StaticResource MainContentGroupBoxStyle}">
|
||||
<GroupBox.Header>
|
||||
<StackPanel Orientation="Horizontal" VerticalAlignment="Bottom">
|
||||
<Image Source="..\..\Ressources\Icons\UserBusinessMaleDisabled.png" RenderTransformOrigin="0.5,0.5" Stretch="Uniform" Width="32">
|
||||
<Image.RenderTransform>
|
||||
<TransformGroup>
|
||||
<ScaleTransform ScaleX="1" ScaleY="1" />
|
||||
<SkewTransform AngleX="0" AngleY="0" />
|
||||
<RotateTransform Angle="0" />
|
||||
<TranslateTransform X="0" Y="5" />
|
||||
</TransformGroup>
|
||||
</Image.RenderTransform>
|
||||
</Image>
|
||||
<TextBox Text="{Binding Path=Employee, Mode=OneWay}" Margin="10,0,0,0" Background="{x:Null}" Foreground="#FFFFFFFF" FontSize="22" BorderBrush="{x:Null}" VerticalAlignment="Bottom" Padding="0,0,0,0" />
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<Grid Margin="0,3,0,0" Background="{DynamicResource ObjectEditBackgroundBrush}">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Rectangle Fill="{DynamicResource UserContentBrush}" Height="6" />
|
||||
<TabControl x:Name="root" Grid.Row="1" Style="{StaticResource ObjectEditTabControl}" BorderThickness="0,0,0,0" Padding="4,4,4,4">
|
||||
<TabItem Header="Details" IsSelected="True">
|
||||
<localView:BeWoView
|
||||
x:Class="BeWo.View.Detail.UserView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:localSearchView="clr-namespace:BeWo.View.Search"
|
||||
xmlns:localView="clr-namespace:BeWo.View"
|
||||
xmlns:markup="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:t="clr-namespace:BeWo.MultiLanguage.Markup"
|
||||
xmlns:uc="clr-namespace:BeWo.Controls;assembly=BeWo.Controls"
|
||||
Width="Auto"
|
||||
Height="Auto"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
Focusable="True">
|
||||
<Grid>
|
||||
<uc:ShadowChrome>
|
||||
<GroupBox Style="{StaticResource MainContentGroupBoxStyle}">
|
||||
<GroupBox.Header>
|
||||
<StackPanel VerticalAlignment="Bottom" Orientation="Horizontal">
|
||||
<Image
|
||||
Width="32"
|
||||
RenderTransformOrigin="0.5,0.5"
|
||||
Source="..\..\Ressources\Icons\UserBusinessMaleDisabled.png"
|
||||
Stretch="Uniform">
|
||||
<Image.RenderTransform>
|
||||
<TransformGroup>
|
||||
<ScaleTransform ScaleX="1" ScaleY="1" />
|
||||
<SkewTransform AngleX="0" AngleY="0" />
|
||||
<RotateTransform Angle="0" />
|
||||
<TranslateTransform X="0" Y="5" />
|
||||
</TransformGroup>
|
||||
</Image.RenderTransform>
|
||||
</Image>
|
||||
<TextBox
|
||||
Margin="10,0,0,0"
|
||||
Padding="0,0,0,0"
|
||||
VerticalAlignment="Bottom"
|
||||
Background="{x:Null}"
|
||||
BorderBrush="{x:Null}"
|
||||
FontSize="22"
|
||||
Foreground="#FFFFFFFF"
|
||||
Text="{Binding Path=Employee, Mode=OneWay}" />
|
||||
</StackPanel>
|
||||
</GroupBox.Header>
|
||||
<Grid Margin="0,3,0,0" Background="{DynamicResource ObjectEditBackgroundBrush}">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Rectangle Height="6" Fill="{DynamicResource UserContentBrush}" />
|
||||
<TabControl
|
||||
x:Name="root"
|
||||
Grid.Row="1"
|
||||
Padding="4,4,4,4"
|
||||
BorderThickness="0,0,0,0"
|
||||
Style="{StaticResource ObjectEditTabControl}">
|
||||
<TabItem Header="Details" IsSelected="True">
|
||||
|
||||
<Grid Name="grid_root" Grid.IsSharedSizeScope="True" Width="Auto">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="450" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid
|
||||
Name="grid_root"
|
||||
Width="Auto"
|
||||
Grid.IsSharedSizeScope="True">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="450" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label Content="{t:Translate MitarbeiterSingular}" Grid.Row="0" />
|
||||
<uc:PopUpEdit IsReadOnly="True" Grid.Row="0" Grid.Column="1"
|
||||
DeleteButtonVisibility="Visible" Name="popupedit_employee"
|
||||
PopUpClick="popupedit_employee_PopUpClick" DeleteClick="popupedit_employee_DeleteClick"
|
||||
Text="{Binding Path=EmployeeString, Mode=OneWay}" Height="23" Margin="3" Cursor="Arrow"
|
||||
HorizontalAlignment="Stretch" Width="Auto"
|
||||
PreviewMouseDoubleClick="Popupedit_employee_OnPreviewMouseDoubleClick"/>
|
||||
<Label Grid.Row="0" Content="{t:Translate MitarbeiterSingular}" />
|
||||
<uc:PopUpEdit
|
||||
Name="popupedit_employee"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Width="Auto"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Stretch"
|
||||
Cursor="Arrow"
|
||||
DeleteButtonVisibility="Visible"
|
||||
DeleteClick="popupedit_employee_DeleteClick"
|
||||
IsReadOnly="True"
|
||||
PopUpClick="popupedit_employee_PopUpClick"
|
||||
PreviewMouseDoubleClick="Popupedit_employee_OnPreviewMouseDoubleClick"
|
||||
Text="{Binding Path=EmployeeString, Mode=OneWay}" />
|
||||
|
||||
<Label x:Name="label_LicenseTypes" Content="{t:Translate Lizenztyp}" Grid.Row="1" />
|
||||
<ComboBox x:Name="comboBox_LicenseTypes" Grid.Row="1" Grid.Column="1" Margin="3" Width="200" Height="23" HorizontalAlignment="Left" ItemsSource="{Binding Path=AllLicenseTypes}" SelectedValue="{Binding Path=LicenseType, Mode=TwoWay}" />
|
||||
<Label
|
||||
x:Name="label_LicenseTypes"
|
||||
Grid.Row="1"
|
||||
Content="{t:Translate Lizenztyp}" />
|
||||
<ComboBox
|
||||
x:Name="comboBox_LicenseTypes"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Width="200"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Left"
|
||||
ItemsSource="{Binding Path=AllLicenseTypes}"
|
||||
SelectedValue="{Binding Path=LicenseType, Mode=TwoWay}" />
|
||||
</Grid>
|
||||
|
||||
<GroupBox Grid.Row="1" Header="Zugangsdaten" Padding="5" Width="Auto" Style="{DynamicResource ObjectEditGroupBox}" Margin="0,15,0,0">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<GroupBox
|
||||
Grid.Row="1"
|
||||
Width="Auto"
|
||||
Margin="0,15,0,0"
|
||||
Padding="5"
|
||||
Header="Zugangsdaten"
|
||||
Style="{DynamicResource ObjectEditGroupBox}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Grid>
|
||||
<Grid>
|
||||
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label Content="Login Name" />
|
||||
<TextBox VerticalAlignment="Top" Grid.Column="1" Height="23" Margin="3" Text="{Binding Path=LoginName, UpdateSourceTrigger=PropertyChanged}" />
|
||||
</Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label Content="Login Name" />
|
||||
<TextBox
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
VerticalAlignment="Top"
|
||||
Text="{Binding Path=LoginName, UpdateSourceTrigger=PropertyChanged}" />
|
||||
</Grid>
|
||||
|
||||
<Grid Name="grid_passworNewUser" Grid.Column="1" Visibility="{Binding Path=IsNew, Converter={StaticResource BoolVisibilityConverter}}">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label Content="Passwort" />
|
||||
<PasswordBox Name="passwordbox_password" Grid.Column="1" Height="23" Margin="3" />
|
||||
<Label Grid.Row="1" Content="Passwort wiederholen" />
|
||||
<PasswordBox Name="passwordbox_passwordRepeat" Grid.Column="1" Grid.Row="1" Height="23" Margin="3" />
|
||||
</Grid>
|
||||
<Grid
|
||||
Name="grid_passworNewUser"
|
||||
Grid.Column="1"
|
||||
Visibility="{Binding Path=IsNew, Converter={StaticResource BoolVisibilityConverter}}">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label Content="Passwort" />
|
||||
<PasswordBox
|
||||
Name="passwordbox_password"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3" />
|
||||
<Label Grid.Row="1" Content="Passwort wiederholen" />
|
||||
<PasswordBox
|
||||
Name="passwordbox_passwordRepeat"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3" />
|
||||
</Grid>
|
||||
|
||||
<Grid Grid.Column="1" Name="grid_passwordExistingUser" Visibility="Collapsed">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label Content="Passwort" IsEnabled="False" />
|
||||
<PasswordBox Grid.Column="1" Height="23" Margin="3" IsEnabled="False" Password="xxxxxxxxxx" />
|
||||
<Button Name="button_changePassword" Grid.Column="2" Height="23" HorizontalAlignment="Right" Margin="3" Content="Passwort ändern" Click="button_changePassword_Click" />
|
||||
</Grid>
|
||||
<Grid
|
||||
Name="grid_passwordExistingUser"
|
||||
Grid.Column="1"
|
||||
Visibility="Collapsed">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Label Content="Passwort" IsEnabled="False" />
|
||||
<PasswordBox
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
IsEnabled="False"
|
||||
Password="xxxxxxxxxx" />
|
||||
<Button
|
||||
Name="button_changePassword"
|
||||
Grid.Column="2"
|
||||
Height="23"
|
||||
Margin="3"
|
||||
HorizontalAlignment="Right"
|
||||
Click="button_changePassword_Click"
|
||||
Content="Passwort ändern" />
|
||||
</Grid>
|
||||
|
||||
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
<GroupBox Grid.Row="2" Grid.ColumnSpan="2" Header="{markup:Translate Benutzergruppen}" Padding="5" Style="{DynamicResource ObjectEditGroupBox}" Margin="0,15,0,0">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label HorizontalAlignment="Center" Content="gewählte Gruppen" />
|
||||
<Label HorizontalAlignment="Center" Grid.Column="3" Content="mögliche Gruppen" />
|
||||
<ListBox Name="listbox_groups" Grid.RowSpan="2" Grid.Row="1" ItemsSource="{Binding Path=UserGroups}" IsSynchronizedWithCurrentItem="True" MinHeight="100">
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid HorizontalAlignment="Stretch" Margin="3">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label VerticalAlignment="Center" Margin="3 0" Padding="0" IsHitTestVisible="False" Content="{Binding Path=Name}" />
|
||||
<ToggleButton Grid.Column="1" HorizontalAlignment="Right" Width="14" Height="14" Background="White" Template="{StaticResource ExpanderToggleButton}" IsChecked="{Binding Path=Tag, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Grid}}, Mode=OneWayToSource}" VerticalAlignment="Center" Visibility="{Binding Path=Description, Converter={StaticResource ObjectVisibilityConverter} }" />
|
||||
<TextBox HorizontalAlignment="Left" Visibility="{Binding Path=Tag, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Grid}}, Converter={StaticResource BoolVisibilityConverter}}" Grid.Row="1" Grid.ColumnSpan="2" IsHitTestVisible="False" IsReadOnly="True" Cursor="Arrow" TextWrapping="WrapWithOverflow" Margin="10 3" Text="{Binding Path=Description}" BorderThickness="0" Background="Transparent" FontSize="10" />
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ListBox.ItemTemplate>
|
||||
<ListBox.ItemContainerStyle>
|
||||
<Style>
|
||||
<Setter Property="Control.HorizontalContentAlignment" Value="Stretch" />
|
||||
</Style>
|
||||
</ListBox.ItemContainerStyle>
|
||||
</ListBox>
|
||||
<Button Name="button_addGroup" Grid.Column="1" VerticalAlignment="Bottom" Content="<" FontWeight="Bold" Width="25" Grid.Row="1" Margin="3" Click="button_addGroup_Click" IsEnabled="{Binding Path=SelectedIndex, ElementName=listbox_possibleGroups, Converter={StaticResource IndexBoolConverter}}" Height="25" />
|
||||
<Button Name="button_removeGroup" Grid.Column="1" Grid.Row="2" VerticalAlignment="Top" Content=">" FontWeight="Bold" Width="25" Margin="3" Click="button_removeGroup_Click" IsEnabled="{Binding Path=SelectedIndex, ElementName=listbox_groups, Converter={StaticResource IndexBoolConverter}}" Height="25" />
|
||||
<ListBox Name="listbox_possibleGroups" Grid.Row="1" Grid.Column="2" Grid.RowSpan="2" ItemsSource="{Binding Path=PossibleGroups}" IsSynchronizedWithCurrentItem="True" MinHeight="100">
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid HorizontalAlignment="Stretch" Margin="3">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label VerticalAlignment="Center" Margin="3 0" Padding="0" IsHitTestVisible="False" Content="{Binding Path=Name}" />
|
||||
<ToggleButton Grid.Column="1" HorizontalAlignment="Right" Width="14" Height="14" Background="White" Template="{StaticResource ExpanderToggleButton}" IsChecked="{Binding Path=Tag, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Grid}}, Mode=OneWayToSource}" VerticalAlignment="Center" Visibility="{Binding Path=Description, Converter={StaticResource ObjectVisibilityConverter} }" />
|
||||
<TextBox HorizontalAlignment="Left" Visibility="{Binding Path=Tag, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Grid}}, Converter={StaticResource BoolVisibilityConverter}}" Grid.Row="1" Grid.ColumnSpan="2" IsHitTestVisible="False" IsReadOnly="True" Cursor="Arrow" TextWrapping="WrapWithOverflow" Margin="10 3" Text="{Binding Path=Description}" BorderThickness="0" Background="Transparent" FontSize="10" />
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ListBox.ItemTemplate>
|
||||
<ListBox.ItemContainerStyle>
|
||||
<Style>
|
||||
<Setter Property="Control.HorizontalContentAlignment" Value="Stretch" />
|
||||
</Style>
|
||||
</ListBox.ItemContainerStyle>
|
||||
</ListBox>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
<GroupBox
|
||||
Grid.Row="2"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="0,15,0,0"
|
||||
Padding="5"
|
||||
Header="{markup:Translate Benutzergruppen}"
|
||||
Style="{DynamicResource ObjectEditGroupBox}">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label HorizontalAlignment="Center" Content="gewählte Gruppen" />
|
||||
<Label
|
||||
Grid.Column="3"
|
||||
HorizontalAlignment="Center"
|
||||
Content="mögliche Gruppen" />
|
||||
<ListBox
|
||||
Name="listbox_groups"
|
||||
Grid.Row="1"
|
||||
Grid.RowSpan="2"
|
||||
MinHeight="100"
|
||||
IsSynchronizedWithCurrentItem="True"
|
||||
ItemsSource="{Binding Path=UserGroups}">
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid Margin="3" HorizontalAlignment="Stretch">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label
|
||||
Margin="3,0"
|
||||
Padding="0"
|
||||
VerticalAlignment="Center"
|
||||
Content="{Binding Path=Name}"
|
||||
IsHitTestVisible="False" />
|
||||
<ToggleButton
|
||||
Grid.Column="1"
|
||||
Width="14"
|
||||
Height="14"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Background="White"
|
||||
IsChecked="{Binding Path=Tag, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Grid}}, Mode=OneWayToSource}"
|
||||
Template="{StaticResource ExpanderToggleButton}"
|
||||
Visibility="{Binding Path=Description, Converter={StaticResource ObjectVisibilityConverter}}" />
|
||||
<TextBox
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="10,3"
|
||||
HorizontalAlignment="Left"
|
||||
Background="Transparent"
|
||||
BorderThickness="0"
|
||||
Cursor="Arrow"
|
||||
FontSize="10"
|
||||
IsHitTestVisible="False"
|
||||
IsReadOnly="True"
|
||||
Text="{Binding Path=Description}"
|
||||
TextWrapping="WrapWithOverflow"
|
||||
Visibility="{Binding Path=Tag, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Grid}}, Converter={StaticResource BoolVisibilityConverter}}" />
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ListBox.ItemTemplate>
|
||||
<ListBox.ItemContainerStyle>
|
||||
<Style>
|
||||
<Setter Property="Control.HorizontalContentAlignment" Value="Stretch" />
|
||||
</Style>
|
||||
</ListBox.ItemContainerStyle>
|
||||
</ListBox>
|
||||
<Button
|
||||
Name="button_addGroup"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Width="25"
|
||||
Height="25"
|
||||
Margin="3"
|
||||
VerticalAlignment="Bottom"
|
||||
Click="button_addGroup_Click"
|
||||
Content="<"
|
||||
FontWeight="Bold"
|
||||
IsEnabled="{Binding Path=SelectedIndex, ElementName=listbox_possibleGroups, Converter={StaticResource IndexBoolConverter}}" />
|
||||
<Button
|
||||
Name="button_removeGroup"
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Width="25"
|
||||
Height="25"
|
||||
Margin="3"
|
||||
VerticalAlignment="Top"
|
||||
Click="button_removeGroup_Click"
|
||||
Content=">"
|
||||
FontWeight="Bold"
|
||||
IsEnabled="{Binding Path=SelectedIndex, ElementName=listbox_groups, Converter={StaticResource IndexBoolConverter}}" />
|
||||
<ListBox
|
||||
Name="listbox_possibleGroups"
|
||||
Grid.Row="1"
|
||||
Grid.RowSpan="2"
|
||||
Grid.Column="2"
|
||||
MinHeight="100"
|
||||
IsSynchronizedWithCurrentItem="True"
|
||||
ItemsSource="{Binding Path=PossibleGroups}">
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid Margin="3" HorizontalAlignment="Stretch">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Label
|
||||
Margin="3,0"
|
||||
Padding="0"
|
||||
VerticalAlignment="Center"
|
||||
Content="{Binding Path=Name}"
|
||||
IsHitTestVisible="False" />
|
||||
<ToggleButton
|
||||
Grid.Column="1"
|
||||
Width="14"
|
||||
Height="14"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Background="White"
|
||||
IsChecked="{Binding Path=Tag, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Grid}}, Mode=OneWayToSource}"
|
||||
Template="{StaticResource ExpanderToggleButton}"
|
||||
Visibility="{Binding Path=Description, Converter={StaticResource ObjectVisibilityConverter}}" />
|
||||
<TextBox
|
||||
Grid.Row="1"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="10,3"
|
||||
HorizontalAlignment="Left"
|
||||
Background="Transparent"
|
||||
BorderThickness="0"
|
||||
Cursor="Arrow"
|
||||
FontSize="10"
|
||||
IsHitTestVisible="False"
|
||||
IsReadOnly="True"
|
||||
Text="{Binding Path=Description}"
|
||||
TextWrapping="WrapWithOverflow"
|
||||
Visibility="{Binding Path=Tag, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Grid}}, Converter={StaticResource BoolVisibilityConverter}}" />
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ListBox.ItemTemplate>
|
||||
<ListBox.ItemContainerStyle>
|
||||
<Style>
|
||||
<Setter Property="Control.HorizontalContentAlignment" Value="Stretch" />
|
||||
</Style>
|
||||
</ListBox.ItemContainerStyle>
|
||||
</ListBox>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
<Popup FocusManager.IsFocusScope="True" Grid.Row="3" Margin="10" Grid.ColumnSpan="2" Name="popup_employee" StaysOpen="False" Placement="MousePoint" Width="370" Height="250" Closed="popup_Closed" Opened="popup_Opened">
|
||||
<localSearchView:EmployeeSearchView ItemSelected="EmployeeSearchView_EmployeeSelected" x:Name="employeeSearchView" />
|
||||
</Popup>
|
||||
<Popup
|
||||
Name="popup_employee"
|
||||
Grid.Row="3"
|
||||
Grid.ColumnSpan="2"
|
||||
Width="370"
|
||||
Height="250"
|
||||
Margin="10"
|
||||
Closed="popup_Closed"
|
||||
FocusManager.IsFocusScope="True"
|
||||
Opened="popup_Opened"
|
||||
Placement="MousePoint"
|
||||
StaysOpen="False">
|
||||
<localSearchView:EmployeeSearchView x:Name="employeeSearchView" ItemSelected="EmployeeSearchView_EmployeeSelected" />
|
||||
</Popup>
|
||||
|
||||
<Popup FocusManager.IsFocusScope="True" Grid.Row="3" Margin="10" Grid.ColumnSpan="2" Name="popup_changePassword" StaysOpen="False" Placement="MousePoint" Closed="popup_Closed" Opened="popup_Opened">
|
||||
<Border Background="{StaticResource ObjectEditBackgroundBrush}" BorderBrush="Black" BorderThickness="1">
|
||||
<Grid Name="grid_passworEditExistingUser" Grid.Column="1" Margin="20 3">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<Popup
|
||||
Name="popup_changePassword"
|
||||
Grid.Row="3"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="10"
|
||||
Closed="popup_Closed"
|
||||
FocusManager.IsFocusScope="True"
|
||||
Opened="popup_Opened"
|
||||
Placement="MousePoint"
|
||||
StaysOpen="False">
|
||||
<Border
|
||||
Background="{StaticResource ObjectEditBackgroundBrush}"
|
||||
BorderBrush="Black"
|
||||
BorderThickness="1">
|
||||
<Grid
|
||||
Name="grid_passworEditExistingUser"
|
||||
Grid.Column="1"
|
||||
Margin="20,3">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<TextBlock Name="textblock_editFailures" Grid.ColumnSpan="2" Foreground="Red" FontSize="12" TextWrapping="Wrap" Margin="3 3 3 10" />
|
||||
<TextBlock
|
||||
Name="textblock_editFailures"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="3,3,3,10"
|
||||
FontSize="12"
|
||||
Foreground="Red"
|
||||
TextWrapping="Wrap" />
|
||||
|
||||
<Label Name="lblOldPassword" Content="Altes Passwort" Grid.Row="1" />
|
||||
<PasswordBox Name="passwordbox_editOldPassword" Grid.Column="1" Grid.Row="1" Height="23" Margin="3" MinWidth="180" />
|
||||
<Label
|
||||
Name="lblOldPassword"
|
||||
Grid.Row="1"
|
||||
Content="Altes Passwort" />
|
||||
<PasswordBox
|
||||
Name="passwordbox_editOldPassword"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
MinWidth="180"
|
||||
Margin="3" />
|
||||
|
||||
|
||||
<Label Content="Neues Passwort" Grid.Row="2" Margin="0 10 0 0" />
|
||||
<PasswordBox Name="passwordbox_editPassword" Grid.Column="1" Grid.Row="2" Height="23" Margin="3 10 3 3" PasswordChanged="Passwordbox_editPassword_OnPasswordChanged"/>
|
||||
<Label Grid.Row="3" Content="Passwort wiederholen" />
|
||||
<PasswordBox Name="passwordbox_editPasswordRepeat" Grid.Column="1" Grid.Row="3" Height="23" Margin="3" />
|
||||
|
||||
<!-- Hier Anzeige Für passwortStärke -->
|
||||
<Label Name="passwordbox_StaerkeAnzeige" Grid.Row="4" Grid.Column="0" Grid.ColumnSpan="2" HorizontalAlignment="Left" Visibility="Hidden"/>
|
||||
|
||||
<Grid Grid.IsSharedSizeScope="True" Grid.ColumnSpan="2" Grid.Row="5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" SharedSizeGroup="but" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" SharedSizeGroup="but" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Button Name="button_saveEditPassword" Margin="3 20 3 10" Height="23" HorizontalAlignment="Stretch" Click="button_saveEditPassword_Click" Content="Änderung speichern" Padding="3 0" />
|
||||
<Button Name="button_cancelEditPassword" Margin="3 20 3 10" Height="23" Grid.Column="2" HorizontalAlignment="Stretch" Click="button_cancelEditPassword_Click" Content="Abbrechen" Padding="3 0" />
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Border>
|
||||
</Popup>
|
||||
<Label
|
||||
Grid.Row="2"
|
||||
Margin="0,10,0,0"
|
||||
Content="Neues Passwort" />
|
||||
<PasswordBox
|
||||
Name="passwordbox_editPassword"
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3,10,3,3"
|
||||
PasswordChanged="Passwordbox_editPassword_OnPasswordChanged" />
|
||||
<Label Grid.Row="3" Content="Passwort wiederholen" />
|
||||
<PasswordBox
|
||||
Name="passwordbox_editPasswordRepeat"
|
||||
Grid.Row="3"
|
||||
Grid.Column="1"
|
||||
Height="23"
|
||||
Margin="3" />
|
||||
|
||||
</Grid>
|
||||
</TabItem>
|
||||
<TabItem Header="Dokumente" Name="tabitem_documents" Selector.Selected="tabitem_documents_Selected" />
|
||||
<!-- Hier Anzeige Für passwortStärke -->
|
||||
<Label
|
||||
Name="passwordbox_StaerkeAnzeige"
|
||||
Grid.Row="4"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
HorizontalAlignment="Left"
|
||||
Visibility="Hidden" />
|
||||
|
||||
</TabControl>
|
||||
<Border Grid.Row="2" Grid.ColumnSpan="3" Height="40" Margin="0,10,0,0" VerticalAlignment="Stretch" Background="#FF000000">
|
||||
<Border.OpacityMask>
|
||||
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
|
||||
<GradientStop Color="#19000000" Offset="0" />
|
||||
<GradientStop Color="#33FFFFFF" Offset="1" />
|
||||
</LinearGradientBrush>
|
||||
</Border.OpacityMask>
|
||||
<Grid
|
||||
Grid.Row="5"
|
||||
Grid.ColumnSpan="2"
|
||||
Grid.IsSharedSizeScope="True">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" SharedSizeGroup="but" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" SharedSizeGroup="but" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Button
|
||||
Name="button_saveEditPassword"
|
||||
Height="23"
|
||||
Margin="3,20,3,10"
|
||||
Padding="3,0"
|
||||
HorizontalAlignment="Stretch"
|
||||
Click="button_saveEditPassword_Click"
|
||||
Content="Änderung speichern" />
|
||||
<Button
|
||||
Name="button_cancelEditPassword"
|
||||
Grid.Column="2"
|
||||
Height="23"
|
||||
Margin="3,20,3,10"
|
||||
Padding="3,0"
|
||||
HorizontalAlignment="Stretch"
|
||||
Click="button_cancelEditPassword_Click"
|
||||
Content="Abbrechen" />
|
||||
</Grid>
|
||||
</Grid>
|
||||
</Border>
|
||||
</Popup>
|
||||
|
||||
</Border>
|
||||
<StackPanel Grid.ColumnSpan="3" Grid.Row="2" Orientation="Horizontal" VerticalAlignment="Center" Height="Auto" Margin="5,10,0,0" HorizontalAlignment="Right">
|
||||
<Button x:Name="btnSave" Content="Speichern" Margin="0,0,2,0" Command="ApplicationCommands.Save" Height="25" />
|
||||
<Button x:Name="btnClose" Content="Schließen" Margin="0,0,3,0" Command="ApplicationCommands.Close" Height="25" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</uc:ShadowChrome>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</TabItem>
|
||||
<TabItem
|
||||
Name="tabitem_documents"
|
||||
Header="Dokumente"
|
||||
Selector.Selected="tabitem_documents_Selected" />
|
||||
|
||||
</TabControl>
|
||||
<Border
|
||||
Grid.Row="2"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="40"
|
||||
Margin="0,10,0,0"
|
||||
VerticalAlignment="Stretch"
|
||||
Background="#FF000000">
|
||||
<Border.OpacityMask>
|
||||
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
|
||||
<GradientStop Offset="0" Color="#19000000" />
|
||||
<GradientStop Offset="1" Color="#33FFFFFF" />
|
||||
</LinearGradientBrush>
|
||||
</Border.OpacityMask>
|
||||
|
||||
</Border>
|
||||
<StackPanel
|
||||
Grid.Row="2"
|
||||
Grid.ColumnSpan="3"
|
||||
Height="Auto"
|
||||
Margin="5,10,0,0"
|
||||
HorizontalAlignment="Right"
|
||||
VerticalAlignment="Center"
|
||||
Orientation="Horizontal">
|
||||
<Button
|
||||
x:Name="btnSave"
|
||||
Height="25"
|
||||
Margin="0,0,2,0"
|
||||
Command="ApplicationCommands.Save"
|
||||
Content="Speichern" />
|
||||
<Button
|
||||
x:Name="btnClose"
|
||||
Height="25"
|
||||
Margin="0,0,3,0"
|
||||
Command="ApplicationCommands.Close"
|
||||
Content="Schließen" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</uc:ShadowChrome>
|
||||
</Grid>
|
||||
</localView:BeWoView>
|
||||
@@ -215,12 +215,11 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
if(!pSCViewModel.EditAllowed)
|
||||
{
|
||||
GridOben.IsEnabled = false;
|
||||
|
||||
TextboxNotice.IsEnabled = false;
|
||||
TextboxNotice2.IsEnabled = false;
|
||||
TextboxNotice3.IsEnabled = false;
|
||||
TextboxNotice4.IsEnabled = false;
|
||||
TextboxNotice5.IsEnabled = false;
|
||||
TextboxNotice.IsReadOnly = true;
|
||||
TextboxNotice2.IsReadOnly = true;
|
||||
TextboxNotice3.IsReadOnly = true;
|
||||
TextboxNotice4.IsReadOnly = true;
|
||||
TextboxNotice5.IsReadOnly = true;
|
||||
|
||||
btnSave.Visibility = Visibility.Hidden;
|
||||
}
|
||||
@@ -427,7 +426,7 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
{
|
||||
var copyVm = _ServiceRecordVM.Clone();
|
||||
copyVm.DataContract.ServiceRecordOid = _ServiceRecordVM.DataContract.ServiceRecordOid;
|
||||
lValid = BeWoUtils.ValidateServiceRecordVM(copyVm, ViewModel.StatisticsDC, _ServiceRecordVM.ChoosenNode, false, _ServiceRecordVM.Employee, null, null);
|
||||
lValid = BeWoUtils.ValidateServiceRecordVM(copyVm, ViewModel.StatisticsDC, _ServiceRecordVM.ChoosenNode, false, _ServiceRecordVM.Employee, null, null, 1);
|
||||
|
||||
if(lValid)
|
||||
{
|
||||
|
||||
@@ -217,11 +217,11 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
btnSave.Visibility = Visibility.Hidden;
|
||||
|
||||
|
||||
TextboxNotice.IsEnabled = false;
|
||||
TextboxNotice2.IsEnabled = false;
|
||||
TextboxNotice3.IsEnabled = false;
|
||||
TextboxNotice4.IsEnabled = false;
|
||||
TextboxNotice5.IsEnabled = false;
|
||||
TextboxNotice.IsReadOnly = true;
|
||||
TextboxNotice2.IsReadOnly = true;
|
||||
TextboxNotice3.IsReadOnly = true;
|
||||
TextboxNotice4.IsReadOnly = true;
|
||||
TextboxNotice5.IsReadOnly = true;
|
||||
|
||||
|
||||
}
|
||||
@@ -285,7 +285,7 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
var employeeOids = multiEmployeeControl.SelectedEmployees.Select(compactEmployeeDc => compactEmployeeDc.EmployeeOid).ToList();
|
||||
|
||||
var cb2scOids = (from scDc in multiSupportConceptControl.SelectedSupportConcepts where scDc.CostBearerRelOids != null && scDc.CostBearerRelOids.Count > 0 select scDc.CostBearerRelOids[0]).ToList();
|
||||
|
||||
int index = 1;
|
||||
foreach (var sc in multiSupportConceptControl.SelectedSupportConcepts)
|
||||
{
|
||||
if (lValid)
|
||||
@@ -293,7 +293,7 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
var vm = SupportConceptService.CreateFlatSupportConceptItem(sc, null);
|
||||
var copyVm = _ServiceRecordVM.Clone();
|
||||
copyVm.DataContract.ServiceRecordOid = _ServiceRecordVM.DataContract.ServiceRecordOid;
|
||||
lValid = BeWoUtils.ValidateServiceRecordVM(copyVm, null, vm, false, _ViewModel.SelectedEmployee, employeeOids, cb2scOids);
|
||||
lValid = BeWoUtils.ValidateServiceRecordVM(copyVm, null, vm, false, _ViewModel.SelectedEmployee, employeeOids, cb2scOids, index++);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -125,7 +125,7 @@
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<dxg:GridControl VerticalAlignment="Stretch" HorizontalAlignment="Stretch" x:Name="datagrid_ServiceRecordHistory">
|
||||
<dxg:GridControl VerticalAlignment="Stretch" HorizontalAlignment="Stretch" x:Name="DataGrid_ServiceRecordHistory">
|
||||
<dxg:GridControl.Columns>
|
||||
<dxg:GridColumn AllowEditing="False" FieldName="TimeStamp" Header="Änderungsdatum" ReadOnly="True" EditSettings="{dxe:DateSettings DisplayFormat=dd.MM.yyyy HH:mm}" x:Name="AenderungsdatumColumn" />
|
||||
<dxg:GridColumn AllowEditing="False" FieldName="InsUser" Header="Geändert von" ReadOnly="True" />
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
|
||||
using BS.Shared.DataContracts;
|
||||
|
||||
using DevExpress.Xpf.Core;
|
||||
using DevExpress.Xpf.Grid;
|
||||
|
||||
namespace BeWo.View.Detail.Zeiterfassung
|
||||
{
|
||||
@@ -19,7 +21,7 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
AenderungsdatumColumn.Visible = !BeWoApp.AppSettings.HideServiceRecordInsertedByAndInsertedOn;
|
||||
|
||||
InitializeComponent();
|
||||
datagrid_ServiceRecordHistory.ItemsSource = historyList;
|
||||
DataGrid_ServiceRecordHistory.ItemsSource = historyList;
|
||||
|
||||
Focus();
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -52,6 +52,8 @@ using VerticalAlignment = System.Windows.VerticalAlignment;
|
||||
using DependencyObject = System.Windows.DependencyObject;
|
||||
using BeWo.AI.View;
|
||||
using BeWo.AI;
|
||||
using BeWo.View.Detail.AI;
|
||||
using BeWo.View.Windows;
|
||||
|
||||
namespace BeWo.View.Detail.Zeiterfassung
|
||||
{
|
||||
@@ -1564,9 +1566,10 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
|
||||
var cb2scOids = (from scDc in multiSupportConceptControl.SelectedSupportConcepts where scDc.CostBearerRelOids != null && scDc.CostBearerRelOids.Count > 0 select scDc.CostBearerRelOids[0]).ToList();
|
||||
|
||||
int index = 1;
|
||||
foreach(var node in from dc in multiSupportConceptControl.SelectedSupportConcepts where lValid select SupportConceptService.CreateFlatSupportConceptItem(dc, null))
|
||||
{
|
||||
lValid = BeWoUtils.ValidateServiceRecordVM(ViewModel.PrototypeVM, null, node, WithoutClient, ViewModel.SelectedEmployee, employeeOids, cb2scOids);
|
||||
lValid = BeWoUtils.ValidateServiceRecordVM(ViewModel.PrototypeVM, null, node, WithoutClient, ViewModel.SelectedEmployee, employeeOids, cb2scOids, index++);
|
||||
}
|
||||
|
||||
if(lValid)
|
||||
@@ -1791,12 +1794,13 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
}
|
||||
}
|
||||
|
||||
int index = 1;
|
||||
foreach(var selectedSupportConcept in multiSupportConceptControl.SelectedSupportConcepts)
|
||||
{
|
||||
if(lValid)
|
||||
{
|
||||
FlatSupportConceptTreeNodeDC node = SupportConceptService.CreateFlatSupportConceptItem(selectedSupportConcept, null);
|
||||
lValid = BeWoUtils.ValidateServiceRecordVM(ViewModel.PrototypeVM, null, node, true, ViewModel.SelectedEmployee, employeeOids, cb2scOids);
|
||||
lValid = BeWoUtils.ValidateServiceRecordVM(ViewModel.PrototypeVM, null, node, true, ViewModel.SelectedEmployee, employeeOids, cb2scOids, index++);
|
||||
}
|
||||
}
|
||||
//lValid = ValidateServiceRecordVMClientX(ViewModel.PrototypeVM, node, true);
|
||||
@@ -1901,7 +1905,7 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
if (lValid)
|
||||
{
|
||||
lValid = BeWoUtils.ValidateServiceRecordVM(ViewModel.PrototypeVM, ViewModel.StatisticsDC, selectedNode,
|
||||
WithoutClient, ViewModel.SelectedEmployee, null, null);
|
||||
WithoutClient, ViewModel.SelectedEmployee, null, null, 1);
|
||||
|
||||
if (lValid)
|
||||
{
|
||||
@@ -2365,8 +2369,8 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
ButtonZeiterfassungErstellen.Visibility = Visibility.Collapsed;
|
||||
multiSupportConceptControl.Visibility = Visibility.Visible;
|
||||
multiEmployeeControl.Visibility = Visibility.Visible;
|
||||
panelGoalLabel.Visibility = Visibility.Collapsed;
|
||||
panelGoalTree.Visibility = Visibility.Collapsed;
|
||||
//panelGoalLabel.Visibility = Visibility.Collapsed;
|
||||
//panelGoalTree.Visibility = Visibility.Collapsed;
|
||||
|
||||
SetEmployeeComboVisibility();
|
||||
SetRebookingButtonVisibility();
|
||||
@@ -2403,8 +2407,8 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
ButtonZeiterfassungErstellen.Visibility = BeWoApp.AppSettings.ShowKlientenBetreuungszeiten ? Visibility.Visible : Visibility.Collapsed;
|
||||
multiSupportConceptControl.Visibility = Visibility.Collapsed;
|
||||
multiEmployeeControl.Visibility = Visibility.Collapsed;
|
||||
panelGoalLabel.Visibility = Visibility.Visible;
|
||||
panelGoalTree.Visibility = Visibility.Visible;
|
||||
//panelGoalLabel.Visibility = Visibility.Visible;
|
||||
//panelGoalTree.Visibility = Visibility.Visible;
|
||||
|
||||
SetEmployeeComboVisibility();
|
||||
SetRebookingButtonVisibility();
|
||||
@@ -3870,7 +3874,24 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
}
|
||||
else
|
||||
{
|
||||
text = Translator.Translate("Sind Sie sicher, dass Sie {0} Einträge umbuchen möchten?", records.Count);
|
||||
int realCount = 0;
|
||||
|
||||
//Prüfen, ob es Gruppen gibt, die von mehreren MAs betreut werden. Denn diese werden mehrfach gezählt, was zu Verwirrung geführt hat.
|
||||
Dictionary<long, bool> groupDict = new Dictionary<long, bool>();
|
||||
foreach (var item in records)
|
||||
{
|
||||
if (!item.GroupOid.HasValue || !groupDict.ContainsKey(item.GroupOid.Value))
|
||||
{
|
||||
realCount++;
|
||||
|
||||
if (item.GroupOid.HasValue && !groupDict.ContainsKey(item.GroupOid.Value))
|
||||
{
|
||||
groupDict.Add(item.GroupOid.Value, true);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
text = Translator.Translate("Sind Sie sicher, dass Sie {0} Einträge umbuchen möchten?", realCount);
|
||||
}
|
||||
if (MessageBox.Show(text, Translator.Translate("Umbuchen"), MessageBoxButton.OKCancel, MessageBoxImage.Question) == MessageBoxResult.OK)
|
||||
{
|
||||
@@ -5036,7 +5057,6 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
|
||||
private void OpenAiChat(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
|
||||
var node = ViewModel.SelectedCustomerNode;
|
||||
long c2sOid = 0;
|
||||
|
||||
@@ -5071,7 +5091,48 @@ namespace BeWo.View.Detail.Zeiterfassung
|
||||
|
||||
ComboBoxTreeViewControl.TreeViewSourceList = ViewModel.PrototypeVM.GoalTree;
|
||||
}
|
||||
}
|
||||
private void Ai_Button_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var records = GetVisibleRecordVMs();
|
||||
|
||||
var context = ViewModel.GetVisibleInformationReferences(records);
|
||||
|
||||
MainControl.WindowService.ShowAiConversationWindow(UIContext.ServiceRecord, context);
|
||||
}
|
||||
private void Ai_Button2_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var records = GetVisibleRecordVMs();
|
||||
|
||||
var context = ViewModel.GetVisibleInformationReferences(records);
|
||||
|
||||
MainControl.WindowService.ShowAiConversationModalViewWindow(UIContext.ServiceRecord, context);
|
||||
}
|
||||
|
||||
private IEnumerable<ServiceRecordVM> GetVisibleRecordVMs()
|
||||
{
|
||||
var list = new List<ServiceRecordVM>();
|
||||
|
||||
var items = srListBox.ItemsSource as IList<ServiceRecordVM>;
|
||||
|
||||
if (items != null)
|
||||
{
|
||||
for (int i = 0; i < items.Count; i++)
|
||||
{
|
||||
var vm = srListBox.Items[i] as ServiceRecordVM;
|
||||
//if (srListBox.IsRowVisible(i))
|
||||
//{
|
||||
// var vm = datagrid_invoices.GetRow(i) as InvoiceBaseVM;
|
||||
if (vm != null)
|
||||
{
|
||||
list.Add(vm);
|
||||
}
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
return list;
|
||||
}
|
||||
}
|
||||
|
||||
//public class RowBackgroundHelper
|
||||
//{
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
using BeWo.ServiceProxy;
|
||||
using BeWo.Core;
|
||||
using BeWo.ServiceProxy;
|
||||
using BeWo.View.Windows;
|
||||
using BeWo.ViewModel;
|
||||
using BS.Shared;
|
||||
using BS.Shared.Core;
|
||||
using BS.Shared.DataContracts;
|
||||
using BS.Shared.Translation;
|
||||
using DevExpress.Utils;
|
||||
@@ -10,6 +13,7 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
using System.Windows.Media.Imaging;
|
||||
|
||||
namespace BeWo.View.Document
|
||||
@@ -35,8 +39,9 @@ namespace BeWo.View.Document
|
||||
view.ButtonCancelClicked += () => beWoWindow.Close();
|
||||
view.ButtonCreateForSelectionClicked += () =>
|
||||
{
|
||||
|
||||
PrintTemplate(view.SelectedTemplate, objectTid, objectOid);
|
||||
beWoWindow.Close();
|
||||
|
||||
};
|
||||
|
||||
beWoWindow.ShowDialog();
|
||||
@@ -116,7 +121,7 @@ namespace BeWo.View.Document
|
||||
foreach (TreeListNode node in nodes)
|
||||
{
|
||||
var docVm = node.Content as DocumentTreeItemVM;
|
||||
if (docVm != null && docVm.DocTreeItemOid.HasValue && docVm.DocTreeItemOid == template.Parent)
|
||||
if (docVm != null && docVm.DataContract.Dokumentvorlage == null && docVm.DocTreeItemOid.HasValue && docVm.DocTreeItemOid == template.Parent)
|
||||
{
|
||||
return node;
|
||||
}
|
||||
@@ -261,6 +266,40 @@ namespace BeWo.View.Document
|
||||
|
||||
}
|
||||
|
||||
|
||||
private static void PrintTemplate(DokumentvorlageDC vorlage, TableID objectTid, long objectOid)
|
||||
{
|
||||
|
||||
string url = GenerateURL(vorlage.DokumentvorlageOid.Value, objectTid, new List<long> { objectOid });
|
||||
|
||||
BeWoUtils.NavigateToReportUri(url, vorlage.Name);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static string GenerateURL(long vorlage, TableID objectTid, List<long> objectOids)
|
||||
{
|
||||
string url = BeWoApp.SiteOfOrigin + "/ReportView.aspx?";
|
||||
|
||||
url += "&vorlage=" + vorlage;
|
||||
|
||||
url += "&obj=";
|
||||
foreach (var oid in objectOids)
|
||||
{
|
||||
if (objectOids.IndexOf(oid) == objectOids.Count - 1)
|
||||
url += oid;
|
||||
else
|
||||
url += oid + ",";
|
||||
}
|
||||
|
||||
url += "&table=" + (int)objectTid;
|
||||
url += "&type=" + Utils.EnumName(ReportTypes.VorlagenReport);
|
||||
url = BeWoWpfUtils.GetHTMLEncodedURL(url);
|
||||
|
||||
return url;
|
||||
}
|
||||
|
||||
private static BitmapImage LoadImage(string imageName)
|
||||
{
|
||||
if (String.IsNullOrEmpty(imageName))
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
xmlns:controls="clr-namespace:BeWo.View.Controls"
|
||||
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
|
||||
xmlns:dxa="http://schemas.devexpress.com/winfx/2008/xaml/accordion"
|
||||
xmlns:dxe="http://schemas.devexpress.com/winfx/2008/xaml/editors"
|
||||
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
|
||||
xmlns:dxgt="http://schemas.devexpress.com/winfx/2008/xaml/grid/themekeys"
|
||||
xmlns:dxlc="http://schemas.devexpress.com/winfx/2008/xaml/layoutcontrol"
|
||||
@@ -419,7 +420,7 @@
|
||||
<DataTemplate>
|
||||
<Button
|
||||
Width="20"
|
||||
Height="20"
|
||||
Height="23"
|
||||
VerticalAlignment="Center"
|
||||
Click="EditButton_Click"
|
||||
Content="!"
|
||||
@@ -515,12 +516,19 @@
|
||||
dx:ThemeManager.ThemeName="Office2010Black"
|
||||
DefaultSorting="Name">
|
||||
<dxg:TreeListControl.Columns>
|
||||
<dxg:TreeListColumn AllowSorting="True" FieldName="Name" />
|
||||
<dxg:TreeListColumn AllowSorting="True" FieldName="Name" AllowEditing="False">
|
||||
<dxg:TreeListColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<dxe:TextEdit x:Name="PART_Editor" EditMode="InplaceActive" Text="{Binding Path=DataContext.RowData.Row.Name, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}, UpdateSourceTrigger=PropertyChanged}"
|
||||
AcceptsReturn="False" AcceptsTab="False" TextTrimming="WordEllipsis" TextWrapping="NoWrap" SelectAllOnGotFocus="True" SelectAllOnMouseUp="True" />
|
||||
</DataTemplate>
|
||||
</dxg:TreeListColumn.CellTemplate>
|
||||
</dxg:TreeListColumn>
|
||||
</dxg:TreeListControl.Columns>
|
||||
<dxg:TreeListControl.View>
|
||||
<dxg:TreeListView
|
||||
x:Name="TemplateTreeView"
|
||||
AllowEditing="False"
|
||||
AllowEditing="True"
|
||||
AutoWidth="True"
|
||||
ContextMenu="{StaticResource templatecm}"
|
||||
FocusedRowChanged="TemplateTreeView_FocusedRowChanged"
|
||||
@@ -529,7 +537,8 @@
|
||||
LostFocus="TemplateTreeView_LostFocus"
|
||||
NodeExpanding="templateTreeListView_NodeExpanding"
|
||||
ParentFieldName="Binding DocumentTreeItemVM.ParentOid"
|
||||
PreviewMouseLeftButtonDown="TemplateTreeView_PreviewMouseLeftButtonDown"
|
||||
PreviewMouseLeftButtonDown="TemplateTreeView_PreviewMouseButtonDown"
|
||||
PreviewMouseRightButtonDown="TemplateTreeView_PreviewMouseButtonDown"
|
||||
PrintNodeImages="True"
|
||||
ShowColumnHeaders="False"
|
||||
ShowHorizontalLines="False"
|
||||
@@ -538,7 +547,8 @@
|
||||
ShowVerticalLines="False"
|
||||
VerticalScrollbarVisibility="Auto"
|
||||
AutoExpandOnDrag="True"
|
||||
NavigationStyle="Cell"/>
|
||||
NavigationStyle="Cell"
|
||||
ShownEditor="TemplateTreeView_ShownEditor" />
|
||||
</dxg:TreeListControl.View>
|
||||
</dxg:TreeListControl>
|
||||
<!--
|
||||
@@ -608,21 +618,36 @@
|
||||
</Grid>
|
||||
</dxlc:LayoutGroup>
|
||||
<dxlc:LayoutGroup dxlc:LayoutControl.AllowHorizontalSizing="True">
|
||||
<dxg:GridControl
|
||||
<GroupBox
|
||||
x:Name="GroupBoxTemplateList"
|
||||
Grid.ColumnSpan="2"
|
||||
Padding="5"
|
||||
Header=""
|
||||
Style="{StaticResource ObjectEditGroupBox}">
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<dxg:GridControl
|
||||
x:Name="datagrid_templates"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Margin="2,3,5,5">
|
||||
<dxg:GridControl.Columns>
|
||||
<dxg:GridColumn
|
||||
<dxg:GridControl.Columns>
|
||||
<dxg:GridColumn
|
||||
Width="24"
|
||||
FieldName="FileName"
|
||||
FixedWidth="True"
|
||||
Header=""
|
||||
ReadOnly="True">
|
||||
<dxg:GridColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Button
|
||||
<dxg:GridColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Button
|
||||
Width="20"
|
||||
Height="20"
|
||||
Margin="1"
|
||||
@@ -630,64 +655,67 @@
|
||||
Click="TemplateDeleteButton_Click"
|
||||
Content="r"
|
||||
FontFamily="Webdings" />
|
||||
</DataTemplate>
|
||||
</dxg:GridColumn.CellTemplate>
|
||||
</dxg:GridColumn>
|
||||
<dxg:GridColumn
|
||||
</DataTemplate>
|
||||
</dxg:GridColumn.CellTemplate>
|
||||
</dxg:GridColumn>
|
||||
<dxg:GridColumn
|
||||
Width="*"
|
||||
AllowEditing="False"
|
||||
FieldName="Name"
|
||||
Header="Name" />
|
||||
<dxg:GridColumn
|
||||
<dxg:GridColumn
|
||||
Width="*"
|
||||
AllowEditing="False"
|
||||
FieldName="Beschreibung"
|
||||
Header="Beschreibung" />
|
||||
<dxg:GridColumn
|
||||
<dxg:GridColumn
|
||||
Width="80"
|
||||
FieldName="FileEdit"
|
||||
FixedWidth="True"
|
||||
Header=""
|
||||
ReadOnly="True">
|
||||
<dxg:GridColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Button
|
||||
<dxg:GridColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Button
|
||||
Width="75"
|
||||
Height="20"
|
||||
Height="23"
|
||||
VerticalAlignment="Center"
|
||||
Click="EditTemplate_Click"
|
||||
Content="Bearbeiten" />
|
||||
</DataTemplate>
|
||||
</dxg:GridColumn.CellTemplate>
|
||||
</dxg:GridColumn>
|
||||
<dxg:GridColumn
|
||||
</DataTemplate>
|
||||
</dxg:GridColumn.CellTemplate>
|
||||
</dxg:GridColumn>
|
||||
<!--<dxg:GridColumn
|
||||
Width="80"
|
||||
FieldName="PrintFile"
|
||||
FixedWidth="True"
|
||||
Header=""
|
||||
ReadOnly="True">
|
||||
<dxg:GridColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Button
|
||||
<dxg:GridColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Button
|
||||
Width="75"
|
||||
Height="20"
|
||||
Height="23"
|
||||
VerticalAlignment="Center"
|
||||
Click="PrintTemplate_Click"
|
||||
Content="Drucken" />
|
||||
</DataTemplate>
|
||||
</dxg:GridColumn.CellTemplate>
|
||||
</dxg:GridColumn>
|
||||
</dxg:GridControl.Columns>
|
||||
<dxg:GridControl.View>
|
||||
<dxg:TableView
|
||||
</DataTemplate>
|
||||
</dxg:GridColumn.CellTemplate>
|
||||
</dxg:GridColumn>-->
|
||||
</dxg:GridControl.Columns>
|
||||
<dxg:GridControl.View>
|
||||
<dxg:TableView
|
||||
x:Name="TemplateTableView"
|
||||
AutoWidth="false"
|
||||
NavigationStyle="Row"
|
||||
ShowGroupPanel="False"
|
||||
ShowGroupedColumns="false"
|
||||
ShowTotalSummary="False" />
|
||||
</dxg:GridControl.View>
|
||||
</dxg:GridControl>
|
||||
ShowTotalSummary="False"
|
||||
RowDoubleClick="TemplateTableView_RowDoubleClick"/>
|
||||
</dxg:GridControl.View>
|
||||
</dxg:GridControl>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</dxlc:LayoutGroup>
|
||||
</dxlc:LayoutControl>
|
||||
</TabItem>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user