69 lines
1.9 KiB
C#
69 lines
1.9 KiB
C#
using System.Collections.Generic;
|
|
using BeWo.Validation;
|
|
using BeWo.ViewModel;
|
|
using BeWo.ViewModel.ListViewModel;
|
|
using BS.Shared.DataContracts;
|
|
|
|
namespace BeWo.SchulbegleitenderDienst.ViewModel
|
|
{
|
|
public class SbdConfigVM : AbstractDCMapperVM<SbdConfigDC>
|
|
{
|
|
public static string PropertyName_Stundensaetze = "Stundensaetze";
|
|
public static string PropertyName_Feiertage = "Feiertage";
|
|
|
|
private CostRatePeriodListVM _Stundensaetze;
|
|
private FeiertagListVM _Feiertage;
|
|
|
|
public SbdConfigVM(SbdConfigDC pDC) : base(pDC, false) { }
|
|
|
|
public override bool IsDirty
|
|
{
|
|
get
|
|
{
|
|
if (BS.Shared.Core.Utils.IsAnyNull(Stundensaetze, Feiertage))
|
|
{
|
|
return false;
|
|
}
|
|
|
|
return base.IsDirty || Stundensaetze.IsDirty || Feiertage.IsDirty;
|
|
}
|
|
}
|
|
|
|
public CostRatePeriodListVM Stundensaetze
|
|
{
|
|
get { return _Stundensaetze; }
|
|
|
|
set
|
|
{
|
|
_Stundensaetze = value;
|
|
FirePropertyChanged(PropertyName_Stundensaetze);
|
|
}
|
|
}
|
|
|
|
public FeiertagListVM Feiertage
|
|
{
|
|
get => _Feiertage;
|
|
|
|
set
|
|
{
|
|
_Feiertage = value;
|
|
FirePropertyChanged(PropertyName_Feiertage);
|
|
}
|
|
}
|
|
|
|
protected override void InitByDataContract(SbdConfigDC pDataContract)
|
|
{
|
|
Stundensaetze = new CostRatePeriodListVM(pDataContract.Stundensaetze ?? (pDataContract.Stundensaetze = new List<CostRatePeriodDC>()));
|
|
Feiertage = new FeiertagListVM(pDataContract.FreieTage ?? (pDataContract.FreieTage = new List<FeiertagDC>()));
|
|
}
|
|
|
|
protected override SbdConfigDC MapToDataContract(SbdConfigDC pDataContract, bool doCommit)
|
|
{
|
|
pDataContract.Stundensaetze = _Stundensaetze.CopyToDCList(doCommit);
|
|
pDataContract.FreieTage = Feiertage.CopyToDCList(doCommit);
|
|
return pDataContract;
|
|
}
|
|
}
|
|
}
|
|
|