private void GetSolutionReviewData()
        {
            try
            {
                Globals dbHelp = new Globals();
                dbHelp.OpenDatabase();
                if (dbHelp.GetSQLiteDatabase().IsOpen)
                {
                    Log.Info(TAG, "GetSolutionReviewData: Attempting to get review data for idea ID " + _problemIdeaID.ToString());
                    _review = dbHelp.GetSolutionReviewForIdea(_problemIdeaID);
                    dbHelp.CloseDatabase();

                    if (_review != null)
                    {
                        Log.Info(TAG, "GetSolutionReviewData: Found review!");
                        _solutionReviewID = _review.SolutionReviewID;
                    }
                    else
                    {
                        Log.Info(TAG, "GetSolutionReviewData: No review found!");
                    }
                }
            }
            catch (Exception e)
            {
                Log.Error(TAG, "GetIdeaData: Exception - " + e.Message);
                if (GlobalData.ShowErrorDialog)
                {
                    ErrorDisplay.ShowErrorAlert(this, e, GetString(Resource.String.ErrorSolutionReviewActivityGetSolutionData), "SolutionReviewActivity.GetSolutionPlanData");
                }
            }
        }
Example #2
0
        public async Task <ActionResult <SolutionReviewDto> > CreateSolutionReview(int problemIdeaId, CreateSolutionReviewDto createSolutionReviewDto)
        {
            var solutionReview = new SolutionReview
            {
                Achieved      = createSolutionReviewDto.Achieved,
                AchievedDate  = createSolutionReviewDto.AchievedDate,
                Idea          = _mapper.Map <ProblemIdea>(await _unitOfWork.ProblemIdeaRepository.GetItemAsync(problemIdeaId)),
                ReviewText    = createSolutionReviewDto.ReviewText,
                SolutionSteps = new Collection <SolutionPlan>()
            };

            _unitOfWork.SolutionReviewRepository.AddItem(solutionReview);
            if (await _unitOfWork.Complete())
            {
                return(Ok(_mapper.Map <SolutionReviewDto>(solutionReview)));
            }

            return(BadRequest("Unable to create Solution Review"));
        }
        private void Save()
        {
            try
            {
                if (_solutionReviewID == -1)
                {
                    SolutionReview review = new SolutionReview();
                    review.Achieved      = _achieved.Checked;
                    review.AchievedDate  = _achievedDate.DateTime;
                    review.IsNew         = true;
                    review.IsDirty       = false;
                    review.ProblemIdeaID = _problemIdeaID;
                    review.ReviewText    = _solutionReview.Text.Trim();
                    review.Save();
                }
                else
                {
                    if (_isDirty)
                    {
                        _review.Achieved      = _achieved.Checked;
                        _review.AchievedDate  = _achievedDate.DateTime;
                        _review.IsNew         = false;
                        _review.IsDirty       = true;
                        _review.ProblemIdeaID = _problemIdeaID;
                        _review.ReviewText    = _solutionReview.Text.Trim();
                        _review.Save();
                    }
                }

                Finish();
            }
            catch (Exception ex)
            {
                Log.Error(TAG, "Save_Click: Exception - " + ex.Message);
                if (GlobalData.ShowErrorDialog)
                {
                    ErrorDisplay.ShowErrorAlert(this, ex, GetString(Resource.String.ErrorSolutionReviewActivitySave), "SolutionReviewActivity.Save_Click");
                }
            }
        }