using System;
|
using System.Collections.Generic;
|
using System.ComponentModel;
|
using System.Data;
|
using System.Drawing;
|
using System.Text;
|
using System.Windows.Forms;
|
|
namespace DBUtility
|
{
|
public partial class Gy_UserSelect2 : Form
|
{
|
private int HItemIDCol = 0;
|
private int HNumberCol = 0;
|
public DBUtility.frm_B_BillQueryCondition_New frmCondition;
|
const string ViewName = "h_v_Gy_UserList";
|
const string ModName = "选择用户";
|
public DBUtility.ClsPub.Enum_InputMode InputMode; //录入状态标志(0-非录入状态 1-增加 2-修改)
|
public long HItemID;//项目ID
|
SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
|
TreeNode CurNode = new TreeNode();
|
public bool bSingle = false;
|
public string sReturn = "";
|
public int IsOk = 0;
|
|
public Gy_UserSelect2()
|
{
|
InitializeComponent();
|
}
|
//
|
#region 固定代码
|
|
//新增
|
private void AddNew()
|
{
|
InputMode = DBUtility.ClsPub.Enum_InputMode.InputMode_AddNew;
|
Init();
|
}
|
//初始化GRID
|
private void initGrid()
|
{
|
grdMain.Cols = 5;
|
grdMain.Rows = 1;
|
grdMain.FixedCols = 1;
|
grdMain.FixedRows = 1;
|
|
grdMain.set_TextMatrix(0, 0, "序号");
|
grdMain.set_TextMatrix(0, 1, "用户ID");
|
grdMain.set_TextMatrix(0, 2, "用户");
|
grdMain.set_TextMatrix(0, 3, "用户组ID");
|
grdMain.set_TextMatrix(0, 4, "用户组");
|
|
|
grdMain.set_ColHidden(1, true);
|
grdMain.set_ColHidden(3, true);
|
//
|
grdMain.ExplorerBar = VSFlex7.ExplorerBarSettings.flexExSortAndMove;
|
grdMain.AllowBigSelection = false;
|
grdMain.AllowSelection = false;
|
grdMain.SelectionMode = VSFlex7.SelModeSettings.flexSelectionByRow;
|
grdMain.ScrollTrack = true;
|
grdMain.WordWrap = true;
|
grdMain.set_ColWidth(-1, 1500);
|
grdMain.set_RowHeight(-1, 400);
|
grdMain.set_RowHeight(0, 500);
|
grdMain.RowHeightMin = 250;
|
grdMain.Editable = VSFlex7.EditableSettings.flexEDNone;
|
grdMain.AllowUserResizing = VSFlex7.AllowUserResizeSettings.flexResizeBoth;
|
grdMain.AllowUserFreezing = VSFlex7.AllowUserFreezeSettings.flexFreezeBoth;
|
grdMain.set_FixedAlignment(-1, VSFlex7.AlignmentSettings.flexAlignCenterCenter);
|
grdMain.AutoSizeMode = VSFlex7.AutoSizeSettings.flexAutoSizeColWidth;
|
//
|
DBUtility.ClsPub.GetGrid(grdMain, this.Name, DBUtility.ClsPub.AppPath);
|
//
|
grdSource.Cols = 1;
|
grdSource.Rows = 1;
|
grdSource.FixedCols = 1;
|
grdSource.FixedRows = 1;
|
grdSource.ExplorerBar = VSFlex7.ExplorerBarSettings.flexExSortAndMove;
|
grdSource.AllowBigSelection = false;
|
grdSource.AllowSelection = false;
|
grdSource.SelectionMode = VSFlex7.SelModeSettings.flexSelectionByRow;
|
grdSource.ScrollTrack = true;
|
grdSource.WordWrap = true;
|
grdSource.set_ColWidth(-1, 1500);
|
grdSource.set_RowHeight(-1, 400);
|
grdSource.set_RowHeight(0, 500);
|
grdSource.RowHeightMin = 250;
|
grdSource.Editable = VSFlex7.EditableSettings.flexEDNone;
|
grdSource.AllowUserResizing = VSFlex7.AllowUserResizeSettings.flexResizeBoth;
|
grdSource.AllowUserFreezing = VSFlex7.AllowUserFreezeSettings.flexFreezeBoth;
|
grdSource.set_FixedAlignment(-1, VSFlex7.AlignmentSettings.flexAlignCenterCenter);
|
grdSource.AutoSizeMode = VSFlex7.AutoSizeSettings.flexAutoSizeColWidth;
|
//
|
DBUtility.ClsPub.GetGrid(grdSource, this.Name + "grdSource", DBUtility.ClsPub.AppPath);
|
}
|
//显示
|
private void Display()
|
{
|
DisplaySource();
|
}
|
|
//显示列表
|
private void DisplaySource()
|
{
|
SQLHelper.ClsCN SubCn = new SQLHelper.ClsCN();
|
DataSet DSet = new DataSet();
|
grdSource.Rows = grdSource.FixedRows;
|
string sSql = "select * from h_v_Gy_UserList ";
|
string sWhere = "order by czybm";
|
//过滤条件
|
sSql = sSql + sWhere;
|
//
|
DSet = SubCn.RunProcReturn(sSql, ViewName);
|
//生成首行标题
|
if (DSet == null)
|
{
|
return;
|
}
|
//
|
grdSource.Redraw = VSFlex7.RedrawSettings.flexRDNone;
|
//
|
grdSource.Cols = DSet.Tables[0].Columns.Count + grdSource.FixedCols;
|
grdSource.set_TextMatrix(0, grdSource.FixedCols - 1, "序号");
|
grdSource.set_ColWidth(0, 500);
|
for (int i = 0; i <= DSet.Tables[0].Columns.Count - 1; i++)
|
{
|
grdSource.set_TextMatrix(0, i + grdSource.FixedCols, DSet.Tables[0].Columns[i].Caption);
|
if (DSet.Tables[0].Columns[i].Caption.ToLower().Substring(0, 1) == "h") //首字母为h则隐藏
|
{
|
grdSource.set_ColHidden(i + grdSource.FixedCols, true);
|
}
|
else
|
{
|
grdSource.set_ColHidden(i + grdSource.FixedCols, false);
|
grdSource.set_ColWidth(i + grdSource.FixedCols, 1000);
|
}
|
}
|
|
if (DSet.Tables[0].Rows.Count == 0)
|
{
|
grdSource.Redraw = VSFlex7.RedrawSettings.flexRDBuffered;
|
return;
|
}
|
//填充网格
|
string s = "";
|
grdSource.Rows = DSet.Tables[0].Rows.Count + grdSource.FixedRows;
|
for (int i = 0; i <= DSet.Tables[0].Rows.Count - 1; i++)
|
{
|
grdSource.set_TextMatrix(i + grdSource.FixedRows, 0, (i + grdSource.FixedRows).ToString());
|
for (int j = 0; j <= DSet.Tables[0].Columns.Count - 1; j++)
|
{
|
s = DSet.Tables[0].Rows[i][j].ToString();
|
grdSource.set_TextMatrix(i + grdSource.FixedRows, j + grdSource.FixedCols, s);
|
}
|
}
|
|
//固定行 中间对齐
|
grdSource.set_FixedAlignment(-1, VSFlex7.AlignmentSettings.flexAlignCenterCenter);
|
//加载列宽
|
DBUtility.ClsPub.GetGrid(grdSource, this.Name + "grdSource", DBUtility.ClsPub.AppPath);
|
//
|
grdSource.Redraw = VSFlex7.RedrawSettings.flexRDBuffered;
|
}
|
|
//得到对应列
|
private Int32 Fun_GetCol(string sCol)
|
{
|
for (int c = 0; c < grdMain.Cols; c++)
|
{
|
if (DBUtility.ClsPub.isStrNull(grdMain.get_TextMatrix(0, c)).ToUpper().Trim() == sCol.Trim().ToUpper())
|
{
|
return c;
|
}
|
}
|
return 0;
|
}
|
|
//退出模块
|
private void tc_Click(object sender, EventArgs e)
|
{
|
this.Close();
|
}
|
//刷新
|
private void xs_Click(object sender, EventArgs e)
|
{
|
initGrid();
|
Display();
|
}
|
|
//树型 单击
|
private void tv_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
|
{
|
CurNode = e.Node;
|
if (CurNode != null)
|
{
|
//找到选中结点
|
initGrid();
|
Display();
|
}
|
}
|
//查找结点
|
private void FindRow(string sCode)
|
{
|
//sCode = sCode.Trim();
|
//char c = Convert.ToChar("-");
|
//string[] s = sCode.Split(c);
|
//if (s.Length > 0)
|
//{
|
// sCode = s[0].Trim();
|
// grdMain.Redraw = VSFlex7.RedrawSettings.flexRDNone;
|
// for (int i = grdMain.FixedRows; i < grdMain.Rows; i++)
|
// {
|
// if (sCode.Trim() == grdMain.get_TextMatrix(i, HNumberCol))
|
// {
|
// grdMain.TopRow = i;
|
// grdMain.Row = i;
|
// }
|
// }
|
// grdMain.Redraw = VSFlex7.RedrawSettings.flexRDBuffered;
|
//}
|
}
|
|
//选中行是否正常
|
private bool AllowRow()
|
{
|
if (grdMain.Row >= grdMain.FixedRows && grdMain.Row <= grdMain.Rows - 1)
|
return true;
|
else
|
return false;
|
}
|
//时间控件
|
private void timer1_Tick(object sender, EventArgs e)
|
{
|
timer1.Enabled = false;
|
Display();
|
}
|
|
//删除项目
|
public void Delete()
|
{
|
if (AllowRow())
|
{
|
|
|
}
|
}
|
|
private void bclk_Click(object sender, EventArgs e)
|
{
|
//保存列宽
|
DBUtility.ClsPub.SaveGrid(grdMain, this.Name, DBUtility.ClsPub.AppPath);
|
DBUtility.ClsPub.SaveGrid(grdSource, this.Name + "grdSource", DBUtility.ClsPub.AppPath);
|
}
|
|
private void mrlk_Click(object sender, EventArgs e)
|
{
|
grdMain.AutoSize(0, grdMain.Cols - 1, false, 1);
|
//参数解释 开始列 ,结束列,是否以最大列宽为准,最小列宽
|
DBUtility.ClsPub.SaveGrid(grdMain, this.Name, DBUtility.ClsPub.AppPath);
|
grdSource.AutoSize(0, grdSource.Cols - 1, false, 1);
|
//参数解释 开始列 ,结束列,是否以最大列宽为准,最小列宽
|
DBUtility.ClsPub.SaveGrid(grdSource, this.Name + "grdSource", DBUtility.ClsPub.AppPath);
|
}
|
|
//保存GRID列宽
|
private void Gy_UserSelect2_FormClosing(object sender, FormClosingEventArgs e)
|
{
|
DBUtility.ClsPub.SaveGrid(grdMain, this.Name, DBUtility.ClsPub.AppPath);
|
DBUtility.ClsPub.SaveGrid(grdSource, this.Name + "grdSource", DBUtility.ClsPub.AppPath);
|
}
|
//窗体加载
|
private void Gy_UserSelect2_Load(object sender, EventArgs e)
|
{
|
LoadTree();
|
initGrid();
|
Display();
|
}
|
|
//加载树形
|
private void LoadTree()
|
{
|
try
|
{
|
tv.Nodes.Clear();
|
tv.ImageList = imageList1;
|
TreeNode sNode = tv.Nodes.Add("T0", "用户组", 0, 1);
|
//sNode.Expand();
|
LoadAllNodes(sNode);
|
}
|
catch (Exception e)
|
{
|
MessageBox.Show("加载树型失败!" + e.Message, "提示");
|
}
|
}
|
//初始化界面
|
private bool Init()
|
{
|
return true;
|
}
|
#endregion
|
|
#region 界面控件处理
|
|
|
//保存
|
//private bool Save()
|
//{
|
// if (CurNode.Name == null || CurNode.Name == "")
|
// {
|
// MessageBox.Show("保存失败,选择的结点有异常!");
|
// return false;
|
// }
|
// try
|
// {
|
// oCn.BeginTran();
|
// //删除原记录
|
// oCn.RunProc("Delete From Gy_UserSelect2 where HUserID='" + CurNode.Name.Trim().Substring(1, CurNode.Name.Trim().Length - 1) + "'");
|
// //新增记录
|
// for (int i = grdMain.FixedRows; i < grdMain.Rows; i++)
|
// {
|
// oCn.RunProc("insert into Gy_UserSelect2(HCusID,HUserID) values(" + DBUtility.ClsPub.isLong(grdMain.get_TextMatrix(i, 1)) + ",'" + CurNode.Name.Trim().Substring(1, CurNode.Name.Trim().Length - 1) + "') ");
|
// }
|
// oCn.Commit();
|
// }
|
// catch (Exception e)
|
// {
|
// oCn.RollBack();
|
// MessageBox.Show("保存失败!" + e.Message);
|
// }
|
// return true;
|
//}
|
//新增时清空信息
|
private void Sub_Clear()
|
{
|
return;
|
//
|
}
|
|
//加载子结点
|
private void LoadAllNodes(TreeNode sNode)
|
{
|
if (sNode != null)
|
{
|
try
|
{
|
long sName = Convert.ToInt64(sNode.Name.Substring(1, sNode.Name.Length - 1));
|
sNode.Nodes.Clear();
|
DataSet Ds = oCn.RunProcReturn("select * from System_UserGroup ", "System_UserGroup");
|
for (int i = 0; i < Ds.Tables[0].Rows.Count; i++)
|
{
|
TreeNode oNode = sNode.Nodes.Add("T" + Ds.Tables[0].Rows[i]["GroupID"].ToString(), Ds.Tables[0].Rows[i]["GroupName"].ToString(), 0, 1);
|
}
|
sNode.Expand();
|
}
|
catch (Exception e)
|
{
|
MessageBox.Show("加载子项目失败!" + e.Message, "提示");
|
}
|
}
|
}
|
|
private void cmdQForward_Click(object sender, EventArgs e)
|
{
|
if (grdSource.Row >= grdSource.FixedRows)
|
{
|
grdMain.AddItem("");
|
grdMain.set_TextMatrix(grdMain.Rows - 1, 4, grdSource.get_TextMatrix(grdSource.Row, 4));
|
grdMain.set_TextMatrix(grdMain.Rows - 1, 3, grdSource.get_TextMatrix(grdSource.Row, 3));
|
grdMain.set_TextMatrix(grdMain.Rows - 1, 2, grdSource.get_TextMatrix(grdSource.Row, 2));
|
grdMain.set_TextMatrix(grdMain.Rows - 1, 1, grdSource.get_TextMatrix(grdSource.Row, 1));
|
grdSource.RemoveItem(grdSource.Row);
|
}
|
}
|
|
private void cmdQBack_Click(object sender, EventArgs e)
|
{
|
if (grdMain.Row >= grdMain.FixedRows)
|
{
|
grdSource.AddItem("");
|
grdSource.set_TextMatrix(grdSource.Rows - 1, 4, grdMain.get_TextMatrix(grdMain.Row, 4));
|
grdSource.set_TextMatrix(grdSource.Rows - 1, 3, grdMain.get_TextMatrix(grdMain.Row, 3));
|
grdSource.set_TextMatrix(grdSource.Rows - 1, 2, grdMain.get_TextMatrix(grdMain.Row, 2));
|
grdSource.set_TextMatrix(grdSource.Rows - 1, 1, grdMain.get_TextMatrix(grdMain.Row, 1));
|
grdMain.RemoveItem(grdMain.Row);
|
}
|
}
|
|
private void cmdQForwardAll_Click(object sender, EventArgs e)
|
{
|
int Rows = grdSource.Rows;
|
for (int i = Rows - 1; i > 0; i--)
|
{
|
grdMain.AddItem("");
|
grdMain.set_TextMatrix(Rows - i, 4, grdSource.get_TextMatrix(i, 4));
|
grdMain.set_TextMatrix(Rows - i, 3, grdSource.get_TextMatrix(i, 3));
|
grdMain.set_TextMatrix(Rows - i, 2, grdSource.get_TextMatrix(i, 2));
|
grdMain.set_TextMatrix(Rows - i, 1, grdSource.get_TextMatrix(i, 1));
|
grdSource.RemoveItem(i);
|
}
|
}
|
private void cmdQBackAll_Click(object sender, EventArgs e)
|
{
|
int Rows = grdMain.Rows;
|
for (int i = Rows - 1; i > 0; i--)
|
{
|
grdSource.AddItem("");
|
grdSource.set_TextMatrix(Rows - i, 4, grdMain.get_TextMatrix(i, 4));
|
grdSource.set_TextMatrix(Rows - i, 3, grdMain.get_TextMatrix(i, 3));
|
grdSource.set_TextMatrix(Rows - i, 2, grdMain.get_TextMatrix(i, 2));
|
grdSource.set_TextMatrix(Rows - i, 1, grdMain.get_TextMatrix(i, 1));
|
grdMain.RemoveItem(i);
|
}
|
}
|
|
private void cmdCancel_Click(object sender, EventArgs e)
|
{
|
sReturn = "";
|
IsOk = 2;
|
this.Visible = false;
|
}
|
|
private void cmdOK_Click(object sender, EventArgs e)
|
{
|
sReturn = "";
|
if (bSingle)
|
{
|
if (grdMain.Rows > 2)
|
{
|
MessageBox.Show("只允许选择一个用户!", "提示");
|
return;
|
}
|
}
|
for (int i = grdMain.FixedRows; i <= grdMain.Rows - 1; i++)
|
{
|
sReturn = sReturn + "," + grdMain.get_TextMatrix(i, 2);
|
}
|
if (sReturn.Trim() != "")
|
{
|
sReturn = sReturn.Substring(1, sReturn.Length - 1);
|
}
|
IsOk = 1;
|
this.Visible = false;
|
}
|
|
private void Gy_UserSelect2_Activated(object sender, EventArgs e)
|
{
|
IsOk = 0;
|
}
|
|
#endregion
|
}
|
}
|