Esempio n. 1
0
        public HttpResponseMessage SaveQuizCareer([FromBody] UsersQuizzesEntity entity)
        {
            object objuser = null;

            Request.Properties.TryGetValue("user", out objuser);
            var user = objuser as UserEntity;

            entity.UserId = user.UserId;
            entity.Type   = QuizTypes.PATHWAY.ToString();
            var result = _usersManager.SaveQuiz(entity);

            return(Request.CreateResponse(HttpStatusCode.OK, result));
        }
Esempio n. 2
0
        public HttpResponseMessage SaveAboutyouQuiz([FromBody] UsersQuizzesEntity entity)
        {
            object objuser = null;

            Request.Properties.TryGetValue("user", out objuser);
            var user = objuser as UserEntity;

            entity.UserId = user.UserId;
            entity.Type   = QuizTypes.ASSESSMENT.ToString();

            var dictionary = JsonConvert.DeserializeObject <Dictionary <int, object> >(entity.Answers);
            var result     = _usersManager.SaveQuiz(entity, dictionary);

            return(Request.CreateResponse(HttpStatusCode.OK, result));
        }
Esempio n. 3
0
        public Result SaveQuiz(UsersQuizzesEntity quiz)
        {
            try
            {
                var con = new DapperConnectionManager();

                var query = new QueryEntity();
                query.Entity = new { UserQuizId = quiz.UserQuizId };
                query.Query  = @"SELECT * FROM UsersQuizzes WHERE UserQuizId = @UserQuizId";
                var result = con.ExecuteQuery <UsersQuizzesEntity>(query);
                if (!result.Success)
                {
                    return(result);
                }

                quiz.DateVal = DateTime.Now;
                quiz.Date    = quiz.DateVal.ToString("d MMM yyyy");

                var q = ((IEnumerable <UsersQuizzesEntity>)result.Entity).FirstOrDefault();

                if (q != null)
                {
                    query.Entity = quiz;
                    query.Query  = @"Update UsersQuizzes set Date = @Date , DateVal = @DateVal , Results = @Results , Completed = @Completed where UserQuizId = @UserQuizId";
                    result       = con.ExecuteQuery(query);
                    return(result);
                }

                query.Entity = quiz;
                query.Query  = @"INSERT INTO UsersQuizzes (UserId ,QuizId ,Date, DateVal, Results ,Completed, Type) VALUES (@UserId ,@QuizId ,@Date, @DateVal ,@Results ,@Completed, @Type)";
                result       = con.InsertQuery(query);
                return(result);
            }catch (Exception ex)
            {
                Logger.Log(ex);
            }
            return(new Result(false));
        }
Esempio n. 4
0
        public Result SaveQuiz(UsersQuizzesEntity quiz, Dictionary <int, object> questionsAnswers)
        {
            try
            {
                var con = new DapperConnectionManager();

                var query = new QueryEntity();

                query.Query  = @"SELECT * FROM Users
                            where UserId = @UserId";
                query.Entity = new { UserId = quiz.UserId };
                var result = con.ExecuteQuery <UserEntity>(query);

                if (!result.Success)
                {
                    result.Message = "An error occured";
                    return(result);
                }

                var r = (IEnumerable <UserEntity>)result.Entity;

                var userEntity = r.FirstOrDefault();

                if (userEntity == null)
                {
                    result.Message = "An error occurred";
                    return(result);
                }

                foreach (var item in questionsAnswers)
                {
                    query.Entity = new { QuestionId = item.Key };
                    query.Query  = @"SELECT * FROM UserDataQuestions WHERE QuestionId = @QuestionId";
                    var resultUserData = con.ExecuteQuery <UserDataQuestionsEntity>(query);
                    if (!resultUserData.Success)
                    {
                        resultUserData.Message = "An error occurred";
                        return(resultUserData);
                    }
                    var data = ((IEnumerable <UserDataQuestionsEntity>)resultUserData.Entity).FirstOrDefault();
                    if (data == null)
                    {
                        continue;
                    }

                    var itemData = data.FieldName.ToString();

                    switch (itemData)
                    {
                    case "NurseType":
                        userEntity.NurseType = item.Value.ToString();
                        break;

                    case "Area":
                        userEntity.Area = item.Value.ToString();
                        break;

                    case "ActiveWorking":
                        userEntity.ActiveWorking = item.Value.ToString();
                        break;

                    case "PostalCode":
                        userEntity.PostalCode = item.Value.ToString();
                        break;

                    case "Address":
                        var adress = JsonConvert.DeserializeObject <AddressEntity>(item.Value.ToString());
                        userEntity.State      = adress.State;
                        userEntity.PostalCode = adress.PostalCode;
                        userEntity.Country    = adress.Country;
                        userEntity.Suburb     = adress.Suburb;
                        break;

                    case "Patients":
                        userEntity.Patients = item.Value.ToString();
                        break;

                    case "PatientsTitle":
                        userEntity.PatientsTitle = item.Value.ToString();
                        break;

                    case "Qualification":
                        userEntity.Qualification = item.Value.ToString();
                        break;

                    case "Setting":
                        userEntity.Setting = item.Value.ToString();
                        break;

                    case "Age":
                        userEntity.Age = item.Value.ToString();
                        break;
                    }
                }
                using (var scope = new TransactionScope())
                {
                    query.Entity = new { UserQuizId = quiz.UserQuizId };
                    query.Query  = @"SELECT * FROM UsersQuizzes WHERE UserQuizId = @UserQuizId";
                    result       = con.ExecuteQueryUnScoped <UsersQuizzesEntity>(query);
                    if (!result.Success)
                    {
                        return(result);
                    }

                    quiz.DateVal = DateTime.Now;
                    quiz.Date    = quiz.DateVal.ToString("d MMM yyyy");

                    var q = ((IEnumerable <UsersQuizzesEntity>)result.Entity).FirstOrDefault();

                    if (q != null)
                    {
                        query.Entity = quiz;
                        query.Query  = @"Update UsersQuizzes set Date = @Date , DateVal = @DateVal , Results = @Results , Completed = @Completed, Survey = @Survey where UserQuizId = @UserQuizId";
                        result       = con.ExecuteQueryUnScoped(query);
                    }
                    else
                    {
                        query.Entity = quiz;
                        query.Query  = @"INSERT INTO UsersQuizzes (UserId ,QuizId ,Date, DateVal, Results ,Completed, Type, Survey) VALUES (@UserId ,@QuizId ,@Date, @DateVal ,@Results ,@Completed, @Type, @Survey)";
                        result       = con.InsertQueryUnScoped(query);
                    }

                    var queryUser = new QueryEntity()
                    {
                        Entity = userEntity,
                        Query  = @"UPDATE Users set NurseType = @NurseType, ActiveWorking = @ActiveWorking, Area = @Area, Age = @Age, Country = @Country, Suburb = @Suburb, PostalCode = @PostalCode, State = @State, Patients = @Patients, PatientsTitle =@PatientsTitle, Qualification = @Qualification, Setting = @Setting where UserId = @UserId "
                    };
                    result        = con.ExecuteQueryUnScoped(queryUser);
                    result.Entity = null;
                    scope.Complete();
                    return(result);
                }
            }
            catch (Exception ex)
            {
                Logger.Log(ex);
            }
            return(new Result(false));
        }
Esempio n. 5
0
        public HttpResponseMessage SaveAssessmentQuiz([FromBody] UsersQuizzesEntity entity)
        {
            object objuser = null;

            Request.Properties.TryGetValue("user", out objuser);
            var user = objuser as UserEntity;

            entity.UserId = user.UserId;
            entity.Type   = QuizTypes.ASSESSMENT.ToString();
            var result = _usersManager.SaveQuiz(entity);

            var error_counter = 0;

            if (!result.Success)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, new Result(false)));
            }
            if (result.Success)
            {
                var userQuizid = (int)result.Entity;
                //Console.WriteLine(entity.Results);
                JObject parent_json = JObject.Parse(entity.Results);
                var     answer      = parent_json.Value <JObject>("answers").Properties();

                var temp_result = new Result();

                if (answer != null)
                {
                    var nurse_answer_dict = answer.ToDictionary(k => Int32.Parse(k.Name), v => Decimal.Parse(v.Value.ToString()));

                    foreach (KeyValuePair <int, decimal> ans in nurse_answer_dict)
                    {
                        NurseSelfAssessmentAnswersEntity ans_entity = new NurseSelfAssessmentAnswersEntity();
                        ans_entity.QuestionId = ans.Key;
                        ans_entity.Value      = ans.Value;
                        ans_entity.LastUpdate = entity.DateVal;
                        ans_entity.UserId     = entity.UserId;
                        ans_entity.UserQuizId = userQuizid;

                        AnswerEntity answer_entity = null;
                        if (answerDictionary.TryGetValue(new Tuple <int, decimal>(ans_entity.QuestionId, ans_entity.Value), out answer_entity))
                        {
                            ans_entity.AnswerId = answer_entity.AnswerId;
                        }

                        QuestionEntity question_entity = null;
                        if (questionDictionary.TryGetValue(ans.Key, out question_entity))
                        {
                            ans_entity.AspectId = (int)question_entity.AspectId;
                        }
                        // insert answer into database
                        temp_result = _nurseSelfAssessmentAnswersManager.InsertAnswer(entity.UserId, ans_entity);

                        if (!temp_result.Success)
                        {
                            error_counter++;
                        }
                    }
                }
            }

            result.Message += String.Format(". Process ended with {0} error ", error_counter);

            return(Request.CreateResponse(HttpStatusCode.OK, result));
        }