platform/Dict/.svn/text-base/AuthorityMain.aspx.cs.svn-base

319 lines
10 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Data;
using System.Web.UI;
using System.Web.UI.WebControls;
using ZhangPu.Gov.Logical;
using Tracen.Utils;
namespace ajax.Dict
{
public partial class AuthorityMain :PageBase
{
private LAuthority _logic;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
_logic = new LAuthority();
Databound();
}
SessionSeting();
}
/***************************************** private methods ******************************************/
/// <summary>
/// bound the query list.
/// </summary>
private void Databound()
{
//装载选定部门节点的部门数据
DataView dv = new DataView(_logic.GetAllActiveData().Tables[0]);
if (TreeAuth.SelectedNode != null)
{
TreeAuth.SelectedNode.ChildNodes.Clear();
BindTree(TreeAuth.SelectedNode.Value, TreeAuth.SelectedNode, dv);
//绑定树列表里选中的部门下的所有部门数据
dv.RowFilter = "auth_uplevel = '" + TreeAuth.SelectedValue + "'";
}
GridView1.DataSource = dv;
GridView1.DataBind();
UpdateSession();
ClearDetail();
}
private void SessionSeting()
{
if (IsPostBack)
{
_logic = (LAuthority)Session[appScope.PagelevelObj];
}
}
private void UpdateSession()
{
Session[appScope.PagelevelObj] = _logic;
}
/// <summary>
/// set data from shift object to page
/// </summary>
private void DetailDataBind()
{
//公共信息不可以有url必须为public
LAuthority ltmp = new LAuthority();
ltmp.Initialize(Convert.ToInt32(TreeAuth.SelectedValue));
chkPublic.Enabled = !ltmp.GetAuthority.auth_publicInfomation;
chkPublicInfo.Enabled = !ltmp.GetAuthority.auth_publicInfomation;
chkAlert.Enabled =!chkPublicInfo.Enabled; //跑马灯的上级必须是公共信息
if (chkPublicInfo.Checked) txtLink.Enabled = false;
DataDetail.Visible = true;
txtName.Text = _logic.GetAuthority.auth_name;
txtDesc.Text = _logic.GetAuthority.auth_desc;
txtLink.Text = _logic.GetAuthority.auth_link;
chkPublic.Checked = _logic.GetAuthority.auth_public;
chkPublicInfo.Checked = _logic.GetAuthority.auth_publicInfomation;
//上级为公共信息,则下级也必须是
if(ltmp.GetAuthority.auth_publicInfomation)
chkPublicInfo.Checked = ltmp.GetAuthority.auth_publicInfomation;
if (ltmp.GetAuthority.auth_public)
chkPublic.Checked = ltmp.GetAuthority.auth_public;
chkAlert.Checked = _logic.GetAuthority.auth_marqueen;
chkPublic.Checked = _logic.GetAuthority.auth_public;
ltmp = null;
// chkStatus.Checked = _logic.GetRole.dr;
}
/************************************** protected methods (event listeners) ********************************/
protected void btnAddnew_Click(object sender, EventArgs e)
{
chgOperTxt(true);
_logic.Initialize();
GridView1.SelectedIndex = -1;
Databound();
DetailDataBind();
}
protected void DetailsView1_PageIndexChanging(object sender, DetailsViewPageEventArgs e)
{
}
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
chgOperTxt(false);
if (GridView1.DataKeys != null)
{
string id = GridView1.DataKeys[e.NewEditIndex].Value.ToString();
_logic.Initialize(int.Parse(id));
}
Databound();
DetailDataBind();
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
SetDataBack();
//shifts id eq 0 means this is new one,to add; else an old one, to update
int oper = 0;
oper = _logic.GetAuthority.ID > 0 ? _logic.GetAuthority.Update() : _logic.GetAuthority.Add();
ClearDetail();
Databound();
lbEdit.Text = "";
}
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
if (GridView1 != null)
{
if (GridView1.DataKeys != null)
{
string id = GridView1.DataKeys[e.RowIndex].Value.ToString();
_logic.Initialize(int.Parse(id));
}
}
/*
_logic.GetRole.dr = false;
_logic.GetRole.Update();
*/
_logic.GetAuthority.Delete();
ClearDetail();
Databound();
}
protected void GridView1_PageIndexChanged(object sender, EventArgs e)
{
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
Databound();
//GridView1.DataSource = shiftLgc.getAllShifts().Tables[0];
// GridView1.DataBind();
}
protected void GridView1_DataBinding(object sender, EventArgs e)
{
}
protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
{
}
//reset the page
protected void btnCancel_Click(object sender, EventArgs e)
{
_logic.Initialize();
Page_Load(this, e);
}
/***************************************** internal methods ********************************************/
/// <summary>
/// set data from page to shift object
/// </summary>
private void SetDataBack()
{
// _logic.GetRole.operater = Session["CurrentUserID"].ToString(); todo: write a public method to handle operater,createtime,lastmodfied ... log info.
if (!(_logic.GetAuthority.ID > 0))
{
_logic.GetAuthority.lastmodified = DateTime.Now.ToString();
_logic.GetAuthority.auth_uplevel = Convert.ToInt32(TreeAuth.SelectedValue);
}
_logic.GetAuthority.auth_name = txtName.Text;
_logic.GetAuthority.auth_desc = txtDesc.Text;
_logic.GetAuthority.auth_link = txtLink.Text;
_logic.GetAuthority.auth_public = chkPublic.Checked;
_logic.GetAuthority.auth_publicInfomation =chkPublicInfo.Checked ;
_logic.GetAuthority.auth_marqueen = chkAlert.Checked;
}
private void chgOperTxt(bool addNew)
{
DataDetail.Visible = true;
lbEdit.Text = addNew ? "增加新记录" : "修改现有记录";
btnSubmit.Enabled = true;
}
private void ClearDetail()
{
txtName.Text = "";
txtDesc.Text = "";
txtLink.Text ="";
chkPublic.Checked = false;
chkPublicInfo.Checked = false;
DataDetail.Visible = false;
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
chgOperTxt(false);
if (GridView1.DataKeys != null)
{
string id = GridView1.DataKeys[GridView1.SelectedIndex].Value.ToString();
_logic.Initialize(int.Parse(id));
}
Databound();
DetailDataBind();
}
public void BindTree(string id, TreeNode pNode, DataView dv)
{
dv.RowFilter = "auth_uplevel = '" + id + "'";
foreach (DataRowView row in dv)
{
TreeNode node = new TreeNode();
node.Text = row["auth_name"].ToString();
node.Value = row["pk_authority"].ToString();
if (pNode == null)
//说明是根节点
{
TreeAuth.Nodes.Add(node);
node.Expanded = false;
}
else
{
pNode.ChildNodes.Add(node);
node.Expanded = false;
}
BindTree(node.Value, node, new DataView(dv.Table));
}
}
protected void TreeAuth_SelectedNodeChanged1(object sender, EventArgs e)
{
GridView1.SelectedIndex = -1;
DataView dv = new DataView(_logic.GetAllActiveData().Tables[0]);
dv.RowFilter = "auth_uplevel = '" + TreeAuth.SelectedValue + "'";
GridView1.DataSource = dv;
GridView1.DataBind();
ClearDetail();
if(TreeAuth.SelectedNode.ChildNodes.Count>0)TreeAuth.SelectedNode.Expand();
}
protected void chkPublicInfo_CheckedChanged(object sender, EventArgs e)
{
switch (chkPublicInfo.Checked)
{
case true:
txtLink.Text = string.Empty;
txtLink.Enabled = false;
chkPublic.Checked = true;
chkPublic.Enabled = false;
break;
case false:
txtLink.Text = _logic.GetAuthority.auth_link;
txtLink.Enabled = false;
chkPublic.Checked = false;
chkPublic.Enabled = true;
break;
}
}
 
protected void GridView1_RowDataBound1(object sender, GridViewRowEventArgs e)
{
CheckBox chk;
if (e.Row.RowType == DataControlRowType.DataRow)
{
chk = new CheckBox();
chk.Text = "";
chk.Enabled = false;
chk.Checked = e.Row.Cells[4].Text.Trim().Equals("True");
e.Row.Cells[4].Controls.Add(chk);
}
}
}
}