using System; using System.Collections.Generic; using System.Data; using System.IO; using System.Linq; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using Telerik.Web.UI; namespace VRS.Management.Exam { public partial class ResultDetail_Shixun : BaseListPage { DataService.BLL.pro_result_detail bll = new DataService.BLL.pro_result_detail(); DataService.BLL.pro_result bll_result = new DataService.BLL.pro_result(); DataService.BLL.exam_result bll_exam_result = new DataService.BLL.exam_result(); DataService.BLL.exam_result_detail_shixun bll_exam_result_detail_shixun = new DataService.BLL.exam_result_detail_shixun(); DataService.BLL.admin_user bll_admin_User = new DataService.BLL.admin_user(); DataService.BLL.subsubject bll_subsubject = new DataService.BLL.subsubject(); DataService.BLL.subsubjectstep bll_subsubjectstep = new DataService.BLL.subsubjectstep(); protected override void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { DataLoad(); //RadTreeList1.ExpandedIndexes.Add(new TreeListHierarchyIndex { LevelIndex = 0, NestedLevel = 0 }); //RadTreeList1.ExpandedIndexes.Add(new TreeListHierarchyIndex { LevelIndex = 1, NestedLevel = 0 }); //RadTreeList1.ExpandAllItems(); } } protected override void DataLoad() { string Id = Request.Params["Id"]; //var data = bll_exam_result_detail_shixun.GetModelList(" result_id='" + Id + "' ").OrderBy(s => s.no).ToList(); ; $$$$ var data = bll_exam_result_detail_shixun.GetModelList(" result_id='" + Id + "' ").OrderBy(s => s.id).ToList(); hidden_result_id.Value = Id; var result = bll_exam_result.GetModel(Id); var user = bll_admin_User.GetModel(result.user_id); span_name.InnerHtml = user.real_name + "-" + result.subject + "-" + result.score + "分"; foreach(var item in data) { if (string.IsNullOrEmpty(item.r1)) { item.r1 = item.no.ToString(); } item.description = item.description.Replace(" ", " "); } var dataEnd = getDataWithSubSubject(data); dataList.DataSource = dataEnd; dataList.Rebind(); //RadTreeList1.DataSource = dataEnd; //dataList.DataSource = data; //dataList.Rebind(); } List getDataWithSubSubject(List list) { List list_return = new List(); foreach(var item in list) { list_return.Add(item); var list_subject =bll_subsubject.GetModelList("detail_id='" +item.id+ "'"); foreach(var subject_obj in list_subject) { var subject = new DataService.Model.exam_result_detail_shixun(); subject.id = subject_obj.id; subject.parentId = subject_obj.detail_id; subject.r1 = "    " + subject_obj.no; //$$$$ //subject.r1 = subject_obj.no; subject.score = subject_obj.score; subject.total = subject_obj.totalScore; subject.description = subject_obj.subSubjectName; subject.create_time = subject_obj.create_time; list_return.Add(subject); var list_step = bll_subsubjectstep.GetModelList("subsubject_id='" + subject_obj.id + "'"); foreach (var step_obj in list_step) { var step = new DataService.Model.exam_result_detail_shixun(); step.id = step_obj.id; step.parentId = step_obj.subsubject_id; step.r1 = "        " +step_obj.no; //$$$$ //step.r1 = step_obj.no; step.score = step_obj.score; step.total = step_obj.total; step.description = step_obj.description; step.create_time = step_obj.create_time; list_return.Add(step); } } } return list_return; } protected override void GridList_PageIndexChanged(object sender, GridPageChangedEventArgs e) { DataLoad(); } protected void RadTreeList1_NeedDataSource(object sender, TreeListNeedDataSourceEventArgs e) { DataLoad(); } protected override void GridList_PageSizeChanged(object sender, GridPageSizeChangedEventArgs e) { DataLoad(); } protected override void GridList_SortCommand(object sender, GridSortCommandEventArgs e) { DataLoad(); } protected override void GrdList_DeleteCommand(object sender, GridCommandEventArgs e) { string Id = (e.Item as GridDataItem).OwnerTableView.DataKeyValues[e.Item.ItemIndex]["Id"].ToString(); bll.Delete(Id); DataLoad(); } protected override void AjaxManager_AjaxRequest(object sender, AjaxRequestEventArgs e) { } protected void btnSelect_Click(object sender, EventArgs e) { DataLoad(); } protected void btnDelete_Click(object sender, EventArgs e) { bll.Delete(IdInput.Value); DataLoad(); } protected void dataList_ItemDataBound(object sender, GridItemEventArgs e) { if (e.Item is GridDataItem) { GridDataItem item = e.Item as GridDataItem; var model = item.DataItem as DataService.Model.pro_result_detail; if (null != model) { if (model.score == 0) { e.Item.CssClass = "row_highlight"; } } /* double score = double.Parse(item.GetDataKeyValue("score").ToString()); if (score == 0) { e.Item.CssClass = "row_highlight"; } */ } } } }