private List <SubMenu> FilterRanchSubMenus(UserJourney journey, List <SubMenu> subMenus) { //Skip Nutrients Menu for Ranch if Nothing to Analyze if (journey == UserJourney.Ranch) { //if (subMenus.Any(sm => sm.UsesFeaturePages && // sm.Page.Equals(FeaturePages.RanchNutrientsIndex.GetDescription())) && // !_ud.GetFarmManures().Any() && // !_ud.GetAllManagedManures().Any(mm => !mm.AssignedWithNutrientAnalysis)) //{ // //Hide Nutrient Analysis Sub Menu // subMenus // .Remove(subMenus // .Single(sm => sm.Page.Equals(FeaturePages.RanchNutrientsIndex.GetDescription()))); //} if (subMenus.Any(sm => sm.UsesFeaturePages && sm.Page.Equals(FeaturePages.RanchFeedingIndex.GetDescription())) && !_ud.GetFields().Any(x => x.IsSeasonalFeedingArea)) { //Hide Nutrient Analysis Sub Menu subMenus .Remove(subMenus .Single(sm => sm.UsesFeaturePages && sm.Page.Equals(FeaturePages.RanchFeedingIndex.GetDescription()))); } } return(subMenus); }
private Task <ReportFieldsViewModel> ReportFieldsAsync() { ReportFieldsViewModel fvm = new ReportFieldsViewModel(); FarmDetails fd = _ud.FarmDetails(); List <Field> flds = _ud.GetFields(); foreach (var m in flds) { DisplayReportField dc = new DisplayReportField(); dc.fldName = m.fieldName; if (m.soilTest != null) { dc.sampleDate = m.soilTest.sampleDate.ToString("MMM-yyyy"); dc.dispNO3H = m.soilTest.valNO3H.ToString(); dc.dispP = m.soilTest.ValP.ToString(); dc.dispK = m.soilTest.valK.ToString(); dc.dispPH = m.soilTest.valPH.ToString(); } fvm.fields.Add(dc); } return(Task.FromResult(fvm)); }
private Task <SoilTestsViewModel> GetSoilTestAsync() { SoilTestsViewModel svm = new SoilTestsViewModel(); Utility.SoilTestConversions stc = new SoilTestConversions(_ud, _sd); svm.missingTests = false; FarmDetails fd = _ud.FarmDetails(); svm.testingMethod = fd.testingMethod; svm.tests = new List <DisplaySoilTest>(); List <Field> flds = _ud.GetFields(); foreach (var m in flds) { DisplaySoilTest dc = new DisplaySoilTest(); dc.fldName = m.fieldName; if (m.soilTest != null) { dc.sampleDate = m.soilTest.sampleDate.ToString("MMM-yyyy"); dc.dispNO3H = m.soilTest.valNO3H.ToString(); dc.dispP = m.soilTest.ValP.ToString(); dc.dispK = m.soilTest.valK.ToString(); dc.dispPH = m.soilTest.valPH.ToString(); dc.dispPRating = _sd.SoilTestRating("phosphorous", stc.GetConvertedSTP(m.soilTest)); dc.dispKRating = _sd.SoilTestRating("potassium", stc.GetConvertedSTK(m.soilTest)); } else { svm.missingTests = true; } svm.tests.Add(dc); } return(Task.FromResult(svm)); }