Commit 0d3051e0 authored by 罗显健's avatar 罗显健

增加业务模块列表

parent 768a5e95
...@@ -47,10 +47,11 @@ namespace Tools.MyData ...@@ -47,10 +47,11 @@ namespace Tools.MyData
/// </summary> /// </summary>
/// <param name="strSql">SQL语句</param> /// <param name="strSql">SQL语句</param>
/// <param name="strTableName">获取指定表</param> /// <param name="strTableName">获取指定表</param>
/// <param name="Schema">是否获取结构信息</param>
/// <returns></returns> /// <returns></returns>
public DataTable GetDataTable(string strSql, string strTableName) public DataTable GetDataTable(string strSql, string strTableName,bool Schema = true)
{ {
return this._db.GetDataTable(this._link, strSql, strTableName); return this._db.GetDataTable(this._link, strSql, strTableName, Schema);
} }
/// <summary> /// <summary>
/// 获取数据集 /// 获取数据集
......
...@@ -30,8 +30,9 @@ namespace Tools.MyData ...@@ -30,8 +30,9 @@ namespace Tools.MyData
/// <param name="strLink">数据库连接字串</param> /// <param name="strLink">数据库连接字串</param>
/// <param name="strSql">SQL语句</param> /// <param name="strSql">SQL语句</param>
/// <param name="strTableName">表名</param> /// <param name="strTableName">表名</param>
/// <param name="Schema">是否获取结构信息</param>
/// <returns></returns> /// <returns></returns>
public DataTable GetDataTable(string strLink, string strSql, string strTableName) public DataTable GetDataTable(string strLink, string strSql, string strTableName, bool Schema = true)
{ {
DataTable dt = new DataTable(strTableName); DataTable dt = new DataTable(strTableName);
SqlConnection conn = null; SqlConnection conn = null;
...@@ -42,7 +43,7 @@ namespace Tools.MyData ...@@ -42,7 +43,7 @@ namespace Tools.MyData
conn.Open(); conn.Open();
var ada = new SqlDataAdapter(strSql, conn); var ada = new SqlDataAdapter(strSql, conn);
ada.FillSchema(dt, SchemaType.Mapped);//取出数据结构 if (Schema) ada.FillSchema(dt, SchemaType.Mapped);//取出数据结构
ada.Fill(dt);//填充数据 ada.Fill(dt);//填充数据
} }
catch (Exception ex) catch (Exception ex)
......
This diff is collapsed.
...@@ -23,6 +23,7 @@ namespace Tools.UI ...@@ -23,6 +23,7 @@ namespace Tools.UI
DataTable _dtModuleTable = null; DataTable _dtModuleTable = null;
bool _IsFirstLoad = true; bool _IsFirstLoad = true;
List<TQuery> tableList = null; List<TQuery> tableList = null;
DataTable _dtBusinessMode = null;
/// <summary> /// <summary>
...@@ -85,6 +86,7 @@ namespace Tools.UI ...@@ -85,6 +86,7 @@ namespace Tools.UI
//设置数据源;子表格在父表格之前绑定,可以更好的利用父表格绑定时出发的行改变事件,进行子表格的数据的过滤 //设置数据源;子表格在父表格之前绑定,可以更好的利用父表格绑定时出发的行改变事件,进行子表格的数据的过滤
this.dgvModuleTable.DataSource = this._dtModuleTable = this._ds.Tables[this.T_ModuleTable]; this.dgvModuleTable.DataSource = this._dtModuleTable = this._ds.Tables[this.T_ModuleTable];
this.dgvModule.DataSource = this._ds.Tables[this.T_Module]; this.dgvModule.DataSource = this._ds.Tables[this.T_Module];
this.dgvBusinessModel.DataSource = _dtBusinessMode = GetBusinessModel();
} }
...@@ -94,6 +96,7 @@ namespace Tools.UI ...@@ -94,6 +96,7 @@ namespace Tools.UI
this.InitGridView(this.dgvModule); this.InitGridView(this.dgvModule);
this.InitGridView(this.dgvModuleTable); this.InitGridView(this.dgvModuleTable);
this.InitGridView(this.dgvTableColumn); this.InitGridView(this.dgvTableColumn);
this.InitGridView(dgvBusinessModel);
//工具栏-事件 //工具栏-事件
this.tsbSave.Click += TsbSave_Click; this.tsbSave.Click += TsbSave_Click;
...@@ -106,10 +109,13 @@ namespace Tools.UI ...@@ -106,10 +109,13 @@ namespace Tools.UI
dgvModule.SelectionChanged += DgvModule_SelectionChanged; dgvModule.SelectionChanged += DgvModule_SelectionChanged;
dgvModule.DataError += DgvModule_DataError; dgvModule.DataError += DgvModule_DataError;
dgvModuleTable.SelectionChanged += DgvModuleTable_SelectionChanged; dgvModuleTable.SelectionChanged += DgvModuleTable_SelectionChanged;
dgvModuleTable.DataError += DgvModuleTable_DataError; dgvModuleTable.DataError += DgvModuleTable_DataError;
dgvBusinessModel.SelectionChanged += DgvBusinessModel_SelectionChanged;
//上下文菜单-事件 //上下文菜单-事件
this.tsmiAddRow.Click += TsmiAddRow_Click; this.tsmiAddRow.Click += TsmiAddRow_Click;
this.tsmiDelRow.Click += TsmiDelRow_Click; this.tsmiDelRow.Click += TsmiDelRow_Click;
...@@ -230,10 +236,43 @@ namespace Tools.UI ...@@ -230,10 +236,43 @@ namespace Tools.UI
} }
} }
// 必填列未填写时会报错,需要处理
private void DgvModuleTable_DataError(object sender, DataGridViewDataErrorEventArgs e)
{
MessageBox.Show(e.Exception.Message);
}
private void DgvModule_DataError(object sender, DataGridViewDataErrorEventArgs e)
{
MessageBox.Show(e.Exception.Message);
}
//
private void DgvBusinessModel_SelectionChanged(object sender, EventArgs e)
{
var selectRows = dgvModuleTable.SelectedRows;
if (ckbMode.Checked && selectRows.Count == 1) // 根据所选业务模块,反向定位功能模块,
{
var rowIndex = selectRows[0].Index;
}
}
#endregion
/// <summary>
/// 获取表的列信息(系统查询)
/// </summary>
/// <param name="tabName"></param>
/// <returns></returns>
private DataTable GetTableColumnFromSystem(string tabName) private DataTable GetTableColumnFromSystem(string tabName)
{ {
var sqlTableColun = $@"Select 序号, 列名, 数据类型, 主键, 唯一标识, 索引, 允许空, 默认值, 说明 var sqlTableColumn = $@"Select 序号, 列名, 数据类型, 主键, 唯一标识, 索引, 允许空, 默认值, 说明
From From
(Select d.name As 表名, a.colid As '序号', a.name As '列名', (Select d.name As 表名, a.colid As '序号', a.name As '列名',
Case When b.name In ('varchar', 'nvarchar', 'varbinary', 'decimal', 'numeric') Then Case When b.name In ('varchar', 'nvarchar', 'varbinary', 'decimal', 'numeric') Then
...@@ -255,31 +294,30 @@ namespace Tools.UI ...@@ -255,31 +294,30 @@ namespace Tools.UI
Order By Order By
表名, 序号;"; 表名, 序号;";
return _db.GetDataTable(sqlTableColun, "TableColumn"); return _db.GetDataTable(sqlTableColumn, "TableColumn");
} }
/// <summary>
/// 获取业务模块
// 必填列未填写时会报错,需要处理 /// </summary>
private void DgvModuleTable_DataError(object sender, DataGridViewDataErrorEventArgs e) /// <param name="tabName"></param>
/// <returns></returns>
private DataTable GetBusinessModel()
{ {
MessageBox.Show(e.Exception.Message); var sql = @" Select Distinct a.ID As ModelID, a.Name As ModelName, b.BusinessObject, b.WinForm, IsNull(b.Param, '') As Param, c.ModuleId, Case When c.ModuleId Is Null Then 0 Else 1 End As IsSelect
} From dbo.SysBusinessModel a
Left Join dbo.SysFunction b On b.ModelID = a.ID And b.Name In ('Add') And Len(b.WinForm) > 1
Left Join dbo.Sys_ModuleBusinessModel c On c.ModelId = a.ID
Where Not Exists (Select 1 From SysBusinessModel Where PrevID = a.ID)
Order By a.ID; ";
private void DgvModule_DataError(object sender, DataGridViewDataErrorEventArgs e) return _db.GetDataTable(sql, "BusinessModel");
{
MessageBox.Show(e.Exception.Message);
} }
#endregion
#region 上下文菜单-事件 #region 上下文菜单-事件
private void TsmiAddRow_Click(object sender, EventArgs e) private void TsmiAddRow_Click(object sender, EventArgs e)
......
...@@ -132,6 +132,24 @@ ...@@ -132,6 +132,24 @@
<metadata name="contextMenu1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="contextMenu1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>127, 17</value> <value>127, 17</value>
</metadata> </metadata>
<metadata name="dataGridViewTextBoxColumn1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="选择.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="Id.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="Id.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>
...@@ -174,7 +192,52 @@ ...@@ -174,7 +192,52 @@
<metadata name="说明.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="说明.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>
<metadata name="序号.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="列名.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="数据类型.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="主键.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="唯一标识.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="索引.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="允许空.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="默认值.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="说明.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value> <value>17, 17</value>
</metadata> </metadata>
<metadata name="dataGridViewTextBoxColumn1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="dataGridViewTextBoxColumn5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<metadata name="选择.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
</root> </root>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment