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

增加业务模块列表

parent 768a5e95
......@@ -47,10 +47,11 @@ namespace Tools.MyData
/// </summary>
/// <param name="strSql">SQL语句</param>
/// <param name="strTableName">获取指定表</param>
/// <param name="Schema">是否获取结构信息</param>
/// <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>
/// 获取数据集
......
......@@ -30,8 +30,9 @@ namespace Tools.MyData
/// <param name="strLink">数据库连接字串</param>
/// <param name="strSql">SQL语句</param>
/// <param name="strTableName">表名</param>
/// <param name="Schema">是否获取结构信息</param>
/// <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);
SqlConnection conn = null;
......@@ -42,7 +43,7 @@ namespace Tools.MyData
conn.Open();
var ada = new SqlDataAdapter(strSql, conn);
ada.FillSchema(dt, SchemaType.Mapped);//取出数据结构
if (Schema) ada.FillSchema(dt, SchemaType.Mapped);//取出数据结构
ada.Fill(dt);//填充数据
}
catch (Exception ex)
......@@ -71,7 +72,7 @@ namespace Tools.MyData
{
conn = new SqlConnection(strLink);
conn.Open();
ada = new SqlDataAdapter(strSql, conn);
ada.FillSchema(dsData, SchemaType.Mapped, strTableName);//取出数据结构
ada.Fill(dsData, strTableName);//填充数据
......
This diff is collapsed.
......@@ -23,6 +23,7 @@ namespace Tools.UI
DataTable _dtModuleTable = null;
bool _IsFirstLoad = true;
List<TQuery> tableList = null;
DataTable _dtBusinessMode = null;
/// <summary>
......@@ -85,6 +86,7 @@ namespace Tools.UI
//设置数据源;子表格在父表格之前绑定,可以更好的利用父表格绑定时出发的行改变事件,进行子表格的数据的过滤
this.dgvModuleTable.DataSource = this._dtModuleTable = this._ds.Tables[this.T_ModuleTable];
this.dgvModule.DataSource = this._ds.Tables[this.T_Module];
this.dgvBusinessModel.DataSource = _dtBusinessMode = GetBusinessModel();
}
......@@ -94,6 +96,7 @@ namespace Tools.UI
this.InitGridView(this.dgvModule);
this.InitGridView(this.dgvModuleTable);
this.InitGridView(this.dgvTableColumn);
this.InitGridView(dgvBusinessModel);
//工具栏-事件
this.tsbSave.Click += TsbSave_Click;
......@@ -106,10 +109,13 @@ namespace Tools.UI
dgvModule.SelectionChanged += DgvModule_SelectionChanged;
dgvModule.DataError += DgvModule_DataError;
dgvModuleTable.SelectionChanged += DgvModuleTable_SelectionChanged;
dgvModuleTable.DataError += DgvModuleTable_DataError;
dgvBusinessModel.SelectionChanged += DgvBusinessModel_SelectionChanged;
//上下文菜单-事件
this.tsmiAddRow.Click += TsmiAddRow_Click;
this.tsmiDelRow.Click += TsmiDelRow_Click;
......@@ -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)
{
var sqlTableColun = $@"Select 序号, 列名, 数据类型, 主键, 唯一标识, 索引, 允许空, 默认值, 说明
var sqlTableColumn = $@"Select 序号, 列名, 数据类型, 主键, 唯一标识, 索引, 允许空, 默认值, 说明
From
(Select d.name As 表名, a.colid As '序号', a.name As '列名',
Case When b.name In ('varchar', 'nvarchar', 'varbinary', 'decimal', 'numeric') Then
......@@ -255,31 +294,30 @@ namespace Tools.UI
Order By
表名, 序号;";
return _db.GetDataTable(sqlTableColun, "TableColumn");
return _db.GetDataTable(sqlTableColumn, "TableColumn");
}
// 必填列未填写时会报错,需要处理
private void DgvModuleTable_DataError(object sender, DataGridViewDataErrorEventArgs e)
{
MessageBox.Show(e.Exception.Message);
}
private void DgvModule_DataError(object sender, DataGridViewDataErrorEventArgs e)
/// <summary>
/// 获取业务模块
/// </summary>
/// <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; ";
return _db.GetDataTable(sql, "BusinessModel");
}
#endregion
#region 上下文菜单-事件
private void TsmiAddRow_Click(object sender, EventArgs e)
......
......@@ -132,6 +132,24 @@
<metadata name="contextMenu1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>127, 17</value>
</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">
<value>True</value>
</metadata>
......@@ -174,7 +192,52 @@
<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="说明.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">
<value>17, 17</value>
</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>
\ 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