public void LoadStatsClassHW_KP()//知识点 { string StrTemp = string.Empty; List <Model_StatsClassHW_KP> StatsClassHW_KP_list = new List <Model_StatsClassHW_KP>(); BLL_StatsClassHW_KP bll_StatsClassHW_KP = new BLL_StatsClassHW_KP(); StatsClassHW_KP_list = bll_StatsClassHW_KP.GetModelList("HomeWork_ID='" + HomeWork_Id + "' and ResourceToResourceFolder_Id='" + ResourceToResourceFolder_Id + "' order by TestQuestionNums"); foreach (var item in StatsClassHW_KP_list) { StrTemp += string.Format(TempHW_KP , item.KPName , GetTQNum(dtTQ_S, item.KPName, item.TestQuestionNumStrs.ToString(), item.TestQuestionNums) , GetKPScore(item.KPName, 1) , GetKPScore(item.KPName, 2) , item.KPScoreAvg.ToString().clearLastZero() , item.KPScoreAvgRate.ToString().clearLastZero()); } this.ltlHW_KP.Text = StrTemp; }
public static string StatsClassHW_KP(string ResourceToResourceFolder_Id, string UserId, string ClassID) { try { string StrWhere = "ResourceToResourceFolder_Id='" + ResourceToResourceFolder_Id.Filter() + "' and TeacherID='" + UserId.Filter() + "'"; //if (!string.IsNullOrEmpty(ClassID.Filter())) //{ // StrWhere += " and ClassID='" + ClassID.Filter() + "'"; //} StringBuilder StrTBody = new StringBuilder(); StringBuilder StrTHead = new StringBuilder(); string StrClassname = string.Empty; string DateSour = string.Empty; string StrScoreTemp = string.Empty; string StrKPNum = string.Empty; BLL_StatsClassHW_KP bllStatsClassHW_KP = new BLL_StatsClassHW_KP(); List <Model_StatsClassHW_KP> StatsClassHW_KPList = new List <Model_StatsClassHW_KP>(); List <Model_StatsClassHW_KP> listAll = new List <Model_StatsClassHW_KP>(); //所有数据 listAll = bllStatsClassHW_KP.GetModelList(StrWhere + " order by KPName "); List <Model_StatsClassHW_KP> listDistictClass = listAll.Where((x, i) => listAll.FindIndex(z => z.ClassID == x.ClassID) == i).ToList(); //去重后数据 List <Model_StatsClassHW_KP> listDistictKP = listAll.Where((x, i) => listAll.FindIndex(z => z.KPName == x.KPName) == i).ToList(); //去重后数据 StrTHead.Append("<tr><td class='align_left'>知识点名称</td><td>知识点分数</td>"); foreach (var item in listDistictClass) { StrTHead.AppendFormat("<td>{0}平均得分率</td>", item.ClassName); List <Model_StatsClassHW_KP> listAllbyClass = listAll.Where(x => x.ClassID == item.ClassID).ToList(); foreach (var itemtq in listAllbyClass) { StrScoreTemp += itemtq.KPScoreAvgRate + ","; } DateSour += "{\"name\":\"" + item.ClassName + "\",\"data\":[" + StrScoreTemp.TrimEnd(',') + "]},"; StrScoreTemp = ""; } StrTHead.Append("</tr>"); foreach (var item in listDistictKP) { StrTBody.AppendFormat("<tr><td class='align_left'>{0}</td><td>{1}</td>", item.KPName, item.KPScoreSum.ToString().clearLastZero()); foreach (var itemClass in listDistictClass) { List <Model_StatsClassHW_KP> listDistictBody = listAll.Where(x => x.ClassID == itemClass.ClassID && x.KPName == item.KPName).ToList(); foreach (var itemBody in listDistictBody) { StrTBody.AppendFormat("<td>{0}%</td>", itemBody.KPScoreAvgRate.ToString().clearLastZero()); } if (listDistictBody.Count == 0) { StrTBody.Append("<td>-</td>"); } } StrKPNum += item.KPName + ","; StrTBody.Append("</tr>"); } string oo = DateSour; return(Newtonsoft.Json.JsonConvert.SerializeObject(new { thead = StrTHead.ToString(), tbody = StrTBody.ToString(), DateSour = "[" + DateSour.TrimEnd(',') + "]", StrKPNum = StrKPNum.TrimEnd(',') })); } catch (Exception) { return(""); } }
public static string GetStatsClassHW_KP(string Class, string ResourceToResourceFolder_Id, string UserId, string KPName, string KPScoreAvgRate) { try { Class = Class.Filter(); ResourceToResourceFolder_Id = ResourceToResourceFolder_Id.Filter(); UserId = UserId.Filter(); KPName = KPName.Filter(); KPScoreAvgRate = KPScoreAvgRate.Filter(); string TempDate = string.Empty; string StrWhere = string.Empty; string ClassName = string.Empty; if (!string.IsNullOrEmpty(KPName)) { StrWhere += " and KPName like '%" + KPName.TrimEnd() + "%'"; } if (!string.IsNullOrEmpty(KPScoreAvgRate)) { StrWhere += " and KPScoreAvgRate<" + KPScoreAvgRate.TrimEnd() + ""; } // string Temp = "<tr><td>数列的极限</td><td>20</td><td>90%</td><td><a href="##">第1题</a><a href="##">第3题</a></td></tr>"; string Temp = "<tr><td>{0}</td><td>{1}</td><td>{2}%</td><td>{3}</td><td><a href='{4}' target='_blank'>查看</a></td></tr>"; string KPNames = string.Empty; string KPScoreAvgRates = string.Empty; //name: '一班',data: [83, 78, 98, 93, 56, 84, 65, 104, 91, 83] DataTable dtTQ_S = new BLL_TestQuestions_Score().GetList("ResourceToResourceFolder_Id='" + ResourceToResourceFolder_Id + "' order by TestQuestions_Num,TestQuestions_OrderNum ").Tables[0]; if (Class == "-1") { HttpContext.Current.Session["StatsClassClassId"] = "-1"; BLL_StatsTeacherHW_KP bllTeacherHW_KP = new BLL_StatsTeacherHW_KP(); List <Model_StatsTeacherHW_KP> TeacherHW_KPList = new List <Model_StatsTeacherHW_KP>(); TeacherHW_KPList = bllTeacherHW_KP.GetModelList("TeacherID='" + UserId + "' and ResourceToResourceFolder_Id='" + ResourceToResourceFolder_Id + "'" + StrWhere + " order by TestQuestionNums "); foreach (var item in TeacherHW_KPList) { TempDate += string.Format(Temp , item.KPName , item.KPScoreSum.ToString().clearLastZero() , item.KPScoreAvgRate.ToString().clearLastZero() , GetTQNum(dtTQ_S, item.KPName, item.ResourceToResourceFolder_Id, item.TestQuestionNumStrs, item.TestQuestionNums) , "HisKlgAnalysisSource.aspx?SubjectID=" + item.SubjectID + "&ClassID=&KPName=" + Rc.Common.DBUtility.DESEncrypt.Encrypt(item.KPName.ToString()) + "&DateData=&DateType=month&TeacherId=" + item.TeacherID ); KPScoreAvgRates += item.KPScoreAvgRate.ToString().clearLastZero() + ","; KPNames += item.KPName + ","; } if (TempDate == "") { return(""); } else { return(TempDate + "|全部班级|" + KPScoreAvgRates.TrimEnd(',') + "|" + KPNames.TrimEnd(',')); } } else { HttpContext.Current.Session["StatsClassClassId"] = Class; BLL_StatsClassHW_KP bllClassHW_KP = new BLL_StatsClassHW_KP(); List <Model_StatsClassHW_KP> ClassHW_KPList = new List <Model_StatsClassHW_KP>(); ClassHW_KPList = bllClassHW_KP.GetModelList("ClassID='" + Class + "' and ResourceToResourceFolder_Id='" + ResourceToResourceFolder_Id + "' " + StrWhere + " order by TestQuestionNums "); foreach (var item in ClassHW_KPList) { TempDate += string.Format(Temp , item.KPName , item.KPScoreSum.ToString().clearLastZero() , item.KPScoreAvgRate.ToString().clearLastZero() , GetTQNum(dtTQ_S, item.KPName, item.ResourceToResourceFolder_Id, item.TestQuestionNumStrs, item.TestQuestionNums) , "HisKlgAnalysisSource.aspx?SubjectID=" + item.SubjectID + "&ClassID=" + item.ClassID + "&KPName=" + Rc.Common.DBUtility.DESEncrypt.Encrypt(item.KPName.ToString()) + "&DateData=" + pfunction.ConvertToLongDateTime(item.HomeWorkCreateTime.ToString(), "yyyy-MM") + "&DateType=month&TeacherId=" + item.TeacherID ); KPScoreAvgRates += item.KPScoreAvgRate.ToString().clearLastZero() + ","; KPNames += item.KPName + ","; ClassName = item.ClassName; } if (TempDate == "") { return(""); } else { return(TempDate + "|" + ClassName + "|" + KPScoreAvgRates.TrimEnd(',') + "|" + KPNames.TrimEnd(',')); } } } catch (Exception) { return(""); } }
public static string GetHWList(string TeacherID, string SubjectID, string ClassID, string KPName, string DateData, string DateType) { try { TeacherID = TeacherID.Filter(); SubjectID = SubjectID.Filter(); ClassID = ClassID.Filter(); KPName = KPName = Rc.Common.DBUtility.DESEncrypt.Decrypt(KPName); DateData = DateData.Filter(); DateType = DateType.Filter(); string strWhere = "TeacherID ='" + TeacherID + "'"; if (!string.IsNullOrEmpty(SubjectID)) { strWhere += " AND SubjectID ='" + SubjectID + "'"; } if (!string.IsNullOrEmpty(ClassID)) { strWhere += " AND ClassID ='" + ClassID + "'"; } if (!string.IsNullOrEmpty(KPName)) { strWhere += " AND KPName ='" + KPName + "'"; } if (!string.IsNullOrEmpty(DateData)) { switch (DateType) { case "month": strWhere += " AND CONVERT(varchar(7),HomeWorkCreateTime,120)='" + DateData + "'"; break; case "halfyear": strWhere += " AND dbo.[f_GetDatePartHalfYear](CONVERT(varchar(10),HomeWorkCreateTime,120))='" + DateData + "'"; break; case "quarter": strWhere += " AND dbo.[f_GetDatePartQuarter](CONVERT(varchar(10),HomeWorkCreateTime,120))='" + DateData + "'"; break; } } DataTable dt = new DataTable(); if (string.IsNullOrEmpty(ClassID))//从老师表读取数据 { dt = new BLL_StatsTeacherHW_KP().GetList(strWhere + " ORDER BY Resource_Name DESC").Tables[0]; } else { dt = new BLL_StatsClassHW_KP().GetList(strWhere + " ORDER BY HomeWorkCreateTime DESC").Tables[0]; } List <object> listReturn = new List <object>(); int inum = 1; string temp = string.Empty; string strxAxis = string.Empty; string strSeries = string.Empty; for (int i = 0; i < dt.Rows.Count; i++) { DataTable dtTQ_S = new BLL_TestQuestions_Score().GetList("ResourceToResourceFolder_Id='" + dt.Rows[i]["ResourceToResourceFolder_Id"] + "' and ContentText='" + KPName + "' order by TestQuestions_Num,TestQuestions_OrderNum ").Tables[0]; string TQNums = string.Empty; string TQStr = dt.Rows[i]["TestQuestionNumStrs"].ToString(); string TQNumsStr = dt.Rows[i]["TestQuestionNums"].ToString(); if (!string.IsNullOrEmpty(TQStr)) { string[] strArr = TQStr.Split(','); string[] strNumArr = TQNumsStr.Split(','); for (int j = 0; j < strArr.Length; j++) { string testIndex = string.Empty; if (dtTQ_S.Rows.Count > 0 && (dtTQ_S.Rows[j]["TestType"].ToString() == "clozeTest" || dtTQ_S.Rows[j]["TestType"].ToString() == "fill")) { testIndex = string.IsNullOrEmpty(dtTQ_S.Rows[j]["testIndex"].ToString()) ? "" : "-" + dtTQ_S.Rows[j]["testIndex"].ToString(); } TQNums += string.Format("<a href='../teacher/HomeworkPreviewT.aspx?ResourceToResourceFolder_Id={0}#{2}' target=\"_blank\">第{1}题", dt.Rows[i]["ResourceToResourceFolder_Id"].ToString() , strArr[j].TrimEnd('.') + testIndex , strNumArr[j].TrimEnd('.')); } } strxAxis += ((!string.IsNullOrEmpty(dt.Rows[i]["Resource_Name"].ToString())) ? dt.Rows[i]["Resource_Name"].ToString().ReplaceForFilter() : "-") + ","; strSeries += dt.Rows[i]["KPScoreAvgRate"].ToString() + ","; listReturn.Add(new { HomeWork_Name = dt.Rows[i]["Resource_Name"].ToString().ReplaceForFilter(), HomeWorkCreateTime = string.IsNullOrEmpty(ClassID) ? pfunction.ConvertToLongDateTime(dt.Rows[i]["CreateTime"].ToString(), "yyyy-MM-dd HH:mm") : pfunction.ConvertToLongDateTime(dt.Rows[i]["HomeWorkCreateTime"].ToString(), "yyyy-MM-dd HH:mm"), KPScoreSum = dt.Rows[i]["KPScoreSum"].ToString().clearLastZero(), KPScoreAvgRate = (!string.IsNullOrEmpty(dt.Rows[i]["KPScoreAvgRate"].ToString())) ? dt.Rows[i]["KPScoreAvgRate"].ToString().clearLastZero() + "%" : "-", TestQuestionNums = TQNums, ClassID = string.IsNullOrEmpty(ClassID) ? "" : ClassID }); inum++; } if (inum > 1) { return(JsonConvert.SerializeObject(new { err = "null", list = listReturn, strxAxisCategories = strxAxis.TrimEnd(','), strSeriesData = strSeries.TrimEnd(','), DataCount = dt.Rows.Count })); } else { return(JsonConvert.SerializeObject(new { err = "暂无数据" })); } } catch (Exception ex) { return(JsonConvert.SerializeObject(new { err = ex.Message.ToString() })); } }
public static string GetHWList(string GradeId, string SubjectID, string ClassID, string KPName, string DateData, string DateType) { try { GradeId = GradeId.Filter(); SubjectID = SubjectID.Filter(); ClassID = ClassID.Filter(); KPName = Rc.Common.DBUtility.DESEncrypt.Decrypt(KPName);; DateData = DateData.Filter(); DateType = DateType.Filter(); string strWhere = "1=1"; if (!string.IsNullOrEmpty(GradeId)) { strWhere += " AND Gradeid ='" + GradeId + "'"; } if (!string.IsNullOrEmpty(SubjectID)) { strWhere += " AND SubjectID ='" + SubjectID + "'"; } if (!string.IsNullOrEmpty(ClassID)) { strWhere += " AND ClassID ='" + ClassID + "'"; } if (!string.IsNullOrEmpty(KPName)) { strWhere += " AND KPName ='" + KPName + "'"; } if (!string.IsNullOrEmpty(DateData)) { switch (DateType) { case "month": strWhere += " AND CONVERT(varchar(7),HomeWorkCreateTime,120)='" + DateData + "'"; break; case "halfyear": strWhere += " AND dbo.[f_GetDatePartHalfYear](CONVERT(varchar(10),HomeWorkCreateTime,120))='" + DateData + "'"; break; case "quarter": strWhere += " AND dbo.[f_GetDatePartQuarter](CONVERT(varchar(10),HomeWorkCreateTime,120))='" + DateData + "'"; break; } } strWhere += " ORDER BY HomeWorkCreateTime DESC"; DataTable dt = new DataTable(); BLL_StatsClassHW_KP bll = new BLL_StatsClassHW_KP(); dt = bll.GetList(strWhere).Tables[0]; List <object> listReturn = new List <object>(); int inum = 1; string temp = string.Empty; string strxAxis = string.Empty; string strSeries = string.Empty; for (int i = 0; i < dt.Rows.Count; i++) { string TQNums = string.Empty; string TQStr = dt.Rows[i]["TestQuestionNumStrs"].ToString().TrimEnd('.'); string TQNumsStr = dt.Rows[i]["TestQuestionNums"].ToString(); if (!string.IsNullOrEmpty(TQStr)) { string[] strNumArr = TQNumsStr.Split(','); string[] strArr = TQStr.Split(','); for (int j = 0; j < strArr.Length; j++) { TQNums += string.Format("<a href='../teacher/HomeworkPreviewT.aspx?ResourceToResourceFolder_Id={0}#{2}' target=\"_blank\">第{1}题</a>" , dt.Rows[i]["ResourceToResourceFolder_Id"].ToString() , strArr[j].TrimEnd('.') , strNumArr[j].TrimEnd('.')); } } strxAxis += ((!string.IsNullOrEmpty(dt.Rows[i]["HomeWork_Name"].ToString())) ? dt.Rows[i]["HomeWork_Name"].ToString() : "-") + ","; strSeries += dt.Rows[i]["KPScoreAvgRate"].ToString() + ","; listReturn.Add(new { HomeWork_Name = dt.Rows[i]["HomeWork_Name"].ToString(), HomeWorkCreateTime = pfunction.ConvertToLongDateTime(dt.Rows[i]["HomeWorkCreateTime"].ToString(), "yyyy-MM-dd HH:mm"), KPScoreSum = dt.Rows[i]["KPScoreSum"].ToString().clearLastZero(), KPScoreAvgRate = (!string.IsNullOrEmpty(dt.Rows[i]["KPScoreAvgRate"].ToString())) ? dt.Rows[i]["KPScoreAvgRate"].ToString().clearLastZero() + "%" : "-", TestQuestionNums = TQNums, }); inum++; } if (inum > 1) { return(JsonConvert.SerializeObject(new { err = "null", list = listReturn, strxAxisCategories = strxAxis.TrimEnd(','), strSeriesData = strSeries.TrimEnd(','), DataCount = dt.Rows.Count })); } else { return(JsonConvert.SerializeObject(new { err = "暂无数据" })); } } catch (Exception ex) { return(JsonConvert.SerializeObject(new { err = ex.Message.ToString() })); } }
public static string GetStatsGradeHW_KP(string ResourceToResourceFolder_Id, string GradeId) { try { StringBuilder StrTBody = new StringBuilder(); StringBuilder StrTHead = new StringBuilder(); string StrClassname = string.Empty; string DateSour = string.Empty; string StrKPNum = string.Empty; //班级 BLL_StatsClassHW_KP bllStatsClassHW_KP = new BLL_StatsClassHW_KP(); List <Model_StatsClassHW_KP> StatsClassHW_KPList = new List <Model_StatsClassHW_KP>(); List <Model_StatsClassHW_KP> listAll = new List <Model_StatsClassHW_KP>(); //所有数据 listAll = bllStatsClassHW_KP.GetModelList("ResourceToResourceFolder_Id='" + ResourceToResourceFolder_Id + "' and Gradeid='" + GradeId + "' and KPName<>'' order by TestQuestionNums "); List <Model_StatsClassHW_KP> listDistictClass = listAll.Where((x, i) => listAll.FindIndex(z => z.ClassID == x.ClassID) == i).ToList(); //去重后数据 List <Model_StatsClassHW_KP> listDistictKP = listAll.Where((x, i) => listAll.FindIndex(z => z.KPName == x.KPName) == i).ToList(); //去重后数据 foreach (var item in listDistictClass) { StrTHead.AppendFormat("<li title='{0}得分率'>{0}得分率</li>", item.ClassName); } //年级 BLL_StatsGradeHW_KP bllStatsGradeHW_KP = new BLL_StatsGradeHW_KP(); List <Model_StatsGradeHW_KP> StatsGradeHW_KPList = new List <Model_StatsGradeHW_KP>(); List <Model_StatsGradeHW_KP> StatsGradeHW_KPlistAll = new List <Model_StatsGradeHW_KP>(); //所有数据 StatsGradeHW_KPlistAll = bllStatsGradeHW_KP.GetModelList("ResourceToResourceFolder_Id='" + ResourceToResourceFolder_Id + "' and Gradeid='" + GradeId + "' and KPName<>'' order by TestQuestionNums "); List <Model_StatsGradeHW_KP> listStatsGradeHW_KP = StatsGradeHW_KPlistAll.Where((x, i) => StatsGradeHW_KPlistAll.FindIndex(z => z.KPName == x.KPName) == i).ToList(); //去重后数据 DataTable dtTQ_S = new BLL_TestQuestions_Score().GetList("ResourceToResourceFolder_Id='" + ResourceToResourceFolder_Id + "' order by TestQuestions_Num,TestQuestions_OrderNum ").Tables[0]; string GradeBody = string.Empty; GradeBody = "<ul class=\"clearfix\"><li class=\"perform_left\"><ul class=\"clearfix\"><li class=\"l_1\" title='{0}'>{0}</li><li class=\"l_2\">{1}</li><li class=\"l_3\" title='{2}'>{2}</li><li class=\"l_4\">{3}%</li></ul></li>"; foreach (var item in listStatsGradeHW_KP) { string KPClassNameTemp = string.Empty; string KPScoreAvgRateTemp = string.Empty; string strKPName = item.KPName.Replace("'", "").Replace("\"", ""); StrTBody.AppendFormat(GradeBody , strKPName , item.KPScoreSum.ToString().clearLastZero() , GetTQNum(dtTQ_S, item.KPName, item.TestQuestionNumStrs.TrimEnd('.'), item.TestQuestionNums) , item.KPScoreAvgRate.ToString().clearLastZero()); StrTBody.Append("<li class=\"perform_center\"><div class=\"perform_div\" data-name=\"perform_div\"><ul class=\"clearfix\">"); foreach (var itemClass in listDistictClass) { List <Model_StatsClassHW_KP> listDistictBody = listAll.Where(x => x.ClassID == itemClass.ClassID && x.KPName == item.KPName).ToList(); foreach (var itemBody in listDistictBody) { StrTBody.AppendFormat("<li>{0}%</li>", itemBody.KPScoreAvgRate.ToString().clearLastZero()); KPClassNameTemp += itemClass.ClassName + "†"; KPScoreAvgRateTemp += itemBody.KPScoreAvgRate + "†"; } if (listDistictBody.Count == 0) { StrTBody.Append("<li>-</li>"); KPClassNameTemp += itemClass.ClassName + "†"; KPScoreAvgRateTemp += "0" + "†"; } } //string Josn = "['" + item.KPName + "','" + KPClassNameTemp.TrimEnd(',') + "','" + KPScoreAvgRateTemp.TrimEnd(',') + "']"; //string Josn = ""; StrTBody.Append("</ul></div></li><li class=\"perform_right\"><a href='##' onclick=\"javascript:ShowPic('" + strKPName + "','" + KPClassNameTemp.TrimEnd('†') + "','" + KPScoreAvgRateTemp.TrimEnd('†') + "');\">图表</a></li></ul>"); } string oo = StrTBody.ToString(); return(Newtonsoft.Json.JsonConvert.SerializeObject(new { err = "", thead = StrTHead.ToString(), tbody = StrTBody.ToString() })); } catch (Exception) { return(""); } }