public ForestNatureViewModel()
 {
     dataService = ServiceProvider.Instance.TreeDataService;
     Trees = new ObservableCollection<TreeViewModel>();
     this.RegisterMessages();
     this.LoadTrees();
 }
Пример #2
0
 /// <summary>
 /// Initializes a new instance of the NewTreeViewModel class.
 /// </summary>
 public NewTreeViewModel()
 {
     dataService = ServiceProvider.Instance.TreeDataService;
 }
Пример #3
0
        //DataService (CreateNewTreeEntry)
        //
        public static TallyAction TallyStandard(CountTree count, ISampleSelector sampleSelecter, ITreeDataService dataService, IDialogService dialogService)
        {
            TallyAction action = new TallyAction(count)
            {
                TreeCount = 1,
            };

            var result = ((IFrequencyBasedSelecter)sampleSelecter).Sample();

            //If we receive nothing from the sampler, we don't have a sample
            if (result != SampleResult.C)//&& (item.IsSelected || item.IsInsuranceItem))
            {
                var tree = dataService.CreateNewTreeEntry(count);
                tree.CountOrMeasure = result.ToString();
                action.TreeRecord   = tree;
            }

            return(action);
        }
Пример #4
0
        //ViewController (askKPI) //TODO use Dialog Service instead
        //DataService (CreateNewTreeEntry)
        //DAL (LogTreeEstimate) //should be dataservice instead
        //SampleGroup (MinKPI/MaxKPI)
        public static TallyAction TallyThreeP(CountTree count, ISampleSelector sampler, SampleGroup sg, ITreeDataService dataService, IDialogService dialogService)
        {
            TallyAction action = new TallyAction(count)
            {
                TreeCount = 1,
            };

            var sgCode = sg.Code;
            var stCode = sg.Stratum.Code;
            var spCode = count.TreeDefaultValue.Species;
            int kpi    = 0;
            int?value  = dialogService.AskKPI((int)sg.MinKPI, (int)sg.MaxKPI, stCode, sgCode, spCode);

            if (value == null)
            {
                return(null);
            }
            else
            {
                kpi = value.Value;
            }

            if (kpi == -1)  //user entered sure to measure
            {
                var tree = dataService.CreateNewTreeEntry(count);
                tree.STM          = "Y";
                action.TreeRecord = tree;
            }
            else
            {
                action.TreeEstimate = dataService.LogTreeEstimate(count, kpi);
                action.KPI          = kpi;

                var result = ((IThreePSelector)sampler).Sample(kpi);
                if (result != SampleResult.C)
                {
                    var tree = dataService.CreateNewTreeEntry(count);
                    tree.KPI            = kpi;
                    tree.CountOrMeasure = result.ToString();
                    action.TreeRecord   = tree;
                }
            }

            return(action);
        }