📄 studentattend.aspx.cs
字号:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
//该源码下载自www.51aspx.com(51aspx.com)
public partial class Personal_StudentAttend : System.Web.UI.Page
{
LoginInfo My;
protected void Page_Load(object sender, EventArgs e)
{
My = new LoginInfo(Session["LoginID"]);
if (My.LoginID == 0) Response.Redirect("~/Signin.aspx");
ClassCourse.ClassCourseChanged += new uctl_ClassCourse.ClassCourseChangedEventHander(ClassCourseChange);
if (!IsPostBack)
{
string datenow = CommOp.ToStr(Session["AttendtDate"]);
if (datenow == "")
Calendar1.SelectedDate = DateTime.Now;
else
{
Calendar1.SelectedDate = Convert.ToDateTime(datenow);
}
txtStartTime.Text = Calendar1.SelectedDate.ToShortDateString();
btnSave.Attributes.Add("onclick", "return saveChanged();");
txtStartTime.Attributes.Add("onclick", "turnDatePicker();");
}
}
private void savePreviousChange(string prevChg)
{
string[] attStatus = prevChg.Split(',');
foreach (string att in attStatus)
{
string[] ats = att.Split('|');
string sql = "";
if (ats[2] == "0")
{
sql = "DELETE FROM J_Attend WHERE at_ID = " + ats[0];
DBExec.ExecNonQuery(sql);
}
else if (ats[0] == "0")
{
sql = "INSERT INTO J_Attend (at_StCourse,at_StartTime,at_Time,at_Type) "
+ "VALUES (" + ats[1] + ",'" + txtStartTime.Text + "'," + txtTime.Text + "," + ats[2] + ")";
DBExec.ExecNonQuery(sql);
}
else
{
sql = "UPDATE J_Attend SET at_StartTime='" + txtStartTime.Text + "',at_Time=" + txtTime.Text + ", at_type=" + ats[2] + " WHERE at_ID=" + ats[0] + " AND at_StCourse=" + ats[1];
DBExec.ExecNonQuery(sql);
}
}
}
private void ClassCourseChange()
{
string classname = "(无班级)";
string coursename = "(所有课程)";
if (ClassCourse.ClassName != "") classname = ClassCourse.ClassName;
if (ClassCourse.CourseName != "") coursename = ClassCourse.CourseName;
Path.Text = classname + " - " + coursename;
SqlDataSource3.SelectParameters.Clear();
SqlDataSource3.SelectParameters.Add("de_ID", ClassCourse.ClassID.ToString());
SqlDataSource3.SelectParameters.Add("co_ID", ClassCourse.CourseID.ToString());
SqlDataSource3.SelectParameters.Add("ThisDate", TypeCode.DateTime, txtStartTime.Text);
SqlDataSource3.SelectParameters.Add("EmployeeID", My.LoginID.ToString());
GridView1.DataBind();
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
String[] TypeNameArr = new String[] { "", "正点", "迟到", "早退", "病假", "事假", "缺课" };
int passedcol = 4; //已上课时单元格
int attendedcol = 5; //实上课时单元格
int clickcol = 7; //
int lastcol = 8;
if (e.Row.RowType == DataControlRowType.DataRow)
{
DataKey keys = GridView1.DataKeys[e.Row.RowIndex];
int key = 0;
int at_ID = 0;
int sc_ID = 0;
int passed = 0;
int attended = 0;
int co_Time = 0;
int attendPercent = 0;
int passPercent = 0;
if (keys[0] != DBNull.Value) at_ID = Convert.ToInt32(keys[0]);
if (keys[1] != DBNull.Value) sc_ID = Convert.ToInt32(keys[1]);
if ((keys[2]) != DBNull.Value) key = Convert.ToInt32(keys[2]);
if (keys[3] != DBNull.Value) passed = Convert.ToInt32(keys[3]);
if (keys[4] != DBNull.Value) attended = Convert.ToInt32(keys[4]);
co_Time = Convert.ToInt32(keys[5]);
if (co_Time > 0) passPercent = (int)((double)passed / co_Time * 100.00); //经过的课程比率
if (passed > 0) attendPercent = (int)((double)attended / passed * 100.00); //上过的课程比率
e.Row.Cells[passedcol].Text = "<img src='../images/prog.gif' height='14' width='" + passPercent*3/4 + "' align='absmiddle' />" + passed + "/" + co_Time;
// e.Row.Cells[passedcol].Attributes.Add("style", "background:url('../images/cac.gif') no-repeat -" + (157 - passPercent * 157 / 175) + "px ");
e.Row.Cells[attendedcol].Text = "<img src='../images/prog.gif' height='14' width='" + attendPercent*3/4 + "' align='absmiddle' />" + attendPercent + "%";
// e.Row.Cells[attendedcol].Attributes.Add("style", "background:url('../images/cac.gif') no-repeat -"+ (157- attendPercent*157/175) + "px ");
e.Row.Cells[clickcol].Attributes.Add("onmouseup", "if (!typeArr[" + e.Row.RowIndex + "]) typeArr[" + e.Row.RowIndex + "] = new AttendBox(this," + at_ID + "," + keys[1] + "," + key + "," + e.Row.RowIndex + "); typeArr[" + e.Row.RowIndex + "].click();");
e.Row.Cells[clickcol].CssClass = "att" + key;
e.Row.Cells[clickcol].Text = TypeNameArr[key];
e.Row.Cells[lastcol].Text = "<a href=\"javascript:opendialog(" + at_ID + "," + sc_ID + ",'" + txtStartTime.ClientID + "','" + txtTime.ClientID + "')\">修改</a>";
}
}
protected void btnSave_Click(object sender, EventArgs e)
{
savePreviousChange(Request.Form["ChangedInfo"]);
GridView1.DataBind();
}
private void dayPicked()
{
txtStartTime.Text = Calendar1.SelectedDate.ToShortDateString();
Session["AttendtDate"] = Calendar1.SelectedDate;
ClassCourse.ShowAndSave();
ClassCourseChange();
}
protected void Calendar1_SelectionChanged(object sender, EventArgs e)
{
dayPicked();
}
protected void btnNextDay_Click(object sender, EventArgs e)
{
Calendar1.SelectedDate = Calendar1.SelectedDate.AddDays(1);
dayPicked();
}
protected void btnPrevtDay_Click(object sender, EventArgs e)
{
Calendar1.SelectedDate = Calendar1.SelectedDate.AddDays(-1);
dayPicked();
}
protected void SqlDataSource1_Selected(object sender, SqlDataSourceStatusEventArgs e)
{
lblCounter.Text = "(" + e.AffectedRows + "人)";
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -