/// <summary>
 /// Haalt de id en repo/datasource binnen. Maakt de commando's op om het rapport te herfrissen en het rapporte te saven.
 /// </summary>
 /// <param name="idGebruiker"></param>
 /// <param name="repo"></param>
 public RapporteringViewModel(int idGebruiker, AandelenRepo repo)
 {
     this.idGebruiker  = idGebruiker;
     this.repo         = repo;
     CmdRefreshPreview = new CmdHelper(RefreshPreviewMd);
     CmdSaveFileMdHmtl = new CmdHelper(SaveFile, CanFileBeSaved);
 }
Example #2
0
 /// <summary>
 /// taken van de constructor:
 /// 1. haalt de repo(context) en id van de gebruiker binnen en stelt ze gelijk aan de velden in de klasse, om later gebruikt te worden.
 /// 2. Titel wordt verandert
 /// 3. Aandelen worden binnengehaald
 /// 4. Commando's voor het toevoegen, wijzigen en verwijderen worden aangemaakt
 /// </summary>
 /// <param name="repo">context waaruit alle data zal uit komen</param>
 /// <param name="idGebruiker">id van de gebruiker</param>
 /// <param name="portefeuille">Portefeuille waar uit de aandelen zullen uit komen.</param>
 public AandelenWindowViewModel(AandelenRepo repo, int idGebruiker, Portefeuille portefeuille)
 {
     this.repo           = repo;
     IdGebruiker         = idGebruiker;
     CurrentPortefeuille = portefeuille;
     Titel             = $"Aandelen uit portefeuille {CurrentPortefeuille.Naam}";
     AandelenCollectie = repo.GetAandelen(idGebruiker, portefeuille);
     CmdAddAandeel     = new CmdHelper(VoegAandeelToe, KanAandeelToevoegen);
     CmdRemoveAandeel  = new CmdHelper(VerwijderAandeel, KanAandeelVerwijderenUpdate);
     CmdUpdateAandeel  = new CmdHelper(UpdateAandeel, KanAandeelVerwijderenUpdate);
 }
Example #3
0
 /// <summary>
 /// viewmodel heeft de repo nodig om met de database te communiceren en de idGebruiker om te kunnen identificeren aan wie
 /// deze portefeuilles zijn. Maakt de verschillende commando's voor de crud operaties voor de portefeuilles.
 /// </summary>
 /// <param name="repo"></param>
 /// <param name="nieuweIDgebruiker"></param>
 public PortefeuillesWindowViewModel(AandelenRepo repo, int nieuweIDgebruiker)
 {
     this.repo        = repo;
     this.idGebruiker = nieuweIDgebruiker;
     //wordt gebruikt om de naam van de Gebruiker te hebben en deze hierna te tonen.
     NaamEigenaar = repo.GetEigenaar(nieuweIDgebruiker).Naam;
     //Stelt lijst van alle portefeuilles van de gebruiker
     PortefeuilleCollectie = repo.GetPortefeuilles(nieuweIDgebruiker);
     AddCmd    = new CmdHelper(AddPortefeuille, CanAddPortefeuille);
     RemoveCmd = new CmdHelper(RemovePortefeuille, CanDeletePortefeuille);
     UpdateCmd = new CmdHelper(UpdatePortefeuille, CanUpdatePortefeulle);
 }
Example #4
0
        /// <summary>
        /// taken van de constructor:
        /// 1. Haalt de repo/context en gebruikers id binnen
        /// 2. Haalt de lijst op van alle logs van de user met de specifieke ID
        /// 3. Stelt de CollectionView gelijkt met de log lijst
        /// 4. Maakt de commando's om de loglijst te kunnen sorteren
        /// 5. Legt de enumeratie logsoorten in een array
        /// 6. Commando aanmaken om file aan te kunnen maken voor de logs
        /// </summary>
        /// <param name="ID">id gebruiker</param>
        /// <param name="repo">repo/context is de datasource</param>
        public LogViewModel(int ID, AandelenRepo repo)
        {
            Repo        = repo;
            IdGebruiker = ID;
            Titel       = $"Log boek van {repo.GetEigenaar(ID).Naam}";
            LogLijst    = repo.LogLijst(ID);
            LogView     = (CollectionView)CollectionViewSource.GetDefaultView(LogLijst.ToArray());

            BtnHighDate = new CmdHelper(SorteerHoogsteDatum, LogNietLeeg);
            BtnLowDate  = new CmdHelper(SorteerLaagsteDatum, LogNietLeeg);
            LogSoorten  = Enum.GetValues(typeof(LogOrigin)).Cast <LogOrigin>();

            CmdSaveFileMdHmtl = new CmdHelper(SaveMarkdownHtmlFiles, () => LogNietLeeg() && (SaveMd || SaveMd));
        }
 /// <summary>
 /// Taken van het initialiseren van een MainWindowViewModel:
 /// 1. Maken van een nieuwe repo/Data source
 /// 2. Aanmaken van een InlogViewModel en deze zetten in de basis contentcontrole
 /// 3. Herfrist de statusbar
 /// 4. Maakt de verschillende commando's aan voor de menu items in het openklapbaar menu
 /// </summary>
 public MainWindowViewModel()
 {
     repo           = new AandelenRepo();
     InlogViewModel = new InlogViewModel(repo);
     BasisContentControl(InlogViewModel);
     RefreshStatusBarProperties();
     CmdVeranderGebruiker = new CmdHelper(() => BasisContentControl(InlogViewModel), ValidUser);
     CmdCloseWindow       = new CmdHelper(() => Application.Current.Shutdown());
     CmdToonRapporten     = new CmdHelper(ToonRapport, ValidUser);
     CmdToonLogs          = new CmdHelper(ToonLogs, ValidUser);
     CmdSaveShortCut      = new CmdHelper(OpslaanRapportLogs, () => RapportLogsContent != null);
     CmdRefreshRapport    = new CmdHelper(() => RapporteringViewModel.CmdRefreshPreview.Execute(""), ValidRapportLogs);
     CmdHighDate          = new CmdHelper(() => LogViewModel.BtnHighDate.Execute(""), ValidRapportLogs);
     CmdLowDate           = new CmdHelper(() => LogViewModel.BtnLowDate.Execute(""), ValidRapportLogs);
 }
 /// <summary>
 /// Haalt de repo/context binnen, en maakt de commando's op om de eigenaar toe te voegen en in te kunnen loggen
 /// </summary>
 /// <param name="repo">repo of context waaruit alle data gaat komen of we er data gaan wijzigen</param>
 public InlogViewModel(AandelenRepo repo)
 {
     Repo        = repo;
     AddEigenaar = new CmdHelper(VoegEigenaarToe, KanEigenaarToevoegen);
     InlogNaam   = new CmdHelper(LogInEigenaar, KanEigenaarIdentificeren);
 }