public void LoadPlans()
        {
            var plans = GetAllPlans();

            if (!plans.Any())
            {
                plans.Add(CreateDefaultPlan());
            }
            Plans.AddRange(plans);
            var isOnlyDefaultPlan = plans.Count == 1;

            if (isOnlyDefaultPlan)
            {
                CurrentPlan = Plans.First();
            }
            else
            {
                LoadLastUsedPlanId();
            }
        }
        private void LoadLastUsedPlanId()
        {
            CurrentPlan = Plans.FirstOrDefault();
            if (!File.Exists(LastPlanIdFilePath))
            {
                return;
            }
            var id = File.ReadAllLines(LastPlanIdFilePath).FirstOrDefault();

            if (string.IsNullOrWhiteSpace(id))
            {
                return;
            }
            CurrentPlan = Plans
                          .FirstOrDefault(r => r.PlanId.ToString(CultureInfo.InvariantCulture) == id) ?? Plans.First();
        }