diff --git a/BeWo/BeWo.csproj b/BeWo/BeWo.csproj index a8f70db7e..0f9848168 100644 --- a/BeWo/BeWo.csproj +++ b/BeWo/BeWo.csproj @@ -327,6 +327,10 @@ Designer MSBuild:Compile + + Designer + MSBuild:Compile + MSBuild:Compile Designer @@ -1047,6 +1051,7 @@ + @@ -1159,6 +1164,9 @@ WohneinheitEditPopup.xaml + + CustomerFalldatenView.xaml + HilfeplanImportView.xaml diff --git a/BeWo/View/Detail/CustomerFalldatenView.xaml b/BeWo/View/Detail/CustomerFalldatenView.xaml new file mode 100644 index 000000000..0571af670 --- /dev/null +++ b/BeWo/View/Detail/CustomerFalldatenView.xaml @@ -0,0 +1,176 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/BeWo/View/Detail/CustomerFalldatenView.xaml.cs b/BeWo/View/Detail/CustomerFalldatenView.xaml.cs new file mode 100644 index 000000000..d61886969 --- /dev/null +++ b/BeWo/View/Detail/CustomerFalldatenView.xaml.cs @@ -0,0 +1,35 @@ +using BeWo.ViewModel; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace BeWo.View.Detail +{ + /// + /// Interaktionslogik für CustomerFalldatenView.xaml + /// + public partial class CustomerFalldatenView : UserControl + { + public CustomerVM ViewModel { get; set; } + + public CustomerFalldatenView(CustomerVM vM) + { + InitializeComponent(); + + ViewModel = vM; + + DataContext = ViewModel; + } + } +} diff --git a/BeWo/View/Detail/CustomerView.xaml b/BeWo/View/Detail/CustomerView.xaml index c40c4f076..a8385d3b0 100644 --- a/BeWo/View/Detail/CustomerView.xaml +++ b/BeWo/View/Detail/CustomerView.xaml @@ -606,7 +606,8 @@ - + + diff --git a/BeWo/View/Detail/CustomerView.xaml.cs b/BeWo/View/Detail/CustomerView.xaml.cs index ae98f4139..ad3562db2 100644 --- a/BeWo/View/Detail/CustomerView.xaml.cs +++ b/BeWo/View/Detail/CustomerView.xaml.cs @@ -1081,6 +1081,14 @@ namespace BeWo.View.Detail } } + private void tabitem_falldaten_Selected(object sender, RoutedEventArgs e) + { + if (tabitem_falldaten.Content == null) + { + tabitem_falldaten.Content = new CustomerFalldatenView(ViewModel); + } + } + private void tabitem_notizen_Selected(object sender, RoutedEventArgs e) { if (ViewModel.IsNew) diff --git a/BeWo/ViewModel/CustomerFalldatenVM.cs b/BeWo/ViewModel/CustomerFalldatenVM.cs new file mode 100644 index 000000000..2f9f89136 --- /dev/null +++ b/BeWo/ViewModel/CustomerFalldatenVM.cs @@ -0,0 +1,614 @@ +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.ComponentModel; +using System.Linq; +using System.Text; + +using BeWo.Core; +using BeWo.Validation; +using BeWo.View; +using BeWo.ViewModel.ListViewModel; + +using BS.Shared; +using BS.Shared.Core; +using BS.Shared.DataContracts; +using BS.Shared.DataContracts.Compact; +using BS.Shared.Extensions; + +namespace BeWo.ViewModel +{ + public class CustomerFalldatenVM : AbstractDCMapperVM + { + private string _EigenesAktenzeichen; + private DateTime _Auftragseingang; + private ValueListEntryDC _Auftragsherkunft; + private ValueListEntryDC _Vermittlungsgrundlage; + private decimal _Tagessatze; + private decimal _Tagessatzhohe; + private decimal _HoheDerGeldstrafe; + private decimal _ZuLeistendeArbeitsstunden; + private string _Hinweis; + private DateTime _Termin; + private CustomerFalldatenBearbeitungsstatus _FalldatenBearbeitungsstatus; + private string _Auftragsruckgabe; + private string _Verlauf; + private decimal _AbgeleisteteStunden; + private decimal _ErsparteHafttage; + private decimal _GeleisteteRatenzahlung; + private string _Bemerkung; + private decimal _GeleisteteEinmalzahlung; + + private bool _GrundArbeitsunfahig; + private bool _GrundSuchtproblem; + private bool _GrundPsychischeProbleme; + private bool _GrundKeineMotivation; + private bool _GrundInHaft; + private bool _GrundUnbekannt; + private bool _GrundKeinKontakt; + private bool _GrundNichtAngetreten; + private bool _GrundAbbruchDerTatigkeit; + private bool _GrundWiderruf; + private bool _Grund459StPO; + private bool _GrundAusbleibenDerZahlung; + + private bool _BesonderheitMehrfacheBeauftragung; + private bool _BesonderheitMehrfacheVermittlung; + private bool _BesonderheitVermittlungAusHaft; + private bool _BesonderheitDurchBGBWAufgesucht; + + public CustomerFalldatenVM(CustomerFalldatenDC dc) : base(dc, dc.IsNew) + { + + } + + public string EigenesAktenzeichen + { + get { return _EigenesAktenzeichen; } + set + { + if (!AreDifferent(_EigenesAktenzeichen, value)) + return; + + _EigenesAktenzeichen = value; + StoreDirtyInformation(AreDifferent(DataContract.EigenesAktenzeichen, value), nameof(EigenesAktenzeichen)); + FirePropertyChanged(nameof(EigenesAktenzeichen)); + } + } + + public DateTime Auftragseingang + { + get { return _Auftragseingang; } + set + { + if (!AreDifferent(_Auftragseingang, value)) + return; + + _Auftragseingang = value; + StoreDirtyInformation(AreDifferent(DataContract.Auftragseingang, value), nameof(Auftragseingang)); + FirePropertyChanged(nameof(Auftragseingang)); + } + } + + public ValueListEntryDC Auftragsherkunft + { + get { return _Auftragsherkunft; } + set + { + if (!AreDifferent(_Auftragsherkunft, value)) + return; + + _Auftragsherkunft = value; + StoreDirtyInformation(AreDifferent(DataContract.Auftragsherkunft, value), nameof(Auftragsherkunft)); + FirePropertyChanged(nameof(Auftragsherkunft)); + } + } + + public ValueListEntryDC Vermittlungsgrundlage + { + get { return _Vermittlungsgrundlage; } + set + { + if (!AreDifferent(_Vermittlungsgrundlage, value)) + return; + + _Vermittlungsgrundlage = value; + StoreDirtyInformation(AreDifferent(DataContract.Vermittlungsgrundlage, value), nameof(Vermittlungsgrundlage)); + FirePropertyChanged(nameof(Vermittlungsgrundlage)); + } + } + + public decimal Tagessatze + { + get { return _Tagessatze; } + set + { + if (!AreDifferent(_Tagessatze, value)) + return; + + _Tagessatze = value; + StoreDirtyInformation(AreDifferent(DataContract.Tagessatze, value), nameof(Tagessatze)); + FirePropertyChanged(nameof(Tagessatze)); + FirePropertyChanged(nameof(HoheDerGeldstrafe)); + } + } + + public decimal Tagessatzhohe + { + get { return _Tagessatzhohe; } + set + { + if (!AreDifferent(_Tagessatzhohe, value)) + return; + + _Tagessatzhohe = value; + StoreDirtyInformation(AreDifferent(DataContract.Tagessatzhohe, value), nameof(Tagessatzhohe)); + FirePropertyChanged(nameof(Tagessatzhohe)); + FirePropertyChanged(nameof(HoheDerGeldstrafe)); + } + } + + public decimal HoheDerGeldstrafe + { + get => Tagessatze + * Tagessatzhohe; + } + + public decimal ZuLeistendeArbeitsstunden + { + get { return _ZuLeistendeArbeitsstunden; } + set + { + if (!AreDifferent(_ZuLeistendeArbeitsstunden, value)) + return; + + _ZuLeistendeArbeitsstunden = value; + StoreDirtyInformation(AreDifferent(DataContract.ZuLeistendeArbeitsstunden, value), nameof(ZuLeistendeArbeitsstunden)); + FirePropertyChanged(nameof(ZuLeistendeArbeitsstunden)); + } + } + + public string Hinweis + { + get { return _Hinweis; } + set + { + if (!AreDifferent(_Hinweis, value)) + return; + + _Hinweis = value; + StoreDirtyInformation(AreDifferent(DataContract.Hinweis, value), nameof(Hinweis)); + FirePropertyChanged(nameof(Hinweis)); + } + } + + public DateTime Termin + { + get { return _Termin; } + set + { + if (!AreDifferent(_Termin, value)) + return; + + _Termin = value; + StoreDirtyInformation(AreDifferent(DataContract.Termin, value), nameof(Termin)); + FirePropertyChanged(nameof(Termin)); + } + } + + public CustomerFalldatenBearbeitungsstatus FalldatenBearbeitungsstatus + { + get { return _FalldatenBearbeitungsstatus; } + set + { + if (!AreDifferent(_FalldatenBearbeitungsstatus, value)) + return; + + _FalldatenBearbeitungsstatus = value; + StoreDirtyInformation(AreDifferent(DataContract.FalldatenBearbeitungsstatus, value), nameof(FalldatenBearbeitungsstatus)); + FirePropertyChanged(nameof(FalldatenBearbeitungsstatus)); + } + } + + public string Auftragsruckgabe + { + get { return _Auftragsruckgabe; } + set + { + if (!AreDifferent(_Auftragsruckgabe, value)) + return; + + _Auftragsruckgabe = value; + StoreDirtyInformation(AreDifferent(DataContract.Auftragsruckgabe, value), nameof(Auftragsruckgabe)); + FirePropertyChanged(nameof(Auftragsruckgabe)); + } + } + + public string Verlauf + { + get { return _Verlauf; } + set + { + if (!AreDifferent(_Verlauf, value)) + return; + + _Verlauf = value; + StoreDirtyInformation(AreDifferent(DataContract.Verlauf, value), nameof(Verlauf)); + FirePropertyChanged(nameof(Verlauf)); + } + } + + public decimal AbgeleisteteStunden + { + get { return _AbgeleisteteStunden; } + set + { + if (!AreDifferent(_AbgeleisteteStunden, value)) + return; + + _AbgeleisteteStunden = value; + StoreDirtyInformation(AreDifferent(DataContract.AbgeleisteteStunden, value), nameof(AbgeleisteteStunden)); + FirePropertyChanged(nameof(AbgeleisteteStunden)); + } + } + + public decimal ErsparteHafttage + { + get { return _ErsparteHafttage; } + set + { + if (!AreDifferent(_ErsparteHafttage, value)) + return; + + _ErsparteHafttage = value; + StoreDirtyInformation(AreDifferent(DataContract.ErsparteHafttage, value), nameof(ErsparteHafttage)); + FirePropertyChanged(nameof(ErsparteHafttage)); + } + } + + public decimal GeleisteteRatenzahlung + { + get { return _GeleisteteRatenzahlung; } + set + { + if (!AreDifferent(_GeleisteteRatenzahlung, value)) + return; + + _GeleisteteRatenzahlung = value; + StoreDirtyInformation(AreDifferent(DataContract.GeleisteteRatenzahlung, value), nameof(GeleisteteRatenzahlung)); + FirePropertyChanged(nameof(GeleisteteRatenzahlung)); + } + } + + public string Bemerkung + { + get { return _Bemerkung; } + set + { + if (!AreDifferent(_Bemerkung, value)) + return; + + _Bemerkung = value; + StoreDirtyInformation(AreDifferent(DataContract.Bemerkung, value), nameof(Bemerkung)); + FirePropertyChanged(nameof(Bemerkung)); + } + } + + public decimal GeleisteteEinmalzahlung + { + get { return _GeleisteteEinmalzahlung; } + set + { + if (!AreDifferent(_GeleisteteEinmalzahlung, value)) + return; + + _GeleisteteEinmalzahlung = value; + StoreDirtyInformation(AreDifferent(DataContract.GeleisteteEinmalzahlung, value), nameof(GeleisteteEinmalzahlung)); + FirePropertyChanged(nameof(GeleisteteEinmalzahlung)); + } + } + + public bool GrundArbeitsunfahig + { + get { return _GrundArbeitsunfahig; } + set + { + if (!AreDifferent(_GrundArbeitsunfahig, value)) + return; + + _GrundArbeitsunfahig = value; + StoreDirtyInformation(AreDifferent(DataContract.GrundArbeitsunfahig, value), nameof(GrundArbeitsunfahig)); + FirePropertyChanged(nameof(GrundArbeitsunfahig)); + } + } + + public bool GrundSuchtproblem + { + get { return _GrundSuchtproblem; } + set + { + if (!AreDifferent(_GrundSuchtproblem, value)) + return; + + _GrundSuchtproblem = value; + StoreDirtyInformation(AreDifferent(DataContract.GrundSuchtproblem, value), nameof(GrundSuchtproblem)); + FirePropertyChanged(nameof(GrundSuchtproblem)); + } + } + + public bool GrundPsychischeProbleme + { + get { return _GrundPsychischeProbleme; } + set + { + if (!AreDifferent(_GrundPsychischeProbleme, value)) + return; + + _GrundPsychischeProbleme = value; + StoreDirtyInformation(AreDifferent(DataContract.GrundPsychischeProbleme, value), nameof(GrundPsychischeProbleme)); + FirePropertyChanged(nameof(GrundPsychischeProbleme)); + } + } + + public bool GrundKeineMotivation + { + get { return _GrundKeineMotivation; } + set + { + if (!AreDifferent(_GrundKeineMotivation, value)) + return; + + _GrundKeineMotivation = value; + StoreDirtyInformation(AreDifferent(DataContract.GrundKeineMotivation, value), nameof(GrundKeineMotivation)); + FirePropertyChanged(nameof(GrundKeineMotivation)); + } + } + + public bool GrundInHaft + { + get { return _GrundInHaft; } + set + { + if (!AreDifferent(_GrundInHaft, value)) + return; + + _GrundInHaft = value; + StoreDirtyInformation(AreDifferent(DataContract.GrundInHaft, value), nameof(GrundInHaft)); + FirePropertyChanged(nameof(GrundInHaft)); + } + } + + public bool GrundUnbekannt + { + get { return _GrundUnbekannt; } + set + { + if (!AreDifferent(_GrundUnbekannt, value)) + return; + + _GrundUnbekannt = value; + StoreDirtyInformation(AreDifferent(DataContract.GrundUnbekannt, value), nameof(GrundUnbekannt)); + FirePropertyChanged(nameof(GrundUnbekannt)); + } + } + + public bool GrundKeinKontakt + { + get { return _GrundKeinKontakt; } + set + { + if (!AreDifferent(_GrundKeinKontakt, value)) + return; + + _GrundKeinKontakt = value; + StoreDirtyInformation(AreDifferent(DataContract.GrundKeinKontakt, value), nameof(GrundKeinKontakt)); + FirePropertyChanged(nameof(GrundKeinKontakt)); + } + } + + public bool GrundNichtAngetreten + { + get { return _GrundNichtAngetreten; } + set + { + if (!AreDifferent(_GrundNichtAngetreten, value)) + return; + + _GrundNichtAngetreten = value; + StoreDirtyInformation(AreDifferent(DataContract.GrundNichtAngetreten, value), nameof(GrundNichtAngetreten)); + FirePropertyChanged(nameof(GrundNichtAngetreten)); + } + } + + public bool GrundAbbruchDerTatigkeit + { + get { return _GrundAbbruchDerTatigkeit; } + set + { + if (!AreDifferent(_GrundAbbruchDerTatigkeit, value)) + return; + + _GrundAbbruchDerTatigkeit = value; + StoreDirtyInformation(AreDifferent(DataContract.GrundAbbruchDerTatigkeit, value), nameof(GrundAbbruchDerTatigkeit)); + FirePropertyChanged(nameof(GrundAbbruchDerTatigkeit)); + } + } + + public bool GrundWiderruf + { + get { return _GrundWiderruf; } + set + { + if (!AreDifferent(_GrundWiderruf, value)) + return; + + _GrundWiderruf = value; + StoreDirtyInformation(AreDifferent(DataContract.GrundWiderruf, value), nameof(GrundWiderruf)); + FirePropertyChanged(nameof(GrundWiderruf)); + } + } + + public bool Grund459StPO + { + get { return _Grund459StPO; } + set + { + if (!AreDifferent(_Grund459StPO, value)) + return; + + _Grund459StPO = value; + StoreDirtyInformation(AreDifferent(DataContract.Grund459StPO, value), nameof(Grund459StPO)); + FirePropertyChanged(nameof(Grund459StPO)); + } + } + + public bool GrundAusbleibenDerZahlung + { + get { return _GrundAusbleibenDerZahlung; } + set + { + if (!AreDifferent(_GrundAusbleibenDerZahlung, value)) + return; + + _GrundAusbleibenDerZahlung = value; + StoreDirtyInformation(AreDifferent(DataContract.GrundAusbleibenDerZahlung, value), nameof(GrundAusbleibenDerZahlung)); + FirePropertyChanged(nameof(GrundAusbleibenDerZahlung)); + } + } + + public bool BesonderheitMehrfacheBeauftragung + { + get { return _BesonderheitMehrfacheBeauftragung; } + set + { + if (!AreDifferent(_BesonderheitMehrfacheBeauftragung, value)) + return; + + _BesonderheitMehrfacheBeauftragung = value; + StoreDirtyInformation(AreDifferent(DataContract.BesonderheitMehrfacheBeauftragung, value), nameof(BesonderheitMehrfacheBeauftragung)); + FirePropertyChanged(nameof(BesonderheitMehrfacheBeauftragung)); + } + } + + public bool BesonderheitMehrfacheVermittlung + { + get { return _BesonderheitMehrfacheVermittlung; } + set + { + if (!AreDifferent(_BesonderheitMehrfacheVermittlung, value)) + return; + + _BesonderheitMehrfacheVermittlung = value; + StoreDirtyInformation(AreDifferent(DataContract.BesonderheitMehrfacheVermittlung, value), nameof(BesonderheitMehrfacheVermittlung)); + FirePropertyChanged(nameof(BesonderheitMehrfacheVermittlung)); + } + } + + public bool BesonderheitVermittlungAusHaft + { + get { return _BesonderheitVermittlungAusHaft; } + set + { + if (!AreDifferent(_BesonderheitVermittlungAusHaft, value)) + return; + + _BesonderheitVermittlungAusHaft = value; + StoreDirtyInformation(AreDifferent(DataContract.BesonderheitVermittlungAusHaft, value), nameof(BesonderheitVermittlungAusHaft)); + FirePropertyChanged(nameof(BesonderheitVermittlungAusHaft)); + } + } + + public bool BesonderheitDurchBGBWAufgesucht + { + get { return _BesonderheitDurchBGBWAufgesucht; } + set + { + if (!AreDifferent(_BesonderheitDurchBGBWAufgesucht, value)) + return; + + _BesonderheitDurchBGBWAufgesucht = value; + StoreDirtyInformation(AreDifferent(DataContract.BesonderheitDurchBGBWAufgesucht, value), nameof(BesonderheitDurchBGBWAufgesucht)); + FirePropertyChanged(nameof(BesonderheitDurchBGBWAufgesucht)); + } + } + + protected override void InitByDataContract(CustomerFalldatenDC pDataContract) + { + _EigenesAktenzeichen = pDataContract.EigenesAktenzeichen; + _Auftragseingang = pDataContract.Auftragseingang; + _Auftragsherkunft = pDataContract.Auftragsherkunft; + _Vermittlungsgrundlage = pDataContract.Vermittlungsgrundlage; + _Tagessatze = pDataContract.Tagessatze; + _Tagessatzhohe = pDataContract.Tagessatzhohe; + _HoheDerGeldstrafe = pDataContract.HoheDerGeldstrafe; + _ZuLeistendeArbeitsstunden = pDataContract.ZuLeistendeArbeitsstunden; + _Hinweis = pDataContract.Hinweis; + _Termin = pDataContract.Termin; + _FalldatenBearbeitungsstatus = pDataContract.FalldatenBearbeitungsstatus; + _Auftragsruckgabe = pDataContract.Auftragsruckgabe; + _Verlauf = pDataContract.Verlauf; + _AbgeleisteteStunden = pDataContract.AbgeleisteteStunden; + _ErsparteHafttage = pDataContract.ErsparteHafttage; + _GeleisteteRatenzahlung = pDataContract.GeleisteteRatenzahlung; + _Bemerkung = pDataContract.Bemerkung; + _GeleisteteEinmalzahlung = pDataContract.GeleisteteEinmalzahlung; + _GrundArbeitsunfahig = pDataContract.GrundArbeitsunfahig; + _GrundSuchtproblem = pDataContract.GrundSuchtproblem; + _GrundPsychischeProbleme = pDataContract.GrundPsychischeProbleme; + _GrundKeineMotivation = pDataContract.GrundKeineMotivation; + _GrundInHaft = pDataContract.GrundInHaft; + _GrundUnbekannt = pDataContract.GrundUnbekannt; + _GrundKeinKontakt = pDataContract.GrundKeinKontakt; + _GrundNichtAngetreten = pDataContract.GrundNichtAngetreten; + _GrundAbbruchDerTatigkeit = pDataContract.GrundAbbruchDerTatigkeit; + _GrundWiderruf = pDataContract.GrundWiderruf; + _Grund459StPO = pDataContract.Grund459StPO; + _GrundAusbleibenDerZahlung = pDataContract.GrundAusbleibenDerZahlung; + _BesonderheitMehrfacheBeauftragung = pDataContract.BesonderheitMehrfacheBeauftragung; + _BesonderheitMehrfacheVermittlung = pDataContract.BesonderheitMehrfacheVermittlung; + _BesonderheitVermittlungAusHaft = pDataContract.BesonderheitVermittlungAusHaft; + _BesonderheitDurchBGBWAufgesucht = pDataContract.BesonderheitDurchBGBWAufgesucht; + } + + protected override CustomerFalldatenDC MapToDataContract(CustomerFalldatenDC pDataContract, bool doCommit) + { + pDataContract.EigenesAktenzeichen = _EigenesAktenzeichen; + pDataContract.Auftragseingang = _Auftragseingang; + pDataContract.Auftragsherkunft = _Auftragsherkunft; + pDataContract.Vermittlungsgrundlage = _Vermittlungsgrundlage; + pDataContract.Tagessatze = _Tagessatze; + pDataContract.Tagessatzhohe = _Tagessatzhohe; + pDataContract.HoheDerGeldstrafe = _HoheDerGeldstrafe; + pDataContract.ZuLeistendeArbeitsstunden = _ZuLeistendeArbeitsstunden; + pDataContract.Hinweis = _Hinweis; + pDataContract.Termin = _Termin; + pDataContract.FalldatenBearbeitungsstatus = _FalldatenBearbeitungsstatus; + pDataContract.Auftragsruckgabe = _Auftragsruckgabe; + pDataContract.Verlauf = _Verlauf; + pDataContract.AbgeleisteteStunden = _AbgeleisteteStunden; + pDataContract.ErsparteHafttage = _ErsparteHafttage; + pDataContract.GeleisteteRatenzahlung = _GeleisteteRatenzahlung; + pDataContract.Bemerkung = _Bemerkung; + pDataContract.GeleisteteEinmalzahlung = _GeleisteteEinmalzahlung; + pDataContract.GrundArbeitsunfahig = _GrundArbeitsunfahig; + pDataContract.GrundSuchtproblem = _GrundSuchtproblem; + pDataContract.GrundPsychischeProbleme = _GrundPsychischeProbleme; + pDataContract.GrundKeineMotivation = _GrundKeineMotivation; + pDataContract.GrundInHaft = _GrundInHaft; + pDataContract.GrundUnbekannt = _GrundUnbekannt; + pDataContract.GrundKeinKontakt = _GrundKeinKontakt; + pDataContract.GrundNichtAngetreten = _GrundNichtAngetreten; + pDataContract.GrundAbbruchDerTatigkeit = _GrundAbbruchDerTatigkeit; + pDataContract.GrundWiderruf = _GrundWiderruf; + pDataContract.Grund459StPO = _Grund459StPO; + pDataContract.GrundAusbleibenDerZahlung = _GrundAusbleibenDerZahlung; + pDataContract.BesonderheitMehrfacheBeauftragung = _BesonderheitMehrfacheBeauftragung; + pDataContract.BesonderheitMehrfacheVermittlung = _BesonderheitMehrfacheVermittlung; + pDataContract.BesonderheitVermittlungAusHaft = _BesonderheitVermittlungAusHaft; + pDataContract.BesonderheitDurchBGBWAufgesucht = _BesonderheitDurchBGBWAufgesucht; + + return pDataContract; + } + } +} + diff --git a/BeWo/ViewModel/CustomerVM.cs b/BeWo/ViewModel/CustomerVM.cs index 807601179..aed8c3961 100644 --- a/BeWo/ViewModel/CustomerVM.cs +++ b/BeWo/ViewModel/CustomerVM.cs @@ -236,6 +236,7 @@ namespace BeWo.ViewModel private ObservableSortCollection _EintragKategorien; private SubstitutionNeed _SubstitutionNeed; + private CustomerFalldatenVM _CustomerFalldatenVM; public CustomerVM(CustomerDC pDataContract, IEnumerable pValueList, List pPossibleASCs, List pPossibleASVs, List pPossibleMedArten) : base(pDataContract, pDataContract.CustomerOid == null) @@ -1831,9 +1832,22 @@ namespace BeWo.ViewModel } } - #region Medikamentenverordnungslisten + public CustomerFalldatenVM CustomerFalldatenVM + { + get { return _CustomerFalldatenVM; } - private MedikamentenverordnungslisteListVM _MedVerordnungslisten; + set + { + if (!AreDifferent(_CustomerFalldatenVM, value)) + return; + _CustomerFalldatenVM = value; + FirePropertyChanged(nameof(CustomerFalldatenVM)); + } + } + + #region Medikamentenverordnungslisten + + private MedikamentenverordnungslisteListVM _MedVerordnungslisten; public MedikamentenverordnungslisteListVM MedVerordnungslisten { @@ -2066,7 +2080,9 @@ namespace BeWo.ViewModel } } - EnvironmentPersons = VMFactory.CreateCustomerEnvironmentPersonRelListVM(dcListUmfeld, ValueListEntryType.EnvironmentPersonType); + CustomerFalldatenVM = new CustomerFalldatenVM(pDataContract.CustomerFalldatenDC ?? (pDataContract.CustomerFalldatenDC = new CustomerFalldatenDC(true))); + + EnvironmentPersons = VMFactory.CreateCustomerEnvironmentPersonRelListVM(dcListUmfeld, ValueListEntryType.EnvironmentPersonType); EnvironmentPersonsWithFamily = VMFactory.CreateCustomerEnvironmentPersonRelListVM(dcListFamily, ValueListEntryType.RoleInFamily); EnvironmentOrganisations = VMFactory.CreateCustomerEnvironmentOrganisationRelListVM(pDataContract.EnvironmentOrganisations ?? (pDataContract.EnvironmentOrganisations = new List())); @@ -2146,6 +2162,8 @@ namespace BeWo.ViewModel pDataContract.SubstitutionNeed = _SubstitutionNeed; pDataContract.AufenthaltGueltigBis = _AufenthaltGueltigBis; + pDataContract.CustomerFalldatenDC = _CustomerFalldatenVM.CommitToDataContract(); + if (_MerkzeichenListe != null) { pDataContract.MerkzeichenListe = _MerkzeichenListe.ToList(); diff --git a/Shared/DataContracts/CustomerDC.cs b/Shared/DataContracts/CustomerDC.cs index 2d447bce1..ad5701bed 100644 --- a/Shared/DataContracts/CustomerDC.cs +++ b/Shared/DataContracts/CustomerDC.cs @@ -215,5 +215,8 @@ namespace BS.Shared.DataContracts [DataMember] public string VersichertenStatus { get; set; } + + [DataMember] + public CustomerFalldatenDC CustomerFalldatenDC { get; set; } } } \ No newline at end of file diff --git a/Shared/DataContracts/CustomerFalldatenDC.cs b/Shared/DataContracts/CustomerFalldatenDC.cs new file mode 100644 index 000000000..f7e5b5db9 --- /dev/null +++ b/Shared/DataContracts/CustomerFalldatenDC.cs @@ -0,0 +1,65 @@ +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; + +using BS.Shared.Core; +using BS.Shared.DataContracts.Compact; + +namespace BS.Shared.DataContracts +{ + [DataContract] + public class CustomerFalldatenDC : IDataContract + { + public bool IsNew { get; set; } + + public CustomerFalldatenDC() + { + + } + + public CustomerFalldatenDC(bool isNew) + { + IsNew = isNew; + } + + [DataMember] public string EigenesAktenzeichen { get; set; } + [DataMember] public DateTime Auftragseingang { get; set; } + [DataMember] public ValueListEntryDC Auftragsherkunft { get; set; } + [DataMember] public ValueListEntryDC Vermittlungsgrundlage { get; set; } + [DataMember] public decimal Tagessatze { get; set; } + [DataMember] public decimal Tagessatzhohe { get; set; } + [DataMember] public decimal HoheDerGeldstrafe { get; set; } + [DataMember] public decimal ZuLeistendeArbeitsstunden { get; set; } + [DataMember] public string Hinweis { get; set; } + [DataMember] public DateTime Termin { get; set; } + [DataMember] public CustomerFalldatenBearbeitungsstatus FalldatenBearbeitungsstatus { get; set; } + [DataMember] public string Auftragsruckgabe { get; set; } + [DataMember] public string Verlauf { get; set; } + [DataMember] public decimal AbgeleisteteStunden { get; set; } + [DataMember] public decimal ErsparteHafttage { get; set; } + [DataMember] public decimal GeleisteteRatenzahlung { get; set; } + [DataMember] public string Bemerkung { get; set; } + [DataMember] public decimal GeleisteteEinmalzahlung { get; set; } + + [DataMember] public bool GrundArbeitsunfahig { get; set; } + [DataMember] public bool GrundSuchtproblem { get; set; } + [DataMember] public bool GrundPsychischeProbleme { get; set; } + [DataMember] public bool GrundKeineMotivation { get; set; } + [DataMember] public bool GrundInHaft { get; set; } + [DataMember] public bool GrundUnbekannt { get; set; } + [DataMember] public bool GrundKeinKontakt { get; set; } + [DataMember] public bool GrundNichtAngetreten { get; set; } + [DataMember] public bool GrundAbbruchDerTatigkeit { get; set; } + [DataMember] public bool GrundWiderruf { get; set; } + /// + /// Strafprozess + /// + [DataMember] public bool Grund459StPO { get; set; } + [DataMember] public bool GrundAusbleibenDerZahlung { get; set; } + + [DataMember] public bool BesonderheitMehrfacheBeauftragung { get; set; } + [DataMember] public bool BesonderheitMehrfacheVermittlung { get; set; } + [DataMember] public bool BesonderheitVermittlungAusHaft { get; set; } + [DataMember] public bool BesonderheitDurchBGBWAufgesucht { get; set; } + } +} \ No newline at end of file diff --git a/Shared/Shared.csproj b/Shared/Shared.csproj index ebf12b264..abeaf70b6 100644 --- a/Shared/Shared.csproj +++ b/Shared/Shared.csproj @@ -170,6 +170,7 @@ +