#region
|
|
using System.Collections.Generic;
|
using System.Data;
|
using CSFrameworkV5.Common;
|
using CSFrameworkV5.Core;
|
using CSFrameworkV5.Interfaces;
|
using CSFrameworkV5.Interfaces.InterfaceModels;
|
using CSFrameworkV5.Models;
|
|
#endregion
|
|
namespace CSFrameworkV5.DataAccess
|
{
|
public class dalPermission : dalBaseDataDict, IBridge_Permission
|
{
|
public dalPermission(Loginer loginer)
|
: base(loginer)
|
{
|
_Database = DatabaseProvider.SystemDatabase;
|
}
|
|
public int DeleteAllMenu()
|
{
|
var i = _Database.ExecuteSQL("DELETE FROM tb_MyMenu;");
|
return i;
|
}
|
|
public DataTable GetActionData()
|
{
|
return new dalActions(_Loginer).GetActionData();
|
}
|
|
public DataTable GetChildUser(string account)
|
{
|
var sp = _Database.CreateSqlProc("usp_GetChildUser");
|
sp.AddParam("Account", DbType.String, account);
|
return _Database.GetTable(sp.Command, tb_MyUser.__TableName);
|
}
|
|
public List<DataPermissionModel> GetDataPermissionConfig(string account)
|
{
|
var cmd =
|
_Database.CreateSqlProc("usp_GetDataPermissionConfigByUser");
|
cmd.AddParam("DataSetID", Loginer.CurrentUser.DBID);
|
cmd.AddParam("Account", account);
|
return _Database
|
.ExecuteReaderList<DataPermissionModel>(cmd.Command);
|
}
|
|
public DataTable GetDataPermissionConfigByGroup(string groupCode)
|
{
|
var cmd =
|
_Database.CreateSqlProc("usp_GetDataPermissionConfigByGroup");
|
cmd.AddParam("DataSetID", Loginer.CurrentUser.DBID);
|
cmd.AddParam("GroupCode", groupCode);
|
return _Database.GetTable(cmd.Command, "sys_DataPermission");
|
}
|
|
public DataTable GetDataPermissionConfigByUser(string account)
|
{
|
var cmd =
|
_Database.CreateSqlProc("usp_GetDataPermissionConfigByUser");
|
cmd.AddParam("DataSetID", Loginer.CurrentUser.DBID);
|
cmd.AddParam("Account", account);
|
return _Database.GetTable(cmd.Command, "sys_DataPermission");
|
}
|
|
/// <summary>
|
/// 获取自定义按钮名称
|
/// </summary>
|
/// <returns></returns>
|
public DataTable GetFormTagCustomName()
|
{
|
var sql =
|
$"SELECT * FROM tb_MyFormTagName WHERE DataSetID={_Database.ParamSymboName}DataSetID";
|
var sp = _Database.CreateCommand(sql);
|
sp.AddParam("DataSetID", DbType.String, _Loginer.DBID);
|
return _Database.GetTable(sp.Command, tb_MyFormTagName.__TableName);
|
}
|
|
public DataTable GetFormTagName()
|
{
|
var sql =
|
$"SELECT * FROM tb_MyFormTagName WHERE DataSetID={_Database.ParamSymboName}DataSetID";
|
var sp = _Database.CreateCommand(sql);
|
sp.AddParam("DataSetID", DbType.String, _Loginer.DBID);
|
return _Database.GetTable(sp.Command, tb_MyFormTagName.__TableName);
|
}
|
|
public DataTable GetGridPermission(string userID)
|
{
|
var sql =
|
$"SELECT * FROM sys_GridPermission WHERE UserId={_Database.ParamSymboName}UserId";
|
var cmd = _Database.CreateCommand(sql);
|
cmd.AddParam("UserId", userID);
|
return _Database.GetTable(cmd.Command, "sys_GridPermission");
|
}
|
|
public string GetGridPermissionById(string userID, string viewId)
|
{
|
var sql =
|
$"SELECT HiddenColumns FROM sys_GridPermission WHERE UserId={_Database.ParamSymboName}UserId AND GridId={_Database.ParamSymboName}GridId";
|
var cmd = _Database.CreateCommand(sql);
|
cmd.AddParam("UserId", userID);
|
cmd.AddParam("GridId", viewId);
|
var o = _Database.ExecuteScalar(cmd.Command);
|
return ConvertEx.ToString(o);
|
}
|
|
public DataTable GetLookupMenu()
|
{
|
var sql =
|
$"SELECT MenuName,MenuCaption FROM tb_MyMenu WHERE DataSetID={_Database.ParamSymboName}DataSetID ORDER BY ParentMenuName,MenuName";
|
var sp = _Database.CreateCommand(sql);
|
sp.AddParam("DataSetID", DbType.String, _Loginer.DBID);
|
return _Database.GetTable(sp.Command, tb_MyMenu.__TableName);
|
}
|
|
public DataTable GetMenuByUser(string account, string dataSetID)
|
{
|
var sp = _Database.CreateSqlProc("usp_GetMenuByUser");
|
sp.AddParam("DataSetID", DbType.String, dataSetID);
|
sp.AddParam("Account", DbType.String, account);
|
return _Database.GetTable(sp.Command, tb_MyMenu.__TableName);
|
}
|
|
public DataTable GetMenuData()
|
{
|
return new dalMenu(_Loginer).GetSummaryData();
|
}
|
|
public DataTable GetMenuPicker()
|
{
|
return new dalMenu(_Loginer).GetMenuPicker();
|
}
|
|
public DataTable GetModuleData()
|
{
|
var sql = "SELECT * FROM sys_ModuleFileList";
|
|
return DatabaseProvider.GetDatabase(_Loginer.DBID)
|
.GetTable(sql, "sys_ModuleFileList");
|
}
|
|
public DataSet GetOwnersByMenu(string menuID)
|
{
|
var sp = _Database.CreateSqlProc("usp_GetOwnersByMenu");
|
sp.AddParam("MenuName", DbType.String, menuID);
|
sp.AddParam("DataSetID", DbType.String, _Loginer.DBID);
|
var ds = _Database.GetDataSet(sp.Command);
|
ds.Tables[0].TableName = tb_MyRole.__TableName;
|
ds.Tables[1].TableName = tb_MyGroup.__TableName;
|
ds.Tables[2].TableName = tb_MyUser.__TableName;
|
return ds;
|
}
|
|
public DataTable GetRoleAction(string roleID)
|
{
|
return new dalRole(_Loginer).GetRoleAction(roleID);
|
}
|
|
public DataTable GetRoleData()
|
{
|
return new dalRole(_Loginer).GetRoleData();
|
}
|
|
public DataSet GetRoleOwners(string roleID)
|
{
|
return new dalRole(_Loginer).GetRoleOwners(roleID);
|
}
|
|
public int GetUserActions(string account, string menuName)
|
{
|
return new dalUser(_Loginer).GetUserActions(account, menuName);
|
}
|
|
public DataTable GetUserActionsList(string account)
|
{
|
return new dalUser(_Loginer).GetUserActionsList(account);
|
}
|
|
public bool Init()
|
{
|
var sp = _Database.CreateSqlProc("usp_InitPermission");
|
var i = _Database.ExecuteCommand(sp.Command);
|
return true;
|
}
|
|
public bool IsExistsAction(int actionValue)
|
{
|
return new dalActions(_Loginer).IsExistsAction(actionValue);
|
}
|
|
public bool IsExistsModule(int moduleID)
|
{
|
var sql =
|
"SELECT COUNT(*) FROM sys_ModuleFileList WHERE ModuleID=" +
|
moduleID.ToStringEx();
|
var o = DatabaseProvider.GetDatabase(_Loginer.DBID)
|
.ExecuteScalar(sql);
|
return ConvertEx.ToInt(o) > 0;
|
}
|
|
public bool IsExistsRole(string roleID)
|
{
|
return new dalRole(_Loginer).IsExistsRole(roleID);
|
}
|
|
public bool IsOwner(string docUser, string leader)
|
{
|
var sp = _Database.CreateSqlProc("usp_IsOwner");
|
sp.AddParam("DataSetID", DbType.String, _Loginer.DBID);
|
sp.AddParam("DocUser", DbType.String, docUser);
|
sp.AddParam("Leader", DbType.String, leader);
|
var dt = _Database.GetTable(sp.Command);
|
return dt.Rows.Count > 0;
|
}
|
|
public bool IsUserBelongRole(string user, string roleID)
|
{
|
var sp = _Database.CreateSqlProc("usp_IsUserBelongRole");
|
sp.AddParam("DataSetID", DbType.String, _Loginer.DBID);
|
sp.AddParam("Account", DbType.String, user);
|
sp.AddParam("RoleID", DbType.String, roleID);
|
var dt = _Database.GetTable(sp.Command);
|
return dt.Rows.Count > 0;
|
}
|
|
public DataTable Query(string roleType, string content)
|
{
|
var sp = _Database.CreateSqlProc("usp_QueryRole");
|
sp.AddParam("RoleType", DbType.String, roleType);
|
sp.AddParam("Content", DbType.String, content);
|
var dt = _Database.GetTable(sp.Command, "tb_MyRole");
|
return dt;
|
}
|
|
public bool SaveDataPermission(DataTable data)
|
{
|
var ds = new DataSet();
|
ds.Tables.Add(data.Copy());
|
return new dalBaseDataDict(Loginer.CurrentUser,
|
typeof(sys_DataPermission), Globals.DEF_SYSTEM_DBID)
|
.Update(ds);
|
}
|
|
public bool SaveGridPermission(DataTable data)
|
{
|
var ds = new DataSet();
|
ds.Tables.Add(data.Copy());
|
return new dalBaseDataDict(Loginer.CurrentUser,
|
typeof(sys_GridPermission), Globals.DEF_SYSTEM_DBID)
|
.Update(ds);
|
}
|
}
|
}
|