226 lines
8.0 KiB
C#
226 lines
8.0 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using System.Linq;
|
||
using System.Web;
|
||
using System.Web.UI;
|
||
using System.Web.UI.WebControls;
|
||
using Telerik.Web.UI;
|
||
|
||
namespace VRS.Management.VSAT
|
||
{
|
||
public partial class FaultExamMark : BaseListPage
|
||
{
|
||
DataService.BLL.pro_fault_exam bll = new DataService.BLL.pro_fault_exam();
|
||
DataService.BLL.pro_fault_exam_paper_item bll_paper_item = new DataService.BLL.pro_fault_exam_paper_item();
|
||
DataService.BLL.pro_fault_exam_paper bll_paper = new DataService.BLL.pro_fault_exam_paper();
|
||
DataService.BLL.admin_log log = new DataService.BLL.admin_log();
|
||
DataService.BLL.pro_result bll_result = new DataService.BLL.pro_result();
|
||
DataService.BLL.pro_subject bll_subject = new DataService.BLL.pro_subject();
|
||
|
||
|
||
protected override void Page_Load(object sender, EventArgs e)
|
||
{
|
||
base.Page_Load(sender, e);
|
||
if (!IsPostBack)
|
||
{
|
||
DataLoad();
|
||
}
|
||
}
|
||
|
||
|
||
|
||
protected override void DataLoad()
|
||
{
|
||
string paper_id = Request.Params["Id"];
|
||
string result_id = Request.Params["result_id"];
|
||
if (!string.IsNullOrEmpty(result_id))
|
||
{
|
||
var model = bll_result.GetModel(result_id);
|
||
//从科目成绩查询页面进来
|
||
if (null != model)
|
||
{
|
||
paper_id = model.r3;
|
||
score.ReadOnly = true;
|
||
score_dsc.ReadOnly = true;
|
||
tr_add.Visible = false;
|
||
|
||
|
||
}
|
||
}
|
||
if (!string.IsNullOrWhiteSpace(paper_id))
|
||
{
|
||
var list = bll_paper_item.GetModelList(" paper_id='" + paper_id + "'");
|
||
dataList.DataSource = list;
|
||
dataList.Rebind();
|
||
var paper = bll_paper.GetModel(paper_id);
|
||
var desc = string.Format("姓名:" + paper.real_name + " 、 学号:" + paper.login_name + "、 批次:" + paper.batch_name);
|
||
span_batch.InnerHtml = desc;
|
||
|
||
score.Text = paper.score.ToString();
|
||
score_dsc.Text = paper.score_dsc;
|
||
|
||
fault_count.InnerHtml = list.Count.ToString();
|
||
}
|
||
else
|
||
{
|
||
OnError(null);
|
||
}
|
||
}
|
||
|
||
protected void btnSelect_Click(object sender, EventArgs e)
|
||
{
|
||
DataLoad();
|
||
}
|
||
|
||
protected override void GridList_PageIndexChanged(object sender, GridPageChangedEventArgs 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 btnSure_Click(object sender, EventArgs e)
|
||
{
|
||
|
||
string paper_id = Request.Params["Id"];
|
||
var id = Request.Params["Id"];
|
||
if (string.IsNullOrEmpty(score.Text))
|
||
{
|
||
RadAjaxManager1.Alert("分数不能为空!");
|
||
return;
|
||
}
|
||
|
||
var score_value = decimal.Parse(score.Text);
|
||
if (score_value < 0)
|
||
{
|
||
RadAjaxManager1.Alert("分数不能为负值!");
|
||
return;
|
||
}
|
||
|
||
var model = bll_paper.GetModel(paper_id);
|
||
model.score = score_value;
|
||
model.score_dsc = score_dsc.Text.Trim();
|
||
model.state = 2;
|
||
if (bll_paper.Update(model))
|
||
{
|
||
save_paper_item_result();
|
||
save_pro_result(model);
|
||
log.write_log("故障现象打分成功。" + " 分数:" + score_value + " 姓名:" + model.real_name + " 学号:" + model.login_name + " 批次:" + model.batch_name + ",id:" + model.paper_id);
|
||
RadAjaxManager1.ResponseScripts.Add("alert('打分成功!');CloseAndRebind();");
|
||
}
|
||
else
|
||
RadAjaxManager1.Alert("故障现象打分失败!");
|
||
}
|
||
|
||
public void save_pro_result(DataService.Model.pro_fault_exam_paper paper)
|
||
{
|
||
DataService.BLL.pro_result bll = new DataService.BLL.pro_result();
|
||
var result = bll.GetModelList(" subject_id='00003' and batch_id='" + paper.batch_id + "' and user_id='" + paper.user_id + "'").FirstOrDefault();
|
||
if (null != result)
|
||
{
|
||
result.total_result = paper.score;
|
||
bll.Update(result);
|
||
return;
|
||
}
|
||
var model = new DataService.Model.pro_result();
|
||
model.result_id = GetNewId();
|
||
var dt_time = DateTime.Now;
|
||
model.examine_time = paper.examine_time;
|
||
var subject_id = "00003";
|
||
model.subject_id = subject_id;
|
||
|
||
var subject = bll_subject.GetModel(subject_id);
|
||
model.subject_name = subject.subject_name; //故障现象考试$$$$
|
||
|
||
model.batch_id = paper.batch_id;
|
||
model.batch_name = paper.batch_name;
|
||
model.sjms = paper.sjms;
|
||
model.user_id = paper.user_id;
|
||
model.login_name = paper.login_name;
|
||
model.real_name = paper.real_name;
|
||
model.grade = paper.grade;
|
||
model.major = paper.major;
|
||
model.exam_year = DateTime.Now.Year;
|
||
model.exam_month = DateTime.Now.Month;
|
||
model.total_result = paper.score;
|
||
model.r3 = paper.paper_id;
|
||
bll.Add(model);
|
||
}
|
||
|
||
public void save_paper_item_result()
|
||
{
|
||
var count = dataList.MasterTableView.Items.Count;
|
||
for (var i = 0; i < count; i++)
|
||
{
|
||
var item = dataList.MasterTableView.Items[i];
|
||
var textbox = item.DetailTemplateItemDataCell.FindControl("score") as RadNumericTextBox;
|
||
if (null != textbox)
|
||
{
|
||
var item_id = item.GetDataKeyValue("item_id").ToString(); //,item_id,score
|
||
var model = bll_paper_item.GetModel(item_id);
|
||
model.score = decimal.Parse(textbox.Text);
|
||
bll_paper_item.Update(model);
|
||
}
|
||
}
|
||
}
|
||
|
||
|
||
|
||
protected void dataList_ItemDataBound(object sender, GridItemEventArgs e)
|
||
{
|
||
if (e.Item is GridDataItem)
|
||
{
|
||
GridDataItem item = e.Item as GridDataItem;
|
||
var textbox = item.DetailTemplateItemDataCell.FindControl("score") as RadNumericTextBox;
|
||
//exam_id,item_id,score
|
||
var score = item.GetDataKeyValue("score").ToString();
|
||
var exam_id = item.GetDataKeyValue("exam_id").ToString();
|
||
|
||
if (null != textbox)
|
||
{
|
||
|
||
textbox.Enabled = tr_add.Visible;
|
||
textbox.Text = score;
|
||
}
|
||
}
|
||
}
|
||
|
||
protected void btnCompute_Click(object sender, EventArgs e)
|
||
{
|
||
double total = 0;
|
||
|
||
var count = dataList.MasterTableView.Items.Count;
|
||
for (var i = 0; i < count; i++)
|
||
{
|
||
var item = dataList.MasterTableView.Items[i];
|
||
var textbox = item.DetailTemplateItemDataCell.FindControl("score") as RadNumericTextBox;
|
||
if (null != textbox)
|
||
{
|
||
var value = textbox.Value.HasValue ? textbox.Value.Value : 0;
|
||
total += value;
|
||
}
|
||
}
|
||
score.Value = total;
|
||
}
|
||
}
|
||
} |