/// <summary>
        /// 取得表权限控制数据表实体
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="name">字段名称</param>
        /// <param name="value">字段值</param>
        /// <returns>实体</returns>
        public PiTablePermissionScopeEntity GetTablePermissionScopeEntity(UserInfo userInfo, string name, object value)
        {
            PiTablePermissionScopeEntity entity = null;
            var parameter = ParameterUtil.CreateWithLog(userInfo, MethodBase.GetCurrentMethod());

            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                entity = new TablePermissionScopeManager(dbProvider, userInfo).GetEntity(name, value);
            });
            return(entity);
        }
        /// <summary>
        /// 批量设置表权限控制数据表的刪除标志
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="ids">主键数组</param>
        /// <returns>影响行数</returns>
        public int SetTablePermissionScopeDeleted(UserInfo userInfo, string[] ids)
        {
            var returnValue = 0;
            var parameter   = ParameterUtil.CreateWithMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName, RDIFrameworkMessage.TableColumnsService_SetTablePermissionScopeDeleted);

            ServiceUtil.ProcessRDIWriteDbWithTran(userInfo, parameter, dbProvider =>
            {
                returnValue = new TablePermissionScopeManager(dbProvider, userInfo).SetDeleted(ids);
            });
            return(returnValue);
        }
        /// <summary>
        /// 删除表权限控制表中指定数据
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="names">字段列表</param>
        /// <param name="values">字段列表值</param>
        /// <returns>受影响的行数</returns>
        public int DeleteTablePermissionScope(UserInfo userInfo, string[] names, object[] values)
        {
            var returnValue = 0;
            var parameter   = ParameterUtil.CreateWithMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName, RDIFrameworkMessage.TableColumnsService_DeleteTablePermissionScope);

            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                returnValue = new TablePermissionScopeManager(dbProvider, userInfo).Delete(names, values);
            });

            return(returnValue);
        }
        /// <summary>
        /// 得到所有可做表字段控制权限的数据
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <returns>数据表</returns>
        public DataTable GetTablePermissionScope(UserInfo userInfo)
        {
            var dataTable = new DataTable(CiTableColumnsTable.TableName);
            var parameter = ParameterUtil.CreateWithMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName, RDIFrameworkMessage.TableColumnsService_GetTablePermissionScope);

            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                string[] names      = { PiTablePermissionScopeTable.FieldDeleteMark };
                Object[] values     = { 0 };
                dataTable           = new TablePermissionScopeManager(dbProvider, userInfo).GetDT(names, values, PiTablePermissionScopeTable.FieldSortCode);
                dataTable.TableName = PiTablePermissionScopeTable.TableName;
            });

            return(dataTable);
        }
        //==========================================================================================
        //===================================TablePermissionScope控制相关===========================
        //==========================================================================================

        #region public string AddTablePermissionScope(UserInfo userInfo, PiTablePermissionScopeEntity entity, out string statusCode, out string statusMessage) 增加可做表权限控制的数据表
        /// <summary>
        /// 增加可做表权限控制的数据表
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="entity">实体</param>
        /// <param name="statusCode">返回状态码</param>
        /// <param name="statusMessage">返回状态信息</param>
        /// <returns>主键</returns>
        public string AddTablePermissionScope(UserInfo userInfo, PiTablePermissionScopeEntity entity, out string statusCode, out string statusMessage)
        {
            string returnValue   = string.Empty;
            string returnCode    = string.Empty;
            string returnMessage = string.Empty;
            var    parameter     = ParameterUtil.CreateWithMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName, RDIFrameworkMessage.TableColumnsService_AddTablePermissionScope);

            ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider =>
            {
                var manager   = new TablePermissionScopeManager(dbProvider, userInfo);
                returnValue   = manager.Add(entity, out returnCode);
                returnMessage = manager.GetStateMessage(returnCode);
            });
            statusCode    = returnCode;
            statusMessage = returnMessage;
            return(returnValue);
        }