/// <summary>
        ///根据品种标识,品种涨跌幅标识,品种有效申报标识,删除现货品种交易规则
        /// </summary>
        /// <param name="BreedClassID">品种标识</param>
        /// <param name="BreedClassHighLowID">品种涨跌幅标识</param>
        /// <param name="BreedClassValidID">品种有效申报标识</param>
        /// <returns></returns>
        public bool DeleteSpotTradeRules(int BreedClassID, int BreedClassHighLowID, int BreedClassValidID)
        {
            XH_SpotTradeRulesDAL         xHSpotTradeRulesDAL         = new XH_SpotTradeRulesDAL();
            XH_SpotHighLowControlTypeBLL xHSpotHighLowControlTypeBLL = new XH_SpotHighLowControlTypeBLL();
            XH_ValidDeclareTypeBLL       xHValidDeclareTypeBLL       = new XH_ValidDeclareTypeBLL();

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

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

            try
            {
                //?先删除交易规则_交易方向_交易单位_交易量(最小交易单位)
                xHSpotTradeRulesDAL.Delete(BreedClassID, Tran, db);
                if (BreedClassHighLowID != AppGlobalVariable.INIT_INT)
                {
                    if (xHSpotHighLowControlTypeBLL.DeleteSpotHighLowValue(BreedClassHighLowID, Tran, db, true))
                    {
                        if (BreedClassValidID != AppGlobalVariable.INIT_INT)
                        {
                            if (xHValidDeclareTypeBLL.DeleteValidDeclareValue(BreedClassValidID, Tran, db, true))
                            {
                                Tran.Commit();
                                return(true);
                            }
                        }
                    }
                }
                Tran.Rollback();
                return(false);
            }
            catch (Exception ex)
            {
                Tran.Rollback();
                string      errCode   = "GL-5201";
                string      errMsg    = "根据品种标识,品种涨跌幅标识,品种有效申报标识,删除现货品种交易规则失败!";
                VTException exception = new VTException(errCode, errMsg, ex);
                LogHelper.WriteError(exception.ToString(), exception.InnerException);

                return(false);
            }
            finally
            {
                if (Conn != null && Conn.State == ConnectionState.Open)
                {
                    Conn.Close();
                }
            }
        }
 /// <summary>
 /// 根据品种ID返回现货规则明细(此品种的涨跌幅和有效申报)数据
 /// </summary>
 /// <param name="BreedClassID">品种ID</param>
 /// <returns></returns>
 public DataSet GetSpotTradeRulesDetail(int BreedClassID)
 {
     try
     {
         XH_SpotTradeRulesDAL xHSpotTradeRulesDAL = new XH_SpotTradeRulesDAL();
         return(xHSpotTradeRulesDAL.GetSpotTradeRulesDetail(BreedClassID));
     }
     catch (Exception ex)
     {
         GTA.VTS.Common.CommonUtility.LogHelper.WriteError(ex.Message, ex);
         return(null);
     }
 }
 /// <summary>
 ///  添加现货交易规则
 /// </summary>
 /// <param name="xHSpotTradeRules">现货交易规则实体类</param>
 /// <returns></returns>
 public bool AddXHSpotTradeRules(ManagementCenter.Model.XH_SpotTradeRules xHSpotTradeRules)
 {
     try
     {
         XH_SpotTradeRulesDAL xHSpotTradeRulesDAL = new XH_SpotTradeRulesDAL();
         return(xHSpotTradeRulesDAL.Add(xHSpotTradeRules));
     }
     catch (Exception ex)
     {
         string      errCode   = "GL-5200";
         string      errMsg    = "添加现货交易规则失败!";
         VTException exception = new VTException(errCode, errMsg, ex);
         LogHelper.WriteError(exception.ToString(), exception.InnerException);
         return(false);
     }
     //return true;
 }
        /// <summary>
        /// 获取所有现货交易规则
        /// </summary>
        /// <param name="BreedClassName">品种名称</param>
        /// <param name="pageNo">当前页</param>
        /// <param name="pageSize">显示记录数</param>
        /// <param name="rowCount">总行数</param>
        /// <returns></returns>
        public DataSet GetAllSpotTradeRules(string BreedClassName, int pageNo, int pageSize,
                                            out int rowCount)
        {
            try
            {
                XH_SpotTradeRulesDAL xHSpotTradeRulesDAL = new XH_SpotTradeRulesDAL();
                return(xHSpotTradeRulesDAL.GetAllSpotTradeRules(BreedClassName, pageNo, pageSize,
                                                                out rowCount));
            }
            catch (Exception ex)
            {
                rowCount = AppGlobalVariable.INIT_INT;
                string      errCode   = "GL-5204";
                string      errMsg    = "获取所有现货交易规则失败!";
                VTException exception = new VTException(errCode, errMsg, ex);
                LogHelper.WriteError(exception.ToString(), exception.InnerException);

                return(null);
            }
        }
        /// <summary>
        ///根据品种标识,品种涨跌幅标识,品种有效申报标识,删除现货品种交易规则(规则相关表全部删除)
        /// </summary>
        /// <param name="BreedClassID">品种标识</param>
        ///// <param name="BreedClassHighLowID">品种涨跌幅标识</param>
        ///// <param name="BreedClassValidID">品种有效申报标识</param>
        /// <returns></returns>
        public bool DeleteSpotTradeRulesAboutAll(int BreedClassID)
        {
            XH_SpotTradeRulesDAL    xHSpotTradeRulesDAL    = new XH_SpotTradeRulesDAL();
            XH_SpotPositionDAL      xHSpotPositionDAL      = new XH_SpotPositionDAL();
            XH_SpotHighLowValueDAL  xHSpotHighLowValueDAL  = new XH_SpotHighLowValueDAL();
            XH_ValidDeclareValueDAL xHValidDeclareValueDAL = new XH_ValidDeclareValueDAL();
            //XH_MinChangePriceValueDAL xHMinChangePriceValueDAL = new XH_MinChangePriceValueDAL();
            CM_FieldRangeDAL          cMFieldRangeDAL          = new CM_FieldRangeDAL();
            XH_ValidDeclareTypeDAL    xHValidDeclareTypeDAL    = new XH_ValidDeclareTypeDAL();
            XH_MinVolumeOfBusinessDAL xHMinVolumeOfBusinessDAL = new XH_MinVolumeOfBusinessDAL();

            XH_SpotHighLowControlTypeDAL xHSpotHighLowControlTypeDAL = new XH_SpotHighLowControlTypeDAL();
            CM_UnitConversionDAL         cM_UnitConversionDAL        = new CM_UnitConversionDAL();


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

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

            try
            {
                int BreedClassHighLowID            = AppGlobalVariable.INIT_INT;
                int BreedClassValidID              = AppGlobalVariable.INIT_INT;
                XH_SpotTradeRules xHSpotTradeRules = new XH_SpotTradeRules();
                xHSpotTradeRules = xHSpotTradeRulesDAL.GetModel(BreedClassID);
                if (xHSpotTradeRules != null)
                {
                    if (!string.IsNullOrEmpty(xHSpotTradeRules.BreedClassHighLowID.ToString()))
                    {
                        BreedClassHighLowID = Convert.ToInt32(xHSpotTradeRules.BreedClassHighLowID);
                    }
                    if (!string.IsNullOrEmpty(xHSpotTradeRules.BreedClassValidID.ToString()))
                    {
                        BreedClassValidID = Convert.ToInt32(xHSpotTradeRules.BreedClassValidID);
                    }
                    if (BreedClassHighLowID != AppGlobalVariable.INIT_INT)
                    {
                        if (!xHSpotHighLowValueDAL.DeleteSpotHighLowValue(BreedClassHighLowID, Tran, db))
                        {
                            Tran.Rollback();
                            return(false);
                        }
                    }
                    if (BreedClassValidID != AppGlobalVariable.INIT_INT)
                    {
                        if (!xHValidDeclareValueDAL.DeleteVDeclareValue(BreedClassValidID, Tran, db))
                        {
                            Tran.Rollback();
                            return(false);
                        }
                    }
                    //if (!xHMinChangePriceValueDAL.Delete(BreedClassID, Tran, db))
                    //{
                    //    Tran.Rollback();
                    //    return false;
                    //}

                    //List<Model.XH_MinChangePriceValue> xhMinCHangePriceV =
                    //    xHMinChangePriceValueDAL.GetListArray(string.Format("BreedClassID={0}", BreedClassID), Tran, db);
                    //foreach (Model.XH_MinChangePriceValue FieldRangeID in xhMinCHangePriceV)
                    //{
                    //    if (!cMFieldRangeDAL.Delete(FieldRangeID.FieldRangeID))
                    //    {
                    //        Tran.Rollback();
                    //        return false;
                    //    }
                    //}
                    if (!xHMinVolumeOfBusinessDAL.DeleteXHMinVolumeOfBusByBreedClassID(BreedClassID, Tran, db))
                    {
                        Tran.Rollback();
                        return(false);
                    }
                    //添加删除现货单位换算
                    List <Model.CM_UnitConversion> cMUnitC =
                        cM_UnitConversionDAL.GetListArray(string.Format("BreedClassID={0}", BreedClassID));
                    foreach (Model.CM_UnitConversion unitConversion in cMUnitC)
                    {
                        if (!cM_UnitConversionDAL.DeleteUnitConversionByBreedClassID(Convert.ToInt32(unitConversion.BreedClassID), Tran, db))
                        {
                            Tran.Rollback();
                            return(false);
                        }
                    }

                    if (!xHSpotTradeRulesDAL.Delete(BreedClassID, Tran, db))
                    {
                        Tran.Rollback();
                        return(false);
                    }
                    if (!xHValidDeclareTypeDAL.DeleteValidDeclareType(BreedClassValidID, Tran, db))
                    {
                        Tran.Rollback();
                        return(false);
                    }
                    if (!xHSpotHighLowControlTypeDAL.Delete(BreedClassHighLowID, Tran, db))
                    {
                        Tran.Rollback();
                        return(false);
                    }
                }
                Tran.Commit();
                return(true);
            }
            catch (Exception ex)
            {
                Tran.Rollback();
                string      errCode   = "GL-5202";
                string      errMsg    = "根据品种标识,品种涨跌幅标识,品种有效申报标识,删除现货品种交易规则(规则相关表全部删除)失败!";
                VTException exception = new VTException(errCode, errMsg, ex);
                LogHelper.WriteError(exception.ToString(), exception.InnerException);

                return(false);
            }
            finally
            {
                if (Conn.State == ConnectionState.Open)
                {
                    Conn.Close();
                }
            }
        }