示例#1
0
        /// <summary>
        /// 返回受影响行数

        /// </summary>
        /// <param name="provider">数据提供加载驱动</param>
        /// <param name="sqlString">sql语句</param>
        /// <param name="isProcedure">是否为存储过程,true 为存储过程</param>
        /// <param name="param">sql语句对应参数</param>
        /// <returns></returns>
        public int ExecuteNonQuery(string sqlString, bool isProcedure, params IDataParameter[] param)
        {
            try
            {
                provider.Open();
                provider.Command.CommandText = sqlString;
                if (isProcedure)
                {
                    provider.Command.CommandType = CommandType.StoredProcedure;
                }
                else
                {
                    provider.Command.CommandType = CommandType.Text;
                }
                provider.Command.Parameters.Clear();
                if (param != null)
                {
                    for (int i = 0; i < param.Length; i++)
                    {
                        provider.Command.Parameters.Add(param[i]);
                    }
                }
                return((int)provider.Command.ExecuteNonQuery());
            }
            finally
            {
                provider.Close();
            }
        }
示例#2
0
        /// <summary>
        /// 执行查询返回受影响的行数
        /// </summary>
        /// <param name="commandText">sql查询</param>
        /// <param name="dbParameters">参数集</param>
        /// <param name="commandType">命令分类</param>
        /// <returns>影响行数</returns>
        public static int ExecuteNonQuery(string commandText, IDbDataParameter[] dbParameters = null, CommandType commandType = CommandType.Text)
        {
            int returnValue = 0;

            dbProvider.Open(DbConnection);
            returnValue = dbProvider.ExecuteNonQuery(commandText, dbParameters, commandType);
            dbProvider.Close();
            return(returnValue);
        }
示例#3
0
        public static int ExecuteNonQuery(string commandText, IDbDataParameter[] dbParameters = null, CommandType commandType = 1)
        {
            int num = 0;

            idbProvider_0.Open(DbConnection);
            num = idbProvider_0.ExecuteNonQuery(commandText, dbParameters, commandType);
            idbProvider_0.Close();
            return(num);
        }
示例#4
0
        /// <summary>
        /// 得到客户-主联系人信息
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="id">主键</param>
        /// <returns>数据表</returns>
        public DataTable GetCustomerContactInfo(UserInfo userInfo, string id)
        {
            DataTable dataTable = new DataTable();

            using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
            {
                try
                {
                    dbProvider.Open(BusinessDbConnection);
                    // 取得列表
                    CustomerManager manager = new CustomerManager(dbProvider, userInfo);
                    dataTable           = manager.GetCustomerContactInfo(id);
                    dataTable.TableName = CustomerTable.TableName;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    dbProvider.Close();
                }
            }

            return(dataTable);
        }
示例#5
0
 public static void ProcessRDIWriteDbWithLock(UserInfo userInfo, ParameterUtil parameter, object locker, ProcessFunWithLockDelegate fun)
 {
     if (SystemInfo.IsAuthorized(userInfo))
     {
         int  milliStart = Begin(parameter.UserInfo, parameter.CurrentMethod);
         bool getOnLine  = false;
         lock (locker)
         {
             using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(GetDbType(DbType.RDIDbWrite)))
             {
                 try
                 {
                     dbProvider.Open(GetDbConnection(DbType.RDIDbWrite));
                     getOnLine = fun(dbProvider, getOnLine);
                     AddLog(dbProvider, parameter);
                 }
                 catch (Exception ex)
                 {
                     CiExceptionManager.LogException(dbProvider, parameter.UserInfo, ex);
                     throw;
                 }
                 finally
                 {
                     dbProvider.Close();
                 }
             }
         }
         End(milliStart, parameter.CurrentMethod, getOnLine);
     }
 }
示例#6
0
        /// <summary>
        /// 根据分类获取数据
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="category">分类</param>
        /// <returns>数据表</returns>
        public DataTable GetDTByCategory(UserInfo userInfo, string category = "")
        {
            DataTable dataTable = new DataTable(CustomerTable.TableName);

            using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
            {
                try
                {
                    dbProvider.Open(BusinessDbConnection);
                    // 根据条件获取数据
                    CustomerManager manager = new CustomerManager(dbProvider, userInfo);
                    dataTable           = manager.GetDTByCategory(category);
                    dataTable.TableName = CustomerTable.TableName;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    dbProvider.Close();
                }
            }

            return(dataTable);
        }
        /// <summary>
        /// 根据条件获取数据
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="parameters">参数</param>
        /// <returns>数据表</returns>
        public DataTable GetDataTableByValues(UserInfo userInfo, List <KeyValuePair <string, object> > parameters)
        {
            DataTable dataTable = new DataTable(LinkManTable.TableName);

            using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
            {
                try
                {
                    dbProvider.Open(BusinessDbConnection);
                    // 根据条件获取数据
                    LinkManManager manager = new LinkManManager(dbProvider, userInfo);
                    dataTable           = manager.GetDT(parameters);
                    dataTable.TableName = LinkManTable.TableName;
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(dbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    dbProvider.Close();
                }
            }
            return(dataTable);
        }
        /// <summary>
        /// 取得数据表(包括客户的简称)
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <returns>数据表</returns>
        public DataTable GetDataTable(UserInfo userInfo)
        {
            DataTable dataTable = new DataTable(LinkManTable.TableName);

            using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
            {
                try
                {
                    dbProvider.Open(BusinessDbConnection);
                    // 取得列表
                    LinkManManager manager = new LinkManManager(dbProvider, userInfo);
                    dataTable           = manager.GetDataTable();
                    dataTable.TableName = LinkManTable.TableName;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    dbProvider.Close();
                }
            }
            return(dataTable);
        }
        /// <summary>
        /// 分页查询
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="userId">用户主键</param>
        /// <param name="searchValue">查询关键字</param>
        /// <param name="recordCount">记录数</param>
        /// <param name="pageIndex">当前页</param>
        /// <param name="pageSize">每页显示记录条数</param>
        /// <param name="sortExpression">排序字段</param>
        /// <param name="sortDire">排序方向</param>
        /// <returns>数据表</returns>
        public DataTable GetDataTableByPage(UserInfo userInfo, string userId, string searchValue, out int recordCount, int pageIndex = 1, int pageSize = 20, string sortExpression = null, string sortDire = null)
        {
            DataTable dataTable = new DataTable(LinkManTable.TableName);

            using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
            {
                try
                {
                    dbProvider.Open(BusinessDbConnection);
                    // 取得列表
                    LinkManManager manager = new LinkManManager(dbProvider, userInfo);
                    dataTable           = manager.GetDataTableByPage(userId, searchValue, out recordCount, pageIndex, pageSize, sortExpression, sortDire);
                    dataTable.TableName = LinkManTable.TableName;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    dbProvider.Close();
                }
            }
            return(dataTable);
        }
示例#10
0
 private static void ProcessDbProvider(ParameterUtil sup, ProcessFunDelegate fun, DbType dbType, bool inTransaction)
 {
     using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(GetDbType(dbType)))
     {
         try
         {
             dbProvider.Open(GetDbConnection(dbType));
             if (inTransaction)
             {
                 dbProvider.BeginTransaction();
             }
             fun(dbProvider);
             AddLog(dbProvider, sup);
             if (inTransaction)
             {
                 dbProvider.CommitTransaction();
             }
         }
         catch (Exception ex)
         {
             if (inTransaction)
             {
                 dbProvider.RollbackTransaction();
             }
             CiExceptionManager.LogException(dbProvider, sup.UserInfo, ex);
             throw;
         }
         finally
         {
             dbProvider.Close();
         }
     }
 }
        /// <summary>
        /// 新增数据
        /// </summary>
        /// <param name="userInfo">使用者</param>
        /// <param name="entity">实体</param>
        /// <param name="statusMessage">返回状态信息</param>
        /// <returns>受影响的行数</returns>
        public int Add(UserInfo userInfo, CiItemDetailsEntity entity, out string statusMessage)
        {
            int returnValue = 0;

            statusMessage = string.Empty;

            if (this.GetDTByValues(userInfo, new string[] { CiItemDetailsTable.FieldItemId, CiItemDetailsTable.FieldItemName, CiItemDetailsTable.FieldDeleteMark }, new string[] { entity.ItemId.ToString(), entity.ItemName, "0" }).Rows.Count > 0)
            {
                returnValue   = 0;
                statusMessage = "已存在相同的明细项!";
            }
            else
            {
                using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
                {
                    try
                    {
                        dbProvider.Open(RDIFrameworkDbConection);
                        var manager = new CiItemDetailsManager(dbProvider, userInfo);
                        returnValue   = !string.IsNullOrEmpty(manager.AddEntity(entity)) ?1:0;
                        statusMessage = "成功新增数据!";
                    }
                    catch (Exception ex)
                    {
                        CiExceptionManager.LogException(dbProvider, userInfo, ex);
                        throw ex;
                    }
                    finally
                    {
                        dbProvider.Close();
                    }
                }
            }
            return(returnValue);
        }
        /// <summary>
        /// 根据主键数组获取数据
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="ids">主鍵</param>
        /// <returns>数据表</returns>
        public DataTable GetDataTableByIds(UserInfo userInfo, string[] ids)
        {
            DataTable dataTable = new DataTable(LinkManTable.TableName);

            using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
            {
                try
                {
                    dbProvider.Open(BusinessDbConnection);
                    LinkManManager manager = new LinkManManager(dbProvider, userInfo);
                    dataTable           = manager.GetDT(LinkManTable.FieldId, ids, LinkManTable.FieldSortCode);
                    dataTable.TableName = LinkManTable.TableName;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    dbProvider.Close();
                }
            }

            return(dataTable);
        }
示例#13
0
        /// <summary>
        /// 取得数据表
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <returns>数据表</returns>
        public DataTable GetDataTable(UserInfo userInfo)
        {
            DataTable dataTable = new DataTable(IncomingCallTable.TableName);

            using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
            {
                try
                {
                    dbProvider.Open(BusinessDbConnection);
                    // 取得列表
                    IncomingCallManager manager = new IncomingCallManager(dbProvider, userInfo);
                    dataTable           = manager.GetDT(new KeyValuePair <string, object>(IncomingCallTable.FieldDeleteMark, 0), IncomingCallTable.FieldSortCode);
                    dataTable.TableName = IncomingCallTable.TableName;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    dbProvider.Close();
                }
            }
            return(dataTable);
        }
        /// <summary>
        /// 批量删除数据
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="ids">主键数组</param>
        /// <returns>影响行数</returns>
        public int BatchDelete(UserInfo userInfo, string[] ids)
        {
            int returnValue = 0;

            using (IDbProvider rdiDbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    rdiDbProvider.Open(RDIFrameworkDbConection);
                    LogManager.Instance.Add(rdiDbProvider, userInfo, this.serviceName, "批量删除数据", MethodBase.GetCurrentMethod());

                    using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
                    {
                        try
                        {
                            dbProvider.Open(BusinessDbConnection);
                            // 开始事务
                            dbProvider.BeginTransaction();
                            LinkManManager manager = new LinkManManager(dbProvider, userInfo);
                            returnValue = manager.Delete(ids);
                            // 提交事务
                            dbProvider.CommitTransaction();
                        }
                        catch (Exception ex)
                        {
                            // 回滚事务
                            dbProvider.RollbackTransaction();
                            CiExceptionManager.LogException(rdiDbProvider, userInfo, ex);
                            throw ex;
                        }
                        finally
                        {
                            dbProvider.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(rdiDbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    rdiDbProvider.Close();
                }
            }

            return(returnValue);
        }
示例#15
0
        /// <summary>
        /// 更新实体
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="entity">实体</param>
        /// <param name="statusCode">返回状态码</param>
        /// <param name="statusMessage">返回状态信息</param>
        /// <returns>影响行数</returns>
        public int Update(UserInfo userInfo, CUSTOMERCHANCEEntity entity, out string statusCode, out string statusMessage)
        {
            int returnValue = 0;

            statusCode = string.Empty;

            using (IDbProvider frameworkDbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    frameworkDbProvider.Open(RDIFrameworkDbConection);
                    LogManager.Instance.Add(frameworkDbProvider, userInfo, this.serviceName, "更新实体", MethodBase.GetCurrentMethod());

                    using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
                    {
                        try
                        {
                            dbProvider.Open(BusinessDbConnection);
                            CUSTOMERCHANCEManager manager = new CUSTOMERCHANCEManager(dbProvider, userInfo);
                            returnValue = manager.UpdateEntity(entity);
                            // returnValue = manager.Update(entity, out statusCode);
                            statusMessage = manager.GetStateMessage(statusCode);
                        }
                        catch (Exception ex)
                        {
                            CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                            throw ex;
                        }
                        finally
                        {
                            dbProvider.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    frameworkDbProvider.Close();
                }
            }

            return(returnValue);
        }
示例#16
0
        /// <summary>
        /// 批量存储实体
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="entites">实体列表</param>
        /// <returns>影响行数</returns>
        public int BatchSave(UserInfo userInfo, List <CUSTOMERCHANCEEntity> entites)
        {
            int returnValue = 0;

            using (IDbProvider frameworkDbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    frameworkDbProvider.Open(RDIFrameworkDbConection);
                    LogManager.Instance.Add(frameworkDbProvider, userInfo, this.serviceName, "批量存储实体", MethodBase.GetCurrentMethod());

                    using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
                    {
                        try
                        {
                            dbProvider.Open(BusinessDbConnection);
                            CUSTOMERCHANCEManager manager = new CUSTOMERCHANCEManager(dbProvider, userInfo);
                            // returnValue = manager.BatchSave(entites);
                            foreach (var entity in entites)
                            {
                                returnValue += manager.Update(entity);
                            }
                        }
                        catch (Exception ex)
                        {
                            CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                            throw ex;
                        }
                        finally
                        {
                            dbProvider.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    frameworkDbProvider.Close();
                }
            }

            return(returnValue);
        }
示例#17
0
        /// <summary>
        /// 新增实体
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="entity">实体</param>
        /// <param name="statusCode">返回状态码</param>
        /// <param name="statusMessage">返回状态消息</param>
        /// <returns>主鍵</returns>
        public string Add(UserInfo userInfo, CustomerEntity entity, out string statusCode, out string statusMessage)
        {
            string returnValue = string.Empty;

            statusCode = string.Empty;

            using (IDbProvider rdiDbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    rdiDbProvider.Open(RDIFrameworkDbConection);
                    LogManager.Instance.Add(rdiDbProvider, userInfo, this.serviceName, "新增实体", MethodBase.GetCurrentMethod());

                    using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
                    {
                        try
                        {
                            dbProvider.Open(BusinessDbConnection);
                            CustomerManager manager = new CustomerManager(dbProvider, userInfo);
                            returnValue   = manager.Add(entity, out statusCode);
                            statusMessage = manager.GetStateMessage(statusCode);
                        }
                        catch (Exception ex)
                        {
                            CiExceptionManager.LogException(rdiDbProvider, userInfo, ex);
                            throw ex;
                        }
                        finally
                        {
                            dbProvider.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(rdiDbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    rdiDbProvider.Close();
                }
            }

            return(returnValue);
        }
示例#18
0
        /// <summary>
        /// 得到数据表
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <returns>数据表</returns>
        public DataTable GetDataTable(UserInfo userInfo)
        {
            DataTable dataTable = new DataTable(CUSTOMERCHANCETable.TableName);

            using (IDbProvider frameworkDbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    frameworkDbProvider.Open(RDIFrameworkDbConection);
                    LogManager.Instance.Add(frameworkDbProvider, userInfo, this.serviceName, "取得列表", MethodBase.GetCurrentMethod());

                    using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
                    {
                        try
                        {
                            dbProvider.Open(BusinessDbConnection);
                            // 取得列表
                            CUSTOMERCHANCEManager manager = new CUSTOMERCHANCEManager(dbProvider, userInfo);
                            dataTable           = manager.GetDT(new KeyValuePair <string, object>(CUSTOMERCHANCETable.FieldDELETEMARK, 0), CUSTOMERCHANCETable.FieldSORTCODE);
                            dataTable.TableName = CUSTOMERCHANCETable.TableName;
                        }
                        catch (Exception ex)
                        {
                            CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                            throw ex;
                        }
                        finally
                        {
                            dbProvider.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    frameworkDbProvider.Close();
                }
            }

            return(dataTable);
        }
示例#19
0
        /// <summary>
        /// 分页查询
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="searchValue">查询关键字</param>
        /// <param name="recordCount">记录数</param>
        /// <param name="pageIndex">当前页</param>
        /// <param name="pageSize">每页显示记录条数</param>
        /// <param name="sortExpression">排序字段</param>
        /// <returns>数据表</returns>
        public DataTable GetDTByPage(UserInfo userInfo, string searchValue, out int recordCount, int pageIndex = 1, int pageSize = 20, string sortExpression = null)
        {
            DataTable dataTable = new DataTable(CUSTOMERCHANCETable.TableName);

            using (IDbProvider frameworkDbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    frameworkDbProvider.Open(RDIFrameworkDbConection);
                    LogManager.Instance.Add(frameworkDbProvider, userInfo, this.serviceName, "取得列表", MethodBase.GetCurrentMethod());

                    using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
                    {
                        try
                        {
                            dbProvider.Open(BusinessDbConnection);
                            // 取得列表
                            CUSTOMERCHANCEManager manager = new CUSTOMERCHANCEManager(dbProvider, userInfo);
                            dataTable           = manager.GetDTByPage(out recordCount, pageIndex, pageSize, searchValue, sortExpression);
                            dataTable.TableName = CUSTOMERCHANCETable.TableName;
                        }
                        catch (Exception ex)
                        {
                            CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                            throw ex;
                        }
                        finally
                        {
                            dbProvider.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    frameworkDbProvider.Close();
                }
            }

            return(dataTable);
        }
示例#20
0
        /// <summary>
        /// 根据主键数组获取数据
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="ids">主鍵</param>
        /// <returns>数据表</returns>
        public DataTable GetDataTableByIds(UserInfo userInfo, string[] ids)
        {
            DataTable dataTable = new DataTable(CUSTOMERCHANCETable.TableName);

            using (IDbProvider frameworkDbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    frameworkDbProvider.Open(RDIFrameworkDbConection);
                    LogManager.Instance.Add(frameworkDbProvider, userInfo, this.serviceName, "根据主键数组获取数据", MethodBase.GetCurrentMethod());

                    using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
                    {
                        try
                        {
                            dbProvider.Open(BusinessDbConnection);
                            CUSTOMERCHANCEManager manager = new CUSTOMERCHANCEManager(dbProvider, userInfo);
                            dataTable           = manager.GetDT(CUSTOMERCHANCETable.FieldId, ids, CUSTOMERCHANCETable.FieldSORTCODE);
                            dataTable.TableName = CUSTOMERCHANCETable.TableName;
                        }
                        catch (Exception ex)
                        {
                            CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                            throw ex;
                        }
                        finally
                        {
                            dbProvider.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    frameworkDbProvider.Close();
                }
            }

            return(dataTable);
        }
示例#21
0
        /// <summary>
        /// 根据条件获取数据
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="names">字段</param>
        /// <param name="values">值</param>
        /// <returns>数据表</returns>
        public DataTable GetDataTableByValues(UserInfo userInfo, List <KeyValuePair <string, object> > parameters)
        {
            DataTable dataTable = new DataTable(CUSTOMERCHANCETable.TableName);

            using (IDbProvider frameworkDbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    frameworkDbProvider.Open(RDIFrameworkDbConection);
                    LogManager.Instance.Add(frameworkDbProvider, userInfo, this.serviceName, "根据条件获取数据", MethodBase.GetCurrentMethod());

                    using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
                    {
                        try
                        {
                            dbProvider.Open(BusinessDbConnection);
                            // 根据条件获取数据
                            CUSTOMERCHANCEManager manager = new CUSTOMERCHANCEManager(dbProvider, userInfo);
                            dataTable           = manager.GetDT(parameters);
                            dataTable.TableName = CUSTOMERCHANCETable.TableName;
                        }
                        catch (Exception ex)
                        {
                            CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                            throw ex;
                        }
                        finally
                        {
                            dbProvider.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    frameworkDbProvider.Close();
                }
            }
            return(dataTable);
        }
示例#22
0
        /// <summary>
        /// 根据条件更新数据
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="whereParameters">条件键值对</param>
        /// <param name="parameters">键值对</param>
        /// <returns>受影响的行数</returns>
        public int UpdateByValues(UserInfo userInfo, List <KeyValuePair <string, object> > whereParameters, List <KeyValuePair <string, object> > parameters)
        {
            int returnValue = 0;

            using (IDbProvider rdiDbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    rdiDbProvider.Open(RDIFrameworkDbConection);
                    LogManager.Instance.Add(rdiDbProvider, userInfo, this.serviceName, "根据条件更新数据", MethodBase.GetCurrentMethod());

                    using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
                    {
                        try
                        {
                            dbProvider.Open(BusinessDbConnection);
                            // 根据条件获取数据
                            CustomerManager manager = new CustomerManager(dbProvider, userInfo);
                            returnValue = manager.SetProperty(manager.GetIds(parameters), whereParameters);
                        }
                        catch (Exception ex)
                        {
                            CiExceptionManager.LogException(rdiDbProvider, userInfo, ex);
                            throw ex;
                        }
                        finally
                        {
                            dbProvider.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(rdiDbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    rdiDbProvider.Close();
                }
            }
            return(returnValue);
        }
示例#23
0
        /// <summary>
        /// 删除数据
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="id">主鍵</param>
        /// <returns>数据表</returns>
        public int Delete(UserInfo userInfo, string id)
        {
            int returnValue = 0;

            using (IDbProvider rdiDbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    rdiDbProvider.Open(RDIFrameworkDbConection);
                    LogManager.Instance.Add(rdiDbProvider, userInfo, this.serviceName, "删除数据", MethodBase.GetCurrentMethod());

                    using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
                    {
                        try
                        {
                            dbProvider.Open(BusinessDbConnection);
                            IncomingCallManager manager = new IncomingCallManager(dbProvider, userInfo);
                            returnValue = manager.Delete(id);
                        }
                        catch (Exception ex)
                        {
                            CiExceptionManager.LogException(rdiDbProvider, userInfo, ex);
                            throw ex;
                        }
                        finally
                        {
                            dbProvider.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(rdiDbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    rdiDbProvider.Close();
                }
            }

            return(returnValue);
        }
示例#24
0
        /// <summary>
        /// 新增实体
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="entity">实体</param>
        /// <returns>主鍵</returns>
        public string Add(UserInfo userInfo, IncomingCallEntity entity)
        {
            string returnValue = string.Empty;

            using (IDbProvider rdiDbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    rdiDbProvider.Open(RDIFrameworkDbConection);
                    LogManager.Instance.Add(rdiDbProvider, userInfo, this.serviceName, "新增实体", MethodBase.GetCurrentMethod());

                    using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
                    {
                        try
                        {
                            dbProvider.Open(BusinessDbConnection);
                            IncomingCallManager manager = new IncomingCallManager(dbProvider, userInfo);
                            returnValue = manager.AddEntity(entity);
                        }
                        catch (Exception ex)
                        {
                            CiExceptionManager.LogException(rdiDbProvider, userInfo, ex);
                            throw ex;
                        }
                        finally
                        {
                            dbProvider.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(rdiDbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    rdiDbProvider.Close();
                }
            }

            return(returnValue);
        }
示例#25
0
        /// <summary>
        /// 取得实体
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="id">主鍵</param>
        /// <returns>实体</returns>
        public CUSTOMERCHANCEEntity GetEntity(UserInfo userInfo, string id)
        {
            CUSTOMERCHANCEEntity entity = null;

            using (IDbProvider frameworkDbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    frameworkDbProvider.Open(RDIFrameworkDbConection);
                    LogManager.Instance.Add(frameworkDbProvider, userInfo, this.serviceName, "取得实体", MethodBase.GetCurrentMethod());

                    using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
                    {
                        try
                        {
                            dbProvider.Open(BusinessDbConnection);
                            CUSTOMERCHANCEManager manager = new CUSTOMERCHANCEManager(dbProvider, userInfo);
                            entity = manager.GetEntity(id);
                        }
                        catch (Exception ex)
                        {
                            CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                            throw ex;
                        }
                        finally
                        {
                            dbProvider.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    frameworkDbProvider.Close();
                }
            }

            return(entity);
        }
示例#26
0
        /// <summary>
        /// 批量设置删除标志
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="ids">主键数组</param>
        /// <returns>影响行数</returns>
        public int SetDeleted(UserInfo userInfo, string[] ids)
        {
            int returnValue = 0;

            using (IDbProvider frameworkDbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    frameworkDbProvider.Open(RDIFrameworkDbConection);
                    LogManager.Instance.Add(frameworkDbProvider, userInfo, this.serviceName, "批量设置删除标志", MethodBase.GetCurrentMethod());

                    using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
                    {
                        try
                        {
                            dbProvider.Open(BusinessDbConnection);
                            CUSTOMERCHANCEManager manager = new CUSTOMERCHANCEManager(dbProvider, userInfo);
                            returnValue = manager.SetDeleted(ids);
                        }
                        catch (Exception ex)
                        {
                            CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                            throw ex;
                        }
                        finally
                        {
                            dbProvider.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    CiExceptionManager.LogException(frameworkDbProvider, userInfo, ex);
                    throw ex;
                }
                finally
                {
                    frameworkDbProvider.Close();
                }
            }

            return(returnValue);
        }
示例#27
0
        private DataTable ExecSql(string sql)
        {
            DataTable dt = new DataTable();

            using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
            {
                try
                {
                    dbProvider.Open(BusinessDbConnection);
                    dt = dbProvider.Fill(sql);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    dbProvider.Close();
                }
            }
            return(dt);
        }
示例#28
0
        /// <summary>
        /// 服务器端检查在线状态
        /// </summary>
        /// <returns>离线人数</returns>
        public int ServerCheckOnLine()
        {
            int returnValue = 0;

            using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(SystemInfo.RDIFrameworkDbType))
            {
                try
                {
                    dbProvider.Open(RDIFrameworkDbConection);
                    returnValue = userLogOnManager.CheckOnLine();
                }
                catch (Exception ex)
                {
                    LogHelper.WriteException(ex);
                    throw ex;
                }
                finally
                {
                    dbProvider.Close();
                }
            }
            return(returnValue);
        }
        /// <summary>
        /// 取得实体
        /// </summary>
        /// <param name="userInfo">用户</param>
        /// <param name="id">主鍵</param>
        /// <returns>实体</returns>
        public LinkManEntity GetEntity(UserInfo userInfo, string id)
        {
            LinkManEntity entity = null;

            using (IDbProvider dbProvider = DbFactoryProvider.GetProvider(BusinessDbType))
            {
                try
                {
                    dbProvider.Open(BusinessDbConnection);
                    LinkManManager manager = new LinkManManager(dbProvider, userInfo);
                    entity = manager.GetEntity(id);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
                finally
                {
                    dbProvider.Close();
                }
            }
            return(entity);
        }
 //事务测试
 private void toolStripButton2_Click(object sender, EventArgs e)
 {
     dbProvider.Open();
     dbProvider.BeginTransaction();
     try
     {
         string sql    = "insert into test1(Id,Col1,Col2,Col3) values('" + BusinessLogic.NewGuid() + "','abcd',2,'kk')";
         int    value1 = dbProvider.ExecuteNonQuery(sql);
         //sql = "insert into test2(Id,Col1,Col2) values('" + BusinessLogic.NewGuid() + "','4','kk')";
         sql = "insert into test2(Id,Col2) values('" + BusinessLogic.NewGuid() + "','kk')";
         int value2 = dbProvider.ExecuteNonQuery(sql); //插入失败,则第一条语句也失败。
         dbProvider.CommitTransaction();
     }
     catch (Exception ex)
     {
         dbProvider.RollbackTransaction();
         MessageBoxHelper.ShowErrorMsg(ex.Message);
     }
     finally
     {
         dbProvider.Close();
     }
 }