/// <summary> /// Danner ViewModel for en adressekonto. /// </summary> /// <param name="regnskabViewModel">ViewModel for regnskabet, som adressekontoen skal være tilknyttet.</param> /// <param name="adressekontoModel">Model for adressekontoen.</param> /// <param name="displayName">Navn for ViewModel, som kan benyttes til visning i brugergrænsefladen.</param> /// <param name="image">Billede, der illustrerer en adressekontoen.</param> /// <param name="finansstyringRepository">Implementering af repository til finansstyring.</param> /// <param name="exceptionHandlerViewModel">Implementering af ViewModel for en exceptionhandler.</param> public AdressekontoViewModel(IRegnskabViewModel regnskabViewModel, IAdressekontoModel adressekontoModel, string displayName, byte[] image, IFinansstyringRepository finansstyringRepository, IExceptionHandlerViewModel exceptionHandlerViewModel) { if (regnskabViewModel == null) { throw new ArgumentNullException("regnskabViewModel"); } if (adressekontoModel == null) { throw new ArgumentNullException("adressekontoModel"); } if (string.IsNullOrEmpty(displayName)) { throw new ArgumentNullException("displayName"); } if (image == null) { throw new ArgumentNullException("image"); } if (finansstyringRepository == null) { throw new ArgumentNullException("finansstyringRepository"); } if (exceptionHandlerViewModel == null) { throw new ArgumentNullException("exceptionHandlerViewModel"); } _regnskabViewModel = regnskabViewModel; _adressekontoModel = adressekontoModel; _adressekontoModel.PropertyChanged += PropertyChangedOnAdressekontoModelEventHandler; _displayName = displayName; _image = image; _finansstyringRepository = finansstyringRepository; _exceptionHandlerViewModel = exceptionHandlerViewModel; }
/// <summary> /// Danner en ViewModel for en linje, der kan indgå i årsopgørelsen i et givent regnskab og som er baseret på kontogruppen til budgetkonti. /// </summary> /// <param name="regnskabViewModel">ViewModel for regnskabet, hvori linjen skal indgå i årsopgørelsen.</param> /// <returns>ViewModel for en linje, der kan indgå i årsopgørelsen i det givne regnskab.</returns> public virtual IOpgørelseViewModel CreateOpgørelseslinje(IRegnskabViewModel regnskabViewModel) { if (regnskabViewModel == null) { throw new ArgumentNullException("regnskabViewModel"); } return(new OpgørelseViewModel(regnskabViewModel, Model, ExceptionHandler)); }
/// <summary> /// Danner en ViewModel for en linje, der kan indgå i balancen til et givent regnskab og som er baseret på kontogruppen. /// </summary> /// <param name="regnskabViewModel">ViewModel for regnskabet, hvori linjen skal indgå i balancen.</param> /// <returns>ViewModel for en linje, der kan indgå i balancen i det givne regnskab.</returns> public virtual IBalanceViewModel CreateBalancelinje(IRegnskabViewModel regnskabViewModel) { if (regnskabViewModel == null) { throw new ArgumentNullException("regnskabViewModel"); } return(new BalanceViewModel(regnskabViewModel, Model, ExceptionHandler)); }
/// <summary> /// Tilføjer et regnskab til listen af regnskaber. /// </summary> /// <param name="regnskab">ViewModel for regnskabet, der skal tilføjes listen af regnskaber.</param> public virtual void RegnskabAdd(IRegnskabViewModel regnskab) { if (regnskab == null) { throw new ArgumentNullException("regnskab"); } regnskab.PropertyChanged += PropertyChangedOnRegnskabViewModelEventHandler; _regnskaber.Add(regnskab); }
/// <summary> /// Danner en ViewModel til en linje i opgørelsen. /// </summary> /// <param name="regnskabViewModel">ViewModel for regnskabet, som opgørelseslinjen er tilknyttet.</param> /// <param name="budgetkontogruppeModel">Model for gruppen af budgetkonti, som opgørelseslinjen baserer sig på.</param> /// <param name="exceptionHandlerViewModel">Implementering af ViewModel for exceptionhandleren.</param> public OpgørelseViewModel(IRegnskabViewModel regnskabViewModel, IBudgetkontogruppeModel budgetkontogruppeModel, IExceptionHandlerViewModel exceptionHandlerViewModel) : base(budgetkontogruppeModel, exceptionHandlerViewModel) { if (regnskabViewModel == null) { throw new ArgumentNullException("regnskabViewModel"); } _regnskabViewModel = regnskabViewModel; _regnskabViewModel.PropertyChanged += PropertyChangedOnRegnskabViewModelEventHandler; }
/// <summary> /// Danner ViewModel for en bogføringslinje. /// </summary> /// <param name="regnskabViewModel">ViewModel for regnskabet, som bogføringslinjen skal være tilknyttet.</param> /// <param name="bogføringslinjeModel">Model for bogføringslinjen.</param> public BogføringslinjeViewModel(IRegnskabViewModel regnskabViewModel, IBogføringslinjeModel bogføringslinjeModel) { if (regnskabViewModel == null) { throw new ArgumentNullException("regnskabViewModel"); } if (bogføringslinjeModel == null) { throw new ArgumentNullException("bogføringslinjeModel"); } _regnskabViewModel = regnskabViewModel; _bogføringslinjeModel = bogføringslinjeModel; _bogføringslinjeModel.PropertyChanged += PropertyChangedOnBogføringslinjeModelEventHandler; }
/// <summary> /// Danner en ViewModel, der indeholder en advarsel ved en bogføring. /// </summary> /// <param name="regnskabViewModel">ViewModel for regnskabet, som advarslen skal være tilknyttet.</param> /// <param name="bogføringslinjeViewModel">ViewModel for bogføringslinjen, der har medført advarslen.</param> /// <param name="bogføringsadvarselModel">Model for advarslen, som er opstået ved bogføring.</param> /// <param name="tidspunkt">Tidspunkt for advarslen, som er opstået ved bogføring.</param> public BogføringsadvarselViewModel(IRegnskabViewModel regnskabViewModel, IReadOnlyBogføringslinjeViewModel bogføringslinjeViewModel, IBogføringsadvarselModel bogføringsadvarselModel, DateTime tidspunkt) { if (regnskabViewModel == null) { throw new ArgumentNullException("regnskabViewModel"); } if (bogføringslinjeViewModel == null) { throw new ArgumentNullException("bogføringslinjeViewModel"); } if (bogføringsadvarselModel == null) { throw new ArgumentNullException("bogføringsadvarselModel"); } _regnskabViewModel = regnskabViewModel; _bogføringslinjeViewModel = bogføringslinjeViewModel; _bogføringslinjeViewModel.PropertyChanged += PropertyChangedOnBogføringslinjeViewModelEventHandler; _bogføringsadvarselModel = bogføringsadvarselModel; _bogføringsadvarselModel.PropertyChanged += PropertyChangedOnBogføringsadvarselModelEventHandler; _tidspunkt = tidspunkt; }
/// <summary> /// Danner en ViewModel indeholdende grundlæggende kontooplysninger. /// </summary> /// <param name="regnskabViewModel">ViewModel for regnskabet, som kontoen er tilknyttet.</param> /// <param name="kontoModel">Model indeholdende grundlæggende kontooplysninger.</param> /// <param name="kontogruppeViewModel">ViewModel for kontogruppen.</param> /// <param name="displayName">Navn for ViewModel, som kan benyttes til visning i brugergrænsefladen.</param> /// <param name="image">Billede, der illustrerer en kontoen.</param> /// <param name="finansstyringRepository">Implementering af repositoryet til finansstyring.</param> /// <param name="exceptionHandlerViewModel">Implementering af ViewModel for exceptionhandleren.</param> protected KontoViewModelBase(IRegnskabViewModel regnskabViewModel, TKontoModel kontoModel, TKontogruppeViewModel kontogruppeViewModel, string displayName, byte[] image, IFinansstyringRepository finansstyringRepository, IExceptionHandlerViewModel exceptionHandlerViewModel) { if (regnskabViewModel == null) { throw new ArgumentNullException("regnskabViewModel"); } if (Equals(kontoModel, null)) { throw new ArgumentNullException("kontoModel"); } if (Equals(kontogruppeViewModel, null)) { throw new ArgumentNullException("kontogruppeViewModel"); } if (string.IsNullOrEmpty(displayName)) { throw new ArgumentNullException("displayName"); } if (image == null) { throw new ArgumentNullException("image"); } if (finansstyringRepository == null) { throw new ArgumentNullException("finansstyringRepository"); } if (exceptionHandlerViewModel == null) { throw new ArgumentNullException("exceptionHandlerViewModel"); } _regnskabViewModel = regnskabViewModel; _kontoModel = kontoModel; _kontoModel.PropertyChanged += PropertyChangedOnKontoModelEventHandler; _kontogruppeViewModel = kontogruppeViewModel; _displayName = displayName; _image = image; _erRegistreret = false; _finansstyringRepository = finansstyringRepository; _exceptionHandlerViewModel = exceptionHandlerViewModel; }
/// <summary> /// Danner en ViewModel til en budgetkonto. /// </summary> /// <param name="regnskabViewModel">ViewModel for regnskabet, som budgetkontoen er tilknyttet.</param> /// <param name="budgetkontoModel">Model for budgetkontoen.</param> /// <param name="budgetkontogruppeViewModel">ViewModel for kontogruppen til budgetkontoen.</param> /// <param name="finansstyringRepository">Implementering af repositoryet til finansstyring.</param> /// <param name="exceptionHandlerViewModel">Implementering af ViewModel for exceptionhandleren.</param> public BudgetkontoViewModel(IRegnskabViewModel regnskabViewModel, IBudgetkontoModel budgetkontoModel, IBudgetkontogruppeViewModel budgetkontogruppeViewModel, IFinansstyringRepository finansstyringRepository, IExceptionHandlerViewModel exceptionHandlerViewModel) : base(regnskabViewModel, budgetkontoModel, budgetkontogruppeViewModel, Resource.GetText(Text.BudgetAccount), Resource.GetEmbeddedResource("Images.Budgetkonto.png"), finansstyringRepository, exceptionHandlerViewModel) { }