Bugs Behoben und Klienr/ Person um Nationalität und Familiystatus und Sufenhaltsstatus

Familystatus nicht ganz fertig.
This commit is contained in:
Waldi
2017-02-14 13:55:40 +01:00
parent 5c6de1ae7f
commit 50b6369166
21 changed files with 543 additions and 151 deletions

View File

@@ -238,6 +238,10 @@
NavigationStyle="Cell" />
</dxg:GridControl.View>
</dxg:GridControl>
<dxg:GridControl VerticalAlignment="Stretch" DataSource="{Binding Path=EnvironmentPersons.VMList}" HorizontalAlignment="Stretch" x:Key="grid_PersonRelations">
<dxg:GridControl.Columns>
<dxg:GridColumn FieldName="Notice" Header="" FixedWidth="True" Width="24" ReadOnly="True">
@@ -258,6 +262,30 @@
<dxg:TableView AutoWidth="true" ShowGroupPanel="False" ShowGroupedColumns="false" ShowTotalSummary="False" NavigationStyle="Cell" RowDoubleClick="TableView_OnRowDoubleClick" />
</dxg:GridControl.View>
</dxg:GridControl>
<!-- ######## DataSource für Umfeld Familie ######### -->
<dxg:GridControl VerticalAlignment="Stretch" DataSource="{Binding Path=EnvironmentFamily.VMList}" HorizontalAlignment="Stretch" x:Key="grid_FamilyRelations">
<dxg:GridControl.Columns>
<dxg:GridColumn FieldName="Notice" Header="" FixedWidth="True" Width="24" ReadOnly="True">
<dxg:GridColumn.CellTemplate>
<DataTemplate>
<Button Content="r" Click="button_environmentPersonDeleteClick" FontFamily="Webdings" Width="18" Height="18" VerticalAlignment="Center" />
</DataTemplate>
</dxg:GridColumn.CellTemplate>
</dxg:GridColumn>
<dxg:GridColumn FieldName="PersonString" Header="Person" Width="150" AllowEditing="False" />
<dxg:GridColumn FieldName="AddressSummaryInfo" Header="Adresse" Width="150" />
<dxg:GridColumn FieldName="ContactSummaryInfo" Header="Kontaktdaten" Width="150" />
<dxg:GridColumn FieldName="Notice" Header="Notiz" Width="250" />
<dxg:GridColumn FieldName="Familienstatus" Header="Familienstatus" Width="150" />
</dxg:GridControl.Columns>
<dxg:GridControl.View>
<dxg:TableView AutoWidth="true" ShowGroupPanel="False" ShowGroupedColumns="false" ShowTotalSummary="False" NavigationStyle="Cell" RowDoubleClick="TableView_OnRowDoubleClick" />
</dxg:GridControl.View>
</dxg:GridControl>
<!-- ################################################ -->
<dxg:GridControl VerticalAlignment="Stretch" DataSource="{Binding Path=EnvironmentOrganisations.VMList}" HorizontalAlignment="Stretch" x:Key="grid_OrganisationRelations">
<dxg:GridControl.Columns>
<dxg:GridColumn FieldName="Notice" Header="" FixedWidth="True" Width="24" ReadOnly="True">
@@ -352,6 +380,9 @@
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
@@ -386,41 +417,71 @@
<Label Grid.Column="2" Grid.Row="2" Content="Kinder" />
<Label Grid.Column="2" Grid.Row="3" Content="Eigenbeteiligung" />
<Label x:Name="lblArchiviert" Grid.Column="2" Grid.Row="4" Content="Archiviert" />
<Label Grid.Column="0" Grid.Row="5" Content="Kommentar" />
<Label Grid.Column="0" Grid.Row="8" Content="Kommentar" />
<!-- ############## Geschlecht ############### -->
<Label Grid.Column="0" Grid.Row="3" Content="Geschlecht" />
<!--################## Mittlere Planke wird jetzt ausgefüllt ################-->
<Grid Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="Blubb"/>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Label Grid.Column="0" Content="Geschlecht" VerticalAlignment="Center" />
<Grid Grid.Column="1" Height="23" Margin="0,3,0,3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="RB1" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<RadioButton Grid.Column="0" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsMale, UpdateSourceTrigger=PropertyChanged}" Content="männlich" />
<RadioButton Grid.Column="1" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsFemale, UpdateSourceTrigger=PropertyChanged}" Content="weiblich" />
<Grid Grid.Column="1" Grid.Row="3" Margin="3" Height="23">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<RadioButton Grid.Column="0" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsMale, UpdateSourceTrigger=PropertyChanged}" Content="männlich" />
<RadioButton Grid.Column="1" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsFemale, UpdateSourceTrigger=PropertyChanged}" Content="weiblich" />
</Grid>
<!-- ####################################### -->
<!-- ########## Nationalität ############### -->
<Grid Grid.Column="0" Grid.Row="4" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="Blubb"/>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Label Grid.Column="0" Content="Staatsangehörigkeit"/>
<ComboBox x:Name="comboBox_Nationalitaet" Grid.Column="1" Margin="3" Height="23" SelectedValue="{Binding Path=Nationalitaet, Mode=TwoWay}" />
</Grid>
<!-- ####################################### -->
<!-- ###### MigrationsHintergrund ########## -->
<Label Grid.Column="0" Grid.Row="5" VerticalAlignment="Center" HorizontalAlignment="Left" Content="Migrationshintergrund"/>
<CheckBox Grid.Column="1" Grid.Row="5" VerticalAlignment="Center" Margin="3" x:Name="chkMigration" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsMigrant, UpdateSourceTrigger=PropertyChanged}"/>
<!-- ####################################### -->
<!-- ########## Aufenthaltsstatus ############# -->
<Grid Grid.Column="0" Grid.Row="6" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="Blubb"/>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Label Grid.Column="0" VerticalAlignment="Center" HorizontalAlignment="Left" Content="Aufenthalststatus"/>
<ComboBox x:Name="comboBox_Aufenthalt" Grid.Column="1" Margin="3" Height="23" SelectedValue="{Binding Path=AufenthaltsStatus, Mode=TwoWay}" />
</Grid>
<!-- ########################################## -->
<Label Grid.Column="2" VerticalAlignment="Center" Content="Migrationshintergrund" Margin="3"/>
<CheckBox Grid.Column="3" VerticalAlignment="Center" Margin="3" x:Name="chkMigration"
IsChecked="{Binding Path=IsMigrant, UpdateSourceTrigger=PropertyChanged}"/>
</Grid>
<!--#########################################################################-->
<!--<TextBox x:Name="txtAktenzeichen" Grid.Column="1" Grid.Row="2" Margin="3" Height="23" Text="{val:ValidationBinding Path=ReferenceNumber, UpdateSourceTrigger=PropertyChanged}" />-->
@@ -438,7 +499,7 @@
<RadioButton Grid.Column="1" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsFemale, UpdateSourceTrigger=PropertyChanged}" Content="weiblich" />
</Grid>-->
<Grid x:Name="panelDebitor" Grid.Column="0" Grid.Row="4" Grid.ColumnSpan="2">
<Grid x:Name="panelDebitor" Grid.Column="0" Grid.Row="7" Grid.ColumnSpan="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="Blubb"/>
<ColumnDefinition Width="*" />
@@ -465,7 +526,7 @@
Text="{Binding Path=EquityContribution, UpdateSourceTrigger=PropertyChanged}" />
<CheckBox x:Name="chkArchiviert" Grid.Column="3" Grid.Row="4" Margin="3" Height="23"
IsChecked="{Binding Path=IsArchived, UpdateSourceTrigger=PropertyChanged}" />
<TextBox Margin="3" Grid.Column="1" Grid.ColumnSpan="3" Grid.Row="5"
<TextBox Margin="3" Grid.Column="1" Grid.ColumnSpan="3" Grid.Row="8"
Text="{Binding Path=Notice, UpdateSourceTrigger=PropertyChanged}" Height="100"
VerticalAlignment="Stretch" VerticalContentAlignment="Stretch" HorizontalContentAlignment="Left"
ScrollViewer.CanContentScroll="False" VerticalScrollBarVisibility="Auto"
@@ -1198,6 +1259,7 @@
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<GroupBox x:Name="groupbox_Environment" Grid.Row="0" Header="Umfeld" Style="{DynamicResource ObjectEditGroupBox}">
@@ -1211,7 +1273,7 @@
<TextBox Margin="3" Height="50" AcceptsReturn="True" VerticalScrollBarVisibility="Auto" Text="{Binding Path=Environment, UpdateSourceTrigger=PropertyChanged}" />
</Grid>
</GroupBox>
<GroupBox x:Name="GroupBoxPersons" Grid.Row="2" Margin="0,20,0,0" Header="Diesem Klienten zugeordnete Personen" Style="{DynamicResource ObjectEditGroupBox}" MinHeight="150" MaxHeight="350">
<GroupBox x:Name="GroupBoxPersons" Grid.Row="5" Margin="0,20,0,0" Header="Diesem Klienten zugeordnete Personen" Style="{DynamicResource ObjectEditGroupBox}" MinHeight="150" MaxHeight="350">
<Grid x:Name="environmentPersonGrid">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
@@ -1379,6 +1441,73 @@
</Grid>
</GroupBox>
<!-- ######################## Rolle des Umfelds Familie / ganz nach oben und so wie andere nur statt rolle, status ################### -->
<GroupBox x:Name="GroupBoxFamily" Grid.Row="2" Margin="0,20,0,0" Header="Diesem Klienten zugeordnete Familien Mitglieder" Style="{DynamicResource ObjectEditGroupBox}" MinHeight="150" MaxHeight="350">
<Grid x:Name="environmentFamilyGrid">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Button Grid.Row="0" Grid.Column="0" HorizontalAlignment="Left" VerticalAlignment="Bottom" Height="25"
Margin="3" Content="Neues Mitglied hinzufügen" x:Name="button_openAddEnvironmentFamily"
Click="button_openAddEnvironmentFamily_Click" />
<controls:PopupNonTopmost Topmost="False" x:Name="popup_newEnvironmentFamily" Width="350" StaysOpen="True" Placement="Relative" Grid.Row="1" PlacementTarget="{Binding ElementName=button_openAddEnvironmentFamily}">
<Border Background="White" Padding="3" BorderThickness="1" BorderBrush="Gray">
<GroupBox x:Name="groupbox_newEnvironmentFamily" Header="Neues Mitglied hinzufügen" Style="{DynamicResource ObjectEditGroupBox}">
<Grid>
<Grid.ColumnDefinitions>
<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" />
</Grid.RowDefinitions>
<Label Grid.Row="0" Grid.Column="0" Content="Person" />
<Label Grid.Row="2" Grid.Column="0" Content="Familien Status" />
<Label Grid.Row="3" Grid.Column="0" Content="Notiz" />
<uc:PopUpEdit Cursor="Arrow" NewButtonVisibility="Visible"
PreviewMouseDoubleClick="Popupedit_environmentPersonSearch_OnPreviewMouseDoubleClick"
NewClick="popupedit_environmentPersonSearch_NewClick" IsReadOnly="True"
x:Name="popupedit_environmentFamilySearch" Grid.Column="1" Grid.ColumnSpan="2" Margin="3" Height="23"
Grid.Row="0" DeleteButtonVisibility="Collapsed"
PopUpClick="popupedit_environmentPersonSearch_PopUpClick"
Text="{val:ValidationBinding Path=EnvironmentPersons.NewVM.PersonString, UpdateSourceTrigger=PropertyChanged}" />
<ComboBox Grid.Column="1" Grid.Row="2" Grid.ColumnSpan="2" Margin="3" Height="23"
ItemsSource="{Binding Path=EnvironmentPersons.PossibleRoles}"
SelectedItem="{val:ValidationBinding Path=EnvironmentPersons.NewVM.Role}" />
<TextBox Grid.Column="1" Grid.Row="3" Margin="3" Height="50" AcceptsReturn="True" Grid.ColumnSpan="2"
VerticalScrollBarVisibility="Auto"
Text="{Binding Path=EnvironmentOrganisations.NewVM.Notice, UpdateSourceTrigger=PropertyChanged}" />
<Button Grid.Column="1" Grid.Row="5" x:Name="button_addEnvironmentFamily"
Click="button_addEnvironmentFamily_Click" Content="Hinzufügen" Height="25"
FontWeight="Normal" Margin="3" VerticalAlignment="Bottom" HorizontalAlignment="Right" />
<Button Grid.Row="5" Grid.Column="2" HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Height="25"
Margin="3" Content="Abbrechen" x:Name="button_cancelAddEnvironmentFamily" Click="button_cancelAddEnvironmentFamily_Click" />
</Grid>
</GroupBox>
</Border>
</controls:PopupNonTopmost>
</Grid>
</GroupBox>
<!-- ############################################################ -->
</Grid>
</Grid>
</ScrollViewer>

View File

@@ -130,10 +130,12 @@ namespace BeWo.View.Detail
tabitem_chatservice.Visibility = Visibility.Collapsed;
}
comboBox_Nationalitaet.ItemsSource = pCustomerVM.Nationalitaeten;
comboBox_Aufenthalt.ItemsSource = pCustomerVM.AufenthaltsStatuse;
// HACK: Force the devexpress grid to end editing when the mouse is over savebutton
// by setting the focus to another element.
MouseMove += (s, e) =>
// by setting the focus to another element.
MouseMove += (s, e) =>
{
if ((grid_AbsenceTimes == null || !grid_AbsenceTimes.IsVisible) &&
(grid_EmployeeRelation == null || !grid_EmployeeRelation.IsVisible) &&
@@ -668,11 +670,25 @@ namespace BeWo.View.Detail
}
}
private void button_addEnvironmentFamily_Click(object sender, RoutedEventArgs e)
{
if (ValidationTrigger.Validate(groupbox_newEnvironmentPerson))
{
popup_newEnvironmentFamily.IsOpen = false;
ViewModel.EnvironmentPersons.AddNewVMToList();
}
}
private void button_cancelAddEnvironmentPerson_Click(object sender, RoutedEventArgs e)
{
popup_newEnvironmentPerson.IsOpen = false;
}
private void button_cancelAddEnvironmentFamily_Click(object sender, RoutedEventArgs e)
{
popup_newEnvironmentFamily.IsOpen = false;
}
private void button_addEnvironmentOrganisation_Click(object sender, RoutedEventArgs e)
{
if (ValidationTrigger.Validate(groupbox_newEnvironmentOrganisation))
@@ -1343,6 +1359,11 @@ namespace BeWo.View.Detail
popup_newEnvironmentPerson.IsOpen = true;
}
private void button_openAddEnvironmentFamily_Click(object sender, RoutedEventArgs e)
{
popup_newEnvironmentFamily.IsOpen = true;
}
private void button_openAddEnvironmentOrganisation_Click(object sender, RoutedEventArgs e)
{
popup_newEnvironmentOrganisation.IsOpen = true;

View File

@@ -86,56 +86,36 @@
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Label Grid.Column="0" Grid.Row="0" Content="Titel" />
<Label Grid.Column="0" Grid.Row="1" Content="Vorname" />
<Label Grid.Column="0" Grid.Row="2" Content="Nachname" />
<Label Grid.Column="0" Grid.Row="3" Content="Geburtstag" />
<!--<Label Grid.Column="0" Grid.Row="4" Content="Geschlecht" />-->
<Label Grid.Column="0" Grid.Row="4" Content="Geschlecht" />
<Label Grid.Column="0" Grid.Row="5" Content="Funktion" />
<Label x:Name="lblArchiviert" Grid.Column="0" Grid.Row="6" Content="Archiviert" />
<Label Grid.Column="0" Grid.Row="7" VerticalAlignment="Top" Content="Notizen" />
<!--########### Mut zur Lücke ###########-->
<Grid Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="4">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="Blubb"/>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Label Grid.Column="0" Content="Geschlecht" VerticalAlignment="Center" />
<Grid Grid.Column="1" Height="23" Margin="0,3,0,3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="RB1" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<RadioButton Grid.Column="0" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsMale, UpdateSourceTrigger=PropertyChanged}" Content="männlich" />
<RadioButton Grid.Column="1" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsFemale, UpdateSourceTrigger=PropertyChanged}" Content="weiblich" />
</Grid>
<Label Grid.Column="0" Grid.Row="6" Content="Staatsangehörigkeit"/>
<Label Grid.Column="0" Grid.Row="7" Content="Migrationshintergrund" />
<Label x:Name="lblArchiviert" Grid.Column="0" Grid.Row="8" Content="Archiviert" />
<Label Grid.Column="0" Grid.Row="9" VerticalAlignment="Top" Content="Notizen" />
<Grid Grid.Column="1" Grid.Row="4" Height="23" Margin="0,3,0,3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" SharedSizeGroup="RB1" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<RadioButton Grid.Column="0" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsMale, UpdateSourceTrigger=PropertyChanged}" Content="männlich" />
<RadioButton Grid.Column="1" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left"
IsChecked="{Binding Path=IsFemale, UpdateSourceTrigger=PropertyChanged}" Content="weiblich" />
</Grid>
<Label Grid.Column="2" VerticalAlignment="Center" Content="Migrationshintergrund" Margin="3"/>
<CheckBox Grid.Column="3" VerticalAlignment="Center" Margin="3" x:Name="chkMigration"
IsChecked="{Binding Path=IsMigrant, UpdateSourceTrigger=PropertyChanged}"/>
</Grid>
<!--#####################################-->
<ComboBox x:Name="comboBox_Title" Grid.Column="1" Grid.Row="0" Margin="3" Height="23" SelectedValue="{Binding Path=Title, Mode=TwoWay}" />
<TextBox Grid.Column="1" Grid.Row="1" Margin="3" Height="23" Text="{Binding Path=FirstName, UpdateSourceTrigger=PropertyChanged}" />
@@ -143,18 +123,18 @@
<!--<uc:MaskedTextBox Grid.Column="1" Grid.Row="3" Mask="00/00/0000" Margin="3" Height="23" Text="{Binding Path=DateOfBirth, Converter={StaticResource DateConverter}, UpdateSourceTrigger=PropertyChanged}" Width="Auto" HorizontalAlignment="Left" />-->
<dxe:DateEdit MaskType="DateTimeAdvancingCaret" AllowNullInput="True" Grid.Column="1" Grid.Row="3" Height="23" Margin="3" EditValue="{Binding Path=DateOfBirth, UpdateSourceTrigger=PropertyChanged}" Width="100" HorizontalAlignment="Left" />
<!--<Grid Grid.Column="1" Grid.Row="4" Width="Auto" HorizontalAlignment="Left" Margin="3,2,3,4" Height="23">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<RadioButton Grid.Column="0" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left" IsChecked="{Binding Path=IsMale, UpdateSourceTrigger=PropertyChanged}" Content="männlich" />
<RadioButton Grid.Column="1" Margin="3" VerticalAlignment="Center" HorizontalAlignment="Left" IsChecked="{Binding Path=IsFemale, UpdateSourceTrigger=PropertyChanged}" Content="weiblich" />
</Grid>-->
<ComboBox x:Name="comboBox_Function" Grid.Column="1" Grid.Row="5" Margin="3" Height="23" SelectedValue="{Binding Path=Function, Mode=TwoWay}" />
<CheckBox x:Name="chkArchiviert" Grid.Column="1" Grid.Row="6" Margin="3,6,3,0" Height="23" IsChecked="{Binding Path=IsArchived, UpdateSourceTrigger=PropertyChanged}" VerticalAlignment="Stretch" />
<TextBox Grid.Row="7" Grid.RowSpan="3" Grid.Column="1" Margin="3" VerticalAlignment="Stretch" VerticalScrollBarVisibility="Auto" AcceptsReturn="True" Text="{Binding Path=Notice, UpdateSourceTrigger=PropertyChanged}" HorizontalScrollBarVisibility="Hidden" TextWrapping="Wrap" AutoWordSelection="True" />
</Grid>
<CheckBox x:Name="chkArchiviert" Grid.Column="1" Grid.Row="8" Margin="3,6,3,0" Height="23" IsChecked="{Binding Path=IsArchived, UpdateSourceTrigger=PropertyChanged}" VerticalAlignment="Stretch" />
<TextBox Grid.Row="9" Grid.RowSpan="3" Grid.Column="1" Margin="3" VerticalAlignment="Stretch" VerticalScrollBarVisibility="Auto" AcceptsReturn="True" Text="{Binding Path=Notice, UpdateSourceTrigger=PropertyChanged}" HorizontalScrollBarVisibility="Hidden" TextWrapping="Wrap" AutoWordSelection="True" />
<CheckBox Grid.Column="1" VerticalAlignment="Center" Margin="3" x:Name="chkMigration" Grid.Row="7"
IsChecked="{Binding Path=IsMigrant, UpdateSourceTrigger=PropertyChanged}"/>
<ComboBox x:Name="comboBox_Nationalitaet" Grid.Column="1" Grid.Row="6" Margin="3" Height="23" SelectedValue="{Binding Path=Nationalitaet, Mode=TwoWay}" />
</Grid>
</GroupBox>
<GroupBox Grid.Column="2" Grid.Row="0" Header="Adresse" Style="{DynamicResource ObjectEditGroupBox}">

View File

@@ -39,6 +39,7 @@ namespace BeWo.View.Detail
comboBox_Title.ItemsSource = pPersonVM.Titles;
comboBox_Function.ItemsSource = pPersonVM.Functions;
ComboBox_RoleInOrganisation.ItemsSource = pPersonVM.RoleInOrganisations;
comboBox_Nationalitaet.ItemsSource = pPersonVM.Nationalitaeten;
if (!BeWoApp.LoggedOnUser.HasRight(UserRightType.Person_AllowArchiving))
{

View File

@@ -1057,17 +1057,11 @@
<dxg:GridColumn FieldName="GoalString" AllowEditing="False" Header="Ziele" />
<dxg:GridColumn FieldName="EmployeeName" AllowEditing="False" Header="Angelegt für" />
<dxg:GridColumn FieldName="InsUser" AllowEditing="False" Header="Angelegt von" x:Name="InsertedByColumn" />
<dxg:GridColumn FieldName="InsertedOn" AllowEditing="False" Header="Angelegt am" x:Name="InsertedOnColumn" ></dxg:GridColumn>
<!--########################## gridcolumn with checkbox IsChecked="{Binding Path=EditValue}" ##########################################-->
<dxg:GridColumn FieldName="IsUnterschrift" Header="Unterschrift" AllowEditing="False" Width="70" Visible="False" x:Name="UnterschriftenHeader" >
<dxg:GridColumn.CellTemplate>
<DataTemplate>
<CheckBox HorizontalAlignment="Center" VerticalAlignment="Center" />
</DataTemplate>
</dxg:GridColumn.CellTemplate>
</dxg:GridColumn>
<dxg:GridColumn FieldName="InsertedOn" AllowEditing="False" Header="Angelegt am" x:Name="InsertedOnColumn" />
<!--########################## gridcolumn with checkbox ##########################################-->
<dxg:GridColumn Header="Unterschrift" FieldName="IsUnterschrift" AllowEditing="False" Width="70" Visible="False" x:Name="UnterschriftenHeader" IsEnabled="False" />
<!--##############################################################################################-->

View File

@@ -252,7 +252,7 @@ namespace BeWo.View.Detail
var Settings = BeWoApp.AppSettings;
if (BeWoApp.AppSettings.ShowSignatures)
if (!BeWoApp.AppSettings.ShowSignatures)
{
UnterschriftenHeader.Visible = true;
}

View File

@@ -411,8 +411,7 @@ namespace BeWo.View
break;
}
}
}
}

View File

@@ -99,8 +99,9 @@ namespace BeWo.ViewModel
public static string PropertyName_Wohnheimbuchungen = "Wohnheimbuchungen";
public static string PropertyName_Pflegegrad = "Pflegegrad";
public static string PropertyName_CustomerImage = "CustomerImage";
#endregion
public static string PropertyName_Nationalitaet = "Nationalitaet";
public static string PropertyName_AufenthaltsStatus = "AufenthaltsStatus";
#endregion
private readonly ObservableSortCollection<ValueListEntryDC> _PossibleCustomerCareTypes;
private readonly ObservableSortCollection<ValueListEntryDC> _PossibleDisabilities;
@@ -178,9 +179,15 @@ namespace BeWo.ViewModel
private string _CustomerAlias;
private Pflegegrad? _Pflegegrad;
private byte[] _CustomerImage;
public CustomerVM(CustomerDC pDataContract, IEnumerable<ValueListEntryDC> pValueList, List<AssessmentSheetCategoryDC> pPossibleASCs,
private ValueListEntryDC _Nationalitaet;
private ObservableSortCollection<ValueListEntryDC> _Nationalitaeten;
private ValueListEntryDC _AufenthaltsStatus;
private ObservableSortCollection<ValueListEntryDC> _AufenthaltsStatuse;
public CustomerVM(CustomerDC pDataContract, IEnumerable<ValueListEntryDC> pValueList, List<AssessmentSheetCategoryDC> pPossibleASCs,
List<AssessmentSheetValueDC> pPossibleASVs, List<MedArtDC> pPossibleMedArten)
: base(pDataContract, pDataContract.CustomerOid == null)
{
@@ -188,6 +195,8 @@ namespace BeWo.ViewModel
var possibleCustomerCareTypes = pValueList.Where(vle => vle.Type == ValueListEntryType.CustomerCareType);
var possibleTerminationReasons = pValueList.Where(vle => vle.Type == ValueListEntryType.TerminationReasonType);
var possiblePlacementObjectives = pValueList.Where(vle => vle.Type == ValueListEntryType.PlacementObjectiveType);
var possibleNationalitaeten = pValueList.Where(vle => vle.Type == ValueListEntryType.Nationality);
var possibleAufenthaltsStatuse = pValueList.Where(vle => vle.Type == ValueListEntryType.Aufenthaltsstatus);
_PossibleDisabilities = pDataContract.Disabilities != null
? new ObservableSortCollection<ValueListEntryDC>(possibleDisabilities.Except(pDataContract.Disabilities), Comparer.ValueListEntryDCComparer)
@@ -196,8 +205,10 @@ namespace BeWo.ViewModel
_PossibleCustomerCareTypes = new ObservableSortCollection<ValueListEntryDC>(possibleCustomerCareTypes, Comparer.ValueListEntryDCComparer);
_TerminationReasons = new ObservableSortCollection<ValueListEntryDC>(possibleTerminationReasons, Comparer.ValueListEntryDCComparer);
_PlacementObjectives = new ObservableSortCollection<ValueListEntryDC>(possiblePlacementObjectives, Comparer.ValueListEntryDCComparer);
_Nationalitaeten = new ObservableSortCollection<ValueListEntryDC>(possibleNationalitaeten,Comparer.ValueListEntryDCComparer);
_AufenthaltsStatuse = new ObservableSortCollection<ValueListEntryDC>(possibleAufenthaltsStatuse, Comparer.ValueListEntryDCComparer);
_MedArten = new BindingList<MedArtDC>(pPossibleMedArten);
_MedArten = new BindingList<MedArtDC>(pPossibleMedArten);
pPossibleASCs.Sort((x, y) => x.Position.CompareTo(y.Position));
_AssessmentSheetCategories = new BindingList<AssessmentSheetCategoryDC>(pPossibleASCs);
@@ -1272,7 +1283,66 @@ namespace BeWo.ViewModel
}
}
public ValueListEntryDC Nationalitaet
{
get { return this._Nationalitaet; }
set
{
if (this.AreDifferent(this._Nationalitaet, value))
{
this._Nationalitaet = value;
this.StoreDirtyInformation(this.AreDifferent(DataContract.Nationalitaet, value), PropertyName_Nationalitaet);
this.FirePropertyChanged(PropertyName_Nationalitaet);
}
}
}
public ValueListEntryDC AufenthaltsStatus
{
get { return this._AufenthaltsStatus; }
set
{
if (this.AreDifferent(this._AufenthaltsStatus, value))
{
this._AufenthaltsStatus = value;
this.StoreDirtyInformation(this.AreDifferent(DataContract.AufenthaltsStatus, value), PropertyName_AufenthaltsStatus);
this.FirePropertyChanged(PropertyName_AufenthaltsStatus);
}
}
}
public ObservableSortCollection<ValueListEntryDC> Nationalitaeten
{
get
{
if (_Nationalitaeten == null)
{
this._Nationalitaeten = new ObservableSortCollection<ValueListEntryDC>();
}
return this._Nationalitaeten;
}
}
public ObservableSortCollection<ValueListEntryDC> AufenthaltsStatuse
{
get
{
if (_AufenthaltsStatuse == null)
{
this._AufenthaltsStatuse = new ObservableSortCollection<ValueListEntryDC>();
}
return this._AufenthaltsStatuse;
}
}
public ObservableCollection<Behinderungsart> BehinderungsartenListe
@@ -1424,8 +1494,11 @@ namespace BeWo.ViewModel
_Vormund = pDataContract.Vormund;
_CustomerAlias = pDataContract.CustomerAlias;
_Pflegegrad = pDataContract.Pflegegrad;
_Nationalitaet = pDataContract.Nationalitaet;
_AufenthaltsStatus = pDataContract.AufenthaltsStatus;
if (pDataContract.Images != null && pDataContract.Images.Count > 0)
if (pDataContract.Images != null && pDataContract.Images.Count > 0)
{
_CustomerImage = pDataContract.Images[0];
}
@@ -1566,7 +1639,11 @@ namespace BeWo.ViewModel
pDataContract.AusweisUnbefristetGueltig = _AusweisUnbefristetGueltig;
pDataContract.BeiblattGueltigBis = _BeiblattGueltigBis;
pDataContract.GradDerBehinderung = _GradDerBehinderung;
if (_MerkzeichenListe != null)
pDataContract.Nationalitaet = _Nationalitaet;
pDataContract.AufenthaltsStatus = _AufenthaltsStatus;
if (_MerkzeichenListe != null)
{
pDataContract.MerkzeichenListe = _MerkzeichenListe.ToList();
}

View File

@@ -68,6 +68,8 @@ namespace BeWo.ViewModel
public static string PropertyName_IsMigrant = "IsMigrant";
public static string PropertyName_Nationalitaet = "Nationalitaet";
private DateTime? _DateOfBirth;
private string _FirstName;
@@ -124,7 +126,11 @@ namespace BeWo.ViewModel
private bool _IsMigrant;
public PersonVM(PersonDC pDataContract, List<ValueListEntryDC> pPossibleTitles, List<ValueListEntryDC> pPossibleFunctions, List<ValueListEntryDC> pPossibleRoleInOrganisation)
private ValueListEntryDC _Nationalitaet;
private ObservableSortCollection<ValueListEntryDC> _Nationalitaeten;
public PersonVM(PersonDC pDataContract, List<ValueListEntryDC> pPossibleTitles, List<ValueListEntryDC> pPossibleFunctions, List<ValueListEntryDC> pPossibleRoleInOrganisation, List<ValueListEntryDC> pPossibleNationalitaeten)
: base(pDataContract, pDataContract.PersonOid == null)
{
this._Titles = new ObservableSortCollection<ValueListEntryDC>(pPossibleTitles, Comparer.ValueListEntryDCComparer);
@@ -132,6 +138,8 @@ namespace BeWo.ViewModel
this._Functions = new ObservableSortCollection<ValueListEntryDC>(pPossibleFunctions, Comparer.ValueListEntryDCComparer);
_RoleInOrganisations = new ObservableSortCollection<ValueListEntryDC>(pPossibleRoleInOrganisation, Comparer.ValueListEntryDCComparer);
_Nationalitaeten = new ObservableSortCollection<ValueListEntryDC>(pPossibleNationalitaeten, Comparer.ValueListEntryDCComparer);
}
public DateTime? DateOfBirth
@@ -609,6 +617,36 @@ namespace BeWo.ViewModel
}
}
public ValueListEntryDC Nationalitaet
{
get { return this._Nationalitaet; }
set
{
if (this.AreDifferent(this._Nationalitaet, value))
{
this._Nationalitaet = value;
this.StoreDirtyInformation(this.AreDifferent(DataContract.Nationalitaet, value), PropertyName_Nationalitaet);
this.FirePropertyChanged(PropertyName_Nationalitaet);
}
}
}
public ObservableSortCollection<ValueListEntryDC> Nationalitaeten
{
get
{
if (_Nationalitaeten == null)
{
this._Nationalitaeten = new ObservableSortCollection<ValueListEntryDC>();
}
return this._Nationalitaeten;
}
}
protected override void InitByDataContract(PersonDC pDataContract)
{
this._VarFields = new VarFieldListVM(pDataContract.VarFields);
@@ -633,6 +671,7 @@ namespace BeWo.ViewModel
this._Title = pDataContract.Title;
this._Function = pDataContract.Function;
_IsMigrant = pDataContract.IsMigrant;
_Nationalitaet = pDataContract.Nationalitaet;
foreach (ContactDC iContactDC in pDataContract.ContactInformations)
@@ -723,6 +762,7 @@ namespace BeWo.ViewModel
pDataContract.Function = this._Function;
pDataContract.Type = PersonType.Others;
pDataContract.IsMigrant = _IsMigrant;
pDataContract.Nationalitaet = _Nationalitaet;
return pDataContract;
}

View File

@@ -434,12 +434,17 @@ namespace BeWo.ViewModel
var date = _Date;
var time = _StartTime;
if (date != null && time != null)
{
date = date.Value.AddHours(time.Value.Hour);
date = date.Value.AddMinutes(time.Value.Minute);
date = date.Value.AddSeconds(time.Value.Second);
}
// beim addend er zeit / dadurch das dateTime und Startime gleich sind werden diese zusammen gerechnet und das löst den fehler aus.
//also inprinzip nur date zurück geben und kuken was danach passiert
// dadurch das eine neuentwicklung stattgefunden hat, scheint dieser bereich nicht mehr nötig zu sein
//if (date != null && time != null)
//{
// date = date.Value.AddHours(time.Value.Hour);
// date = date.Value.AddMinutes(time.Value.Minute);
// date = date.Value.AddSeconds(time.Value.Second);
//}
return date;
}
@@ -983,7 +988,7 @@ namespace BeWo.ViewModel
return false;
}
}
set { _isUnterschrift = value; }
//set { _isUnterschrift = value; }
}
public int? GroupPersonCount
@@ -2126,7 +2131,11 @@ namespace BeWo.ViewModel
AreDifferent(DataContract.End, (_Date.Value + _StartTime.Value.TimeOfDay).AddMinutes(duration)) ||
AreDifferent(DataContract.Start,_Date.Value + _StartTime.Value.TimeOfDay), "TIME");
EndTime = StartTime.Value.AddMinutes(duration);
if (StartTime != null)
{
EndTime = StartTime.Value.AddMinutes(duration);
}
FirePropertyChanged(PropertyName_EndTime);
}

View File

@@ -380,7 +380,9 @@ namespace BeWo.ViewModel
r2 => Cache.GetInstance().GetAllValueListEntrysByTypeAsync(
ValueListEntryType.FunctionType,
r4 => Cache.GetInstance().GetAllValueListEntrysByTypeAsync(
ValueListEntryType.RoleInOrganisationType,
ValueListEntryType.RoleInOrganisationType,
r5 => Cache.GetInstance().GetAllValueListEntrysByTypeAsync(
ValueListEntryType.Nationality,
r3 => pCallBack(
new PersonVM(
new PersonDC
@@ -389,7 +391,8 @@ namespace BeWo.ViewModel
},
r1,
r4,
r3))))));
r5,
r3)))))));
}
public static void CreatePersonVMAsync(long pOid, Action<PersonVM> pCallBack)
@@ -400,7 +403,7 @@ namespace BeWo.ViewModel
Cache.GetInstance().GetAllValueListEntrysByTypeAsync(
ValueListEntryType.TitleType,
r1 => Cache.GetInstance().GetAllValueListEntrysByTypeAsync(ValueListEntryType.FunctionType,
r3 => Cache.GetInstance().GetAllValueListEntrysByTypeAsync(ValueListEntryType.RoleInOrganisationType, r2 => pCallBack(new PersonVM(cb, r1, r3, r2))))));
r3 => Cache.GetInstance().GetAllValueListEntrysByTypeAsync(ValueListEntryType.RoleInOrganisationType, r4 => Cache.GetInstance().GetAllValueListEntrysByTypeAsync(ValueListEntryType.Nationality, r2 => pCallBack(new PersonVM(cb, r1, r3, r4,r2)))))));
}
public static void CreateResourceListVMAsync(Action<ResourceListVM> pCallBack)
@@ -666,7 +669,9 @@ namespace BeWo.ViewModel
ValueListEntryType.DisabilityType,
ValueListEntryType.CustomerCareType,
ValueListEntryType.PlacementObjectiveType,
ValueListEntryType.TerminationReasonType
ValueListEntryType.TerminationReasonType,
ValueListEntryType.Nationality,
ValueListEntryType.Aufenthaltsstatus
};
ServiceFacade.DoValueListServiceAsync(

View File

@@ -3,6 +3,7 @@ using System.Collections.Generic;
using BS.Shared;
using BS.Shared.Core;
using BS.Shared.DataContracts;
namespace BeWo.Data.Entities
{
@@ -48,10 +49,12 @@ namespace BeWo.Data.Entities
public static string PropertyName_BehinderungsartenListe = "BehinderungsartenListe";
public static string PropertyName_CustomerAlias = "CustomerAlias";
public static string PropertyName_Pflegegrad = "Pflegegrad";
public static string Propertyname_IsMigrant = "IsMigrant";
public static string PropertyName_IsMigrant = "IsMigrant";
public static string PropertyName_Nationalitaet = "Nationalitaet";
public static string PropertyName_AufenthaltsStatus = "AufenthaltsStatus";
private Auszahlungsintervall _Auszahlungsintervall;
private Auszahlungsintervall _Auszahlungsintervall;
private IList<AbsenceTime> _AbsenceTimes;
private Person _Ansprechpartner;
private IList<AssessmentSheetCategory> _AssessmentSheetCategoryList;
@@ -94,10 +97,13 @@ namespace BeWo.Data.Entities
private string _CustomerAlias;
private Pflegegrad? _Pflegegrad;
private bool _IsMigrant;
private ValueListEntry _Nationalitaet;
private ValueListEntry _AufenthaltsStatus;
public Customer()
public Customer()
{
_Tid = TableID.Customer;
}
@@ -660,6 +666,41 @@ namespace BeWo.Data.Entities
}
}
}
}
public virtual ValueListEntry Nationalitaet
{
get
{
return this._Nationalitaet;
}
set
{
if (this.AreDifferent(this._Nationalitaet, value))
{
this._Nationalitaet = value;
}
}
}
public virtual ValueListEntry AufenthaltsStatus
{
get
{
return this._AufenthaltsStatus;
}
set
{
if (this.AreDifferent(this._AufenthaltsStatus, value))
{
this._AufenthaltsStatus = value;
}
}
}
}
}

View File

@@ -43,6 +43,9 @@ namespace BeWo.Data.Entities
public static string PropertyName_IsMigrant = "IsMigrant";
public static string PropertyName_Nationalitaet = "Nationalitaet";
private string _Abbreviation;
private Address _Address;
@@ -77,6 +80,8 @@ namespace BeWo.Data.Entities
private bool _IsMigrant;
private ValueListEntry _Nationalitaet;
public Person()
{
this._Tid = TableID.Person;
@@ -368,6 +373,22 @@ namespace BeWo.Data.Entities
}
}
public virtual ValueListEntry Nationalitaet
{
get
{
return this._Nationalitaet;
}
set
{
if (this.AreDifferent(this._Nationalitaet, value))
{
this._Nationalitaet = value;
}
}
}
public virtual IList<Image> Images { get; set; }
}
}

View File

@@ -31,6 +31,8 @@
<many-to-one name="TerminationReason" column="TerminationValueListEntryOid" class="BeWo.Data.Entities.ValueListEntry,BeWo.Data" cascade="none" />
<many-to-one name="Person" column="PersonOid" class="BeWo.Data.Entities.Person,BeWo.Data" cascade="all-delete-orphan" fetch="join"/>
<many-to-one name="Nationalitaet" column="NationalitaetValueListEntryOid" class="BeWo.Data.Entities.ValueListEntry,BeWo.Data" cascade="none" fetch="join"/>
<many-to-one name="AufenthaltsStatus" column="AufenthaltsStatusValueListEntryOid" class="BeWo.Data.Entities.ValueListEntry,BeWo.Data" cascade="none" fetch="join"/>
<property column="CustomerAlias" type="String" name="CustomerAlias" length="256" />

View File

@@ -23,6 +23,7 @@
<property column="IsActive" type="BS.Shared.ActivationTypeId, BS.Shared" name="IsActive" />
<property column="SystemEntryID" type="BS.Shared.SystemEntryID, BS.Shared" name="SystemEntryID" />
<many-to-one name="Title" column="TitleValueListEntryOid" class="BeWo.Data.Entities.ValueListEntry,BeWo.Data" cascade="none" fetch="join"/>
<many-to-one name="Nationalitaet" column="NationalitaetValueListEntryOid" class="BeWo.Data.Entities.ValueListEntry,BeWo.Data" cascade="none" fetch="join"/>
<many-to-one name="Function" column="FunctionValueListEntryOid" class="BeWo.Data.Entities.ValueListEntry,BeWo.Data" cascade="none" fetch="join"/>
<many-to-one name="Address" column="AddressOid" class="BeWo.Data.Entities.Address, BeWo.Data" cascade="all" fetch="join"/>
<many-to-one name="InvoiceAddress" column="InvoiceAddressOid" class="BeWo.Data.Entities.Address, BeWo.Data" cascade="all" fetch="join"/>

View File

@@ -0,0 +1,13 @@
ALTER TABLE `1234567890`.`customer`
ADD COLUMN `NationalitaetValueListEntryOid`
BIGINT(19) NULL DEFAULT NULL COMMENT '' AFTER `IsMigrant`;
ALTER TABLE `1234567890`.`person`
ADD COLUMN `NationalitaetValueListEntryOid`
BIGINT(19) NULL DEFAULT NULL COMMENT '' AFTER `IsMigrant`;
ALTER TABLE `1234567890`.`customer`
ADD COLUMN `AufenthaltsStatusValueListEntryOid`
BIGINT(19) NULL DEFAULT NULL COMMENT '' AFTER `NationalitaetValueListEntryOid`;

View File

@@ -50,18 +50,29 @@ namespace BeWo.Service.DCEntityMapper
pDataContract.Medication = pEntity.Medication;
pDataContract.Environment = pEntity.Environment;
pDataContract.IsAdvisedOrAttended = pEntity.IsAdvisedOrAttended;
if (pEntity.Nationalitaet != null)
{
pDataContract.Nationalitaet = MapperFactory.ValueListEntryDC_ValueListEntry.MapToNewDC(pEntity.Nationalitaet);
}
//if(pEntity.FamilyData != null)
//{
// pDataContract.Kindesmutter = pEntity.FamilyData.Kindesmutter;
// pDataContract.Kindesvater = pEntity.FamilyData.Kindesvater;
// pDataContract.Geschwister = pEntity.FamilyData.Geschwister;
// pDataContract.Vormund = pEntity.FamilyData.Vormund;
// pDataContract.FamilyDataOid = pEntity.FamilyData.Oid;
// pDataContract.FamilyDataVersion = pEntity.FamilyData.Version;
//}
if (pEntity.AufenthaltsStatus != null)
{
pDataContract.AufenthaltsStatus = MapperFactory.ValueListEntryDC_ValueListEntry.MapToNewDC(pEntity.AufenthaltsStatus);
}
pDataContract.AusstVersAmt = pEntity.AusstVersAmt;
//if(pEntity.FamilyData != null)
//{
// pDataContract.Kindesmutter = pEntity.FamilyData.Kindesmutter;
// pDataContract.Kindesvater = pEntity.FamilyData.Kindesvater;
// pDataContract.Geschwister = pEntity.FamilyData.Geschwister;
// pDataContract.Vormund = pEntity.FamilyData.Vormund;
// pDataContract.FamilyDataOid = pEntity.FamilyData.Oid;
// pDataContract.FamilyDataVersion = pEntity.FamilyData.Version;
//}
pDataContract.AusstVersAmt = pEntity.AusstVersAmt;
pDataContract.AusweisGueltigVon = pEntity.AusweisGueltigVon;
pDataContract.AusweisGueltigBis = pEntity.AusweisGueltigBis;
pDataContract.AusweisUnbefristetGueltig = pEntity.AusweisUnbefristetGueltig;
@@ -152,26 +163,47 @@ namespace BeWo.Service.DCEntityMapper
pEntity.AssistanceBegin = pDataContract.AssistanceBegin;
pEntity.TerminationDate = pDataContract.TerminationDate;
pEntity.CustomerAlias = pDataContract.CustomerAlias;
//if(ContainsFamilyDataData(pDataContract))
//{
// ConcurrencyCheck(pDataContract.FamilyDataVersion, pEntity.FamilyData);
// pEntity.FamilyData.Oid = pDataContract.FamilyDataOid;
// pEntity.FamilyData.Kindesmutter = pDataContract.Kindesmutter;
// pEntity.FamilyData.Kindesvater = pDataContract.Kindesvater;
// pEntity.FamilyData.Geschwister = pDataContract.Geschwister;
// pEntity.FamilyData.Vormund = pDataContract.Vormund;
//}
//else if (pEntity.FamilyData != null)
//{
// // all-delete-orphan wird von NHibernate (noch) nicht unterstützt für many-to-one
// FamilyData lFamilyData = pEntity.FamilyData;
// pEntity.FamilyData = null;
// DAOFactory.GenericDAO.Delete(lFamilyData);
//}
pEntity.AusstVersAmt = pDataContract.AusstVersAmt;
if (pDataContract.Nationalitaet == null)
{
pEntity.Nationalitaet = null;
}
else if (pEntity.Nationalitaet == null || pEntity.Nationalitaet.Oid != pDataContract.Nationalitaet.ValueListEntryOid)
{
pEntity.Nationalitaet = DAOFactory.GenericDAO.LoadByID<ValueListEntry>(pDataContract.Nationalitaet.ValueListEntryOid.Value);
}
if (pDataContract.AufenthaltsStatus == null)
{
pEntity.AufenthaltsStatus = null;
}
else if (pEntity.AufenthaltsStatus == null || pEntity.AufenthaltsStatus.Oid != pDataContract.AufenthaltsStatus.ValueListEntryOid)
{
pEntity.AufenthaltsStatus = DAOFactory.GenericDAO.LoadByID<ValueListEntry>(pDataContract.AufenthaltsStatus.ValueListEntryOid.Value);
}
//if(ContainsFamilyDataData(pDataContract))
//{
// ConcurrencyCheck(pDataContract.FamilyDataVersion, pEntity.FamilyData);
// pEntity.FamilyData.Oid = pDataContract.FamilyDataOid;
// pEntity.FamilyData.Kindesmutter = pDataContract.Kindesmutter;
// pEntity.FamilyData.Kindesvater = pDataContract.Kindesvater;
// pEntity.FamilyData.Geschwister = pDataContract.Geschwister;
// pEntity.FamilyData.Vormund = pDataContract.Vormund;
//}
//else if (pEntity.FamilyData != null)
//{
// // all-delete-orphan wird von NHibernate (noch) nicht unterstützt für many-to-one
// FamilyData lFamilyData = pEntity.FamilyData;
// pEntity.FamilyData = null;
// DAOFactory.GenericDAO.Delete(lFamilyData);
//}
pEntity.AusstVersAmt = pDataContract.AusstVersAmt;
pEntity.AusweisGueltigVon = pDataContract.AusweisGueltigVon;
pEntity.AusweisGueltigBis = pDataContract.AusweisGueltigBis;
pEntity.AusweisUnbefristetGueltig = pDataContract.AusweisUnbefristetGueltig;

View File

@@ -37,7 +37,12 @@ namespace BeWo.Service.DCEntityMapper
{
pDataContract.Function = MapperFactory.ValueListEntryDC_ValueListEntry.MapToNewDC(pEntity.Function);
}
if (pEntity.Nationalitaet != null)
{
pDataContract.Nationalitaet = MapperFactory.ValueListEntryDC_ValueListEntry.MapToNewDC(pEntity.Nationalitaet);
}
if (pEntity.Address != null)
{
pDataContract.AddressOid = pEntity.Address.Oid;
@@ -119,6 +124,15 @@ namespace BeWo.Service.DCEntityMapper
pEntity.Function = DAOFactory.GenericDAO.LoadByID<ValueListEntry>(pDataContract.Function.ValueListEntryOid.Value);
}
if (pDataContract.Nationalitaet == null)
{
pEntity.Nationalitaet = null;
}
else if (pEntity.Nationalitaet == null || pEntity.Nationalitaet.Oid != pDataContract.Nationalitaet.ValueListEntryOid)
{
pEntity.Nationalitaet = DAOFactory.GenericDAO.LoadByID<ValueListEntry>(pDataContract.Nationalitaet.ValueListEntryOid.Value);
}
if (pDataContract.ContainsAddressData())
{
if (pEntity.Address == null)

View File

@@ -2392,6 +2392,7 @@ namespace BeWo.Service.ServiceImplementations
dc.InsUser = sr.InsUser;
dc.DurationInStunden = sr.DurationInStunden;
dc.SignatureOid = sr.SignatureOid;
dc.GroupEmployeeCount = sr.GroupEmployeeCount;
dc.GroupPersonCount = sr.GroupPersonCount;
@@ -2452,6 +2453,7 @@ namespace BeWo.Service.ServiceImplementations
dc.InsertedOn = sr.InsTs;
dc.InsUser = sr.InsUser;
dc.DurationInStunden = sr.DurationInStunden;
dc.SignatureOid = sr.SignatureOid;
//Customer -----------------
dc.Customer = new CompactCustomerDC();

View File

@@ -164,5 +164,13 @@ namespace BS.Shared.DataContracts
[DataMember]
public bool IsMigrant { get; set; }
[DataMember]
public ValueListEntryDC Nationalitaet { get; set; }
[DataMember]
public ValueListEntryDC AufenthaltsStatus { get; set; }
}
}

View File

@@ -141,6 +141,9 @@ namespace BS.Shared.DataContracts
[DataMember]
public bool IsMigrant { get; set; }
[DataMember]
public ValueListEntryDC Nationalitaet { get; set; }
public bool ContainsAddressData()
{
return !Utils.AreAllNullOrEmpty(this.AddressLine1, this.Street, this.PostalCode, this.Town);