public void ConfirmAddition(int solutionPlanStepID, int problemIdeaID, string solutionStepText, int priorityOrder) { SolutionPlan solution = null; if (solutionPlanStepID == -1) { solution = new SolutionPlan(); solution.IsNew = true; solution.IsDirty = false; Log.Info(TAG, "ConfirmAddition: Adding a new Solution..."); } else { solution = GlobalData.SolutionPlansItems.Find(sol => sol.SolutionPlanID == solutionPlanStepID); solution.IsNew = false; solution.IsDirty = true; } solution.ProblemIdeaID = problemIdeaID; solution.SolutionStep = solutionStepText.Trim(); solution.PriorityOrder = priorityOrder; solution.Save(); Log.Info(TAG, "ConfirmAddition: Saved solution with ID " + solution.SolutionPlanID); if (solutionPlanStepID == -1) { GlobalData.SolutionPlansItems.Add(solution); Log.Info(TAG, "ConfirmAddition: Added item to global cache as it is new!"); } UpdateAdapter(); }
List <IState> findGoalPath() { if (domainSolver.canFindPlans) { domainSolver.Search(); var plan = domainSolver.getPDDLPlan(); var sasPlan = plan.Select(s => s.Replace("(", "").Replace(")", "")).Select(s => (PAD.Planner.IOperator)problem.Operators.Where(op => op.GetName() == s).Single()); SolutionPlan p = new SolutionPlan(problem.GetInitialState(), sasPlan); return(p.GetStatesSequence().Select(state => (IState)state).ToList()); } goalPathFinder.Start(); return(goalPathFinder.GetSolutionPlan().GetStatesSequence().Select(state => (IState)state).ToList()); }
public async Task <ActionResult <SolutionPlanDto> > CreateSolutionPlan(int solutionReviewId, CreateSolutionPlanDto createSolutionPlanDto) { var solutionPlan = new SolutionPlan { PriorityOrder = createSolutionPlanDto.PriorityOrder, SolutionReview = _mapper.Map <SolutionReview>(await _unitOfWork.SolutionReviewRepository.GetItemAsync(solutionReviewId)), SolutionStep = createSolutionPlanDto.SolutionStep }; _unitOfWork.SolutionPlanRepository.AddItem(solutionPlan); if (await _unitOfWork.Complete()) { return(Ok(_mapper.Map <SolutionPlanDto>(solutionPlan))); } return(BadRequest("Unable to create Solution Plan")); }
private void SolutionStepList_ItemLongClick(object sender, AdapterView.ItemLongClickEventArgs e) { SolutionPlan solutionStep = null; SolutionStepsDialogFragment stepFragment = null; Log.Info(TAG, "SolutionStepList_ItemLongClick: selected item - " + e.Position.ToString() + ", problemIdeaID - " + _problemIdeaID.ToString()); solutionStep = GetSolutionPlanStepsForIdea()[e.Position]; if (solutionStep != null) { Log.Info(TAG, "SolutionStepList_ItemLongClick: Found step with ID - " + solutionStep.SolutionPlanID + ", stepText - " + solutionStep.SolutionStep + ", priorityOrder - " + solutionStep.PriorityOrder.ToString()); stepFragment = new SolutionStepsDialogFragment(this, "Edit Solution Step", _problemIdeaID, solutionStep.SolutionPlanID, solutionStep.SolutionStep.Trim(), solutionStep.PriorityOrder); } var fragmentTransaction = FragmentManager.BeginTransaction(); if (fragmentTransaction != null) { stepFragment.Show(fragmentTransaction, stepFragment.Tag); } }