Änderungen/Erweiterungen bei der Straffälligenhilfe/Vermittlung gemeinnütziger Arbeit

This commit is contained in:
Christian
2025-08-06 23:52:17 +02:00
parent af7b1b5e2f
commit 34d4b52091
29 changed files with 453 additions and 104 deletions

View File

@@ -1,6 +1,7 @@
<UserControl
x:Class="BeWo.View.Controls.CustomerVermittlungArbeitControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:core="clr-namespace:BS.Shared.Core;assembly=BS.Shared"
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"
@@ -80,22 +81,30 @@
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Label
Grid.Row="0"
Grid.Column="0"
Content="Art" />
<dxe:ComboBoxEdit Grid.Row="0" Grid.Column="1" Margin="3" ItemsSource="{x:Static core:EnumTranslations.VgaType2Translation}"
EditValue="{Binding Path=VgaType, UpdateSourceTrigger=PropertyChanged}"
DisplayMember="Value" ValueMember="Key" IsTextEditable="False" />
<Label
Grid.Row="1"
Grid.Column="0"
Content="AZ der Staatsanwaltschaft/des Gerichts" />
<TextBox
Grid.Row="0"
Grid.Row="1"
Grid.Column="1"
IsReadOnly="{Binding PermissionCustomerGemeinnutzigeArbeitManage, Mode=OneTime, Converter={StaticResource BoolReverseConverter}, ElementName=root}"
Text="{Binding Path=AktenzeichenGericht, UpdateSourceTrigger=PropertyChanged}" />
<Label
Grid.Row="1"
Grid.Row="2"
Grid.Column="0"
Content="Eigenes Aktenzeichen" />
<TextBox
Grid.Row="1"
Grid.Row="2"
Grid.Column="1"
IsReadOnly="{Binding PermissionCustomerGemeinnutzigeArbeitManage, Mode=OneTime, Converter={StaticResource BoolReverseConverter}, ElementName=root}"
Text="{Binding Path=EigenesAktenzeichen, UpdateSourceTrigger=PropertyChanged}" />
@@ -227,22 +236,26 @@
Grid.Row="12"
Grid.Column="0"
Content="Auftragsrückgabe" />
<TextBox
<dxe:DateEdit
Grid.Row="12"
Grid.Column="1"
EditValue="{Binding Path=Auftragsrueckgabe, UpdateSourceTrigger=PropertyChanged}"
IsReadOnly="{Binding PermissionCustomerGemeinnutzigeArbeitManage, Mode=OneTime, Converter={StaticResource BoolReverseConverter}, ElementName=root}"
Text="{Binding Path=Auftragsruckgabe, UpdateSourceTrigger=PropertyChanged}" />
ShowClearButton="False" />
<Label
Grid.Row="13"
Grid.Column="0"
Content="Verlauf" />
<TextBox
<uc:NullItemComboBox
x:Name="comboBox_Verlauf"
Grid.Row="13"
Grid.Column="1"
IsReadOnly="{Binding PermissionCustomerGemeinnutzigeArbeitManage, Mode=OneTime, Converter={StaticResource BoolReverseConverter}, ElementName=root}"
Text="{Binding Path=Verlauf, UpdateSourceTrigger=PropertyChanged}" />
DisplayMemberPath="TypeDescription"
IsEnabled="{Binding PermissionCustomerGemeinnutzigeArbeitManage, Mode=OneTime, ElementName=root}"
ItemsSource="{Binding Path=DataContext.Verlauf, RelativeSource={RelativeSource AncestorType={x:Type GroupBox}, AncestorLevel=2, Mode=FindAncestor}}"
SelectedValue="{Binding Path=Verlauf, Mode=TwoWay}"
Style="{StaticResource PrimaryNullItemComboBox}" />
<Label
Grid.Row="14"
Grid.Column="0"

View File

@@ -3,10 +3,14 @@
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:controls1="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:local="clr-namespace:BeWo.View.Detail"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:viewmodel="clr-namespace:BeWo.ViewModel"
xmlns:detail="clr-namespace:BeWo.View.Detail"
x:Name="root"
d:DataContext="{d:DesignInstance Type=viewmodel:CustomerVM}"
d:DesignHeight="450"
@@ -32,7 +36,39 @@
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<StackPanel HorizontalAlignment="Stretch" Orientation="Horizontal">
<Button Command="{Binding AddVMCommand}" Content="Neuen Fall hinzufügen" />
<Button Content="Neuen Fall hinzufügen" Tag="{Binding}" Click="ButtonOpenAddNewVgaClick"/>
<controls:PopupNonTopmost x:Name="popup_newVga">
<Border Background="White" Padding="3" BorderThickness="1" BorderBrush="Gray">
<GroupBox x:Name="groupbox_newVga" Header="Neue Fall hinzufügen" Style="{DynamicResource ObjectEditGroupBox}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Label Grid.Column="0" Grid.Row="0" Content="Art" VerticalAlignment="Center" />
<dxe:ComboBoxEdit ItemsSource="{x:Static core:EnumTranslations.VgaType2Translation}" Grid.Row="0" Grid.Column="1" Margin="3"
EditValue="{Binding Path=NewVM.VgaType, UpdateSourceTrigger=PropertyChanged}"
DisplayMember="Value" ValueMember="Key" IsTextEditable="False" />
<StackPanel Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="2" Orientation="Horizontal" HorizontalAlignment="Right">
<Button Click="ButtonAddVgaClick" 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="ButtonCancelAddVgaClick" />
</StackPanel>
</Grid>
</GroupBox>
</Border>
</controls:PopupNonTopmost>
</StackPanel>
<TabControl
x:Name="tabcontrol_NotizenKategorien"
@@ -51,7 +87,7 @@
Command="{Binding Path=DataContext.DeleteSelectedVMCommand, RelativeSource={RelativeSource AncestorType=TabControl}}"
Style="{DynamicResource CloseButtonStyle}"
Tag="{Binding}"
ToolTip="Wohnhilfe entfernen">
ToolTip="Fall entfernen">
<Button.Visibility>
<MultiBinding Converter="{StaticResource BoolVisibilityMultiConverter}">
<Binding Path="IsSelected" RelativeSource="{RelativeSource AncestorType={x:Type TabItem}}" />

View File

@@ -26,5 +26,28 @@ namespace BeWo.View.Detail
{
InitializeComponent();
}
private void ButtonOpenAddNewVgaClick(object sender, RoutedEventArgs e)
{
popup_newVga.IsOpen = true;
}
private void ButtonAddVgaClick(object sender, RoutedEventArgs e)
{
var vm = this.DataContext as BeWo.ViewModel.CustomerVM;
if (vm != null)
{
vm.CustomerVermittlungArbeitListVM.AddVMCommand.Execute(null);
}
popup_newVga.IsOpen = false;
}
private void ButtonCancelAddVgaClick(object sender, RoutedEventArgs e)
{
popup_newVga.IsOpen = false;
}
}
}

View File

@@ -921,17 +921,33 @@
Grid.Row="3"
Grid.Column="0"
Content="Geburtstag" />
<dxe:DateEdit
Grid.Row="3"
Grid.Column="1"
Height="23"
MinWidth="90"
Margin="3"
HorizontalAlignment="Left"
AllowNullInput="True"
EditValue="{Binding Path=DateOfBirth, UpdateSourceTrigger=PropertyChanged}"
MaskType="DateTimeAdvancingCaret" />
<Grid Grid.Row="3" Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<dxe:DateEdit
Grid.Column="0"
Height="23"
MinWidth="90"
Margin="3"
HorizontalAlignment="Left"
AllowNullInput="True"
EditValue="{Binding Path=DateOfBirth, UpdateSourceTrigger=PropertyChanged}"
MaskType="DateTimeAdvancingCaret" />
<Label
Grid.Column="1"
Content="Geburtsort" />
<TextBox
Grid.Column="2"
Height="23"
Margin="3"
Text="{val:ValidationBinding Path=PlaceOfBirth,
UpdateSourceTrigger=PropertyChanged}"
HorizontalAlignment="Stretch"/>
</Grid>
<Label
Grid.Row="0"
Grid.Column="2"

View File

@@ -31,6 +31,7 @@ namespace BeWo.ViewModel
public static string PropertyName_CostBearers = "CostBearers";
public static string PropertyName_CustomerCareTypes = "CustomerCareTypes";
public static string PropertyName_DateOfBirth = "DateOfBirth";
public static string PropertyName_PlaceOfBirth = "PlaceOfBirth";
public static string PropertyName_AufenthaltGueltigBis = "AufenthaltGueltigBis";
public static string PropertyName_DebitorNumber = "DebitorNumber";
public static string PropertyName_CostCenter = "CostCenter";
@@ -145,7 +146,8 @@ namespace BeWo.ViewModel
private string _CostCenter;
private ObservableSortCollection<ValueListEntryDC> _CustomerCareTypes;
private DateTime? _DateOfBirth;
private string _DebitorNumber;
private string _PlaceOfBirth;
private string _DebitorNumber;
private string _Diagnosis;
private ObservableSortCollection<ValueListEntryDC> _Disabilities;
private string _EMail;
@@ -484,6 +486,24 @@ namespace BeWo.ViewModel
}
}
}
public String PlaceOfBirth
{
get { return _PlaceOfBirth; }
set
{
if (AreDifferent(_PlaceOfBirth, value))
{
_PlaceOfBirth = value;
StoreDirtyInformation(AreDifferent(DataContract.PlaceOfBirth, value), PropertyName_PlaceOfBirth);
FirePropertyChanged(PropertyName_PlaceOfBirth);
}
}
}
public DateTime? AufenthaltGueltigBis
{
get { return _AufenthaltGueltigBis; }
@@ -2011,6 +2031,7 @@ namespace BeWo.ViewModel
{
_SubstitutionNeed = pDataContract.SubstitutionNeed;
_DateOfBirth = pDataContract.DateOfBirth;
_PlaceOfBirth = pDataContract.PlaceOfBirth;
_FirstName = pDataContract.FirstName;
_FamilyStatus = pDataContract.FamilyStatus;
_LastName = pDataContract.LastName;
@@ -2194,6 +2215,7 @@ namespace BeWo.ViewModel
protected override CustomerDC MapToDataContract(CustomerDC pDataContract, bool doCommit)
{
pDataContract.DateOfBirth = _DateOfBirth;
pDataContract.PlaceOfBirth = _PlaceOfBirth;
pDataContract.FirstName = _FirstName;
pDataContract.FamilyStatus = _FamilyStatus;
pDataContract.LastName = _LastName;

View File

@@ -1,4 +1,5 @@
using BS.Shared.Core;
using BS.Shared;
using BS.Shared.Core;
using BS.Shared.DataContracts;
using System;
using System.Collections.Generic;
@@ -10,6 +11,7 @@ namespace BeWo.ViewModel
{
public class CustomerVermittlungArbeitVM : AbstractDCMapperVM<CustomerVermittlungArbeitDC>
{
private VgaTypeEnum _VgaType;
private string _AktenzeichenGericht;
private string _EigenesAktenzeichen;
private DateTime? _Auftragseingang;
@@ -24,8 +26,8 @@ namespace BeWo.ViewModel
private string _Hinweis;
private DateTime? _Termin;
private CustomerVermittlungBearbeitungsstatus? _CustomerVermittlungBearbeitungsstatus;
private string _Auftragsruckgabe;
private string _Verlauf;
private DateTime? _Auftragsruckgabe;
private ValueListEntryDC _Verlauf;
private decimal? _AbgeleisteteStunden;
private decimal? _ErsparteHafttage;
private decimal? _GeleisteteRatenzahlung;
@@ -47,7 +49,7 @@ namespace BeWo.ViewModel
private bool _BesonderheitMehrfacheVermittlung;
private bool _BesonderheitVermittlungAusHaft;
private bool _BesonderheitDurchBGBWAufgesucht;
public CustomerVermittlungArbeitVM()
{
@@ -58,6 +60,20 @@ namespace BeWo.ViewModel
}
public VgaTypeEnum VgaType
{
get { return _VgaType; }
set
{
if (!AreDifferent(_VgaType, value))
return;
_VgaType = value;
StoreDirtyInformation(AreDifferent(DataContract.VgaType, value), nameof(VgaType));
FirePropertyChanged(nameof(VgaType));
}
}
public string Displayname => $"AZ: {AktenzeichenGericht}";
public string AktenzeichenGericht
{
@@ -219,7 +235,7 @@ namespace BeWo.ViewModel
FirePropertyChanged(nameof(CustomerVermittlungBearbeitungsstatus));
}
}
public string Auftragsruckgabe
public DateTime? Auftragsruckgabe
{
get { return _Auftragsruckgabe; }
set
@@ -232,7 +248,7 @@ namespace BeWo.ViewModel
FirePropertyChanged(nameof(Auftragsruckgabe));
}
}
public string Verlauf
public ValueListEntryDC Verlauf
{
get { return _Verlauf; }
set
@@ -529,6 +545,7 @@ namespace BeWo.ViewModel
protected override void InitByDataContract(CustomerVermittlungArbeitDC pDataContract)
{
_VgaType = pDataContract.VgaType;
_AktenzeichenGericht = pDataContract.AktenzeichenGericht;
_EigenesAktenzeichen = pDataContract.EigenesAktenzeichen;
_Auftragseingang = pDataContract.Auftragseingang;
@@ -574,6 +591,7 @@ namespace BeWo.ViewModel
protected override CustomerVermittlungArbeitDC MapToDataContract(CustomerVermittlungArbeitDC pDataContract, bool doCommit)
{
pDataContract.VgaType = _VgaType;
pDataContract.AktenzeichenGericht = _AktenzeichenGericht;
pDataContract.EigenesAktenzeichen = _EigenesAktenzeichen;
pDataContract.Auftragseingang = _Auftragseingang;

View File

@@ -8,7 +8,7 @@
<IISExpressWindowsAuthentication />
<IISExpressUseClassicPipelineMode />
<UseGlobalApplicationHostFile />
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
<ProjectView>ProjectFiles</ProjectView>
<WebStackScaffolding_ViewDialogWidth>600</WebStackScaffolding_ViewDialogWidth>
<Controller_SelectedScaffolderID>MvcControllerEmptyScaffolder</Controller_SelectedScaffolderID>

View File

@@ -363,13 +363,23 @@ namespace BeWoPlanerMobil.Controllers
var customerFilter = MobileUserSettingsUtils.GetSettingValueAsEnum(userSettings, SettingsKeys.CustomerFilterInZeiterfassung, CustomerFilterEnum.MyCustomer);
if (customerFilter != CustomerFilterEnum.MyCustomer && !Model.IsAllowedToSeeSupportConceptFilter)
if (user.CheckForAtLeastOneRight(new List<UserRightType> { UserRightType.ViewAll, UserRightType.SupportConcept_ViewAllSupportConcepts }))
{
//do nothing, darf alles sehen
}
else if (user.HasRight(UserRightType.SupportConcept_ViewMyTeams))
{
if (customerFilter == CustomerFilterEnum.All)
{
customerFilter = CustomerFilterEnum.MyCustomer;
}
}
else
{
customerFilter = CustomerFilterEnum.MyCustomer;
}
//if (Model.SelectedSupportConceptFilter == null)
Model.SelectedSupportConceptFilter = customerFilter;
Model.IsEndDateVisible = UserSettingsUtils.GetSettingValueAsBool(Model.Mandator.Settings, SettingsKeys.IsEndDateVisible);
@@ -1454,7 +1464,7 @@ namespace BeWoPlanerMobil.Controllers
if(!(sclo is null))
{
var sc = GetCompactSupportConcept(sclo.SupportConceptOid);
var sc = GetCompactSupportConcept(sclo.SupportConceptOid, selectedCostbearerScRelOid);
Model.NewServiceRecord.SupportConcept = sc;
@@ -2076,10 +2086,10 @@ namespace BeWoPlanerMobil.Controllers
}
newServiceRecord.Employee = emp;
newServiceRecord.SupportConcept = GetCompactSupportConcept(sc.SupportConceptOid);
newServiceRecord.CostBearer = sc.CostBearerList.ElementAt(0).Organisation;
newServiceRecord.Customer = sc.Customer;
newServiceRecord.CostBearer2SupportConceptOid = sc.CostBearerRelOids.ElementAt(0);
newServiceRecord.SupportConcept = GetCompactSupportConcept(sc.SupportConceptOid, newServiceRecord.CostBearer2SupportConceptOid);
}
}
}
@@ -2802,7 +2812,7 @@ namespace BeWoPlanerMobil.Controllers
{
if(supportConcept.SupportConceptOid != null)
{
checkServiceRecord.SupportConcept = GetCompactSupportConcept(supportConcept.SupportConceptOid);
checkServiceRecord.SupportConcept = GetCompactSupportConcept(supportConcept.SupportConceptOid, Model.SelectedCostBearerSupportConceptOid);
}
checkServiceRecord.Customer = supportConcept.Customer;
@@ -2912,7 +2922,7 @@ namespace BeWoPlanerMobil.Controllers
sr.Customer = serviceRecord.SupportConcept?.Customer;
var result = OperationsService.ValidateServiceRecord(sr, null, maxDaysEditSRsAllowed, employeeOids, costBearer2SupportConceptOids);
var node = CreateFlatSupportConceptItem(GetCompactSupportConcept(sr.SupportConcept.SupportConceptOid), null);
var node = CreateFlatSupportConceptItem(GetCompactSupportConcept(sr.SupportConcept.SupportConceptOid, sr.CostBearer2SupportConceptOid), null);
dateRangeString = node?.SupportConceptTreeNodeDC != null ? node.SupportConceptTreeNodeDC.SupportConceptCostBearerRelDC.DateRangeString : string.Empty;
validationResults.AddIfNotIn(new ServiceRecord2Validation(sr, result, dateRangeString));
@@ -2923,7 +2933,7 @@ namespace BeWoPlanerMobil.Controllers
{
if(Model.SelectedSupportConcept != null)
{
var node = CreateFlatSupportConceptItem(GetCompactSupportConcept(Model.SelectedSupportConcept.SupportConceptOid), null);
var node = CreateFlatSupportConceptItem(GetCompactSupportConcept(Model.SelectedSupportConcept.SupportConceptOid, Model.SelectedCostBearerSupportConceptOid), null);
dateRangeString = node?.SupportConceptTreeNodeDC != null ? node.SupportConceptTreeNodeDC.SupportConceptCostBearerRelDC.DateRangeString : "";
}
@@ -4033,7 +4043,7 @@ namespace BeWoPlanerMobil.Controllers
if (sclo != null)
{
var sc = GetCompactSupportConcept(sclo.SupportConceptOid);
var sc = GetCompactSupportConcept(sclo.SupportConceptOid, selectedCostbearer2SupportConceptRelOid);
Model.NewServiceRecord.SupportConcept = sc;
Model.NewServiceRecord.Customer = sc.Customer;
@@ -4123,16 +4133,23 @@ namespace BeWoPlanerMobil.Controllers
return ResetEditingMode();
}
private CompactSupportConceptDC GetCompactSupportConcept(long supportConceptOid)
private CompactSupportConceptDC GetCompactSupportConcept(long supportConceptOid, long? c2sOid)
{
CompactSupportConceptDC sc = null;
if (Model.SupportConcepts != null)
{
sc = Model.SupportConcepts.FirstOrDefault(s => s.SupportConceptOid == supportConceptOid);
sc = Model.SupportConcepts.FirstOrDefault(s => s.SupportConceptOid == supportConceptOid && s.CostBearerRelOids.Any(a => a == c2sOid));
}
if (sc == null)
{
sc = CustomerService.LoadCompactSupportConceptDC(supportConceptOid, Model.LoggedInEmployee.EmployeeOid);
if (c2sOid.HasValue && sc.CostBearerRelOids.Count > 1)
{
var oids2Remove = sc.CostBearerRelOids.Where(o => o != c2sOid.Value).ToList();
var cb2Remove = sc.CostBearerList.Where(c => c.CostBearer2SupportConceptOid != c2sOid.Value).ToList();
sc.CostBearerRelOids.RemoveRange(oids2Remove);
sc.CostBearerList.RemoveRange(cb2Remove);
}
}
return sc;

View File

@@ -527,7 +527,7 @@ namespace BeWoPlanerMobil.Controllers
var rawSchedulerDate = formCollection[FormCollectionConstants.AppointmentSchedulerDateKey];
var schedulerDate = DateTime.ParseExact(rawSchedulerDate, "dd.MM.yyyy", null);
var schedulerDate = DateTime.ParseExact(rawSchedulerDate, "yyyy-MM-dd", null);
Model.SelectedDate = schedulerDate;

View File

@@ -130,7 +130,7 @@
<div class="col col-md-auto justify-content-center mx-1 px-0">
@using(Html.BeginForm("SelectSchedulerDate", "Scheduler", FormMethod.Post, new { id = "scheduler-date-form" }))
{
<input class="form-control" type="date" id="start-date" name="SchedulerDate" value="@Model.SelectedDate.ToString("yyyy-MM-dd")" />
<input class="form-control" type="date" id="start-date" name="SchedulerDate" value="@Model.SelectedDate.ToString("yyyy-MM-dd")" onchange="submitSchedulerDateForm()" />
}
</div>
<div class="col-auto justify-content-center mx-1 px-0">

View File

@@ -15,7 +15,10 @@ namespace BeWo.Data.Entities
}
public virtual Customer Customer { get; set; }
public virtual Organisation Auftraggeber { get; set; }
public virtual Person AuftraggeberAnsprechpartner { get; set; }
public virtual Organisation Einsatzstelle { get; set; }
public virtual Person EinsatzstelleAnsprechpartner { get; set; }
public virtual string AktenzeichenGericht { get; set; }
public virtual string EigenesAktenzeichen { get; set; }
public virtual DateTime? Auftragseingang { get; set; }
@@ -28,8 +31,8 @@ namespace BeWo.Data.Entities
public virtual string Hinweis { get; set; }
public virtual DateTime? Termin { get; set; }
public virtual CustomerVermittlungBearbeitungsstatus? CustomerVermittlungBearbeitungsstatus { get; set; }
public virtual string Auftragsruckgabe { get; set; }
public virtual string Verlauf { get; set; }
public virtual DateTime? Auftragsruckgabe { get; set; }
public virtual ValueListEntry Verlauf { get; set; }
public virtual decimal? AbgeleisteteStunden { get; set; }
public virtual decimal? ErsparteHafttage { get; set; }
public virtual decimal? GeleisteteRatenzahlung { get; set; }

View File

@@ -175,6 +175,8 @@ namespace BeWo.Data.Entities
}
}
public virtual String PlaceOfBirth { get; set; }
public virtual FamilyStatus? FamilyStatus
{
get

View File

@@ -193,6 +193,8 @@ namespace BeWo.Data.Entities
}
}
public virtual String Person_PlaceOfBirth { get; set; }
public virtual Sex? Person_Sex
{
get

View File

@@ -27,7 +27,7 @@
<property name="Termin"/>
<property name="CustomerVermittlungBearbeitungsstatus" type="BS.Shared.DataContracts.CustomerVermittlungBearbeitungsstatus, BS.Shared" />
<property name="Auftragsruckgabe"/>
<property name="Verlauf"/>
<many-to-one name="Verlauf" column="Verlauf" class="BeWo.Data.Entities.ValueListEntry, BeWo.Data" cascade="none" />
<property name="AbgeleisteteStunden"/>
<property name="ErsparteHafttage"/>
<property name="GeleisteteRatenzahlung"/>
@@ -49,5 +49,9 @@
<property name="BesonderheitMehrfacheVermittlung"/>
<property name="BesonderheitVermittlungAusHaft"/>
<property name="BesonderheitDurchBGBWAufgesucht"/>
<many-to-one name="Auftraggeber" column="AuftraggeberOid" class="BeWo.Data.Entities.Organisation, BeWo.Data" cascade="none"/>
<many-to-one name="AuftraggeberAnsprechpartner" column="AuftraggeberAnsprechpartnerOid" class="BeWo.Data.Entities.Person, BeWo.Data" cascade="none"/>
<many-to-one name="Einsatzstelle" column="EinsatzstelleOid" class="BeWo.Data.Entities.Organisation, BeWo.Data" cascade="none"/>
<many-to-one name="EinsatzstelleAnsprechpartner" column="EinsatzstelleAnsprechpartnerOid" class="BeWo.Data.Entities.Person, BeWo.Data" cascade="none"/>
</class>
</hibernate-mapping>

View File

@@ -11,6 +11,7 @@
<property column="LastName" type="String" name="LastName" length="256" />
<property column="Abbreviation" type="String" name="Abbreviation" length="16" />
<property column="DateOfBirth" type="DateTime" name="DateOfBirth" />
<property column="PlaceOfBirth" type="String" name="PlaceOfBirth" />
<property column="Sex" type="BS.Shared.Sex, BS.Shared" name="Sex" />
<property column="Type" type="BS.Shared.PersonType, BS.Shared" name="Type" />
<property column="FamilyStatus" type="BS.Shared.FamilyStatus, BS.Shared" name="FamilyStatus" />

View File

@@ -25,6 +25,7 @@
<property column="Person_LastName" type="string" name="Person_LastName" />
<property column="Person_Abbreviation" type="string" name="Person_Abbreviation" />
<property column="Person_DateOfBirth" type="DateTime" name="Person_DateOfBirth" />
<property column="Person_PlaceOfBirth" type="String" name="Person_PlaceOfBirth" />
<property column="Person_Sex" type="BS.Shared.Sex, BS.Shared" name="Person_Sex" />
<property column="Person_FamilyStatus" type="BS.Shared.FamilyStatus, BS.Shared" name="Person_FamilyStatus" />
<property column="Person_Profession" type="string" name="Person_Profession" />

View File

@@ -0,0 +1,29 @@
ALTER TABLE `Person`
ADD COLUMN `PlaceOfBirth` VARCHAR(512) NULL DEFAULT NULL;
ALTER TABLE `PersonHistory`
ADD COLUMN `Person_PlaceOfBirth` VARCHAR(512) NULL DEFAULT NULL;
ALTER TABLE `CustomerVermittlungArbeit`
DROP COLUMN `Verlauf`;
ALTER TABLE `CustomerVermittlungArbeit`
ADD COLUMN `Verlauf` bigint DEFAULT NULL;
ALTER TABLE `CustomerVermittlungArbeit`
DROP COLUMN `Auftragsruckgabe`;
ALTER TABLE `CustomerVermittlungArbeit`
ADD COLUMN `Auftragsruckgabe` datetime DEFAULT NULL;
ALTER TABLE `CustomerVermittlungArbeit`
ADD COLUMN `AuftraggeberOid` bigint DEFAULT NULL;
ALTER TABLE `CustomerVermittlungArbeit`
ADD COLUMN `AuftraggeberAnsprechpartnerOid` bigint DEFAULT NULL;
ALTER TABLE `CustomerVermittlungArbeit`
ADD COLUMN `EinsatzstelleOid` bigint DEFAULT NULL;
ALTER TABLE `CustomerVermittlungArbeit`
ADD COLUMN `EinsatzstelleAnsprechpartnerOid` bigint DEFAULT NULL;

View File

@@ -55,12 +55,13 @@ namespace SHKServiceSBD.Reports
//}
decimal euroProStunde = 0;
decimal wochen = GetWochen(pRO);
var stunden = CreateArbeitszeitenTableAndCalculateStunden(c.Arbeitszeiten);
lblKlient.Text = String.Format("{0}, geb. {1:dd.MM.yyyy}", c.Person.FirstNameLastName, c.Person.DateOfBirth);
lblStundenProWoche.Text = String.Format("{0:0.00}", stunden);
lblDurchschnittStundenProTag.Text = String.Format("{0:0.00}", stunden / 5);
lblWochenProJahr.Text = "52";
lblWochenProJahr.Text = String.Format("{0:0.##}", wochen); ;
lblMonateProJahr.Text = "12";
lblKmProTag.Text = String.Format("{0:0.00}", km);
lblEuroProKm.Text = String.Format("{0:c}", euroKm);
@@ -74,7 +75,6 @@ namespace SHKServiceSBD.Reports
lblEuroProStunde.Text = String.Format("{0:c}", crp.CostRateValue);
}
decimal wochen = 365 / 7; // Schaltjahre beachten?
cellKostenBefTag.Text = String.Format("{0:c}", euroKm * km);
cellKostenBefWoche.Text = String.Format("{0:c}", euroKm * km * 5);
@@ -150,6 +150,23 @@ namespace SHKServiceSBD.Reports
return 0;
}
private decimal GetWochen(QueryRO ro)
{
if (ro.Rows != null && ro.Rows.Count > 0)
{
if (ro.Rows[0].Field3 != null)
{
if (Decimal.TryParse(ro.Rows[0].Field3.ToString(), out var d))
{
return d;
}
}
}
return 52;
}
private Customer GetCustomer(QueryRO ro)
{

View File

@@ -29,7 +29,6 @@ namespace BeWo.Service.DCEntityMapper
pDataContract.Termin = pEntity.Termin;
pDataContract.CustomerVermittlungBearbeitungsstatus = pEntity.CustomerVermittlungBearbeitungsstatus;
pDataContract.Auftragsruckgabe = pEntity.Auftragsruckgabe;
pDataContract.Verlauf = pEntity.Verlauf;
pDataContract.AbgeleisteteStunden = pEntity.AbgeleisteteStunden;
pDataContract.ErsparteHafttage = pEntity.ErsparteHafttage;
pDataContract.GeleisteteRatenzahlung = pEntity.GeleisteteRatenzahlung;
@@ -52,6 +51,16 @@ namespace BeWo.Service.DCEntityMapper
pDataContract.BesonderheitVermittlungAusHaft = pEntity.BesonderheitVermittlungAusHaft;
pDataContract.BesonderheitDurchBGBWAufgesucht = pEntity.BesonderheitDurchBGBWAufgesucht;
// public virtual Organisation Auftraggeber { get; set; }
//public virtual Person AuftraggeberAnsprechpartner { get; set; }
//public virtual Organisation Einsatzstelle { get; set; }
//public virtual Person EinsatzstelleAnsprechpartner { get; set; }
if (pEntity.Verlauf != null)
{
pDataContract.Verlauf = MapperFactory.ValueListEntryDC_ValueListEntry.MapToNewDC(pEntity.Verlauf);
}
if (pEntity.Auftragsherkunft != null)
{
pDataContract.Auftragsherkunft = MapperFactory.ValueListEntryDC_ValueListEntry.MapToNewDC(pEntity.Auftragsherkunft);
@@ -62,6 +71,18 @@ namespace BeWo.Service.DCEntityMapper
pDataContract.Vermittlungsgrundlage = MapperFactory.ValueListEntryDC_ValueListEntry.MapToNewDC(pEntity.Vermittlungsgrundlage);
}
if (pEntity.Auftraggeber != null)
pDataContract.Auftraggeber = MapperFactory.CompactOrganisationDC_Organisation.MapToNewDC(pEntity.Auftraggeber);
if (pEntity.AuftraggeberAnsprechpartner != null)
pDataContract.AuftraggeberAnsprechpartner = MapperFactory.CompactPersonDC_Person.MapToNewDC(pEntity.AuftraggeberAnsprechpartner);
if (pEntity.Einsatzstelle != null)
pDataContract.Einsatzstelle = MapperFactory.CompactOrganisationDC_Organisation.MapToNewDC(pEntity.Einsatzstelle);
if (pEntity.EinsatzstelleAnsprechpartner != null)
pDataContract.EinsatzstelleAnsprechpartner = MapperFactory.CompactPersonDC_Person.MapToNewDC(pEntity.EinsatzstelleAnsprechpartner);
return pDataContract;
}
@@ -81,7 +102,6 @@ namespace BeWo.Service.DCEntityMapper
pEntity.Termin = pDataContract.Termin;
pEntity.CustomerVermittlungBearbeitungsstatus = pDataContract.CustomerVermittlungBearbeitungsstatus;
pEntity.Auftragsruckgabe = pDataContract.Auftragsruckgabe;
pEntity.Verlauf = pDataContract.Verlauf;
pEntity.AbgeleisteteStunden = pDataContract.AbgeleisteteStunden;
pEntity.ErsparteHafttage = pDataContract.ErsparteHafttage;
pEntity.GeleisteteRatenzahlung = pDataContract.GeleisteteRatenzahlung;
@@ -104,6 +124,28 @@ namespace BeWo.Service.DCEntityMapper
pEntity.BesonderheitVermittlungAusHaft = pDataContract.BesonderheitVermittlungAusHaft;
pEntity.BesonderheitDurchBGBWAufgesucht = pDataContract.BesonderheitDurchBGBWAufgesucht;
pEntity.Auftraggeber = null;
if (pDataContract.Auftraggeber != null)
pEntity.Auftraggeber = DAOFactory.GenericDAO.LoadByID<Organisation>(pDataContract.Auftraggeber.OrganisationOid);
pEntity.AuftraggeberAnsprechpartner = null;
if (pDataContract.AuftraggeberAnsprechpartner != null)
pEntity.AuftraggeberAnsprechpartner = DAOFactory.GenericDAO.LoadByID<Person>(pDataContract.AuftraggeberAnsprechpartner.PersonOid);
pEntity.Auftraggeber = null;
if (pDataContract.Einsatzstelle != null)
pEntity.Einsatzstelle = DAOFactory.GenericDAO.LoadByID<Organisation>(pDataContract.Einsatzstelle.OrganisationOid);
pEntity.EinsatzstelleAnsprechpartner = null;
if (pDataContract.EinsatzstelleAnsprechpartner != null)
pEntity.AuftraggeberAnsprechpartner = DAOFactory.GenericDAO.LoadByID<Person>(pDataContract.EinsatzstelleAnsprechpartner.PersonOid);
if (pDataContract.Verlauf == null)
{
pEntity.Verlauf = null;
}
else if (pEntity.Verlauf == null || pEntity.Verlauf.Oid != pDataContract.Verlauf.ValueListEntryOid)
{
pEntity.Verlauf = DAOFactory.GenericDAO.LoadByID<ValueListEntry>(pDataContract.Verlauf.ValueListEntryOid.Value);
}
if (pDataContract.Auftragsherkunft == null)
{
pEntity.Auftragsherkunft = null;

View File

@@ -15,6 +15,7 @@ namespace BeWo.Service.DCEntityMapper
{
pDataContract.PersonOid = pEntity.Oid;
pDataContract.DateOfBirth = pEntity.DateOfBirth;
pDataContract.PlaceOfBirth = pEntity.PlaceOfBirth;
pDataContract.FirstName = pEntity.FirstName;
pDataContract.Sex = pEntity.Sex;
pDataContract.FamilyStatus = pEntity.FamilyStatus;
@@ -104,6 +105,7 @@ namespace BeWo.Service.DCEntityMapper
pEntity.Oid = pDataContract.PersonOid;
pEntity.DateOfBirth = pDataContract.DateOfBirth;
pEntity.PlaceOfBirth = pDataContract.PlaceOfBirth;
pEntity.FirstName = pDataContract.FirstName;
pEntity.Sex = pDataContract.Sex;
pEntity.FamilyStatus = pDataContract.FamilyStatus;

View File

@@ -29,48 +29,40 @@ namespace BeWo.Service.Dokumentverwaltung
Children = new List<PlatzhalterDC>(),
IconType = "BoyAndGirl"
};
#region Children Personendaten
personendaten.Children.Add(new PlatzhalterDC { Bezeichnung = "Anrede", Platzhalter = "KlAnrede", IconType = "AB" });
personendaten.Children.Add(new PlatzhalterDC { Bezeichnung = "Briefanrede", Platzhalter = "KlBriefanrede", IconType = "AB" });
PlatzhalterDC vorname = new PlatzhalterDC() { Bezeichnung = "Vorname", Platzhalter = "KlVorname" , FieldName = "Person.FirstName", IconType = "AB" };
personendaten.Children.Add(vorname);
PlatzhalterDC nachname = new PlatzhalterDC() { Bezeichnung = "Nachname", Platzhalter = "KlNachname", FieldName = "Person.LastName", IconType = "AB" };
personendaten.Children.Add(nachname);
PlatzhalterDC alias = new PlatzhalterDC() { Bezeichnung = "Alias", Platzhalter = "KlAlias", FieldName = "CustomerAlias", IconType = "AB" };
personendaten.Children.Add(alias);
PlatzhalterDC gebDatum = new PlatzhalterDC() { Bezeichnung = "Geburtsdatum", Platzhalter = "KlGeburtsdatum", FieldName = "Person.DateOfBirth", IconType = "AB" };
personendaten.Children.Add(gebDatum);
PlatzhalterDC telefonnummer = new PlatzhalterDC() { Bezeichnung = "Telefon", Platzhalter = "KlTelefon", FieldName = "Person.Contacts", IconType = "AB" };
personendaten.Children.Add(telefonnummer);
PlatzhalterDC handynummer = new PlatzhalterDC() { Bezeichnung = "Handy", Platzhalter = "KlHandy", FieldName = "Person.Contacts", IconType = "AB" };
personendaten.Children.Add(handynummer);
PlatzhalterDC email = new PlatzhalterDC() { Bezeichnung = "E-Mail", Platzhalter = "KlEmail", FieldName = "Person.Contacts", IconType = "AB" };
personendaten.Children.Add(email);
PlatzhalterDC fax = new PlatzhalterDC() { Bezeichnung = "KlFax", Platzhalter = "KlFax", FieldName = "Person.Contacts", IconType = "AB" };
personendaten.Children.Add(fax);
PlatzhalterDC berufsbezeichnung = new PlatzhalterDC() { Bezeichnung = "Beruf", Platzhalter = "KlBeruf", FieldName = "Person.Profession", IconType = "AB" };
personendaten.Children.Add(berufsbezeichnung);
PlatzhalterDC debitor = new PlatzhalterDC() { Bezeichnung = "Debitorennumer", Platzhalter = "Debitorennumer", FieldName = "DebitorNumber", IconType = "AB" };
personendaten.Children.Add(debitor);
PlatzhalterDC kostenstelle = new PlatzhalterDC() { Bezeichnung = "Kostenstelle", Platzhalter = "Kostenstelle", FieldName = "CostCenter", IconType = "AB" };
personendaten.Children.Add(kostenstelle);
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Vorname", Platzhalter = "KlVorname", FieldName = "Person.FirstName", IconType = "AB" });
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Nachname", Platzhalter = "KlNachname", FieldName = "Person.LastName", IconType = "AB" });
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Alias", Platzhalter = "KlAlias", FieldName = "CustomerAlias", IconType = "AB" });
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Geburtsdatum", Platzhalter = "KlGeburtsdatum", FieldName = "Person.DateOfBirth", IconType = "AB" });
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Geburtsort", Platzhalter = "KlGeburtsort", FieldName = "Person.PlaceOfBirth", IconType = "AB" });
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Staatsangehörigkeit", Platzhalter = "KlStaatsangehoerigkeit", FieldName = "Person.Nationalitaet", IconType = "AB" });
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Telefon", Platzhalter = "KlTelefon", FieldName = "Person.Contacts", IconType = "AB" });
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Handy", Platzhalter = "KlHandy", FieldName = "Person.Contacts", IconType = "AB" });
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "E-Mail", Platzhalter = "KlEmail", FieldName = "Person.Contacts", IconType = "AB" });
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "KlFax", Platzhalter = "KlFax", FieldName = "Person.Contacts", IconType = "AB" });
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Beruf", Platzhalter = "KlBeruf", FieldName = "Person.Profession", IconType = "AB" });
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Debitorennumer", Platzhalter = "KlDebitorennumer", FieldName = "DebitorNumber", IconType = "AB" });
personendaten.Children.Add(new PlatzhalterDC() { Bezeichnung = "Kostenstelle", Platzhalter = "KlKostenstelle", FieldName = "CostCenter", IconType = "AB" });
#endregion Children Personendaten
PlatzhalterDC adressdatenKlient = new PlatzhalterDC()
{
Bezeichnung = "Adressdaten Klient/-in",
Bezeichnung = "Adressdaten",
Children = new List<PlatzhalterDC>(),
IconType = "Home"
};
#region Children Adressdaten Klient/-in
PlatzhalterDC strasse = new PlatzhalterDC() { Bezeichnung = "Straße", Platzhalter = "KlStrasse", IconType = "AB", FieldName = "Person.Address.Street" };
adressdatenKlient.Children.Add(strasse);
PlatzhalterDC plz = new PlatzhalterDC() { Bezeichnung = "PLZ", Platzhalter = "KlPLZ", IconType = "AB", FieldName = "Person.Address.PostalCode" };
adressdatenKlient.Children.Add(plz);
PlatzhalterDC ort = new PlatzhalterDC() { Bezeichnung = "Ort", Platzhalter = "KlOrt", IconType = "AB", FieldName = "Person.Address.Town" };
adressdatenKlient.Children.Add(ort);
#endregion
personendaten.Children.Add(adressdatenKlient);
PlatzhalterDC vga = new PlatzhalterDC()
{
@@ -78,7 +70,7 @@ namespace BeWo.Service.Dokumentverwaltung
Children = new List<PlatzhalterDC>(),
IconType = "BoyAndGirl"
};
#region Children Vermittlung gemeinnütziger Arbeit
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "AZ der Staatsanwaltschaft/des Gerichts", Platzhalter = "AktenzeichenGericht", FieldName = "Person.CustomerVermittlungArbeit.AktenzeichenGericht", IconType = "AB"});
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Eigenes Aktenzeichen", Platzhalter = "EigenesAktenzeichen", FieldName = "Person.CustomerVermittlungArbeit.EigenesAktenzeichen", IconType = "AB" });
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Auftragseingang", Platzhalter = "Auftragseingang", FieldName = "Person.CustomerVermittlungArbeit.Auftragseingang", IconType = "AB" });
@@ -99,7 +91,7 @@ namespace BeWo.Service.Dokumentverwaltung
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Geleistete Einmalzahlung", Platzhalter = "GeleisteteEinmalzahlung", FieldName = "Person.CustomerVermittlungArbeit.GeleisteteEinmalzahlung", IconType = "AB" });
vga.Children.Add(new PlatzhalterDC() { Bezeichnung = "Bemerkung", Platzhalter = "Bemerkung", FieldName = "Person.CustomerVermittlungArbeit.Bemerkung", IconType = "AB" });
#endregion
personendaten.Children.Add(vga);
PlatzhalterDC betreuung = new PlatzhalterDC()
@@ -108,21 +100,23 @@ namespace BeWo.Service.Dokumentverwaltung
Children = new List<PlatzhalterDC>(),
IconType = "Paste"
};
#region Children Betreuung
PlatzhalterDC betreuungsbeginn = new PlatzhalterDC() { Bezeichnung = "Betreuungsbeginn", Platzhalter = "Betreuungsbeginn", FieldName = "AssistanceBegin", IconType = "AB" };
PlatzhalterDC betreuungsbeginn = new PlatzhalterDC() { Bezeichnung = "Betreuungsbeginn", Platzhalter = "KlBetreuungsbeginn", FieldName = "AssistanceBegin", IconType = "AB" };
betreuung.Children.Add(betreuungsbeginn);
PlatzhalterDC betreuungsende = new PlatzhalterDC() { Bezeichnung = "Betreuungsende", Platzhalter = "Betreuungsende", FieldName = "TerminationDate", IconType = "AB" };
PlatzhalterDC betreuungsende = new PlatzhalterDC() { Bezeichnung = "Betreuungsende", Platzhalter = "KlBetreuungsende", FieldName = "TerminationDate", IconType = "AB" };
betreuung.Children.Add(betreuungsende);
PlatzhalterDC grundBetreuungsende = new PlatzhalterDC() { Bezeichnung = "Grund Betreuungsbeendung", Platzhalter = "GrundBetreuungsbeendung", FieldName = "TerminationReason", IconType = "AB" };
PlatzhalterDC grundBetreuungsende = new PlatzhalterDC() { Bezeichnung = "Grund Betreuungsbeendung", Platzhalter = "KlGrundBetreuungsbeendung", FieldName = "TerminationReason", IconType = "AB" };
betreuung.Children.Add(grundBetreuungsende);
personendaten.Children.Add(betreuung);
PlatzhalterDC behindertenausweis = new PlatzhalterDC()
{
Bezeichnung = "Schwerbehindertenausweis",
Children = new List<PlatzhalterDC>(),
IconType = "ContactCardWebDisabled"
};
#region Children Behindertenausweis
PlatzhalterDC amt = new PlatzhalterDC() { Bezeichnung = "Ausstellendes Amt", Platzhalter = "AusweisAmt", FieldName = "AusstVersAmt", IconType = "AB" };
behindertenausweis.Children.Add(amt);
PlatzhalterDC gueltigVon = new PlatzhalterDC() { Bezeichnung = "Gültig von", Platzhalter = "AusweisGueltigVon", FieldName = "AusweisGueltigVon", IconType = "AB" };
@@ -137,9 +131,9 @@ namespace BeWo.Service.Dokumentverwaltung
behindertenausweis.Children.Add(gradDerBehinderung);
betreuung.Children.Add(behindertenausweis);
#endregion
PlatzhalterDC pflegegrad = new PlatzhalterDC() { Bezeichnung = "Pflegegrad", Platzhalter = "Pflegegrad", FieldName = "Pflegegrad", IconType = "AB" };
PlatzhalterDC pflegegrad = new PlatzhalterDC() { Bezeichnung = "Pflegegrad", Platzhalter = "KlPflegegrad", FieldName = "Pflegegrad", IconType = "AB" };
betreuung.Children.Add(pflegegrad);
PlatzhalterDC versicherung = new PlatzhalterDC()
@@ -148,16 +142,41 @@ namespace BeWo.Service.Dokumentverwaltung
Children = new List<PlatzhalterDC>(),
IconType = "OfficeBulidingBlackDisabled"
};
#region Children Versicherung
PlatzhalterDC krankenkasse = new PlatzhalterDC() { Bezeichnung = "Krankenkasse", Platzhalter = "KlientKrankenkasse", IconType = "AB" };
versicherung.Children.Add(krankenkasse);
PlatzhalterDC versnummer = new PlatzhalterDC() { Bezeichnung = "Versichertennummer", Platzhalter = "KlientVersNummer", IconType = "AB" };
versicherung.Children.Add(krankenkasse);
PlatzhalterDC versStatus = new PlatzhalterDC() { Bezeichnung = "Versicherungsstatus", Platzhalter = "KlientVersicherungsstatus", IconType = "AB" };
versicherung.Children.Add(krankenkasse);
#endregion
#endregion
PlatzhalterDC krankenkasse = new PlatzhalterDC() { Bezeichnung = "Krankenkasse", Platzhalter = "KlKrankenkasse", IconType = "AB" };
versicherung.Children.Add(krankenkasse);
PlatzhalterDC versnummer = new PlatzhalterDC() { Bezeichnung = "Versichertennummer", Platzhalter = "KlVersNummer", IconType = "AB" };
versicherung.Children.Add(krankenkasse);
PlatzhalterDC versStatus = new PlatzhalterDC() { Bezeichnung = "Versicherungsstatus", Platzhalter = "KlVersicherungsstatus", IconType = "AB" };
versicherung.Children.Add(krankenkasse);
personendaten.Children.Add(versicherung);
PlatzhalterDC wohnung = new PlatzhalterDC()
{
Bezeichnung = "Wohnung",
Children = new List<PlatzhalterDC>(),
IconType = "OfficeBulidingBlackDisabled"
};
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Einzugsdatum", Platzhalter = "WVEinzugsdatum", FieldName = "Person.WohneinheitBelegung.StartDate", IconType = "AB" });
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Auszugsdatum", Platzhalter = "WVAuszugsdatum", FieldName = "Person.WohneinheitBelegung.EndDate", IconType = "AB" });
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Einheit", Platzhalter = "WVEinheit", FieldName = "Person.Wohneinheit.Zimmername", IconType = "AB" });
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Straße", Platzhalter = "WVStrasse", FieldName = "Person.Wohneinheit.Address.Street", IconType = "AB" });
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "PLZ", Platzhalter = "WVPLZ", FieldName = "Person.Wohneinheit.Address.PostalCode", IconType = "AB" });
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Ort", Platzhalter = "WVOrt", FieldName = "Person.Wohneinheit.Address.Town", IconType = "AB" });
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Stockwerk", Platzhalter = "WVStock", FieldName = "Person.Wohneinheit.Stock", IconType = "AB" });
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Miete", Platzhalter = "WVMiete", FieldName = "Person.Wohneinheit.Miete", IconType = "AB" });
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Heizung", Platzhalter = "WVHeizung", FieldName = "Person.Wohneinheit.Heizung", IconType = "AB" });
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Strom", Platzhalter = "WVStrom", FieldName = "Person.Wohneinheit.Strom", IconType = "AB" });
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Betriebskosten", Platzhalter = "WVBetriebskosten", FieldName = "Person.Wohneinheit.Betriebskosten", IconType = "AB" });
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Sonstige Kosten", Platzhalter = "WVSonstigeKosten", FieldName = "Person.Wohneinheit.SonstigeKosten", IconType = "AB" });
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Kaution", Platzhalter = "WVKaution", FieldName = "Person.Wohneinheit.Kaution", IconType = "AB" });
wohnung.Children.Add(new PlatzhalterDC() { Bezeichnung = "Zusatz", Platzhalter = "WVZusatz", FieldName = "Person.Wohneinheit.Zusatznotiz", IconType = "AB" });
personendaten.Children.Add(wohnung);
PlatzhalterDC sonstiges = new PlatzhalterDC()
{
Bezeichnung = "Sonstiges",
@@ -174,10 +193,8 @@ namespace BeWo.Service.Dokumentverwaltung
liste.AddRange(em.GetPlatzhalter());
liste.Add(personendaten);
liste.Add(adressdatenKlient);
liste.Add(vga);
//liste.Add(adressdatenOrganisation);
liste.Add(betreuung);
liste.Add(sonstiges);
return liste;

View File

@@ -34,8 +34,24 @@ namespace BeWo.Service.Dokumentverwaltung
employeedaten.Children.Add(new PlatzhalterDC { Bezeichnung = "Fax", Platzhalter = "MaFax", FieldName = "Person.Fax", IconType = "AB" });
employeedaten.Children.Add(new PlatzhalterDC { Bezeichnung = "E-Mail", Platzhalter = "MaEmail", FieldName = "Person.Mail", IconType = "AB" });
employeedaten.Children.Add(new PlatzhalterDC { Bezeichnung = "Handy", Platzhalter = "MaHandy", FieldName = "Person.Mobile", IconType = "AB" });
PlatzhalterDC adressdaten = new PlatzhalterDC()
{
Bezeichnung = "Adressdaten",
Children = new List<PlatzhalterDC>(),
IconType = "Home"
};
PlatzhalterDC strasse = new PlatzhalterDC() { Bezeichnung = "Straße", Platzhalter = "MaStrasse", IconType = "AB", FieldName = "Person.Address.Street" };
adressdaten.Children.Add(strasse);
PlatzhalterDC plz = new PlatzhalterDC() { Bezeichnung = "PLZ", Platzhalter = "MaPLZ", IconType = "AB", FieldName = "Person.Address.PostalCode" };
adressdaten.Children.Add(plz);
PlatzhalterDC ort = new PlatzhalterDC() { Bezeichnung = "Ort", Platzhalter = "MaOrt", IconType = "AB", FieldName = "Person.Address.Town" };
adressdaten.Children.Add(ort);
employeedaten.Children.Add(adressdaten);
liste.Add(employeedaten);
return liste;

View File

@@ -70,7 +70,7 @@ namespace BeWo.Service.Plugins
//t = "5351926758"; // Viva a Vida
//t = "2215396183"; // Diakonie Remscheid Lennep
//t = "5157599087"; // SHG Schwerte
//t = "4526293996"; // Fortis
t = "4526293996"; // Fortis
//t = "3647969417"; // Caritas Bottrop
//t = "3057313346"; // SSB Mainz
//t = "6246287823"; // BeWo Alsdorf
@@ -362,7 +362,7 @@ namespace BeWo.Service.Plugins
//t = "1372050368"; // Petra Wagner Matthes
//t = "1253359817"; // Lebenshilfe Bad Kreuznach e.V.
//t = "9696466498"; // Lebenshilfe Bad Kreuznach (Wohnstätte)
t = "3141157568"; // Lebenshilfe Bad Kreuznach (Familienunterstützender Dienst)
//t = "3141157568"; // Lebenshilfe Bad Kreuznach (Familienunterstützender Dienst)
//t = "6038574522"; // I-Wohl
//t = "2438529184"; // Alloheim Seniorenresidenzen SE
//t = "7564067748"; // SKM Aachen

View File

@@ -893,6 +893,42 @@ namespace BeWo.Service.ServiceImplementations
feed.Title = mgr.FeedTitle;
feed.Description = mgr.FeedDescription;
var t = PluginLoader.Tenant;
if (!String.IsNullOrEmpty(t))
{
//Liste aller Datenbanken pro Server
//https://support.bewoplaner.de/api/getcontractstate.php?ContractsState=app2.bewoplaner.de&CustomerIDs=1
var alleApp1 = "4190877552,4801617798,5620636022,4950382346,2547623489,6246287823,5380327510,3886054624,1234567890,1441747891,1106039294,1505148718,4199238586,1549622397,2994586539,1873138856,1420341656,5430005891,6712648331,1076891970,3785623125,1378137009,1992495802,5926081834,4378753169,5653806613,5484692276,6923790936,2214258555,3227700467,3341456098,3265049248,6601628227,2998118179,7138297573,9495336024,2499262621,5462295916,1733934665,5805202339,9290510010,1608775460,3915346496,3460972351,8562233401,6380958500,3184859776,3517812158,3460972350,7381352241,6297638711,2808556629,5120047701,3623837005,1000000000,8897605322,4525013596,8181286349,2301474784,9342168675,9278594862,4137042939,8027708435,7419804320";
var alleApp2 = "demo,1421021462,3196643272,2544632712,4917794021,9109849293,8719930557,6272871054,2215396183,9447917179,3890031575,9094672461,2463764327,1352143437,3522103738,2839619357,9893557471,4069072369,2954725299,9814444882,3563903598,2918696314,3010479871,7077286353,7564067748,3892746107,2000000000,7058292376,8828216586,1159580198,2356097460,6161292640,6884855402,8423627748,5509064354,3057313346,2181497347,7852961459,2599702516,6653973776,6322291780,7282396774,5761861730,9171211375,9381048759,0629004412,5687373602,8603970172,1676990640,1783511855,1701920223,2028095630,1062385308,1774789565,8947336185,3936475760,6265842607,3311520228,7107514623,5351926758,2235342307,9805564204,4434019324,3718732195,7923170615,5344902949,3647969417,4529320405,6463422907,7130228334,4941141927,6219220038,5518600303,4160851689,2927247138,9383760246,1172092025,6320805883,6149463003";
var alleApp6 = "3565931805,2727860898,6971328056,8251343124,5065709552,6819347851,2986016022,1750211065,6028314513,3640152169,4351087063,1102876860,4947061147,5578206856,6323001211,1378705749,6178735147,5929601293,3295440484,6082225533,9416221963,1262219859,6000000000,5850903700,5427523619,4293131072,7114701269,9815376800,5960095273,1549093609,8281327384,4820371076,5381886394,5798370140,2438529184,6916712798,6917917884,4817284046,3835353926,8366649557,1508800817,8283849714,9926705197,8323809196,2385915144,9318163880,2535794597,9518001524,1048483934,1193950621,1316958991,1422963536,9064234785,1147414607,3620355768,9430188510,4823067940,9394004017,5433105975,5169297106,1566251835,5240630948,4152581290,2594047883,8740758367,9734214365,9995011876,1253359817,7748694330,9678360705,4748304562,9389386079,5161991213,5595701056,8002913382,5208402821,6758396876,1011478760,3240672437,3629696651,2120989920,7951718431,9254115251,4368361336,3536079480,2976949196,5880845152,5722262183,5537187628,9388871209,7037547461,6860475645,7712740386,2105680746,5592509446,5315865694,2661610871,3208082132,4654766672,2387527289,3551932724,3217696911,7663765314,8242644560,8184278271,4148215029,2314784470,5076807716,6181807138,4052216789,1526158312";
if (feed.Items.Count < 4 && (alleApp1.Contains(t) || alleApp2.Contains(t) || alleApp6.Contains(t)))
{
var item = new RssItem();
item.Title = "BeWoPlaner Update Mobil Client";
feed.Items.Add(item);
if (alleApp2.Contains(t))
{
item.Date = new DateTime(2025, 07, 25);
item.Description = @"Sehr geehrte Kunden,
auf Ihrem Server wird am Wochenende bis zum 28.07.25 ein Update des Mobilklient(mobile BeWoPlaner Variante) eingespielt.";
}
else
{
item.Date = new DateTime(2025, 8, 6);
item.Description = @"Sehr geehrte Kunden,
auf Ihrem Server wurde ein Update des Mobilklient(mobile BeWoPlaner Variante) eingespielt.";
}
feed.Items = feed.Items.OrderByDescending(f => f.Date).ToList();
}
}
return feed;
}
catch (Exception)

View File

@@ -267,6 +267,7 @@ namespace BeWo.ServiceUtils.History
Person_Abbreviation = newPerson.Abbreviation,
Person_AufenthaltsStatus = newPerson.AufenthaltsStatus?.TypeDescription ?? "",
Person_DateOfBirth = newPerson.DateOfBirth,
Person_PlaceOfBirth = newPerson.PlaceOfBirth,
Person_FamilyStatus = newPerson.FamilyStatus,
Person_FirstName = newPerson.FirstName,
Person_Function = newPerson.Function?.TypeDescription ?? "",

View File

@@ -1373,4 +1373,11 @@ namespace BS.Shared
Assistent,
User
}
public enum VgaTypeEnum
{
Vga, //Vermittlung gemeinnütziger Arbeit
Asa, //Aufsuchendes Angebot? o.ä.
Tgv //Tagesgeldverwaltung
}
}

View File

@@ -32,6 +32,7 @@ namespace BS.Shared.Core
public static Dictionary<Enum, string> Wohnhilfe2Translation;
public static Dictionary<Enum, string> Gkv2Translation;
public static Dictionary<object, string> VgaType2Translation;
public static Dictionary<ValueListEntryType, String> ValueListEntryType2Header;
@@ -67,6 +68,8 @@ namespace BS.Shared.Core
InitGkvTranslation();
InitVgaTypeTranslation();
#region FamilyStatusTranslations
FamilyStatusTranslations = new Dictionary<object, String>
{
@@ -654,6 +657,7 @@ namespace BS.Shared.Core
MerkzeichenTranslations.DoForEach(p => AllTranslations.AddAndIgnoreDuplicates(p.Key, p.Value));
Wohnhilfe2Translation?.DoForEach(kv => AllTranslations.Add(kv.Key, kv.Value));
Gkv2Translation?.DoForEach(kv => AllTranslations.Add(kv.Key, kv.Value));
VgaType2Translation?.DoForEach(kv => AllTranslations.AddAndIgnoreDuplicates((VgaTypeEnum)kv.Key, kv.Value));
}
private static void InitUserRightTranslation()
@@ -1123,5 +1127,18 @@ namespace BS.Shared.Core
Gkv2Translation = dict;
}
private static void InitVgaTypeTranslation()
{
var dict = new Dictionary<object, string>();
dict.Add(VgaTypeEnum.Vga, Translator.Translate("VgA"));
dict.Add(VgaTypeEnum.Asa, Translator.Translate("ASA"));
dict.Add(VgaTypeEnum.Tgv, Translator.Translate("TGV"));
VgaType2Translation = dict;
}
}
}

View File

@@ -1,11 +1,13 @@
using System;
using System.Runtime.Serialization;
using BS.Shared.DataContracts.Compact;
namespace BS.Shared.DataContracts
{
[DataContract]
public class CustomerVermittlungArbeitDC : BeWoDataContract
{
[DataMember] public VgaTypeEnum VgaType { get; set; }
[DataMember] public string AktenzeichenGericht { get; set; }
[DataMember] public string EigenesAktenzeichen { get; set; }
[DataMember] public DateTime? Auftragseingang { get; set; }
@@ -18,8 +20,8 @@ namespace BS.Shared.DataContracts
[DataMember] public string Hinweis { get; set; }
[DataMember] public DateTime? Termin { get; set; }
[DataMember] public CustomerVermittlungBearbeitungsstatus? CustomerVermittlungBearbeitungsstatus { get; set; }
[DataMember] public string Auftragsruckgabe { get; set; }
[DataMember] public string Verlauf { get; set; }
[DataMember] public DateTime? Auftragsruckgabe { get; set; }
[DataMember] public ValueListEntryDC Verlauf { get; set; }
[DataMember] public decimal? AbgeleisteteStunden { get; set; }
[DataMember] public decimal? ErsparteHafttage { get; set; }
[DataMember] public decimal? GeleisteteRatenzahlung { get; set; }
@@ -41,6 +43,10 @@ namespace BS.Shared.DataContracts
[DataMember] public bool BesonderheitMehrfacheVermittlung { get; set; }
[DataMember] public bool BesonderheitVermittlungAusHaft { get; set; }
[DataMember] public bool BesonderheitDurchBGBWAufgesucht { get; set; }
[DataMember] public CompactOrganisationDC Auftraggeber { get; set; }
[DataMember] public CompactPersonDC AuftraggeberAnsprechpartner { get; set; }
[DataMember] public CompactOrganisationDC Einsatzstelle { get; set; }
[DataMember] public CompactPersonDC EinsatzstelleAnsprechpartner { get; set; }
}
public enum CustomerVermittlungBearbeitungsstatus

View File

@@ -22,6 +22,7 @@ namespace BS.Shared.DataContracts
[DataMember] public string BankName { get; set; }
[DataMember] public string Bic { get; set; }
[DataMember] public DateTime? DateOfBirth { get; set; }
[DataMember] public String PlaceOfBirth { get; set; }
[DataMember] public FamilyStatus? FamilyStatus { get; set; }
[DataMember] public string FirstName { get; set; }
[DataMember] public ValueListEntryDC Function { get; set; }