You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
89 lines
4.2 KiB
C#
89 lines
4.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
using System.Data;
|
|
using ICSharpCode.Core;
|
|
using Mesnac.Action.Base;
|
|
using Mesnac.Codd.Session;
|
|
using Mesnac.Action.Default.Entity;
|
|
|
|
namespace Mesnac.Action.Default.Purview.BasUser
|
|
{
|
|
/// <summary>
|
|
/// 查询用户业务
|
|
/// </summary>
|
|
public class SelectAction : DatabaseAction, IAction
|
|
{
|
|
DbMCControl roleType = null;
|
|
public void Run(RuntimeParameter runtime)
|
|
{
|
|
base.RunIni(runtime); //必须调用
|
|
ICSharpCode.Core.LoggingService<SelectAction>.Debug("用户信息-查询...");
|
|
|
|
frmInsert frmInsert = new frmInsert(ActionType.Query);
|
|
DialogResult result = frmInsert.ShowDialog();
|
|
if (result == DialogResult.OK)
|
|
{
|
|
//roleType = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local, "[BasUser].[RoleGUID]").FirstOrDefault(); //获取用户类型combobox控件
|
|
//roleType.BaseControl.BindDataSource = GetUserListForSelect();
|
|
DbHelper dbHelper = Mesnac.Basic.DataSourceFactory.Instance.GetDbHelper(Mesnac.Basic.DataSourceFactory.MCDbType.Local);
|
|
dbHelper.ClearParameter();
|
|
StringBuilder sbSql = new StringBuilder("SELECT TA.*,TB.RoleName,TD.ItemName FROM BasUser TA LEFT JOIN BasRole TB ON TA.RoleGUID=TB.GUID LEFT JOIN SysCode TD ON TA.DeleteFlag=TD.ItemCode AND TD.TypeID='YesNo' WHERE 1=1 ");
|
|
if (!String.IsNullOrEmpty(frmInsert.UserName))
|
|
{
|
|
sbSql.Append(" and TA.UserName like @UserName");
|
|
dbHelper.AddParameter("@UserName", "%" + frmInsert.UserName + "%");
|
|
}
|
|
if (!String.IsNullOrEmpty(frmInsert.RoleGUID))
|
|
{
|
|
sbSql.Append(" and TA.RoleGUID = @RoleGUID");
|
|
dbHelper.AddParameter("@RoleGUID", frmInsert.RoleGUID);
|
|
}
|
|
//if (frmInsert.ClassID != 0)
|
|
//{
|
|
// sbSql.Append(" and TA.ClassID = @ClassID");
|
|
// dbHelper.AddParameter("@ClassID", frmInsert.ClassID);
|
|
//}
|
|
if (!String.IsNullOrEmpty(frmInsert.RealName))
|
|
{
|
|
sbSql.Append(" and TA.RealName like @RealName");
|
|
dbHelper.AddParameter("@RealName", "%" + frmInsert.RealName + "%");
|
|
}
|
|
sbSql.Append(" ORDER BY CAST(TA.SeqIndex AS INT)");
|
|
dbHelper.CommandText = sbSql.ToString();
|
|
dbHelper.CommandType = System.Data.CommandType.Text;
|
|
DataTable table = dbHelper.ToDataTable();
|
|
|
|
//刷新DataGridView数据
|
|
DbMCControl dgBasUser = this.GetDbMCControlByKey(Mesnac.Basic.DataSourceFactory.MCDbType.Local, "BasUser").FirstOrDefault();
|
|
if (dgBasUser == null || !(dgBasUser.BaseControl is DataGridView))
|
|
{
|
|
ICSharpCode.Core.LoggingService<InsertAction>.Warn("{用户信息-查询} 缺少用户DataGridView控件...");
|
|
runtime.IsReturn = false;
|
|
return;
|
|
}
|
|
dgBasUser.BaseControl.BindDataSource = table;
|
|
}
|
|
}
|
|
public static DataTable GetUserListForSelect()
|
|
{
|
|
DbHelper dbHelper = Mesnac.Basic.DataSourceFactory.Instance.GetDbHelper(Mesnac.Basic.DataSourceFactory.MCDbType.Local);
|
|
if (dbHelper == null)
|
|
{
|
|
ICSharpCode.Core.LoggingService<PurviewHelper>.Error("获取数据连接失败,请检查数据库连接字符串是否正确!");
|
|
throw new Exception(Mesnac.Basic.LanguageHelper.DataBaseConnectError);
|
|
}
|
|
dbHelper.ClearParameter();
|
|
StringBuilder sbSql = new StringBuilder("SELECT GUID,RoleName FROM BasRole WHERE DeleteFlag='0' ");
|
|
sbSql.Append(" ORDER BY SeqIndex ");
|
|
dbHelper.CommandText = sbSql.ToString();
|
|
dbHelper.CommandType = System.Data.CommandType.Text;
|
|
DataTable table = dbHelper.ToDataTable();
|
|
return table;
|
|
}
|
|
}
|
|
}
|