Files
BeWoPlaner/BeWo/ViewModel/CustomerWohnhilfeVM.cs
Rene Evertz d69164fda2 Responsive Design
- Button Click muss noch IsLarge in Control triggern
2024-09-06 15:22:48 +02:00

137 lines
5.2 KiB
C#

using BeWo.ViewModel.Wohnhilfe;
using BS.Shared.Core;
using BS.Shared.DataContracts;
using BS.Shared.DataContracts.Wohnhilfe;
using DevExpress.Mvvm;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BeWo.ViewModel
{
public class CustomerWohnhilfeVM : AbstractDCMapperVM<CustomerWohnhilfeDC>
{
private static int counter = 0;
private string _Displayname;
private CustomerWohnhilfeBereichBundVM _BereichBundVM;
private CustomerWohnhilfeBereichEinkommenUndArbeitVM _BereichEinkommenUndArbeitVM;
private CustomerWohnhilfeBereichSozialeKontakteVM _BereichSozialeKontakteVM;
private CustomerWohnhilfeBereichSozialstrukturVM _BereichSozialstrukturVM;
public CustomerWohnhilfeVM()
{
_BereichBundVM = new CustomerWohnhilfeBereichBundVM();
_BereichBundVM.Verbandszugehorigkeit = BS.Shared.DataContracts.Wohnhilfe.Verbandszugehorigkeit.Arbeiterwohlfahrt;
_BereichBundVM.Geschlecht = BS.Shared.DataContracts.Wohnhilfe.Geschlecht.Mannlich;
_BereichBundVM.AlterAmStichtag = 1000;
_BereichEinkommenUndArbeitVM = new CustomerWohnhilfeBereichEinkommenUndArbeitVM();
_BereichSozialeKontakteVM = new CustomerWohnhilfeBereichSozialeKontakteVM();
_BereichSozialstrukturVM = new CustomerWohnhilfeBereichSozialstrukturVM();
}
public CustomerWohnhilfeVM(CustomerWohnhilfeDC dc) : base(dc, dc.Oid == null)
{
}
public override bool IsDirty => base.IsDirty ||
_BereichBundVM.IsDirty ||
_BereichEinkommenUndArbeitVM.IsDirty ||
_BereichSozialeKontakteVM.IsDirty ||
_BereichSozialstrukturVM.IsDirty;
public string Displayname
{
get { return _Displayname; }
set
{
if (!AreDifferent(Displayname, value))
return;
_Displayname = value;
FirePropertyChanged(nameof(Displayname));
}
}
public CustomerWohnhilfeBereichBundVM BereichBundVM
{
get { return _BereichBundVM; }
set
{
if (!AreDifferent(BereichBundVM, value))
return;
_BereichBundVM = value;
FirePropertyChanged(nameof(BereichBundVM));
}
}
public CustomerWohnhilfeBereichEinkommenUndArbeitVM BereichEinkommenUndArbeitVM
{
get { return _BereichEinkommenUndArbeitVM; }
set
{
if (!AreDifferent(BereichEinkommenUndArbeitVM, value))
return;
_BereichEinkommenUndArbeitVM = value;
FirePropertyChanged(nameof(BereichEinkommenUndArbeitVM));
}
}
public CustomerWohnhilfeBereichSozialeKontakteVM BereichSozialeKontakteVM
{
get { return _BereichSozialeKontakteVM; }
set
{
if (!AreDifferent(BereichSozialeKontakteVM, value))
return;
_BereichSozialeKontakteVM = value;
FirePropertyChanged(nameof(BereichSozialeKontakteVM));
}
}
public CustomerWohnhilfeBereichSozialstrukturVM BereichSozialstrukturVM
{
get { return _BereichSozialstrukturVM; }
set
{
if (!AreDifferent(BereichSozialstrukturVM, value))
return;
_BereichSozialstrukturVM = value;
FirePropertyChanged(nameof(BereichSozialstrukturVM));
}
}
protected override void InitByDataContract(CustomerWohnhilfeDC dc)
{
Displayname = "Test " + counter++;
_BereichBundVM = new CustomerWohnhilfeBereichBundVM(dc.BereichBundDC ?? (dc.BereichBundDC = new CustomerWohnhilfeBereichBundDC()));
_BereichEinkommenUndArbeitVM = new CustomerWohnhilfeBereichEinkommenUndArbeitVM(dc.BereichEinkommenUndArbeitDC ?? (dc.BereichEinkommenUndArbeitDC = new CustomerWohnhilfeBereichEinkommenUndArbeitDC())); ;
_BereichSozialeKontakteVM = new CustomerWohnhilfeBereichSozialeKontakteVM(dc.BereichSozialeKontakteDC ?? (dc.BereichSozialeKontakteDC = new CustomerWohnhilfeBereichSozialeKontakteDC()));
_BereichSozialstrukturVM = new CustomerWohnhilfeBereichSozialstrukturVM(dc.BereichSozialstrukturDC ?? (dc.BereichSozialstrukturDC = new CustomerWohnhilfeBereichSozialstrukturDC()));
}
protected override CustomerWohnhilfeDC MapToDataContract(CustomerWohnhilfeDC pDataContract, bool doCommit)
{
pDataContract.Dispalyname = _Displayname;
pDataContract.BereichBundDC = _BereichBundVM.CommitToDataContract();
pDataContract.BereichEinkommenUndArbeitDC = _BereichEinkommenUndArbeitVM.CommitToDataContract();
pDataContract.BereichSozialeKontakteDC = _BereichSozialeKontakteVM.CommitToDataContract();
pDataContract.BereichSozialstrukturDC = _BereichSozialstrukturVM.CommitToDataContract();
return pDataContract;
}
}
}