📄 monitorquestion.aspx.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
namespace Service
{
/// <summary>
/// Summary description for MonitorQuestion.
/// </summary>
public partial class MonitorQuestion : System.Web.UI.Page
{
private ArrayList questionDataSource = new ArrayList();
public String sHaveQuestion = "";
public String sOperation = "";
public String sLinkName = "";
protected void Page_Load(object sender, System.EventArgs e)
{
///验证用户是否登陆
if(Session["UserID"] == null)
{
Response.Redirect("~/Default.aspx");
}
else
{
///验证用户登陆后的角色
String sUserRoleName = UserDB.GetUserLoginRole(Int32.Parse(Session["UserID"].ToString()));
if(sUserRoleName.IndexOf("Monitor") == -1)
{
Response.Redirect("~/Default.aspx");
}
}
if(!Page.IsPostBack)
{
///绑定数据
BindDirectionData();
///选择方向的初始化(随机变化)
if(DirectionList.Items.Count > 0)
{
DirectionList.SelectedIndex = (GlobalVarables.DirectionIndex++) % DirectionList.Items.Count;
}
if(DirectionList.Items.Count > 0)
{
///绑定数据
BindQuestionData(Int32.Parse(DirectionList.SelectedValue));
}
///总共的页数
PageCount.Text = myDataGrid.PageCount.ToString() + " ";
///当前的页码
PageCurrentCount.Text = (myDataGrid.CurrentPageIndex + 1).ToString() + " ";
///初始化页面导向按钮的可见性
IsFirstLastPage();
}
if(Request.Params["LinkID"] != null)
{
GetLinkName(Request.Params["LinkID"].ToString());
}
else
{
if(sOperation == "" || sLinkName == "")
{
sOperation = "报修管理";
sLinkName = "报修监控";
}
}
}
private void GetLinkName(String sLinkID)
{
String[] aName = new String[2];
aName = GlobalVarables.GetLinkName(sLinkID);
sOperation = aName[0].ToString();
sLinkName = aName[1].ToString();
}
private void BindDirectionData()
{
///绑定方向列表的数据
DirectionList.Items.Clear();
DirectionDB dir = new DirectionDB();
SqlDataReader recd = dir.GetDirectionByUser(Int32.Parse(Session["UserID"].ToString()));
DirectionList.DataSource = recd;
DirectionList.DataTextField = "DirectionName";
DirectionList.DataValueField = "DirectionID";
DirectionList.DataBind();
recd.Close();
}
private void BindQuestionData(int nDirectionID)
{
questionDataSource.Clear();
QuestionDB question = new QuestionDB();
SqlDataReader recq = question.GetQuestionByDirection(nDirectionID,0);
///取得绑定数据的数据源
for(int i = 0; i < GlobalVarables.DEGREE; i++)
{
while(recq.Read())
{
QuestionDetails questionDetail = new QuestionDetails();
questionDetail.QuestionID = Int32.Parse(recq["QuestionID"].ToString());
questionDetail.Title = recq["Title"].ToString();
questionDetail.SoluteState = Int32.Parse(recq["SoluteState"].ToString());
questionDetail.PubTime = (DateTime)recq["PubTime"];
questionDetail.DisposeTime = recq["DisposeTime"].ToString();
questionDetail.IsTypeError = Int32.Parse(recq["IsTypeError"].ToString());
questionDetail.OwnerID = Int32.Parse(recq["PubID"].ToString());
if(recq["SoluteState"].ToString() == "2")
{
questionDetail.SoluteTime = recq["SoluteTime"].ToString();
}
else
{
questionDetail.SoluteTime = "";
}
questionDataSource.Add(questionDetail);
}
recq.NextResult();
}
if(questionDataSource.Count > 0)
{
///是否有报修问题
sHaveQuestion = "true";
}
ItemCount.Text = questionDataSource.Count.ToString();
myDataGrid.DataSource = questionDataSource;
myDataGrid.DataBind();
recq.Close();
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.myDataGrid.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.myDataGrid_ItemCommand);
}
#endregion
private void myDataGrid_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(e.CommandName.ToLower() == "look")
{
Response.Redirect("~/ManageSystem/LookQuestion.aspx?QuestionID=" + e.CommandArgument);
}
if(e.CommandName.ToLower() == "dispose")
{
Response.Redirect("~/ManageSystem/SoluteQuestion.aspx?QuestionID=" + e.CommandArgument);
}
}
protected void DirectionList_SelectedIndexChanged(object sender, System.EventArgs e)
{
if(DirectionList.Items.Count > 0)
{
BindQuestionData(Int32.Parse(DirectionList.SelectedValue));
}
}
/// <summary>
/// 实现分页机制
/// </summary>
protected void Page_Click(object sender, System.EventArgs e)
{
String commangArg = ((LinkButton)sender).CommandArgument;
switch(commangArg)
{
//首页
case "First":
{
myDataGrid.CurrentPageIndex = 0;
break;
}
//上一页
case "Prev":
{
myDataGrid.CurrentPageIndex = (int)Math.Max(0,myDataGrid.CurrentPageIndex - 1);
break;
}
//下一页
case "Next":
{
myDataGrid.CurrentPageIndex = (int)Math.Min(myDataGrid.PageCount -1,myDataGrid.CurrentPageIndex +1);
break;
}
//最后一页
case "Last":
{
myDataGrid.CurrentPageIndex = myDataGrid.PageCount -1;
break;
}
default:
{
break;
}
}
//重新绑定myDataGrid的数据
BindQuestionData(Int32.Parse(DirectionList.SelectedValue));
//重新绑定当前的页码
PageCurrentCount.Text = (myDataGrid.CurrentPageIndex + 1).ToString();
//控制页面导向按钮的可见性
IsFirstLastPage();
}
//控制页面导向按钮的可见性
private void IsFirstLastPage()
{
if(myDataGrid.PageCount != 1)
{
if(myDataGrid.CurrentPageIndex == 0)
{
PagePrev.Visible = false;
}
else
{
PagePrev.Visible = true;
}
if(myDataGrid.CurrentPageIndex == myDataGrid.PageCount -1)
{
PageNext.Visible = false;
}
else
{
PageNext.Visible = true;
}
}
else
{
PagePrev.Visible = false;
PageNext.Visible = false;
}
}
//实现随机定位页面
protected void MoveToPageCountBtn_Click(object sender, System.EventArgs e)
{
if((MoveToPageCount.Text.Trim() != "")&&(MoveToPageCount.Text.Trim() != null))
{
if((Int32.Parse(MoveToPageCount.Text.Trim()) > 0)&&(Int32.Parse(MoveToPageCount.Text.Trim()) <= myDataGrid.PageCount))
{
myDataGrid.CurrentPageIndex = Int32.Parse(MoveToPageCount.Text.Trim()) -1;
BindQuestionData(Int32.Parse(DirectionList.SelectedValue));
//重新绑定当前的页码
PageCurrentCount.Text = (myDataGrid.CurrentPageIndex + 1).ToString();
//控制页面导向按钮的可见性
IsFirstLastPage();
}
else
{
Response.Write("<script>alert(\"你输入的页码值超出页码的范围,请重新输入!\")</script>");
}
}
else
{
Response.Write("<script>alert(\"请输入你要转到的页码!\")</script>");
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -