#region using System; using System.Data; using CSFrameworkV5.Common; using CSFrameworkV5.Core; using CSFrameworkV5.Core.CodeGenerator; using CSFrameworkV5.Interfaces; using CSFrameworkV5.Models; #endregion namespace CSFrameworkV5.DataAccess { [DefaultORM_UpdateMode(typeof(tb_MyUserRoles), true)] public class dalUserRole : dalBaseDataDict, IBridge_UserRole { public dalUserRole(Loginer loginer) : base(loginer) { _KeyName = tb_MyUserRoles.__KeyName; //主键字段 _TableName = tb_MyUserRoles.__TableName; //表名 _ModelType = typeof(tb_MyUserRoles); _Database = DatabaseProvider.SystemDatabase; } public bool DeleteUserRole(string account, string roleID) { var p = _Database.ParamSymboName; var sql = $"DELETE FROM tb_MyUserRoles WHERE Account={p}Account AND RoleID={p}RoleID AND DataSetID={p}DataSetID"; var cmd = _Database.CreateCommand(sql); cmd.AddParam("Account", account); cmd.AddParam("RoleID", roleID); cmd.AddParam("DataSetID", _Loginer.DBID); var i = _Database.ExecuteCommand(cmd.Command); return true; } public DataTable SearchUserRole(string account, string roleID, DateTime expireDateFrom, DateTime expireDateTo) { var sp = _Database.CreateSqlProc("usp_SearchUserRole"); sp.AddParam("Account", DbType.String, account); sp.AddParam("RoleID", DbType.String, roleID); sp.AddParam("ExpireDateFrom", DbType.String, expireDateFrom.ToString(Globals.DEF_YYYYMMDD)); sp.AddParam("ExpireDateTo", DbType.String, expireDateTo.ToString(Globals.DEF_YYYYMMDD)); sp.AddParam("DataSetID", DbType.String, _Loginer.DBID); return _Database.GetTable(sp.Command, tb_MyUserRoles.__TableName); } /// /// 跟据表名创建SQL命令生成器 /// /// 表名 /// protected override IGenerateSqlCommand CreateSqlGenerator( DataTable table) { Type ORM = null; if (table.TableName == tb_MyUserRoles.__TableName) ORM = typeof(tb_MyUserRoles); if (ORM == null) throw new Exception(table.TableName + "表没有ORM模型!"); return new GenerateSqlCmdByTableFields(ORM, table, GeneratorFactory); } } }