Exemplo n.º 1
0
        public async Task UseAnswer(UserAnswerModel model)
        {
            var userTest = await DB.UserTestRepository.FindByIdAsync(model.UserTetstId);

            if (model.IsTextAnser)
            {
                DB.UserTestAnswerRepository.Add(new UserTestAnswer()
                {
                    AnswerText     = model.AnswerText,
                    UserTestId     = model.UserTetstId,
                    UserId         = userTest.UserId,
                    TestQuestionId = model.QuestionId
                });
            }
            else
            {
                foreach (var a in model.Answers)
                {
                    DB.UserTestAnswerRepository.Add(new UserTestAnswer()
                    {
                        UserTestId           = model.UserTetstId,
                        TestQuestionAnswerId = a,
                        UserId         = userTest.UserId,
                        TestQuestionId = model.QuestionId
                    });
                }
            }

            await DB.SaveChangesAsync();
        }
 public AnswerStatus SaveUserAnswer(UserAnswerModel model)
 {
     SqlObject.CommandText = StoredProcedures.Answers.SaveUserAnswer;
     SqlObject.Parameters  = new object[]
     {
         model.QuestionID,
         model.AnswerID,
         model.UserID
     };
     return(_repository.SaveUserAnswer());
 }
Exemplo n.º 3
0
        public async Task <JsonResult> UserTestAnswer(UserAnswerModel model)
        {
            string error = null;

            try
            {
                await UserService.UseAnswer(model);
            }
            catch (Exception ex)
            {
                error = ex.Message;
            }

            return(Json(new { error }));
        }
    /// <summary>
    /// 计算最终结果
    /// </summary>
    private void CalculateUltimatePrize()
    {
        staticData = Game.Instance.a_StaticData;
        gameData   = Game.Instance.a_GameData;
        uam        = GetModel <UserAnswerModel>();

        tempReward     = gameData.TempTreasure;
        killEnemyCount = gameData.KillEnemyCount;
        warDistance    = gameData.WarDistance;
        rateRight      = uam.Rate_RightAnswer;

        score_TempReward     = tempReward * 50;
        score_KillEnemyCount = killEnemyCount * 60;
        score_WarDistance    = warDistance * 10;
        score_RateRight      = (rateRight / 100) + 1;

        totalScore = (score_TempReward + score_WarDistance + score_KillEnemyCount) * score_RateRight;

        JudgeGrade((int)totalScore);
        CaluclateEXPS();
    }
    void Awake()
    {
        m_GM  = GetModel <GameModel>();
        m_UAM = GetModel <UserAnswerModel>();
        m_UAM.InitData();

        m_Game = Game.Instance;

        random = new System.Random();

        DT_Corona = transform.Find("AnwserPanel").GetComponent <CoronaDT>();

        btn_Answer_A = transform.Find("AnwserPanel/Bg_Corona/AnswerOption_1").GetComponent <Button>();
        btn_Answer_B = transform.Find("AnwserPanel/Bg_Corona/AnswerOption_2").GetComponent <Button>();
        btn_Answer_C = transform.Find("AnwserPanel/Bg_Corona/AnswerOption_3").GetComponent <Button>();
        btn_Answer_D = transform.Find("AnwserPanel/Bg_Corona/AnswerOption_4").GetComponent <Button>();

        btn_Answer_A.transform.Find("WrongReminder").gameObject.SetActive(false);
        btn_Answer_B.transform.Find("WrongReminder").gameObject.SetActive(false);
        btn_Answer_C.transform.Find("WrongReminder").gameObject.SetActive(false);
        btn_Answer_D.transform.Find("WrongReminder").gameObject.SetActive(false);

        btn_back = transform.Find("BackBtn").GetComponent <Button>();

        text_QuestionShow = transform.Find("QuestionPanel/Text").GetComponent <Text>();

        GO_WrongReminderPanel = transform.Find("WrongReminderPanel").gameObject;
        GO_RightWaittingPanel = transform.Find("RightWaittingPanel").gameObject;
        text_RightAnswerShow  = GO_WrongReminderPanel.transform.Find("RightAnswerPanel/AnswerText").GetComponent <Text>();
        GO_TimeEndReminder    = transform.Find("TimeEndReminder").gameObject;

        GO_TimeEndReminder.SetActive(false);
        GO_WrongReminderPanel.SetActive(false);
        GO_RightWaittingPanel.SetActive(false);
        btn_back.onClick.AddListener(OnBackBtnOnClick);
    }
Exemplo n.º 6
0
 public AnswerStatus SaveUserAnswer(UserAnswerModel UserAnswer)
 {
     return(_coreModel.SaveUserAnswer(UserAnswer));
 }
Exemplo n.º 7
0
        public SurveyModel GetOneFillSurvey(string userId, string surveyId)
        {
            try
            {
                if (!string.IsNullOrEmpty(surveyId))
                {
                    var survey = dbContext.Surveys.ToList().FirstOrDefault(s => s.Id.ToString() == surveyId);

                    if (survey != null)
                    {
                        SurveyModel surveyModel = new SurveyModel();
                        surveyModel.End_date   = survey.End_Date;
                        surveyModel.Start_date = survey.Start_Date;
                        surveyModel.Id         = survey.Id;
                        surveyModel.Name       = survey.Name;
                        surveyModel.Questions  = new List <QuestionModel>();

                        var questionLink = dbContext.Questions_List.ToList().Where(q => q.Survey.Id == survey.Id);

                        if (questionLink != null)
                        {
                            foreach (var qLink in questionLink)
                            {
                                var question = dbContext.Questions.ToList().Where(q => q.Id == qLink.Question.Id);
                                if (question != null)
                                {
                                    foreach (var oneQuestion in question)
                                    {
                                        QuestionModel questionModel = new QuestionModel();
                                        questionModel.Content      = oneQuestion.Content;
                                        questionModel.QuestionType = oneQuestion.QuestionType;
                                        questionModel.Id           = oneQuestion.Id;
                                        questionModel.UserAnswers  = new List <UserAnswerModel>();

                                        var allUserList = dbContext.UsersLink.Where(usl => usl.UserId == userId).Select(usl => usl.Id.ToString()).ToList();

                                        var allUserAnswerList = dbContext.UserAnswers_Lists.Where(ual => ual.QuestionId == oneQuestion.Id).Select(ual => ual.Id.ToString()).ToList();

                                        var allAnswer = allUserAnswerList.Intersect(allUserList).ToList();

                                        if (allAnswer != null)
                                        {
                                            foreach (var answer in allAnswer)
                                            {
                                                var usDb = dbContext.UserAnswers.ToList().Where(us => us.Id == int.Parse(answer));

                                                foreach (var us in usDb)
                                                {
                                                    UserAnswerModel userAnswerModel = new UserAnswerModel();
                                                    userAnswerModel.Content    = us.Content;
                                                    userAnswerModel.questionId = oneQuestion.Id.ToString();
                                                    userAnswerModel.Id         = us.Id;

                                                    questionModel.UserAnswers.Add(userAnswerModel);
                                                }
                                            }
                                        }

                                        surveyModel.Questions.Add(questionModel);
                                    }
                                }
                            }
                        }
                        else
                        {
                            return(null);
                        }
                        return(surveyModel);
                    }
                }

                return(null);
            }
            catch (Exception ex)
            {
                throw new Exception(Properties.Resources.ErrorDisplay);
            }
        }