Newer
Older
EMS_SZ / FrmRegionRoleMgrOld.cs
root on 21 Mar 2016 7 KB first
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using DevComponents.DotNetBar;
namespace Cyberpipe
{
    public partial class FrmRegionRoleMgrOld : Office2007Form
    {
        public FrmRegionRoleMgrOld()
        {
            InitializeComponent();
        }

        private void FrmRegionRoleMgr_Load(object sender, EventArgs e)
        {
            string sql = "select id,name from Region where parent = -1";
            DataTable dt = OledbHelper.QueryTable(sql);
            if (dt != null && dt.Rows.Count > 0)
            {
                foreach(DataRow row in dt.Rows)
                {
                    TreeNode node = new TreeNode();
                    node.Text = row[1].ToString().Trim();
                    node.Tag = row[0].ToString();
                    
                    treeView2.Nodes[0].Nodes.Add(node);
                    GetChildNode(node);
                }
                treeView2.Nodes[0].ExpandAll();
            }


            sql = "select id,name from Role";
            DataTable dt1 = OledbHelper.QueryTable(sql);
            if (dt1 != null && dt1.Rows.Count > 0)
            {
                foreach(DataRow row in dt1.Rows)
                {
                    TreeNode node = new TreeNode();
                    node.Text = row[1].ToString().Trim();
                    node.Tag = row[0].ToString();
                    
                    treeView1.Nodes[0].Nodes.Add(node);
                   
                }
                treeView1.Nodes[0].ExpandAll();
            }
        }
        private void GetChildNode(TreeNode ParentNode)
        {
            string sql = "select id,name from Region where parent =" + ParentNode.Tag.ToString();
            DataTable dt = OledbHelper.QueryTable(sql);
            if (dt != null && dt.Rows.Count > 0)
            {
                foreach (DataRow row in dt.Rows)
                {
                    TreeNode node = new TreeNode();
                    node.Text = row[1].ToString().Trim();
                    node.Tag = row[0].ToString();

                    ParentNode.Nodes.Add(node);
                    GetChildNode(node);
                }
            }
        }

        private void buttonX1_Click(object sender, EventArgs e)
        {
            if (treeView2.SelectedNode == null)
            {
                MessageBox.Show("请选择部门!");
                return;
            }
            if (treeView1.SelectedNode == null)
            {
                MessageBox.Show("请选择角色!");
                return;
            }
            if (treeView1.SelectedNode.Text == "角色信息")
            {
                return;
            }
            if (treeView2.SelectedNode.Text == "部门信息")
            {
                return;
            }
            
            try
            {
                string sql = "select * from RegionRole where reid =" + treeView2.SelectedNode.Tag.ToString();
                DataTable dt = OledbHelper.QueryTable(sql);
                if (dt != null && dt.Rows.Count > 0)
                {
                    sql = "update RegionRole set rid =" + treeView1.SelectedNode.Tag.ToString() + " where reid =" + treeView2.SelectedNode.Tag.ToString();                    
                }
                else
                {
                    sql = "insert into RegionRole values(" + treeView1.SelectedNode.Tag.ToString() + "," + treeView2.SelectedNode.Tag.ToString() + ")";
                }
                if (OledbHelper.sqlExecuteNonQuery(sql) > 0)
                {
                    MessageBox.Show("保存成功!");
                    return;
                }
            }
            catch (Exception ex)
            {
                LogError.PublishError(ex);
            }
            
        }

        private void treeView2_Click(object sender, EventArgs e)
        {
            if (treeView2.SelectedNode != null)
            {
                if (treeView2.SelectedNode.Text != "部门信息")
                {
                    string sql = "select * from RegionRole where reid=" + treeView2.SelectedNode.Tag.ToString();
                    DataTable dt = OledbHelper.QueryTable(sql);
                    if (dt != null && dt.Rows.Count > 0)
                    {
                        for (int i = 0; i < treeView1.Nodes[0].Nodes.Count; i++)
                        {
                            if (treeView1.Nodes[0].Nodes[i].Tag.ToString() == dt.Rows[0]["rid"].ToString())
                            {
                                treeView1.SelectedNode = treeView1.Nodes[0].Nodes[i];
                                treeView1.SelectedNode.NodeFont = new Font("宋体", 9, FontStyle.Bold);
                                treeView1.SelectedNode.ForeColor = Color.Blue;
                                break;
                            }
                        }
                    }
                }
            }

        }

        TreeNode preNode1 = null;
        private void treeView2_AfterSelect(object sender, TreeViewEventArgs e)
        {
            treeView2.SelectedNode = e.Node;
            TreeNode currentNode = treeView2.SelectedNode;
            if (currentNode != null)
            {
                if (preNode1 != null)
                {
                    if (preNode1 != currentNode)
                    {
                        preNode1.NodeFont = new Font("宋体", 9, FontStyle.Regular);
                        preNode1.ForeColor = Color.Black;
                    }
                }
                currentNode.NodeFont = new Font("宋体", 9, FontStyle.Bold);
                currentNode.ForeColor = Color.Blue;
                preNode1 = currentNode;
            }
            else
            {
                return;
            }

        }

        TreeNode preNode = null;
        private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
        {
            //if (preNode1 != null)
            //{
            //    preNode1.NodeFont = new Font("宋体", 9, FontStyle.Regular);
            //    preNode1.ForeColor = Color.Black;
            //}
            TreeNode currentNode = treeView1.SelectedNode;
            if (currentNode != null)
            {
                if (preNode != null)
                {
                    if (preNode != currentNode)
                    {
                        preNode.NodeFont = new Font("宋体", 9, FontStyle.Regular);
                        preNode.ForeColor = Color.Black;
                    }
                }
                currentNode.NodeFont = new Font("宋体", 9, FontStyle.Bold);
                currentNode.ForeColor = Color.Blue;
                preNode = currentNode;
            }
            else
            {
                return;
            }

        }

        private void treeView2_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
        {
            treeView2.SelectedNode = e.Node;
        }

        private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
        {
            treeView1.SelectedNode = e.Node;
        }

        private void buttonX2_Click(object sender, EventArgs e)
        {
            Close();
        }

        
       
    }
}