コード例 #1
0
 /// <summary>
 /// 根据交易所类型ID返回交易时间
 /// </summary>
 /// <param name="bourseTypeID">交易所类型ID</param>
 /// <returns></returns>
 public DataSet GetTradeTimeAndBourseTypeList(int bourseTypeID)
 {
     try
     {
         CM_TradeTimeDAL cmTradeTimeDAL = new CM_TradeTimeDAL();
         return(cmTradeTimeDAL.GetTradeTimeAndBourseTypeList(bourseTypeID));
     }
     catch (Exception ex)
     {
         string      errCode   = "GL-4748";
         string      errMsg    = " 根据交易所类型ID返回交易时间失败!";
         VTException exception = new VTException(errCode, errMsg, ex);
         LogHelper.WriteError(exception.ToString(), exception.InnerException);
         return(null);
     }
 }
コード例 #2
0
 /// <summary>
 /// 根据交易所类型_交易时间表中的交易所类型ID获取交易所类型名称
 /// </summary>
 /// <returns></returns>
 public DataSet GetBourseTypeNameByBourseTypeID()
 {
     try
     {
         CM_TradeTimeDAL cMTradeTimeDAL = new CM_TradeTimeDAL();
         return(cMTradeTimeDAL.GetBourseTypeNameByBourseTypeID());
     }
     catch (Exception ex)
     {
         string      errCode   = "GL-4744";
         string      errMsg    = " 根据交易所类型_交易时间表中的交易所类型ID获取交易所类型名称失败!";
         VTException exception = new VTException(errCode, errMsg, ex);
         LogHelper.WriteError(exception.ToString(), exception.InnerException);
         return(null);
     }
 }
コード例 #3
0
 /// <summary>
 /// 获取所有交易所类型_交易时间
 /// </summary>
 /// <param name="BourseTypeName">交易所类型名称</param>
 /// <param name="pageNo">当前页</param>
 /// <param name="pageSize">显示记录数</param>
 /// <param name="rowCount">总行数</param>
 /// <returns></returns>
 public DataSet GetAllCMTradeTime(string BourseTypeName, int pageNo, int pageSize,
                                  out int rowCount)
 {
     try
     {
         CM_TradeTimeDAL cMTradeTimeDAL = new CM_TradeTimeDAL();
         return(cMTradeTimeDAL.GetAllCMTradeTime(BourseTypeName, pageNo, pageSize, out rowCount));
     }
     catch (Exception ex)
     {
         rowCount = AppGlobalVariable.INIT_INT;
         string      errCode   = "GL-4743";
         string      errMsg    = " 获取所有交易所类型_交易时间失败!";
         VTException exception = new VTException(errCode, errMsg, ex);
         LogHelper.WriteError(exception.ToString(), exception.InnerException);
         return(null);
     }
 }
コード例 #4
0
        /// <summary>
        /// 添加交易所类型和交易时间
        /// </summary>
        /// <param name="cmBourseType">交易所类型实体</param>
        /// <param name="cmTradeTimeList">交易时间实体集合</param>
        /// <returns></returns>
        public int AddCMBourseTypeAndTradeTime(CM_BourseType cmBourseType, List <CM_TradeTime> cmTradeTimeList)
        {
            var          cmBourseTypeDal = new CM_BourseTypeDAL();
            var          cmTradeTimeDal  = new CM_TradeTimeDAL();
            DbConnection Conn            = null;
            Database     db = DatabaseFactory.CreateDatabase();

            Conn = db.CreateConnection();
            if (Conn.State != ConnectionState.Open)
            {
                Conn.Open();
            }
            DbTransaction tran = Conn.BeginTransaction();
            //交易所类型ID
            int BourseTypeID = AppGlobalVariable.INIT_INT;
            //交易时间ID
            int TradeTimeID = AppGlobalVariable.INIT_INT;

            try
            {
                if (cmBourseType != null && cmTradeTimeList.Count > 0)
                {
                    BourseTypeID = cmBourseTypeDal.Add(cmBourseType, tran, db);
                    if (BourseTypeID == AppGlobalVariable.INIT_INT)
                    {
                        tran.Rollback();
                    }
                    foreach (CM_TradeTime _cmTradeTime in cmTradeTimeList)
                    {
                        _cmTradeTime.BourseTypeID = BourseTypeID;
                        TradeTimeID = cmTradeTimeDal.Add(_cmTradeTime, tran, db);
                        if (TradeTimeID == AppGlobalVariable.INIT_INT)
                        {
                            tran.Rollback();
                            break;
                        }
                    }
                }
                //根据交易所类型ID获取并查找最早的交易开始时间和最晚的交易结束时间
                List <CM_TradeTime> cmTTimeList =
                    cmTradeTimeDal.GetListArray(string.Format("BourseTypeID={0}", BourseTypeID), tran, db);
                if (cmTTimeList.Count > 0)
                {
                    DateTime _tempStartTime = AppGlobalVariable.INIT_DATETIME;
                    DateTime _tempEndTime   = AppGlobalVariable.INIT_DATETIME;
                    bool     isStartTime    = true; //标志开始值是否改变
                    bool     isEndTime      = true; //标志结束值是否改变
                    for (int i = 0; i < cmTTimeList.Count; i++)
                    {
                        if (isStartTime)
                        {
                            _tempStartTime = (DateTime)cmTTimeList[0].StartTime;
                        }
                        if (isEndTime)
                        {
                            _tempEndTime = (DateTime)cmTTimeList[0].EndTime;
                        }
                        if (_tempStartTime > (DateTime)cmTTimeList[i].StartTime)
                        {
                            _tempStartTime = (DateTime)cmTTimeList[i].StartTime;
                            isStartTime    = false;
                        }
                        if (_tempEndTime < (DateTime)cmTTimeList[i].EndTime)
                        {
                            _tempEndTime = (DateTime)cmTTimeList[i].EndTime;
                            isEndTime    = false;
                        }
                    }
                    bool result = cmBourseTypeDal.Update(BourseTypeID, _tempStartTime, _tempEndTime, tran, db);
                    if (!result)
                    {
                        tran.Rollback();
                    }
                    tran.Commit();
                }
                return(BourseTypeID);
            }
            catch (Exception ex)
            {
                tran.Rollback();
                string errCode   = "GL-4708";
                string errMsg    = "添加交易所类型和交易时间失败!";
                var    exception = new VTException(errCode, errMsg, ex);
                LogHelper.WriteError(exception.ToString(), exception.InnerException);
                return(AppGlobalVariable.INIT_INT);
            }
            finally
            {
                if (Conn.State == ConnectionState.Open)
                {
                    Conn.Close();
                }
            }
        }
コード例 #5
0
        /// <summary>
        /// 删除交易所类型及相关联的表
        /// </summary>
        /// <param name="BourseTypeID">交易所类型ID</param>
        public bool DeleteCMBourseTypeAbout(int BourseTypeID)
        {
            CM_NotTradeDateDAL         cM_NotTradeDateDAL         = new CM_NotTradeDateDAL();
            CM_TradeTimeDAL            cM_TradeTimeDAL            = new CM_TradeTimeDAL();
            CM_BreedClassDAL           cM_BreedClassDAL           = new CM_BreedClassDAL();
            RC_MatchMachineDAL         rC_MatchMachineDAL         = new RC_MatchMachineDAL();
            RC_TradeCommodityAssignDAL rC_TradeCommodityAssignDAL = new RC_TradeCommodityAssignDAL();

            DbConnection Conn = null;
            Database     db   = DatabaseFactory.CreateDatabase();

            Conn = db.CreateConnection();
            if (Conn.State != ConnectionState.Open)
            {
                Conn.Open();
            }
            DbTransaction Tran = Conn.BeginTransaction();

            try
            {
                int NewBourseTypeID = 5;//未分配交易所的ID=5,固定值
                //获得撮合机数据列表
                List <RC_MatchMachine> rCMatchMachineList =
                    rC_MatchMachineDAL.GetListArray(string.Format("BourseTypeID={0}", BourseTypeID), Tran, db);
                if (rCMatchMachineList.Count > 0)
                {
                    foreach (RC_MatchMachine rCMatchMode in rCMatchMachineList)
                    {
                        // List<RC_TradeCommodityAssign> rCTradeCommodityAssignList =
                        //rC_TradeCommodityAssignDAL.GetListArray(string.Format("MatchMachineID={0}", rCMatchMode.MatchMachineID), Tran, db);
                        //删除撮合机代码分配表中同一个撮合机ID的代码
                        if (!rC_TradeCommodityAssignDAL.DeleteRCTradeCommodityAByMachineID(rCMatchMode.MatchMachineID))
                        {
                            Tran.Rollback();
                            return(false);
                        }
                    }
                    //根据交易所类型ID,删除撮合机
                    if (!rC_MatchMachineDAL.DeleteByBourseTypeID(BourseTypeID, Tran, db))
                    {
                        Tran.Rollback();
                        return(false);
                    }
                }
                //根据交易所类型删除交易日
                if (!cM_TradeTimeDAL.DeleteCMTradeTimeByBourseTypeID(BourseTypeID, Tran, db))
                {
                    Tran.Rollback();
                    return(false);
                }
                //根据交易所类型删除非交易日
                if (!cM_NotTradeDateDAL.DeleteByBourseTypeID(BourseTypeID, Tran, db))
                {
                    Tran.Rollback();
                    return(false);
                }

                //根据交易所类型ID,更新交易商品品种中的交易所类型ID
                if (!cM_BreedClassDAL.UpdateBourseTypeID(BourseTypeID, NewBourseTypeID, Tran, db))
                {
                    Tran.Rollback();
                    return(false);
                }
                if (!cM_BourseTypeDAL.Delete(BourseTypeID, Tran, db))
                {
                    Tran.Rollback();
                    return(false);
                }
                Tran.Commit();
                return(true);
            }
            catch (Exception ex)
            {
                Tran.Rollback();
                string errCode   = "GL-4701";
                string errMsg    = "删除交易所类型失败!";
                var    exception = new VTException(errCode, errMsg, ex);
                LogHelper.WriteError(exception.ToString(), exception.InnerException);
                return(false);
            }
            finally
            {
                if (Conn.State == ConnectionState.Open)
                {
                    Conn.Close();
                }
            }
        }
コード例 #6
0
        /// <summary>
        /// 根据交易时间ID,删除交易时间
        /// </summary>
        /// <param name="TradeTimeID">交易时间ID</param>
        /// <returns></returns>
        public bool DeleteCMTradeTime(int TradeTimeID)
        {
            DbConnection Conn = null;
            Database     db   = DatabaseFactory.CreateDatabase();

            Conn = db.CreateConnection();
            if (Conn.State != ConnectionState.Open)
            {
                Conn.Open();
            }
            DbTransaction tran = Conn.BeginTransaction();

            try
            {
                //return cM_TradeTimeDAL.Delete(TradeTimeID);
                CM_TradeTimeDAL  cM_TradeTimeDAL  = new CM_TradeTimeDAL();
                CM_BourseTypeDAL cM_BourseTypeDAL = new CM_BourseTypeDAL();
                CM_TradeTime     cMTradeTime      = cM_TradeTimeDAL.GetModel(TradeTimeID);
                if (cMTradeTime != null)
                {
                    //交易所类型ID
                    int bourseTypeID = AppGlobalVariable.INIT_INT;
                    bourseTypeID = (int)cMTradeTime.BourseTypeID;
                    bool deleTTimeResult = cM_TradeTimeDAL.Delete(TradeTimeID);
                    if (!deleTTimeResult)
                    {
                        tran.Rollback();
                        return(false);
                    }
                    if (bourseTypeID != AppGlobalVariable.INIT_INT)
                    {
                        //根据交易所类型ID获取并查找最早的交易开始时间和最晚的交易结束时间
                        List <CM_TradeTime> cmTTimeList =
                            cM_TradeTimeDAL.GetListArray(string.Format("BourseTypeID={0}", bourseTypeID), tran, db);
                        if (cmTTimeList.Count > 0)
                        {
                            CM_TradeTime cmTradeTime = CompareTradeTime(cmTTimeList);
                            if (cmTradeTime != null)
                            {
                                bool result = cM_BourseTypeDAL.Update(bourseTypeID, (DateTime)cmTradeTime.StartTime,
                                                                      (DateTime)cmTradeTime.EndTime, tran,
                                                                      db);
                                if (!result)
                                {
                                    tran.Rollback();
                                    return(false);
                                }
                            }
                            tran.Commit();
                        }
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                tran.Rollback();
                string      errCode   = "GL-4741";
                string      errMsg    = " 根据交易时间ID,删除交易时间失败!";
                VTException exception = new VTException(errCode, errMsg, ex);
                LogHelper.WriteError(exception.ToString(), exception.InnerException);
                return(false);
            }
            finally
            {
                if (Conn.State == ConnectionState.Open)
                {
                    Conn.Close();
                }
            }
        }
コード例 #7
0
        /// <summary>
        /// 添加交易时间
        /// </summary>
        /// <param name="model">交易所类型_交易时间实体</param>
        /// <returns></returns>
        public int AddCMTradeTime(ManagementCenter.Model.CM_TradeTime model)
        {
            DbConnection Conn = null;
            Database     db   = DatabaseFactory.CreateDatabase();

            Conn = db.CreateConnection();
            if (Conn.State != ConnectionState.Open)
            {
                Conn.Open();
            }
            DbTransaction tran = Conn.BeginTransaction();

            try
            {
                CM_TradeTimeDAL  cM_TradeTimeDAL  = new CM_TradeTimeDAL();
                CM_BourseTypeDAL cM_BourseTypeDAL = new CM_BourseTypeDAL();
                //int tradeTimeID = (int)model.TradeTimeID;
                int addTTimeResult = AppGlobalVariable.INIT_INT;
                //交易所类型ID
                int bourseTypeID = AppGlobalVariable.INIT_INT;
                bourseTypeID   = (int)model.BourseTypeID;
                addTTimeResult = cM_TradeTimeDAL.Add(model, tran, db);
                if (addTTimeResult == AppGlobalVariable.INIT_INT)
                {
                    tran.Rollback();
                    return(AppGlobalVariable.INIT_INT);
                }
                if (bourseTypeID != AppGlobalVariable.INIT_INT)
                {
                    //根据交易所类型ID获取并查找最早的交易开始时间和最晚的交易结束时间
                    List <CM_TradeTime> cmTTimeList =
                        cM_TradeTimeDAL.GetListArray(string.Format("BourseTypeID={0}", bourseTypeID), tran, db);
                    if (cmTTimeList.Count > 0)
                    {
                        CM_TradeTime cmTradeTime = CompareTradeTime(cmTTimeList);
                        if (cmTradeTime != null)
                        {
                            bool result = cM_BourseTypeDAL.Update(bourseTypeID, (DateTime)cmTradeTime.StartTime,
                                                                  (DateTime)cmTradeTime.EndTime, tran,
                                                                  db);
                            if (!result)
                            {
                                tran.Rollback();
                                return(AppGlobalVariable.INIT_INT);
                            }
                        }
                        tran.Commit();
                    }
                }
                return(addTTimeResult);
            }
            catch (Exception ex)
            {
                tran.Rollback();
                string      errCode   = "GL-4740";
                string      errMsg    = "添加交易时间失败!";
                VTException exception = new VTException(errCode, errMsg, ex);
                LogHelper.WriteError(exception.ToString(), exception.InnerException);
                return(AppGlobalVariable.INIT_INT);
            }
            finally
            {
                if (Conn.State == ConnectionState.Open)
                {
                    Conn.Close();
                }
            }
        }