public List <Model_UsersAssessment> GetUserAss(char code)
    {
        Model_UsersAssessment        uss     = new Model_UsersAssessment();
        List <Model_UsersAssessment> ussList = uss.GetUserAssessmentByTsID(this.TransactionID).Where(o => o.Code.Trim().ToLower()[0] == code).ToList();

        return(ussList);
    }
Пример #2
0
    protected void Page_Load(object sender, EventArgs e)
    {
        this.Page.Title = "KeenProfile Assessment Extra";
        if (!this.Page.IsPostBack)
        {
            if (!string.IsNullOrEmpty(Request.QueryString["success"]))
            {
                main_thanks.Visible = true;
                main_form.Visible   = false;

                Model_AssesIntro intro = new Model_AssesIntro();
                intro            = intro.GetIntro();
                ThanksTitle.Text = intro.ThanksTitle;
                ThanksDes.Text   = convertcontent(intro.ThanksDes);
            }
            else
            {
                Model_Users u = this.UserActive;
                if (u != null)
                {
                    heUserID.Value = u.UserID.ToString();



                    if (!string.IsNullOrEmpty(Request.QueryString["ts"]))
                    {
                        int intTs = int.Parse(Request.QueryString["ts"]);

                        hdTsID.Value = intTs.ToString();

                        Model_ReportItemResult cr = new Model_ReportItemResult();
                        Model_UsersAssessment  us = new Model_UsersAssessment();

                        List <Model_UsersAssessment> uss = us.GetUserAssessmentByTsID(intTs);

                        List <Model_ReportItemResult> crl = cr.GetItemReportByTransactionID(intTs);


                        List <Model_ReportItemResult> dup = crl.Where(o => o.IsDup > 0).ToList();


                        Dictionary <decimal, int> GroupDup = dup.GroupBy(x => (decimal)x.Score_new)
                                                             .Where(g => g.Count() > 1)
                                                             .ToDictionary(x => x.Key, y => y.Count());



                        int numStep = GroupDup.Count();

                        StringBuilder ret = new StringBuilder();

                        int count = 1;
                        foreach (KeyValuePair <decimal, int> q in GroupDup)
                        {
                            List <Model_ReportItemResult> dupfocus = dup.Where(d => d.Score_new == q.Key).OrderByDescending(r => r.Score_new).ToList();

                            ret.Append("<h1 class=\"step_count\"></h1>\r\n");
                            ret.Append("<div class=\"step-content\" data-valid=\"check_choice\" data-count=\"" + (dupfocus.Count < 3 ? 3 : dupfocus.Count) + "\">\r\n");
                            ret.Append("<input type=\"hidden\" name=\"ass_fill_\"  value=\"" + count + "\" />\r\n");

                            ret.Append("<div class=\"text-center m-t-md\">\r\n");
                            ret.Append("<h2>โปรดให้ระดับคะแนนความสำคัญของข้อความต่อไปนี้ว่าข้อความใดตรงกับตัวตนของคุณมากที่สุด โดยในแต่ละข้อโปรดเลือกระดับคะแนนของแต่ละข้อความไม่ให้ซ้ำกัน</h2>\r\n");


                            ret.Append("<div class=\"question-type q-type-rank-scale-choice\">\r\n");
                            ret.Append("<div class=\"col-md-12 tbl-rank-scale\" >\r\n");

                            ret.Append("<table>\r\n");
                            ret.Append("<tr>\r\n");
                            ret.Append("<td class=\"question\"></td>\r\n");
                            //ret.Append("<input type=\"hidden\"   name=\"ass_fill_i_sc_" + ass.ASID + "\" value=\"0\" />");
                            for (int i = 1; i <= (dupfocus.Count < 3 ? 3 : dupfocus.Count); i++)
                            {
                                if (i == 1)
                                {
                                    ret.Append("<td class=\"choice\">" + i + "<br /><span> เป็นตัวตนของฉัน \"น้อย\" ที่สุด</span></td>\r\n");
                                }
                                else if (i == (dupfocus.Count < 3 ? 3 : dupfocus.Count))
                                {
                                    ret.Append("<td class=\"choice\">" + i + "<br /> <span> เป็นตัวตนของฉัน \"มาก\" ที่สุด</span></td>\r\n");
                                }
                                else
                                {
                                    ret.Append("<td class=\"choice\">" + i + "</td>\r\n");
                                }
                            }

                            ret.Append(" </tr>\r\n");



                            if (dupfocus.Count > 0)
                            {
                                foreach (Model_ReportItemResult ch in dupfocus)
                                {
                                    Model_UsersAssessment assuser = uss.FirstOrDefault(o => o.TASID == ch.TASID);
                                    if (assuser != null)
                                    {
                                        ret.Append("<tr>\r\n");
                                        ret.Append("<input type=\"hidden\" name=\"ass_fill_ch_\"  value=\"" + ch.TASID + "\" />\r\n");
                                        ret.Append("<td class=\"question\">" + assuser.Questions + "</td>\r\n");

                                        //for (int i = 1; i <= (dupfocus.Count < 3? 3: dupfocus.Count); i++)
                                        for (int i = (dupfocus.Count < 3 ? 3 : dupfocus.Count); i >= 1; i--)
                                        {
                                            //ret.Append("<td class=\"choice\"><input type=\"radio\"   name=\"ass_fill_ch_sc_" + ch.ResultID + "\" value=\"" + i + "\" /></td>\r\n");
                                            ret.Append("<td class=\"choice\"><input type=\"radio\"   name=\"ass_fill_ch_sc_" + ch.TASID + "\" value=\"" + i + "\" /></td>\r\n");
                                        }

                                        ret.Append("</tr>\r\n");
                                    }
                                }


                                if (dupfocus.Count < 3)
                                {
                                    List <Model_UsersAssessment> randomlist = new List <Model_UsersAssessment>();

                                    foreach (Model_UsersAssessment i in uss)
                                    {
                                        foreach (Model_ReportItemResult ch in dupfocus)
                                        {
                                            if (i.TASID != ch.TASID)
                                            {
                                                randomlist.Add(i);
                                            }
                                        }
                                    }

                                    Model_UsersAssessment rd = randomlist.Where(p => !dupfocus.Any(p2 => p2.TASID == p.TASID)).Skip(3).FirstOrDefault();

                                    ret.Append("<tr>\r\n");
                                    //ret.Append("<input type=\"hidden\" name=\"ass_fill_ch_\"  value=\"" + rd.ResultID + "\" />\r\n");
                                    ret.Append("<td class=\"question\">" + rd.Questions + "</td>\r\n");

                                    //for (int i = 1; i <= (dupfocus.Count < 3 ? 3 : dupfocus.Count); i++)
                                    for (int i = (dupfocus.Count < 3 ? 3 : dupfocus.Count); i >= 1; i--)
                                    {
                                        ret.Append("<td class=\"choice\"><input type=\"radio\"   name=\"ass_fill_ch_sc_" + rd.TASID + "\" value=\"" + i + "\" /></td>\r\n");
                                    }

                                    ret.Append("</tr>\r\n");
                                }
                            }



                            ret.Append("</table>\r\n");
                            ret.Append("</div>\r\n");
                            ret.Append("</div>\r\n");



                            ret.Append("</div>\r\n");
                            ret.Append("</div>\r\n");

                            count = count + 1;
                        }

                        Stepcontent.Text = ret.ToString();
                        numtopic.Text    = (count - 1).ToString();
                    }
                }
            }
        }
        else
        {
            //Button btn = (Button)sender;

            //Response.Write(chckCJF.SelectedValue);
        }
    }
Пример #3
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!this.Page.IsPostBack)
        {
            if (!string.IsNullOrEmpty(Request.QueryString["ts"]))
            {
                int tsID = int.Parse(Request.QueryString["ts"]);

                Model_UsersAssessment        uss     = new Model_UsersAssessment();
                List <Model_UsersAssessment> ussList = uss.GetUserAssessmentByTsID(tsID);


                StringBuilder ret = new StringBuilder();

                ret.Append("<div class=\"table-responsive\">");
                ret.Append("<table class=\"table table-striped\">");
                ret.Append("<thead>");
                ret.Append("<tr>");

                ret.Append("<th>Code</th>");
                ret.Append("<th>Question</th>");
                ret.Append("<th>Question Type </th>");
                ret.Append("<th>Section </th>");
                ret.Append("<th>SubSection </th>");
                ret.Append("<th>Score </th>");
                //ret.Append("<th>Task</th>");
                //ret.Append("<th>Date</th>");
                //ret.Append("<th>Date</th>");
                //ret.Append("<th >Action</th>");

                ret.Append("</tr>");
                ret.Append("</thead>");
                ret.Append("<tbody>");

                foreach (Model_UsersAssessment item in ussList)
                {
                    ret.Append("<tr>");

                    Model_UsersAssChoice        ch     = new Model_UsersAssChoice();
                    List <Model_UsersAssChoice> chlist = ch.GetUserAssessmentChoiceByTsID(item.TASID);

                    ret.Append("<td><input style=\"display:none\" type=\"checkbox\" name=\"TASID\" checked=\"checked\" value=\"" + item.TASID + "\" /><input type=\"text\" class=\"form-control\" style=\"text-align:center;\" readonly=\"true\" name=\"TASID_code_" + item.TASID + "\" value=\"" + item.Code + "\" /></td>");
                    ret.Append("<td>" + item.Questions + "</td>");
                    ret.Append("<td>" + item.QuestionTypeTitle + (item.QTID == 5?  " <br/><strong>[" + item.GroupName + "][" + (item.Side == 1? "Left":"Right") + "]</strong>" : "") + "</td>");
                    ret.Append("<td>" + item.SectionTitle + "</td>");
                    ret.Append("<td>" + item.SubSectionTitle + "</td>");
                    ret.Append("<td><input type=\"text\"  name=\"TASID_score_" + item.TASID + "\" class=\"form-control\" style=\"text-align:center;\" value=\"" + item.Score + "\" /></td>");
                    ret.Append("</tr>");

                    if (chlist.Count > 0)
                    {
                        ret.Append("<tr>");
                        ret.Append("<td colspan=\"6\">");


                        ret.Append("<table class=\"table \">");
                        ret.Append("<thead>");
                        ret.Append("<tr>");

                        ret.Append("<th>Code</th>");
                        ret.Append("<th>Question</th>");

                        ret.Append("<th>SubSection </th>");
                        ret.Append("<th>Score </th>");
                        ret.Append("</tr>");
                        ret.Append("</thead>");
                        ret.Append("<tbody>");
                        foreach (Model_UsersAssChoice choice in chlist)
                        {
                            ret.Append("<tr>");
                            ret.Append("<td><input style=\"display:none\"  type=\"checkbox\" name=\"TASCID\" checked=\"checked\" value=\"" + choice.TASCID + "\" /><input type=\"text\" class=\"form-control\" style=\"text-align:center;\" readonly=\"true\" name=\"TASCID_code_" + choice.TASCID + "\" value=\"" + choice.Code + "\" /></td>");
                            ret.Append("<td>" + choice.Questions + "</td>");
                            ret.Append("<td>" + choice.SubSectionTitle + "</td>");
                            ret.Append("<td><input type=\"text\" name=\"TASCID_score_" + choice.TASCID + "\" class=\"form-control\" style=\"text-align:center;\" value=\"" + choice.Score + "\" /></td>");
                            ;
                            ret.Append("</tr>");
                        }


                        ret.Append("</tbody>");

                        ret.Append("</table>");

                        ret.Append("</td>");
                        ret.Append("</tr>");
                    }
                }


                ret.Append("</tbody>");
                ret.Append("</table>");
                ret.Append("</div>");



                data.Text = ret.ToString();
            }
        }
    }