using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using Core.Mes.IBaseInterface;
using Core.Mes.ClientFrameWork;
//using Core.Mes.ServerFrameWork;
using System.Data;
using Infragistics.Win.UltraWinTree;
namespace Core.Mes.ClientPurviewManager
{
///
/// FrmSetDepart 的摘要说明。
///
public class FrmSetDepart : System.Windows.Forms.Form
{
private Core.Mes.ClientPurviewManager.UcDepartment ucDepartment1;
private Infragistics.Win.Misc.UltraLabel ultraLabel1;
private Infragistics.Win.UltraWinEditors.UltraTextEditor ultraTextEditor1;
private Infragistics.Win.Misc.UltraButton Button1;
private Infragistics.Win.Misc.UltraButton Button2;
///
/// 必需的设计器变量。
///
private System.ComponentModel.Container components = null;
public FrmSetDepart()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent();
//
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
}
///
/// 清理所有正在使用的资源。
///
protected override void Dispose( bool disposing )
{
if( disposing )
{
if(components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
#region Windows 窗体设计器生成的代码
///
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
///
private void InitializeComponent()
{
this.ucDepartment1 = new Core.Mes.ClientPurviewManager.UcDepartment();
this.Button1 = new Infragistics.Win.Misc.UltraButton();
this.Button2 = new Infragistics.Win.Misc.UltraButton();
this.ultraLabel1 = new Infragistics.Win.Misc.UltraLabel();
this.ultraTextEditor1 = new Infragistics.Win.UltraWinEditors.UltraTextEditor();
((System.ComponentModel.ISupportInitialize)(this.ultraTextEditor1)).BeginInit();
this.SuspendLayout();
//
// ucDepartment1
//
this.ucDepartment1.Dock = System.Windows.Forms.DockStyle.Top;
this.ucDepartment1.Location = new System.Drawing.Point(0, 0);
this.ucDepartment1.Name = "ucDepartment1";
this.ucDepartment1.Size = new System.Drawing.Size(230, 311);
this.ucDepartment1.TabIndex = 0;
//
// Button1
//
this.Button1.Location = new System.Drawing.Point(24, 359);
this.Button1.Name = "Button1";
this.Button1.Size = new System.Drawing.Size(75, 26);
this.Button1.TabIndex = 1;
this.Button1.Text = "确定";
this.Button1.Click += new System.EventHandler(this.Button1_Click);
//
// Button2
//
this.Button2.Location = new System.Drawing.Point(128, 359);
this.Button2.Name = "Button2";
this.Button2.Size = new System.Drawing.Size(75, 26);
this.Button2.TabIndex = 2;
this.Button2.Text = "取消";
this.Button2.Click += new System.EventHandler(this.Button2_Click);
//
// ultraLabel1
//
this.ultraLabel1.Location = new System.Drawing.Point(28, 330);
this.ultraLabel1.Name = "ultraLabel1";
this.ultraLabel1.Size = new System.Drawing.Size(56, 16);
this.ultraLabel1.TabIndex = 3;
this.ultraLabel1.Text = "选择部门";
//
// ultraTextEditor1
//
this.ultraTextEditor1.AutoSize = true;
this.ultraTextEditor1.Location = new System.Drawing.Point(94, 325);
this.ultraTextEditor1.Name = "ultraTextEditor1";
this.ultraTextEditor1.Size = new System.Drawing.Size(100, 21);
this.ultraTextEditor1.TabIndex = 4;
//
// FrmSetDepart
//
this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
this.ClientSize = new System.Drawing.Size(230, 395);
this.Controls.Add(this.ultraTextEditor1);
this.Controls.Add(this.ultraLabel1);
this.Controls.Add(this.Button2);
this.Controls.Add(this.Button1);
this.Controls.Add(this.ucDepartment1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "FrmSetDepart";
this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
this.Text = "选择部门";
this.Load += new System.EventHandler(this.FrmSetDepart_Load);
((System.ComponentModel.ISupportInitialize)(this.ultraTextEditor1)).EndInit();
this.ResumeLayout(false);
}
#endregion
private DataSet _departmentData;
private void FrmSetDepart_Load(object sender, System.EventArgs e)
{
GetDepartmentData();
this.ucDepartment1._departmentData = _departmentData;
this.ucDepartment1.RefreshTree();
this.ucDepartment1.ultraTree1.ExpandAll();
this.ucDepartment1.ultraTree1.AfterSelect += new Infragistics.Win.UltraWinTree.AfterNodeSelectEventHandler(ultraTree1_AfterSelect);
this.ucDepartment1.ultraTree1.DoubleClick += new EventHandler(ultraTree1_DoubleClick);
}
//==========================================================
// 获得部门数据
//==========================================================
private void GetDepartmentData()
{
try
{
CallingMessage par = new CallingMessage();
par.ServerName = "PurviewManager";
//par.AssemblyName = "Core.Mes.PurviewManager";
par.ClassName = "Core.Mes.PurviewManager.PurviewManager";
par.MethodName = "SelectUAM_DEPARTMENT";
par.args = new object[]{" order by DEPARTMENTID "};
par.ServerType = MesServerType.MesSystemBaseServer;
string strOut = "";
_departmentData = Core.Mes.ClientFrameWork.ClientCommon._RemotingHelp.ExecuteMethod(par, out strOut) as DataSet;
}
catch //(Exception ex)
{
// CoreMesLogger.log(this.GetType()).Error(ex.Message);
}
}
private void ultraTree1_AfterSelect(object sender, Infragistics.Win.UltraWinTree.SelectEventArgs e)
{
if (e.NewSelections == null || e.NewSelections.Count == 0)
{}
else
{
ParentID = e.NewSelections[0].Key;
this.ultraTextEditor1.Text = e.NewSelections[0].Text;
this.ultraTextEditor1.Tag = e.NewSelections[0].Key;
GetParenID(e.NewSelections[0]);
string str = "'" + e.NewSelections[0].Key + "'";
str = GetSelectedID(ref str, e.NewSelections[0]);
this.Button1.Tag = str;
}
}
private string GetSelectedID(ref string str, UltraTreeNode utn)
{
try
{
foreach(UltraTreeNode ut in utn.Nodes )
{
str += ",'" + ut.Key + "'";
if (ut.Nodes.Count > 0)
GetSelectedID(ref str, ut);
}
return str;
}
catch
{
return "";
}
}
private void Button1_Click(object sender, System.EventArgs e)
{
SelectedName = "";
SelectedID = "";
if (GetChildIDFlag)
{
SelectedName = this.ultraTextEditor1.Text;
SelectedID = this.Button1.Tag.ToString();
}
else
{
if (this.ultraTextEditor1.Text.Trim() != "" && this.ultraTextEditor1.Tag.ToString() != "")
{
SelectedName = this.ultraTextEditor1.Text;
SelectedID = this.ultraTextEditor1.Tag.ToString();
}
}
this.Close();
}
public string SelectedName = "";
public string SelectedID = "";
public string ParentID = "";
public string RootID = "";
public bool GetChildIDFlag = true;
private void Button2_Click(object sender, System.EventArgs e)
{
this.Close();
}
private void ultraTree1_DoubleClick(object sender, System.EventArgs e)
{
Button1_Click(null, new EventArgs());
}
public void GetParenID(Infragistics.Win.UltraWinTree.UltraTreeNode TreeNode)
{
if (TreeNode.Parent==null)
{
return;
}
else
{
ParentID = ParentID + TreeNode.Key + ";";
GetParenID(TreeNode.Parent);
}
}
}
}