Пример #1
0
        //获取投票人数
        public int getVoteCount(Question q)
        {
            VoteDao     votedao     = new VoteDao();
            List <Vote> votelist    = votedao.getByQuestion(q);
            QuestionDao questiondao = new Dao.QuestionDao();

            q.voteCount = votelist.Count;
            questiondao.update(q);
            return(q.voteCount);
        }
Пример #2
0
        public ActionResult Search(String searchText)
        {
            SearchModel model = new Models.SearchModel();

            model.search_content = "";
            model.questions      = new List <Question>();
            if (searchText != null || !searchText.Equals(""))
            {
                model.search_content = searchText;
                QuestionDao questiondao = new Dao.QuestionDao();
                model.questions = questiondao.search_title(searchText);
            }
            return(View(model));
        }
Пример #3
0
        public JsonResult GetMore(Models.Type t, int start, int size)
        {
            QuestionDao     questiondao = new Dao.QuestionDao();
            List <Question> list        = null;

            if (t.ID == 0)
            {
                list = questiondao.getAll(start, size);
            }
            else
            {
                list = questiondao.getAll(t, start, size);
            }

            return(Json(list, JsonRequestBehavior.AllowGet));
        }
Пример #4
0
        //投票模型初始化
        public VoteModel initVoteModel(int questionID)
        {
            VoteModel   model       = new Models.VoteModel();
            QuestionDao questiondao = new Dao.QuestionDao();
            Question    q           = questiondao.getById(questionID);

            model.questionID = questionID;
            model.userID     = int.Parse(Request.Cookies["Menber"].Values["ID"]);
            model.tags       = q.tags.Split('#');
            model.postTime   = q.postTime.ToLongDateString();
            model.endTime    = q.endTime.ToLongDateString();
            model.title      = q.title;
            model.options    = q.queOption.Split('#');
            model.optionNum  = q.optionNum;

            model.votes = new VoteDao().getByQuestion(q);

            return(model);
        }
Пример #5
0
        //查看已投票的问题
        public ActionResult MyVote()
        {
            MyVoteModel model = new MyVoteModel();

            UserDao     userdao     = new UserDao();
            User        user        = userdao.getById(int.Parse(Request.Cookies["Menber"].Values["ID"]));
            VoteDao     votedao     = new VoteDao();
            List <Vote> votes       = votedao.getByUser(user);
            QuestionDao questiondao = new Dao.QuestionDao();

            model.questions = new List <Question>();
            foreach (Vote v in votes)
            {
                Question q = v.queID;
                model.questions.Add(q);
            }
            TypeDao typedao = new TypeDao();

            model.types = typedao.getTypeList();

            return(View(model));
        }
Пример #6
0
        //获取统计结果
        public String getOptionData(Question q)
        {
            String      optionData = null;
            VoteDao     votedao    = new VoteDao();
            List <Vote> votelist   = votedao.getByQuestion(q);

            if (q.optionNum == 1)
            {
                if (votelist.Count != 0)
                {
                    int sum = 0;
                    foreach (Vote v in votelist)
                    {
                        sum += int.Parse(v.voteRecord);
                    }
                    optionData = (sum / votelist.Count).ToString();//取投票结果的平均值
                }
                else
                {
                    optionData = 0.ToString();//没有投票记录时结果为0
                }
            }
            else
            {
                //多选 [{'value':50,'name':'直接访问'},{'value':50,'name':'邮件营销'},{'value':50,'name':'联盟广告'},{'value':50,'name':'视频广告'},{'value':50,'name':'搜索引擎'}]
                JArray   jarry  = new JArray();
                String[] names  = q.queOption.Split('#');
                int[]    values = null;
                foreach (Vote v in votelist)
                {
                    String[] records = v.voteRecord.Split('#');
                    int[]    sum     = new int[records.Length - 1];
                    //统计每个选项的总分
                    for (int i = 0; i < records.Length - 1; i++)
                    {
                        sum[i] += int.Parse(records[i]);
                    }
                    //计算平均分
                    for (int i = 0; i < sum.Length; i++)
                    {
                        sum[i] /= votelist.Count;
                    }
                    values = sum;
                }
                if (values == null)
                {
                    values = new int[q.optionNum];
                }
                //组装
                for (int i = 0; i < names.Length - 1; i++)
                {
                    JObject json = new JObject();
                    json["name"]  = names[i];
                    json["value"] = values[i];
                    jarry.Add(json);
                }
                optionData = jarry.ToString();
            }
            QuestionDao questiondao = new Dao.QuestionDao();

            q.optionData = optionData;
            questiondao.update(q);

            return(q.optionData);
        }