public ConstructionReportViewModel(
            IMillReportsRepository repo,
            IJointRepository repoJoint,
            IUserNotify notify)
        {
            this.repo      = repo;
            this.notify    = notify;
            this.repoJoint = repoJoint;

            this.JointsProjections = repoJoint
                                     .GetJointsProjections()
                                     .SetResultTransformer(Transformers.AliasToBean <JointProjection>())
                                     .List <JointProjection>();

            if (this.JointsProjections == null || this.JointsProjections.Count <= 0)
            {
                log.Warn("Report at Construction: List of Joints is NULL or empty.");
            }

            createCommand = ViewModelSource
                            .Create <CreateReportCommand>(() => new CreateReportCommand(this, repo, notify));

            previewCommand = ViewModelSource
                             .Create <PreviewReportCommand>(() => new PreviewReportCommand(this, repo, notify));

            reportCommand = ViewModelSource
                            .Create <ReportCommand>(() => new ReportCommand(this, repo, repoJoint, notify));
        }
        public ConstructionReportViewModel(
            IMillReportsRepository repo, 
            IJointRepository repoJoint, 
            IUserNotify notify)
        {
            this.repo = repo;
            this.notify = notify;
            this.repoJoint = repoJoint;

            this.JointsProjections = repoJoint
                .GetJointsProjections()
                .SetResultTransformer(Transformers.AliasToBean<JointProjection>())
                .List<JointProjection>();

            if (this.JointsProjections == null || this.JointsProjections.Count <= 0)
                log.Warn( "Report at Construction: List of Joints is NULL or empty." );

            createCommand = ViewModelSource
                .Create<CreateReportCommand>(() => new CreateReportCommand(this, repo, notify));

            previewCommand = ViewModelSource
                .Create<PreviewReportCommand>(() => new PreviewReportCommand(this, repo, notify));

            reportCommand = ViewModelSource
                .Create<ReportCommand>(() => new ReportCommand(this, repo, repoJoint, notify));

        }