wzp
2022-11-11 2f74eb23c0d2d4a246bc612c5c34bdfa8dea5603
web/Dao/GwSpDao.cs
@@ -1,4 +1,4 @@


using Common;
using Model;
using Oracle.DataAccess.Client;
@@ -10,247 +10,247 @@
namespace Dao
{
  public class GwSpDao : IDisposable
  {
    public List<SpCTPatternInfo> GetPatternList()
    public class GwSpDao : IDisposable
    {
      List<SpCTPatternInfo> list = new List<SpCTPatternInfo>();
      using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM GW_SP_CTPATTERN ORDER BY SP_ID DESC", OracleHelper.Connection))
      {
        while (reader != null && ((DbDataReader) reader).Read())
        public List<SpCTPatternInfo> GetPatternList()
        {
          OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
          string[] strArray = oracleReaderWrapper.GetString("PATTERN", "").Split("\r\n".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
          StringBuilder stringBuilder = new StringBuilder();
          int num = 1;
          foreach (string str in strArray)
          {
            stringBuilder.AppendFormat("{0}.", (object) num++);
            stringBuilder.Append(str);
            stringBuilder.Append("<br/>");
          }
          SpCTPatternInfo spCtPatternInfo = new SpCTPatternInfo()
          {
            SpID = oracleReaderWrapper.GetString("SP_ID", ""),
            Pattern = stringBuilder.ToString(),
            Count = strArray.Length,
            Enabled = oracleReaderWrapper.GetInt("ENABLED", 1),
            OperatorID = oracleReaderWrapper.GetString("OPERATOR_ID", string.Empty),
            CreateTime = oracleReaderWrapper.GetDateTime("CREATE_TIME"),
            UpdateTime = oracleReaderWrapper.GetDateTime("UPDATE_TIME"),
            Remark = oracleReaderWrapper.GetString("REMARK", "")
          };
          list.Add(spCtPatternInfo);
            List<SpCTPatternInfo> list = new List<SpCTPatternInfo>();
            using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM GW_SP_CTPATTERN ORDER BY SP_ID DESC", OracleHelper.Connection))
            {
                while (reader != null && ((DbDataReader)reader).Read())
                {
                    OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
                    string[] strArray = oracleReaderWrapper.GetString("PATTERN", "").Split("\r\n".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
                    StringBuilder stringBuilder = new StringBuilder();
                    int num = 1;
                    foreach (string str in strArray)
                    {
                        stringBuilder.AppendFormat("{0}.", (object)num++);
                        stringBuilder.Append(str);
                        stringBuilder.Append("<br/>");
                    }
                    SpCTPatternInfo spCtPatternInfo = new SpCTPatternInfo()
                    {
                        SpID = oracleReaderWrapper.GetString("SP_ID", ""),
                        Pattern = stringBuilder.ToString(),
                        Count = strArray.Length,
                        Enabled = oracleReaderWrapper.GetInt("ENABLED", 1),
                        OperatorID = oracleReaderWrapper.GetString("OPERATOR_ID", string.Empty),
                        CreateTime = oracleReaderWrapper.GetDateTime("CREATE_TIME"),
                        UpdateTime = oracleReaderWrapper.GetDateTime("UPDATE_TIME"),
                        Remark = oracleReaderWrapper.GetString("REMARK", "")
                    };
                    list.Add(spCtPatternInfo);
                }
            }
            return list;
        }
      }
      return list;
    }
    public SpCTPatternInfo GetPattern(string spID)
    {
      using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM GW_SP_CTPATTERN  WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":SP_ID", (object) spID)))
      {
        if (reader != null && ((DbDataReader) reader).Read())
        public SpCTPatternInfo GetPattern(string spID)
        {
          OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
          string string1 = oracleReaderWrapper.GetString("PATTERN", "");
          string string2 = oracleReaderWrapper.GetString("PREPATTERN", "");
          return new SpCTPatternInfo()
          {
            SpID = oracleReaderWrapper.GetString("SP_ID", ""),
            Enabled = oracleReaderWrapper.GetInt("Enabled", 0),
            OperatorID = oracleReaderWrapper.GetString("OPERATOR_ID", string.Empty),
            Pattern = string1,
            PrePattern = string2,
            CreateTime = oracleReaderWrapper.GetDateTime("CREATE_TIME"),
            UpdateTime = oracleReaderWrapper.GetDateTime("UPDATE_TIME"),
            Remark = oracleReaderWrapper.GetString("REMARK", "")
          };
            using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM GW_SP_CTPATTERN  WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":SP_ID", (object)spID)))
            {
                if (reader != null && ((DbDataReader)reader).Read())
                {
                    OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
                    string string1 = oracleReaderWrapper.GetString("PATTERN", "");
                    string string2 = oracleReaderWrapper.GetString("PREPATTERN", "");
                    return new SpCTPatternInfo()
                    {
                        SpID = oracleReaderWrapper.GetString("SP_ID", ""),
                        Enabled = oracleReaderWrapper.GetInt("Enabled", 0),
                        OperatorID = oracleReaderWrapper.GetString("OPERATOR_ID", string.Empty),
                        Pattern = string1,
                        PrePattern = string2,
                        CreateTime = oracleReaderWrapper.GetDateTime("CREATE_TIME"),
                        UpdateTime = oracleReaderWrapper.GetDateTime("UPDATE_TIME"),
                        Remark = oracleReaderWrapper.GetString("REMARK", "")
                    };
                }
            }
            return new SpCTPatternInfo()
            {
                SpID = spID,
                Enabled = 1
            };
        }
      }
      return new SpCTPatternInfo()
      {
        SpID = spID,
        Enabled = 1
      };
    }
    public List<GwSp> LoadClientSpIDList(string clientID)
    {
      List<GwSp> list = new List<GwSp>();
      try
      {
        StringBuilder stringBuilder = new StringBuilder();
        stringBuilder.Append("SELECT * FROM GW_SP WHERE CLIENT_ID=:CLIENT_ID ORDER BY SP_ID DESC");
        OracleParameter[] oracleParameterArray = new OracleParameter[1]
        public List<GwSp> LoadClientSpIDList(string clientID)
        {
            List<GwSp> list = new List<GwSp>();
            try
            {
                StringBuilder stringBuilder = new StringBuilder();
                stringBuilder.Append("SELECT * FROM GW_SP WHERE CLIENT_ID=:CLIENT_ID ORDER BY SP_ID DESC");
                OracleParameter[] oracleParameterArray = new OracleParameter[1]
                {
          new OracleParameter(":CLIENT_ID", (object) clientID)
        };
        using (OracleDataReader reader = OracleHelper.ExecuteReader(stringBuilder.ToString(), OracleHelper.Connection, oracleParameterArray))
        {
          while (((DbDataReader) reader).Read())
          {
            GwSp o = new GwSp();
            if (this.ReadInfo(reader, o))
              list.Add(o);
          }
                };
                using (OracleDataReader reader = OracleHelper.ExecuteReader(stringBuilder.ToString(), OracleHelper.Connection, oracleParameterArray))
                {
                    while (((DbDataReader)reader).Read())
                    {
                        GwSp o = new GwSp();
                        if (this.ReadInfo(reader, o))
                            list.Add(o);
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
                return list;
            }
            return list;
        }
      }
      catch (Exception ex)
      {
        LogHelper.Error(ex);
        return list;
      }
      return list;
    }
    public List<GwSp> LoadClientStatusList(string clientID)
    {
      List<GwSp> list = new List<GwSp>();
      try
      {
        StringBuilder stringBuilder = new StringBuilder();
        stringBuilder.Append("SELECT * FROM GW_SP WHERE CLIENT_ID=:CLIENT_ID AND STATUS=1 ORDER BY SP_ID DESC");
        OracleParameter[] oracleParameterArray = new OracleParameter[1]
        public List<GwSp> LoadClientStatusList(string clientID)
        {
            List<GwSp> list = new List<GwSp>();
            try
            {
                StringBuilder stringBuilder = new StringBuilder();
                stringBuilder.Append("SELECT * FROM GW_SP WHERE CLIENT_ID=:CLIENT_ID AND STATUS=1 ORDER BY SP_ID DESC");
                OracleParameter[] oracleParameterArray = new OracleParameter[1]
                {
          new OracleParameter(":CLIENT_ID", (object) clientID)
        };
        using (OracleDataReader reader = OracleHelper.ExecuteReader(stringBuilder.ToString(), OracleHelper.Connection, oracleParameterArray))
        {
          while (((DbDataReader) reader).Read())
          {
            GwSp o = new GwSp();
            if (this.ReadInfo(reader, o))
              list.Add(o);
          }
                };
                using (OracleDataReader reader = OracleHelper.ExecuteReader(stringBuilder.ToString(), OracleHelper.Connection, oracleParameterArray))
                {
                    while (((DbDataReader)reader).Read())
                    {
                        GwSp o = new GwSp();
                        if (this.ReadInfo(reader, o))
                            list.Add(o);
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
                return list;
            }
            return list;
        }
      }
      catch (Exception ex)
      {
        LogHelper.Error(ex);
        return list;
      }
      return list;
    }
    public int ClientCount(string clientID)
    {
      string str = string.Format("select count(*) as Count  from GW_SP where CLIENT_ID=:CLIENT_ID ");
      List<OracleParameter> list = new List<OracleParameter>();
      int num = 0;
      using (OracleDataReader reader = OracleHelper.ExecuteReader(str.ToString(), OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object) clientID)))
      {
        while (((DbDataReader) reader).Read())
          num = this.ReadCount(reader);
      }
      return num;
    }
      //新加删除通道是否被使用
    public int GwOpCount(int opid)
    {
        string str = string.Format("SELECT count(*) as Count  from GW_SP where  CM_OP_ID=:CM_OP_ID OR CT_OP_ID=:CT_OP_ID OR UN_OP_ID=:UN_OP_ID ");
        List<OracleParameter> list = new List<OracleParameter>();
        int num = 0;
        using (OracleDataReader reader = OracleHelper.ExecuteReader(str.ToString(), OracleHelper.Connection, new OracleParameter(":CM_OP_ID", (object)opid), new OracleParameter(":CT_OP_ID", (object)opid), new OracleParameter(":UN_OP_ID", (object)opid)))
        public int ClientCount(string clientID)
        {
            while (((DbDataReader)reader).Read())
                num = this.ReadCount(reader);
            string str = string.Format("select count(*) as Count  from GW_SP where CLIENT_ID=:CLIENT_ID ");
            List<OracleParameter> list = new List<OracleParameter>();
            int num = 0;
            using (OracleDataReader reader = OracleHelper.ExecuteReader(str.ToString(), OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object)clientID)))
            {
                while (((DbDataReader)reader).Read())
                    num = this.ReadCount(reader);
            }
            return num;
        }
        return num;
    }
      //
        //新加删除通道是否被使用
        public int GwOpCount(int opid)
        {
            string str = string.Format("SELECT count(*) as Count  from GW_SP where  CM_OP_ID=:CM_OP_ID OR CT_OP_ID=:CT_OP_ID OR UN_OP_ID=:UN_OP_ID ");
            List<OracleParameter> list = new List<OracleParameter>();
            int num = 0;
            using (OracleDataReader reader = OracleHelper.ExecuteReader(str.ToString(), OracleHelper.Connection, new OracleParameter(":CM_OP_ID", (object)opid), new OracleParameter(":CT_OP_ID", (object)opid), new OracleParameter(":UN_OP_ID", (object)opid)))
            {
                while (((DbDataReader)reader).Read())
                    num = this.ReadCount(reader);
            }
            return num;
        }
        //
    public bool UpdatePattern(string spID, int enabled, string pattern, string operatorID)
    {
      return OracleHelper.ExecuteSql(string.Format("\r\n BEGIN\r\n UPDATE GW_SP_CTPATTERN SET PATTERN=:PATTERN,UPDATE_TIME=SYSDATE,OPERATOR_ID=:OPERATOR_ID,ENABLED=:ENABLED WHERE SP_ID=:SP_ID;\r\n IF SQL%ROWCOUNT=0 THEN\r\n INSERT INTO GW_SP_CTPATTERN(SP_ID,PATTERN,UPDATE_TIME,CREATE_TIME,OPERATOR_ID,ENABLED) VALUES(:SP_ID,:PATTERN,SYSDATE,SYSDATE,:OPERATOR_ID,:ENABLED);\r\n END IF;\r\n END;"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object) spID), new OracleParameter(":PATTERN", (OracleDbType) 105, (object) pattern, ParameterDirection.Input), new OracleParameter(":OPERATOR_ID", (object) operatorID), new OracleParameter(":ENABLED", (object) enabled)) > 0;
    }
        public bool UpdatePattern(string spID, int enabled, string pattern, string operatorID)
        {
            return OracleHelper.ExecuteSql(string.Format("\r\n BEGIN\r\n UPDATE GW_SP_CTPATTERN SET PATTERN=:PATTERN,UPDATE_TIME=SYSDATE,OPERATOR_ID=:OPERATOR_ID,ENABLED=:ENABLED WHERE SP_ID=:SP_ID;\r\n IF SQL%ROWCOUNT=0 THEN\r\n INSERT INTO GW_SP_CTPATTERN(SP_ID,PATTERN,UPDATE_TIME,CREATE_TIME,OPERATOR_ID,ENABLED) VALUES(:SP_ID,:PATTERN,SYSDATE,SYSDATE,:OPERATOR_ID,:ENABLED);\r\n END IF;\r\n END;"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object)spID), new OracleParameter(":PATTERN", (OracleDbType)105, (object)pattern, ParameterDirection.Input), new OracleParameter(":OPERATOR_ID", (object)operatorID), new OracleParameter(":ENABLED", (object)enabled)) > 0;
        }
    public bool UpdatePattern(SpCTPatternInfo cTPattern, string operatorID)
    {
      return OracleHelper.ExecuteSql(string.Format("\r\n            BEGIN\r\n                UPDATE GW_SP_CTPATTERN SET PATTERN=:PATTERN,UPDATE_TIME=SYSDATE,OPERATOR_ID=:OPERATOR_ID,ENABLED=:ENABLED WHERE SP_ID=:SP_ID;\r\n                IF SQL%ROWCOUNT=0 THEN\r\n                    INSERT INTO GW_SP_CTPATTERN(SP_ID,PATTERN,UPDATE_TIME,CREATE_TIME,OPERATOR_ID,ENABLED) VALUES(:SP_ID,:PATTERN,SYSDATE,SYSDATE,:OPERATOR_ID,:ENABLED);\r\n                END IF;\r\n            END;"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object) cTPattern.SpID), new OracleParameter(":PATTERN", (OracleDbType) 105, (object) cTPattern.Pattern, ParameterDirection.Input), new OracleParameter(":OPERATOR_ID", (object) operatorID), new OracleParameter(":ENABLED", (object) cTPattern.Enabled)) > 0;
    }
        public bool UpdatePattern(SpCTPatternInfo cTPattern, string operatorID)
        {
            return OracleHelper.ExecuteSql(string.Format("\r\n            BEGIN\r\n                UPDATE GW_SP_CTPATTERN SET PATTERN=:PATTERN,UPDATE_TIME=SYSDATE,OPERATOR_ID=:OPERATOR_ID,ENABLED=:ENABLED WHERE SP_ID=:SP_ID;\r\n                IF SQL%ROWCOUNT=0 THEN\r\n                    INSERT INTO GW_SP_CTPATTERN(SP_ID,PATTERN,UPDATE_TIME,CREATE_TIME,OPERATOR_ID,ENABLED) VALUES(:SP_ID,:PATTERN,SYSDATE,SYSDATE,:OPERATOR_ID,:ENABLED);\r\n                END IF;\r\n            END;"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object)cTPattern.SpID), new OracleParameter(":PATTERN", (OracleDbType)105, (object)cTPattern.Pattern, ParameterDirection.Input), new OracleParameter(":OPERATOR_ID", (object)operatorID), new OracleParameter(":ENABLED", (object)cTPattern.Enabled)) > 0;
        }
    public DataTable LoadSpDataTable(string spId, string apId, string clientId)
    {
          spId = "";   apId = "";   clientId = "";
        public DataTable LoadSpDataTable(string spId, string apId, string clientId)
        {
            spId = ""; apId = ""; clientId = "";
      StringBuilder stringBuilder = new StringBuilder();
      stringBuilder.Append("select  '&nbsp;'  || SP_ID as SP_ID, AP_ID, '&nbsp;' || CLIENT_ID  as CLIENT_ID, STRATEGY_ID, PASSWORD, CLIENT_IP, CLIENT_PORT, ACCESS_CODE, BALANCE/1000 AS BALANCE, PRIORITY, PRICE/1000 AS PRICE, CASE CHARGE_TYPE  WHEN 2 THEN '后付费' ELSE '预付费' END as CHARGE_TYPE, THRESHOLD, CREATE_TIME, REMARK, ACTIVATE_TIME, MAX_CONN_COUNT, MO_ENABLED, FORCE_UDHI, PASSING_TIME, AUDITING_MODE, DEDUCT_PERCENT, CM_OP_ID, CT_OP_ID, UN_OP_ID, DEFISHING_THRESHOLD, TIME_PERMITTING, REJECT_IF_FORBIDDEN, DEFISHING_TIMEOUT, SIGNATURES, REJECT_IF_NO_SIGNATURE, REFUND_IF_UNDELIVERED, ROUTER_TYPE, CHANNEL_TYPE, STATUS, MODIFY_TIME, DEFISHING_OP_ID, MONTH_FIXED_FEE, MONTH_MIN_FEE, FEE_SHORT_LENGTH, FEE_LONG_LENGTH, SIGNATURE_MODE, MCPM, MC_EXPRESSION, BLACK_MODE, DIVERTER_ID ");
            StringBuilder stringBuilder = new StringBuilder();
            stringBuilder.Append("select  '&nbsp;'  || SP_ID as SP_ID, AP_ID, '&nbsp;' || CLIENT_ID  as CLIENT_ID, STRATEGY_ID, PASSWORD, CLIENT_IP, CLIENT_PORT, ACCESS_CODE, BALANCE/1000 AS BALANCE, PRIORITY, PRICE/1000 AS PRICE, CASE CHARGE_TYPE  WHEN 2 THEN '后付费' ELSE '预付费' END as CHARGE_TYPE, THRESHOLD, CREATE_TIME, REMARK, ACTIVATE_TIME, MAX_CONN_COUNT, MO_ENABLED, FORCE_UDHI, PASSING_TIME, AUDITING_MODE, DEDUCT_PERCENT, CM_OP_ID, CT_OP_ID, UN_OP_ID, DEFISHING_THRESHOLD, TIME_PERMITTING, REJECT_IF_FORBIDDEN, DEFISHING_TIMEOUT, SIGNATURES, REJECT_IF_NO_SIGNATURE, REFUND_IF_UNDELIVERED, ROUTER_TYPE, CHANNEL_TYPE, STATUS, MODIFY_TIME, DEFISHING_OP_ID, MONTH_FIXED_FEE, MONTH_MIN_FEE, FEE_SHORT_LENGTH, FEE_LONG_LENGTH, SIGNATURE_MODE, MCPM, MC_EXPRESSION, BLACK_MODE, DIVERTER_ID ");
        //add: yangzh by 2022-03-14 start
        //stringBuilder.Append(" from GW_SP where 1=1 ");
        stringBuilder.Append(" from GW_SP where 1=1 AND DEL_FLAG = 0 ");
        //add: yangzh by 2022-03-14 start
            //add: yangzh by 2022-03-14 start
            //stringBuilder.Append(" from GW_SP where 1=1 ");
            stringBuilder.Append(" from GW_SP where 1=1 AND DEL_FLAG = 0 ");
            //add: yangzh by 2022-03-14 start
            OracleParameter[] oracleParameterArray = new OracleParameter[3];
      if (spId != null && spId != "")
      {
        oracleParameterArray[0] = new OracleParameter(":SpID", (OracleDbType) 112);
        ((DbParameter) oracleParameterArray[0]).Value = (object) spId;
        stringBuilder.Append(" and SP_ID=:SpID");
      }
      if (apId != null && apId != "")
      {
        oracleParameterArray[1] = new OracleParameter(":ApID", (OracleDbType) 112);
        ((DbParameter) oracleParameterArray[1]).Value = (object) apId;
        stringBuilder.Append(" and AP_ID=:ApID");
      }
      if (clientId != null && clientId != "")
      {
        oracleParameterArray[2] = new OracleParameter(":ClientID", (OracleDbType) 126);
        ((DbParameter) oracleParameterArray[2]).Value = (object) clientId;
        stringBuilder.Append(" and CLIENT_ID=:ClientID");
      }
      return OracleHelper.Execute(PubConstant.doOracleSql(100000, stringBuilder.ToString()).ToString(), OracleHelper.Connection, oracleParameterArray);
    }
            if (spId != null && spId != "")
            {
                oracleParameterArray[0] = new OracleParameter(":SpID", (OracleDbType)112);
                ((DbParameter)oracleParameterArray[0]).Value = (object)spId;
                stringBuilder.Append(" and SP_ID=:SpID");
            }
            if (apId != null && apId != "")
            {
                oracleParameterArray[1] = new OracleParameter(":ApID", (OracleDbType)112);
                ((DbParameter)oracleParameterArray[1]).Value = (object)apId;
                stringBuilder.Append(" and AP_ID=:ApID");
            }
            if (clientId != null && clientId != "")
            {
                oracleParameterArray[2] = new OracleParameter(":ClientID", (OracleDbType)126);
                ((DbParameter)oracleParameterArray[2]).Value = (object)clientId;
                stringBuilder.Append(" and CLIENT_ID=:ClientID");
            }
            return OracleHelper.Execute(PubConstant.doOracleSql(100000, stringBuilder.ToString()).ToString(), OracleHelper.Connection, oracleParameterArray);
        }
    public List<GwSp> LoadInfoList(string spId, string apId, string clientId, string permissionsSQL)
    {
      List<GwSp> list1 = new List<GwSp>();
      StringBuilder stringBuilder = new StringBuilder();
        public List<GwSp> LoadInfoList(string spId, string apId, string clientId, string permissionsSQL)
        {
            List<GwSp> list1 = new List<GwSp>();
            StringBuilder stringBuilder = new StringBuilder();
            //add: yangzh by 2022-03-14 start
            //stringBuilder.Append("from GW_SP where 1=1");
            stringBuilder.Append("from GW_SP where 1=1 AND DEL_FLAG = 0 "); //删除标志过滤:0-正常
            //add: yangzh by 2022-03-14 start
            List<OracleParameter> list2 = new List<OracleParameter>();
      if (spId != null && spId != "")
      {
        list2.Add(new OracleParameter(":SpID", (object) spId));
        stringBuilder.Append(" and SP_ID=:SpID");
      }
      if (apId != null && apId != "")
      {
        list2.Add(new OracleParameter(":ApID", (object) apId));
        stringBuilder.Append(" and AP_ID=:ApID");
      }
      if (clientId != null && clientId != "")
      {
        list2.Add(new OracleParameter(":ClientID", (object) clientId));
        stringBuilder.Append(" and CLIENT_ID=:ClientID");
      }
            if (spId != null && spId != "")
            {
                list2.Add(new OracleParameter(":SpID", (object)spId));
                stringBuilder.Append(" and SP_ID=:SpID");
            }
            if (apId != null && apId != "")
            {
                list2.Add(new OracleParameter(":ApID", (object)apId));
                stringBuilder.Append(" and AP_ID=:ApID");
            }
            if (clientId != null && clientId != "")
            {
                list2.Add(new OracleParameter(":ClientID", (object)clientId));
                stringBuilder.Append(" and CLIENT_ID=:ClientID");
            }
            //客户权限SQL脚本
            stringBuilder.Append(permissionsSQL);
            stringBuilder.Append(" order by SP_ID DESC");
      using (OracleDataReader reader = OracleHelper.ExecuteReader("select * " + stringBuilder.ToString(), OracleHelper.Connection, list2.ToArray()))
      {
        while (((DbDataReader) reader).Read())
        {
          GwSp o = new GwSp();
          if (this.ReadInfo(reader, o))
            list1.Add(o);
            using (OracleDataReader reader = OracleHelper.ExecuteReader("select * " + stringBuilder.ToString(), OracleHelper.Connection, list2.ToArray()))
            {
                while (((DbDataReader)reader).Read())
                {
                    GwSp o = new GwSp();
                    if (this.ReadInfo(reader, o))
                        list1.Add(o);
                }
            }
            return list1;
        }
      }
      return list1;
    }
        public List<GwSp> LoadInfoList(string spId, string apId, string clientId, string clientName, int routerType, string opID, int chargeType, int pageIndex, int pageSize
            , string resendStatus, string productId, string permissionsSQL, out int recordCount )
            , string resendStatus, string productId, string permissionsSQL, out int recordCount)
        {
            List<GwSp> list1 = new List<GwSp>();
            recordCount = 0;
@@ -273,10 +273,10 @@
                //stringBuilder.Append(" and AP_ID=:ApID");
                list2.Add(new OracleParameter(":ApID", (object)('%' + apId + '%')) );
                list2.Add(new OracleParameter(":ApID", (object)('%' + apId + '%')));
                stringBuilder.Append(" and AP_ID like :ApID");
            }
            if (resendStatus != null && resendStatus != "" &&int.Parse( resendStatus)!=3)
            if (resendStatus != null && resendStatus != "" && int.Parse(resendStatus) != 3)
            {
                list2.Add(new OracleParameter(":RESENDSTATUS", (object)resendStatus));
                stringBuilder.Append(" and RESEND_STATUS=:RESENDSTATUS");
@@ -353,110 +353,86 @@
            return list1;
        }
    public bool Update(GwSp o)
        public bool Update(GwSp o)
        {
            /**
            StringBuilder stringBuilder = new StringBuilder();
            stringBuilder.Append("UPDATE GW_SP SET ");
            stringBuilder.Append(" AP_ID=:APID, COMBINATION_MODE=:COMBINATION_MODE,CLIENT_ID=:CLIENTID,STRATEGY_ID=:STRATEGYID,PASSWORD=:PASSWORD ");
            stringBuilder.Append(" , CLIENT_IP=:CLIENTIP,CLIENT_PORT=:CLIENTPORT,ACCESS_CODE=:ACCESSCODE ");
            stringBuilder.Append(" , PRIORITY=:PRIORITY,PRICE=:PRICE,CHARGE_TYPE=:CHARGETYPE ");
            stringBuilder.Append(" , THRESHOLD=:THRESHOLD,MAX_CONN_COUNT=:MAXCONNCOUNT,REMARK=:REMARK ");
            stringBuilder.Append(" , TIME_PERMITTING=:TIME_PERMITTING,AUDITING_MODE=:AUDITINGMODE ");
            stringBuilder.Append(" , DEDUCT_PERCENT=:DEDUCTPERCENT ");
            stringBuilder.Append(" , CM_OP_ID=:CM_OP_ID,CT_OP_ID=:CT_OP_ID,UN_OP_ID=:UN_OP_ID ");
            stringBuilder.Append(" , DEFISHING_TIMEOUT = :DEFISHING_TIMEOUT,DEFISHING_THRESHOLD =:DEFISHING_THRESHOLD ");
            stringBuilder.Append(" , REJECT_IF_FORBIDDEN =:REJECT_IF_FORBIDDEN ");
            stringBuilder.Append(" , REFUND_IF_UNDELIVERED =:REFUND_IF_UNDELIVERED ");
            stringBuilder.Append(" , ROUTER_TYPE=:ROUTER_TYPE,STATUS=:STATUS,ACCESSCODE_MODE=:ACCESSCODE_MODE ");
            stringBuilder.Append(" , EXTNOEXTENSION_MODE=:EXTNOEXTENSION_MODE,DEFISHING_OP_ID =:DEFISHING_OP_ID ");
            stringBuilder.Append(" , MODIFY_TIME=SYSDATE,FEE_SHORT_LENGTH=:FEE_SHORT_LENGTH,FEE_LONG_LENGTH=:FEE_LONG_LENGTH ");
            stringBuilder.Append(" , BLACK_MODE=:BLACK_MODE ");
            stringBuilder.Append(" , DIVERTER_ID=:DIVERTER_ID ");
            stringBuilder.Append(" , MCPM=:MCPM ");
            stringBuilder.Append(" , MC_EXPRESSION=:MC_EXPRESSION ");
            stringBuilder.Append(" , CM_EXT_PARAMS=:CM_EXT_PARAMS ");
            stringBuilder.Append(" , CT_EXT_PARAMS=:CT_EXT_PARAMS ");
            stringBuilder.Append(" , CU_EXT_PARAMS=:CU_EXT_PARAMS ");
            stringBuilder.Append(" , CM_GROUP_ID=:CM_GROUP_ID ");
            stringBuilder.Append(" , CU_GROUP_ID=:CU_GROUP_ID ");
            stringBuilder.Append(" , CT_GROUP_ID=:CT_GROUP_ID ");
            stringBuilder.Append(" , BALANCE_THRESHOLD = :BALANCE_THRESHOLD ");
            stringBuilder.Append(" , ALARM_MOBILE = :ALARM_MOBILE ");
            stringBuilder.Append(" , FORCE_SIGN_FLAG = :FORCE_SIGN_FLAG ");
            stringBuilder.Append(" , FORCE_SIGN = :FORCE_SIGN ");
            stringBuilder.Append(" , SIGNATURE_MODE=:SIGNATURE_MODE ");
            stringBuilder.Append(" , SIGNATURES=:SIGNATURESE ");
            stringBuilder.Append(" , VerCodeMode=:VerCodeMode ");
            stringBuilder.Append(" , ProvincialNetworkMode=:ProvincialNetworkMode ");
            stringBuilder.Append(" , RESEND_STATUS =:RESEND_STATUS ");
            stringBuilder.Append(" , RESEND_CM_GROUPID =:RESEND_CM_GROUPID ");
            stringBuilder.Append(" , RESEND_CU_GROUPID =:RESEND_CU_GROUPID ");
            stringBuilder.Append(" , RESEND_CT_GROUPID =:RESEND_CT_GROUPID ");
            stringBuilder.Append(" , RANSFERFLAG =:TRANSFERFLAG ");
            stringBuilder.Append(" WHERE SP_ID=:SPID" );
            return OracleHelper.ExecuteSql(stringBuilder.ToString(), OracleHelper.Connection,
                new OracleParameter(":APID", (object)o.ApID),
                new OracleParameter(":COMBINATION_MODE", (object)o.CombinationMode),
                new OracleParameter(":CLIENTID", (object)o.ClientID),
                new OracleParameter(":STRATEGYID", (object)o.StrategyID),
                new OracleParameter(":PASSWORD", (object)o.Password),
                new OracleParameter(":CLIENTIP", (object)o.ClientIp),
                new OracleParameter(":CLIENTPORT", (object)o.ClientPort),
                new OracleParameter(":ACCESSCODE", (object)o.AccessCode),
                new OracleParameter(":PRIORITY", (object)o.Priority),
                new OracleParameter(":PRICE", (object)o.Price),
                new OracleParameter(":CHARGETYPE", (object)o.ChargeType),
                new OracleParameter(":THRESHOLD", (object)o.Threshold),
                new OracleParameter(":MAXCONNCOUNT", (object)o.MaxConnCount),
                new OracleParameter(":REMARK", (object)o.Remark),
                new OracleParameter(":TIME_PERMITTING", (object)o.TimePermitting),
                new OracleParameter(":AUDITINGMODE", (object)o.AuditingMode),
                new OracleParameter(":DEDUCTPERCENT", (object)o.DeductPercent),
                new OracleParameter(":SPID", (object)o.SpID),
                new OracleParameter(":CM_OP_ID", (object)o.CMOPID),
                new OracleParameter(":CT_OP_ID", (object)o.CTOPID),
                new OracleParameter(":UN_OP_ID", (object)o.UNOPID),
                new OracleParameter(":DEFISHING_TIMEOUT", (object)o.DefishingTimeout),
                new OracleParameter(":DEFISHING_THRESHOLD", (object)o.DefishingThreshold),
                new OracleParameter(":REJECT_IF_FORBIDDEN", (object)o.RejectIfForbidden),
                new OracleParameter(":REFUND_IF_UNDELIVERED", (object)o.RefundIfUndelivered),
                new OracleParameter(":STATUS", (object)o.Status),
                new OracleParameter(":ACCESSCODE_MODE", (object)o.AccessCodeMode),
                new OracleParameter(":EXTNOEXTENSION_MODE", (object)o.ExtnoExtensionMode),
                new OracleParameter(":DEFISHING_OP_ID", (object)o.DefishingOPID),
                new OracleParameter(":ROUTER_TYPE", (object)o.RouterType),
                new OracleParameter(":CM_EXT_PARAMS", (object)o.CMextparms),
                new OracleParameter(":CT_EXT_PARAMS", (object)o.CTextparams),
                new OracleParameter(":CU_EXT_PARAMS", (object)o.CUextparams),
                new OracleParameter(":FEE_SHORT_LENGTH", (object)o.FeeShortLength),
                new OracleParameter(":FEE_LONG_LENGTH", (object)o.FeeLongLength),
                new OracleParameter(":BLACK_MODE", (object)o.BlackMode),
                new OracleParameter(":DIVERTER_ID", (object)o.DiverterID),
                new OracleParameter(":MCPM", (object)o.MCPM),
                new OracleParameter(":MC_EXPRESSION", (object)o.McExpression),
                new OracleParameter(":CM_GROUP_ID", (object)o.CMGroupID),
                new OracleParameter(":CU_GROUP_ID", (object)o.CUGroupID),
                new OracleParameter(":CT_GROUP_ID", (object)o.CTGroupID),
                new OracleParameter(":BALANCE_THRESHOLD", (object)o.BalanceThreshold),
                new OracleParameter(":ALARM_MOBILE", (object)o.AlarmMobile),
                new OracleParameter(":FORCE_SIGN_FLAG", (object)o.ForceSignFlag),
                new OracleParameter(":FORCE_SIGN", (object)o.ForceSign),
                new OracleParameter(":SIGNATURE_MODE", (object)o.SignatureMode),
                new OracleParameter(":SIGNATURES", (object)o.Signatures),
                new OracleParameter(":VerCodeMode", (object)o.VerCodeMode),
                new OracleParameter(":ProvincialNetworkMode",(object)o.ProvincialNetworkMode),
            return OracleHelper.ExecuteSql("UPDATE GW_SP SET AP_ID=:APID,COMBINATION_MODE=:COMBINATION_MODE,CLIENT_ID=:CLIENTID," +
                "STRATEGY_ID=:STRATEGYID,PASSWORD=:PASSWORD,\r\nCLIENT_IP=:CLIENTIP,CLIENT_PORT=:CLIENTPORT," +
                "ACCESS_CODE=:ACCESSCODE,\r\nPRIORITY=:PRIORITY,PRICE=:PRICE,CHARGE_TYPE=:CHARGETYPE," +
                "IS_AUTO_RETURN=:IS_AUTO_RETURN,THRESHOLD=:THRESHOLD,MAX_CONN_COUNT=:MAXCONNCOUNT,REMARK=:REMARK," +
                "\r\nTIME_PERMITTING=:TIME_PERMITTING,AUDITING_MODE=:AUDITINGMODE,\r\nDEDUCT_PERCENT=:DEDUCTPERCENT," +
                "\r\nCM_OP_ID=:CM_OP_ID,CT_OP_ID=:CT_OP_ID,UN_OP_ID=:UN_OP_ID,\r\nDEFISHING_TIMEOUT = :DEFISHING_TIMEOUT," +
                "DEFISHING_THRESHOLD =:DEFISHING_THRESHOLD,\r\nREJECT_IF_FORBIDDEN =:REJECT_IF_FORBIDDEN," +
                "\r\nREFUND_IF_UNDELIVERED =:REFUND_IF_UNDELIVERED,\r\nROUTER_TYPE=:ROUTER_TYPE,STATUS=:STATUS," +
                "ACCESSCODE_MODE=:ACCESSCODE_MODE,\r\nEXTNOEXTENSION_MODE=:EXTNOEXTENSION_MODE," +
                "DEFISHING_OP_ID =:DEFISHING_OP_ID,\r\nMODIFY_TIME=SYSDATE,FEE_SHORT_LENGTH=:FEE_SHORT_LENGTH," +
                "FEE_LONG_LENGTH=:FEE_LONG_LENGTH,\r\nBLACK_MODE=:BLACK_MODE,\r\nDIVERTER_ID=:DIVERTER_ID," +
                "\r\nMCPM=:MCPM,\r\nMC_EXPRESSION=:MC_EXPRESSION,\r\nCM_EXT_PARAMS=:CM_EXT_PARAMS," +
                "\r\nCT_EXT_PARAMS=:CT_EXT_PARAMS,\r\nCU_EXT_PARAMS=:CU_EXT_PARAMS,\r\nCM_GROUP_ID=:CM_GROUP_ID," +
                "\r\nCU_GROUP_ID=:CU_GROUP_ID,\r\nCT_GROUP_ID=:CT_GROUP_ID ,\r\nBALANCE_THRESHOLD = :BALANCE_THRESHOLD," +
                "\r\nALARM_MOBILE = :ALARM_MOBILE,\r\nFORCE_SIGN_FLAG = :FORCE_SIGN_FLAG,\r\nFORCE_SIGN = :FORCE_SIGN," +
                "\r\nSIGNATURE_MODE=:SIGNATURE_MODE,\r\nSIGNATURES=:SIGNATURES\r\n,VerCodeMode=:VerCodeMode \r\n," +
                "ProvincialNetworkMode=:ProvincialNetworkMode \r\n,RESEND_STATUS=:RESEND_STATUS \r\n," +
                "RESEND_CM_GROUPID=:RESEND_CM_GROUPID \r\n,RESEND_CU_GROUPID=:RESEND_CU_GROUPID\r\n," +
                "RESEND_CT_GROUPID=:RESEND_CT_GROUPID,TRANSFERFLAG=:TRANSFERFLAG," +
                "IS_DISPALY_PRICE=:IS_DISPALY_PRICE,PRODUCT_ID=:PRODUCT_ID WHERE SP_ID=:SPID", OracleHelper.Connection,
                new OracleParameter(":APID", (object)o.ApID),
                new OracleParameter(":COMBINATION_MODE", (object)o.CombinationMode),
                new OracleParameter(":CLIENTID", (object)o.ClientID),
                new OracleParameter(":STRATEGYID", (object)o.StrategyID),
                new OracleParameter(":PASSWORD", (object)o.Password),
                new OracleParameter(":CLIENTIP", (object)o.ClientIp),
                new OracleParameter(":CLIENTPORT", (object)o.ClientPort),
                new OracleParameter(":ACCESSCODE", (object)o.AccessCode),
                new OracleParameter(":PRIORITY", (object)o.Priority),
                new OracleParameter(":PRICE", (object)o.Price),
                new OracleParameter(":CHARGETYPE", (object)o.ChargeType),
                new OracleParameter(":IS_AUTO_RETURN", (object)o.IsAutoReturn),
                new OracleParameter(":THRESHOLD", (object)o.Threshold),
                new OracleParameter(":MAXCONNCOUNT", (object)o.MaxConnCount),
                new OracleParameter(":REMARK", (object)o.Remark),
                new OracleParameter(":TIME_PERMITTING", (object)o.TimePermitting),
                new OracleParameter(":AUDITINGMODE", (object)o.AuditingMode),
                new OracleParameter(":DEDUCTPERCENT", (object)o.DeductPercent),
                new OracleParameter(":SPID", (object)o.SpID),
                new OracleParameter(":CM_OP_ID", (object)o.CMOPID),
                new OracleParameter(":CT_OP_ID", (object)o.CTOPID),
                new OracleParameter(":UN_OP_ID", (object)o.UNOPID),
                new OracleParameter(":DEFISHING_TIMEOUT", (object)o.DefishingTimeout),
                new OracleParameter(":DEFISHING_THRESHOLD", (object)o.DefishingThreshold),
                new OracleParameter(":REJECT_IF_FORBIDDEN", (object)o.RejectIfForbidden),
                new OracleParameter(":REFUND_IF_UNDELIVERED", (object)o.RefundIfUndelivered),
                new OracleParameter(":STATUS", (object)o.Status),
                new OracleParameter(":ACCESSCODE_MODE", (object)o.AccessCodeMode),
                new OracleParameter(":EXTNOEXTENSION_MODE", (object)o.ExtnoExtensionMode),
                new OracleParameter(":DEFISHING_OP_ID", (object)o.DefishingOPID),
                new OracleParameter(":ROUTER_TYPE", (object)o.RouterType),
                new OracleParameter(":CM_EXT_PARAMS", (object)o.CMextparms),
                new OracleParameter(":CT_EXT_PARAMS", (object)o.CTextparams),
                new OracleParameter(":CU_EXT_PARAMS", (object)o.CUextparams),
                new OracleParameter(":FEE_SHORT_LENGTH", (object)o.FeeShortLength),
                new OracleParameter(":FEE_LONG_LENGTH", (object)o.FeeLongLength),
                new OracleParameter(":BLACK_MODE", (object)o.BlackMode),
                new OracleParameter(":DIVERTER_ID", (object)o.DiverterID),
                new OracleParameter(":MCPM", (object)o.MCPM),
                new OracleParameter(":MC_EXPRESSION", (object)o.McExpression),
                new OracleParameter(":CM_GROUP_ID", (object)o.CMGroupID),
                new OracleParameter(":CU_GROUP_ID", (object)o.CUGroupID),
                new OracleParameter(":CT_GROUP_ID", (object)o.CTGroupID),
                new OracleParameter(":BALANCE_THRESHOLD", (object)o.BalanceThreshold),
                new OracleParameter(":ALARM_MOBILE", (object)o.AlarmMobile),
                new OracleParameter(":FORCE_SIGN_FLAG", (object)o.ForceSignFlag),
                new OracleParameter(":FORCE_SIGN", (object)o.ForceSign),
                new OracleParameter(":SIGNATURE_MODE", (object)o.SignatureMode),
                new OracleParameter(":SIGNATURES", (object)o.Signatures),
                new OracleParameter(":VerCodeMode", (object)o.VerCodeMode),
                new OracleParameter(":ProvincialNetworkMode", (object)o.ProvincialNetworkMode),
                new OracleParameter(":RESEND_STATUS", (object)o.RESEND_STATUS),
                new OracleParameter(":RESEND_CM_GROUPID", (object)o.RESEND_CM_GROUPID),
                new OracleParameter(":RESEND_CU_GROUPID", (object)o.RESEND_CU_GROUPID),
                new OracleParameter(":RESEND_CT_GROUPID",(object)o.RESEND_CT_GROUPID),
                new OracleParameter(":TRANSFERFLAG",(object)o.TransferFlag)
                ) > 0;
            **/
            return OracleHelper.ExecuteSql("UPDATE GW_SP SET AP_ID=:APID,COMBINATION_MODE=:COMBINATION_MODE,CLIENT_ID=:CLIENTID,STRATEGY_ID=:STRATEGYID,PASSWORD=:PASSWORD,\r\nCLIENT_IP=:CLIENTIP,CLIENT_PORT=:CLIENTPORT,ACCESS_CODE=:ACCESSCODE,\r\nPRIORITY=:PRIORITY,PRICE=:PRICE,CHARGE_TYPE=:CHARGETYPE,IS_AUTO_RETURN=:IS_AUTO_RETURN,THRESHOLD=:THRESHOLD,MAX_CONN_COUNT=:MAXCONNCOUNT,REMARK=:REMARK,\r\nTIME_PERMITTING=:TIME_PERMITTING,AUDITING_MODE=:AUDITINGMODE,\r\nDEDUCT_PERCENT=:DEDUCTPERCENT,\r\nCM_OP_ID=:CM_OP_ID,CT_OP_ID=:CT_OP_ID,UN_OP_ID=:UN_OP_ID,\r\nDEFISHING_TIMEOUT = :DEFISHING_TIMEOUT,DEFISHING_THRESHOLD =:DEFISHING_THRESHOLD,\r\nREJECT_IF_FORBIDDEN =:REJECT_IF_FORBIDDEN,\r\nREFUND_IF_UNDELIVERED =:REFUND_IF_UNDELIVERED,\r\nROUTER_TYPE=:ROUTER_TYPE,STATUS=:STATUS,ACCESSCODE_MODE=:ACCESSCODE_MODE,\r\nEXTNOEXTENSION_MODE=:EXTNOEXTENSION_MODE,DEFISHING_OP_ID =:DEFISHING_OP_ID,\r\nMODIFY_TIME=SYSDATE,FEE_SHORT_LENGTH=:FEE_SHORT_LENGTH,FEE_LONG_LENGTH=:FEE_LONG_LENGTH,\r\nBLACK_MODE=:BLACK_MODE,\r\nDIVERTER_ID=:DIVERTER_ID,\r\nMCPM=:MCPM,\r\nMC_EXPRESSION=:MC_EXPRESSION,\r\nCM_EXT_PARAMS=:CM_EXT_PARAMS,\r\nCT_EXT_PARAMS=:CT_EXT_PARAMS,\r\nCU_EXT_PARAMS=:CU_EXT_PARAMS,\r\nCM_GROUP_ID=:CM_GROUP_ID,\r\nCU_GROUP_ID=:CU_GROUP_ID,\r\nCT_GROUP_ID=:CT_GROUP_ID ,\r\nBALANCE_THRESHOLD = :BALANCE_THRESHOLD,\r\nALARM_MOBILE = :ALARM_MOBILE,\r\nFORCE_SIGN_FLAG = :FORCE_SIGN_FLAG,\r\nFORCE_SIGN = :FORCE_SIGN,\r\nSIGNATURE_MODE=:SIGNATURE_MODE,\r\nSIGNATURES=:SIGNATURES\r\n,VerCodeMode=:VerCodeMode \r\n,ProvincialNetworkMode=:ProvincialNetworkMode \r\n,RESEND_STATUS=:RESEND_STATUS \r\n,RESEND_CM_GROUPID=:RESEND_CM_GROUPID \r\n,RESEND_CU_GROUPID=:RESEND_CU_GROUPID \r\n,RESEND_CT_GROUPID=:RESEND_CT_GROUPID,TRANSFERFLAG=:TRANSFERFLAG WHERE SP_ID=:SPID", OracleHelper.Connection, new OracleParameter(":APID", (object)o.ApID), new OracleParameter(":COMBINATION_MODE", (object)o.CombinationMode), new OracleParameter(":CLIENTID", (object)o.ClientID), new OracleParameter(":STRATEGYID", (object)o.StrategyID), new OracleParameter(":PASSWORD", (object)o.Password), new OracleParameter(":CLIENTIP", (object)o.ClientIp), new OracleParameter(":CLIENTPORT", (object)o.ClientPort), new OracleParameter(":ACCESSCODE", (object)o.AccessCode), new OracleParameter(":PRIORITY", (object)o.Priority), new OracleParameter(":PRICE", (object)o.Price), new OracleParameter(":CHARGETYPE", (object)o.ChargeType), new OracleParameter(":IS_AUTO_RETURN", (object)o.IsAutoReturn), new OracleParameter(":THRESHOLD", (object)o.Threshold), new OracleParameter(":MAXCONNCOUNT", (object)o.MaxConnCount), new OracleParameter(":REMARK", (object)o.Remark), new OracleParameter(":TIME_PERMITTING", (object)o.TimePermitting), new OracleParameter(":AUDITINGMODE", (object)o.AuditingMode), new OracleParameter(":DEDUCTPERCENT", (object)o.DeductPercent), new OracleParameter(":SPID", (object)o.SpID), new OracleParameter(":CM_OP_ID", (object)o.CMOPID), new OracleParameter(":CT_OP_ID", (object)o.CTOPID), new OracleParameter(":UN_OP_ID", (object)o.UNOPID), new OracleParameter(":DEFISHING_TIMEOUT", (object)o.DefishingTimeout), new OracleParameter(":DEFISHING_THRESHOLD", (object)o.DefishingThreshold), new OracleParameter(":REJECT_IF_FORBIDDEN", (object)o.RejectIfForbidden), new OracleParameter(":REFUND_IF_UNDELIVERED", (object)o.RefundIfUndelivered), new OracleParameter(":STATUS", (object)o.Status), new OracleParameter(":ACCESSCODE_MODE", (object)o.AccessCodeMode), new OracleParameter(":EXTNOEXTENSION_MODE", (object)o.ExtnoExtensionMode), new OracleParameter(":DEFISHING_OP_ID", (object)o.DefishingOPID), new OracleParameter(":ROUTER_TYPE", (object)o.RouterType), new OracleParameter(":CM_EXT_PARAMS", (object)o.CMextparms), new OracleParameter(":CT_EXT_PARAMS", (object)o.CTextparams), new OracleParameter(":CU_EXT_PARAMS", (object)o.CUextparams), new OracleParameter(":FEE_SHORT_LENGTH", (object)o.FeeShortLength), new OracleParameter(":FEE_LONG_LENGTH", (object)o.FeeLongLength), new OracleParameter(":BLACK_MODE", (object)o.BlackMode), new OracleParameter(":DIVERTER_ID", (object)o.DiverterID), new OracleParameter(":MCPM", (object)o.MCPM), new OracleParameter(":MC_EXPRESSION", (object)o.McExpression), new OracleParameter(":CM_GROUP_ID", (object)o.CMGroupID), new OracleParameter(":CU_GROUP_ID", (object)o.CUGroupID), new OracleParameter(":CT_GROUP_ID", (object)o.CTGroupID), new OracleParameter(":BALANCE_THRESHOLD", (object)o.BalanceThreshold), new OracleParameter(":ALARM_MOBILE", (object)o.AlarmMobile), new OracleParameter(":FORCE_SIGN_FLAG", (object)o.ForceSignFlag), new OracleParameter(":FORCE_SIGN", (object)o.ForceSign), new OracleParameter(":SIGNATURE_MODE", (object)o.SignatureMode), new OracleParameter(":SIGNATURES", (object)o.Signatures), new OracleParameter(":VerCodeMode", (object)o.VerCodeMode), new OracleParameter(":ProvincialNetworkMode", (object)o.ProvincialNetworkMode), new OracleParameter(":RESEND_STATUS", (object)o.RESEND_STATUS), new OracleParameter(":RESEND_CM_GROUPID", (object)o.RESEND_CM_GROUPID), new OracleParameter(":RESEND_CU_GROUPID", (object)o.RESEND_CU_GROUPID), new OracleParameter(":RESEND_CT_GROUPID", (object)o.RESEND_CT_GROUPID), new OracleParameter(":TRANSFERFLAG", (object)o.TransferFlag)) > 0;
                new OracleParameter(":RESEND_CT_GROUPID", (object)o.RESEND_CT_GROUPID),
                new OracleParameter(":TRANSFERFLAG", (object)o.TransferFlag),
                new OracleParameter(":IS_DISPALY_PRICE", (object)o.IsDispalyPrice),
                new OracleParameter(":PRODUCT_ID", (object)o.ProductId)) > 0;
        }
        //更新账号充值数据
@@ -467,7 +443,7 @@
         * spid:账号
         * 
         */
        public bool UpdateBalanceByOrder(int AddBalance,int AddBasicNum, int AddGivingNum, string spid)
        public bool UpdateBalanceByOrder(Int64 AddBalance, Int64 AddBasicNum, Int64 AddGivingNum, string spid)
        {
            return OracleHelper.ExecuteSql("UPDATE GW_SP SET BALANCE=(BALANCE + :BALANCE), BASIC_NUM=(BASIC_NUM + :BASIC_NUM), GIVING_NUM= (GIVING_NUM + :GIVING_NUM) WHERE SP_ID=:SP_ID", OracleHelper.Connection
                , new OracleParameter(":BALANCE", (object)AddBalance)
@@ -478,9 +454,9 @@
        }
        public bool UpdateBalance(int Balance, string spid)
    {
      return OracleHelper.ExecuteSql("UPDATE GW_SP SET BALANCE=:BALANCE WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":BALANCE", (object) Balance), new OracleParameter(":SP_ID", (object) spid)) > 0;
    }
        {
            return OracleHelper.ExecuteSql("UPDATE GW_SP SET BALANCE=:BALANCE WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":BALANCE", (object)Balance), new OracleParameter(":SP_ID", (object)spid)) > 0;
        }
        //根据订单更新客户账号余额(余额、条数、赠送条数、基本条数)
        /// <summary>
@@ -490,74 +466,120 @@
        /// <param name="spid"></param>
        /// <returns></returns>
        public bool UpdateBalanceByOrder(int Balance, string spid)
    {
      return OracleHelper.ExecuteSql("UPDATE GW_SP SET BALANCE=:BALANCE WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":BALANCE", (object) Balance), new OracleParameter(":SP_ID", (object) spid)) > 0;
    }
    public bool Add(GwSp o)
    {
        return OracleHelper.ExecuteSql("INSERT INTO GW_SP\r\n (\r\n SP_ID,AP_ID,COMBINATION_MODE,CLIENT_ID,STRATEGY_ID,PASSWORD,CLIENT_IP,CLIENT_PORT,ACCESS_CODE,BALANCE,PRIORITY,PRICE,CHARGE_TYPE,IS_AUTO_RETURN,THRESHOLD,MAX_CONN_COUNT,CREATE_TIME,REMARK,TIME_PERMITTING,AUDITING_MODE,DEDUCT_PERCENT,CM_OP_ID,CT_OP_ID,UN_OP_ID,DEFISHING_TIMEOUT,DEFISHING_THRESHOLD,REJECT_IF_FORBIDDEN,REJECT_IF_NO_SIGNATURE,REFUND_IF_UNDELIVERED,ROUTER_TYPE,STATUS,ACCESSCODE_MODE,EXTNOEXTENSION_MODE,DEFISHING_OP_ID,MODIFY_TIME,FEE_SHORT_LENGTH,FEE_LONG_LENGTH,BLACK_MODE,DIVERTER_ID,MCPM,MC_EXPRESSION,CM_EXT_PARAMS,CT_EXT_PARAMS,CU_EXT_PARAMS,CM_GROUP_ID,CU_GROUP_ID,CT_GROUP_ID,BALANCE_THRESHOLD,ALARM_MOBILE,FORCE_SIGN_FLAG,FORCE_SIGN,SIGNATURE_MODE,SIGNATURES,VerCodeMode,ProvincialNetworkMode,RESEND_STATUS,RESEND_CM_GROUPID,RESEND_CU_GROUPID,RESEND_CT_GROUPID\r\n )\r\n VALUES\r\n (\r\n :SPID,:APID,:COMBINATION_MODE,:CLIENTID,:STRATEGYID,:PASSWORD,:CLIENTIP,:CLIENTPORT,:ACCESSCODE,:BALANCE,:PRIORITY,:PRICE,:CHARGETYPE,:IS_AUTO_RETURN,:THRESHOLD,:MAXCONNCOUNT,:CREATETIME,:REMARK,:TIME_PERMITTING,:AUDITINGMODE,:DEDUCTPERCENT,:CM_OP_ID,:CT_OP_ID,:UN_OP_ID,:DEFISHING_TIMEOUT,:DEFISHING_THRESHOLD,:REJECT_IF_FORBIDDEN,:REJECT_IF_NO_SIGNATURE,:REFUND_IF_UNDELIVERED,:ROUTER_TYPE,:STATUS,:ACCESSCODE_MODE,:EXTNOEXTENSION_MODE,:DEFISHING_OP_ID,:MODIFY_TIME,:FEE_SHORT_LENGTH,:FEE_LONG_LENGTH,:BLACK_MODE,:DIVERTER_ID,:MCPM,:MC_EXPRESSION,:CM_EXT_PARAMS,:CT_EXT_PARAMS,:CU_EXT_PARAMS,:CM_GROUP_ID,:CU_GROUP_ID,:CT_GROUP_ID,:BALANCE_THRESHOLD,:ALARM_MOBILE,:FORCE_SIGN_FLAG,:FORCE_SIGN,:SIGNATURE_MODE,:SIGNATURES,:VerCodeMode,:ProvincialNetworkMode,:RESEND_STATUS,:RESEND_CM_GROUPID,:RESEND_CU_GROUPID,:RESEND_CT_GROUPID\r\n            )", OracleHelper.Connection, new OracleParameter(":SPID", (object)o.SpID), new OracleParameter(":APID", (object)o.ApID), new OracleParameter(":COMBINATION_MODE", (object)o.CombinationMode), new OracleParameter(":CLIENTID", (object)o.ClientID), new OracleParameter(":STRATEGYID", (object)o.StrategyID), new OracleParameter(":PASSWORD", (object)o.Password), new OracleParameter(":CLIENTIP", (object)o.ClientIp), new OracleParameter(":CLIENTPORT", (object)o.ClientPort), new OracleParameter(":ACCESSCODE", (object)o.AccessCode), new OracleParameter(":BALANCE", (object)o.Balance), new OracleParameter(":PRIORITY", (object)o.Priority), new OracleParameter(":PRICE", (object)o.Price), new OracleParameter(":CHARGETYPE", (object)o.ChargeType), new OracleParameter(":IS_AUTO_RETURN", (object)o.IsAutoReturn), new OracleParameter(":THRESHOLD", (object)o.Threshold), new OracleParameter(":MAXCONNCOUNT", (object)o.MaxConnCount), new OracleParameter(":CREATETIME", (object)DateTime.Now), new OracleParameter(":REMARK", (object)o.Remark), new OracleParameter(":TIME_PERMITTING", (object)o.TimePermitting), new OracleParameter(":AUDITINGMODE", (object)o.AuditingMode), new OracleParameter(":DEDUCTPERCENT", (object)o.DeductPercent), new OracleParameter(":CM_OP_ID", (object)o.CMOPID), new OracleParameter(":CT_OP_ID", (object)o.CTOPID), new OracleParameter(":UN_OP_ID", (object)o.UNOPID), new OracleParameter(":DEFISHING_TIMEOUT", (object)o.DefishingTimeout), new OracleParameter(":DEFISHING_THRESHOLD", (object)o.DefishingThreshold), new OracleParameter(":REJECT_IF_FORBIDDEN", (object)o.RejectIfForbidden), new OracleParameter(":REJECT_IF_NO_SIGNATURE", (object)o.RejectIfNoSignature), new OracleParameter(":REFUND_IF_UNDELIVERED", (object)o.RefundIfUndelivered), new OracleParameter(":ROUTER_TYPE", (object)o.RouterType), new OracleParameter(":STATUS", (object)o.Status), new OracleParameter(":ACCESSCODE_MODE", (object)o.AccessCodeMode), new OracleParameter(":EXTNOEXTENSION_MODE", (object)o.ExtnoExtensionMode), new OracleParameter(":DEFISHING_OP_ID", (object)o.DefishingOPID), new OracleParameter(":MODIFY_TIME", (object)DateTime.Now), new OracleParameter(":FEE_SHORT_LENGTH", (object)o.FeeShortLength), new OracleParameter(":FEE_LONG_LENGTH", (object)o.FeeLongLength), new OracleParameter(":BLACK_MODE", (object)o.BlackMode), new OracleParameter(":DIVERTER_ID", (object)o.DiverterID), new OracleParameter(":MCPM", (object)o.MCPM), new OracleParameter(":MC_EXPRESSION", (object)o.McExpression), new OracleParameter(":CM_EXT_PARAMS", (object)o.CMextparms), new OracleParameter(":CT_EXT_PARAMS", (object)o.CTextparams), new OracleParameter(":CU_EXT_PARAMS", (object)o.CUextparams), new OracleParameter(":CM_GROUP_ID", (object)o.CMGroupID), new OracleParameter(":CU_GROUP_ID", (object)o.CUGroupID), new OracleParameter(":CT_GROUP_ID", (object)o.CTGroupID), new OracleParameter(":BALANCE_THRESHOLD", (object)o.BalanceThreshold), new OracleParameter(":ALARM_MOBILE", (object)o.AlarmMobile), new OracleParameter(":FORCE_SIGN_FLAG", (object)o.ForceSignFlag), new OracleParameter(":FORCE_SIGN", (object)o.ForceSign), new OracleParameter(":SIGNATURE_MODE", (object)o.SignatureMode), new OracleParameter(":SIGNATURES", (object)o.Signatures), new OracleParameter(":VerCodeMode", (object)o.VerCodeMode), new OracleParameter(":ProvincialNetworkMode",(object)o.ProvincialNetworkMode), new OracleParameter(":RESEND_STATUS", (object)o.RESEND_STATUS), new OracleParameter(":RESEND_CM_GROUPID", (object)o.RESEND_CM_GROUPID), new OracleParameter(":RESEND_CU_GROUPID", (object)o.RESEND_CU_GROUPID), new OracleParameter(":RESEND_CT_GROUPID", (object)o.RESEND_CT_GROUPID)) > 0;
    }
    public GwSp Get(string spid)
    {
      using (OracleDataReader reader = OracleHelper.ExecuteReader(string.Format("select * from GW_SP where SP_ID=:SP_ID"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object) spid)))
      {
        if (((DbDataReader) reader).Read())
        {
          GwSp o = new GwSp();
          this.ReadInfo(reader, o);
          return o;
            return OracleHelper.ExecuteSql("UPDATE GW_SP SET BALANCE=:BALANCE WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":BALANCE", (object)Balance), new OracleParameter(":SP_ID", (object)spid)) > 0;
        }
      }
      return (GwSp) null;
    }
    public bool IsSpIDExists(string spid)
    {
      if (string.IsNullOrEmpty(spid) || string.Equals("0", spid))
        return true;
      using (OracleDataReader oracleDataReader = OracleHelper.ExecuteReader(string.Format("select * from GW_SP where SP_ID=:SP_ID"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object) spid)))
        return ((DbDataReader) oracleDataReader).Read();
    }
    public GwSp GetSPID(string clientID, string spID)
    {
      using (OracleDataReader reader = OracleHelper.ExecuteReader(string.Format("select * from GW_SP where CLIENT_ID=:CLIENT_ID AND SP_ID=:SP_ID"), OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object) clientID), new OracleParameter(":SP_ID", (object) spID)))
      {
        if (((DbDataReader) reader).Read())
        public bool Add(GwSp o)
        {
          GwSp o = new GwSp();
          this.ReadInfo(reader, o);
          return o;
            return OracleHelper.ExecuteSql("INSERT INTO GW_SP\r\n (\r\n SP_ID,AP_ID,COMBINATION_MODE,CLIENT_ID,STRATEGY_ID," +
                "PASSWORD,CLIENT_IP,CLIENT_PORT,ACCESS_CODE,BALANCE,PRIORITY,PRICE,CHARGE_TYPE,IS_AUTO_RETURN," +
                "THRESHOLD,MAX_CONN_COUNT,CREATE_TIME,REMARK,TIME_PERMITTING,AUDITING_MODE,DEDUCT_PERCENT,CM_OP_ID," +
                "CT_OP_ID,UN_OP_ID,DEFISHING_TIMEOUT,DEFISHING_THRESHOLD,REJECT_IF_FORBIDDEN,REJECT_IF_NO_SIGNATURE," +
                "REFUND_IF_UNDELIVERED,ROUTER_TYPE,STATUS,ACCESSCODE_MODE,EXTNOEXTENSION_MODE,DEFISHING_OP_ID," +
                "MODIFY_TIME,FEE_SHORT_LENGTH,FEE_LONG_LENGTH,BLACK_MODE,DIVERTER_ID,MCPM,MC_EXPRESSION,CM_EXT_PARAMS" +
                ",CT_EXT_PARAMS,CU_EXT_PARAMS,CM_GROUP_ID,CU_GROUP_ID,CT_GROUP_ID,BALANCE_THRESHOLD,ALARM_MOBILE," +
                "FORCE_SIGN_FLAG,FORCE_SIGN,SIGNATURE_MODE,SIGNATURES,VerCodeMode,ProvincialNetworkMode,RESEND_STATUS" +
                ",RESEND_CM_GROUPID,RESEND_CU_GROUPID,RESEND_CT_GROUPID, " +
                "IS_DISPALY_PRICE \r\n )\r\n VALUES\r\n" +
                " (\r\n :SPID,:APID,:COMBINATION_MODE,:CLIENTID,:STRATEGYID,:PASSWORD,:CLIENTIP,:CLIENTPORT," +
                ":ACCESSCODE,:BALANCE,:PRIORITY,:PRICE,:CHARGETYPE,:IS_AUTO_RETURN,:THRESHOLD,:MAXCONNCOUNT,:CREATETIME," +
                ":REMARK,:TIME_PERMITTING,:AUDITINGMODE,:DEDUCTPERCENT,:CM_OP_ID,:CT_OP_ID,:UN_OP_ID,:DEFISHING_TIMEOUT," +
                ":DEFISHING_THRESHOLD,:REJECT_IF_FORBIDDEN,:REJECT_IF_NO_SIGNATURE,:REFUND_IF_UNDELIVERED,:ROUTER_TYPE," +
                ":STATUS,:ACCESSCODE_MODE,:EXTNOEXTENSION_MODE,:DEFISHING_OP_ID,:MODIFY_TIME,:FEE_SHORT_LENGTH,:FEE_LONG_LENGTH," +
                ":BLACK_MODE,:DIVERTER_ID,:MCPM,:MC_EXPRESSION,:CM_EXT_PARAMS,:CT_EXT_PARAMS,:CU_EXT_PARAMS,:CM_GROUP_ID," +
                ":CU_GROUP_ID,:CT_GROUP_ID,:BALANCE_THRESHOLD,:ALARM_MOBILE,:FORCE_SIGN_FLAG,:FORCE_SIGN,:SIGNATURE_MODE," +
                ":SIGNATURES,:VerCodeMode,:ProvincialNetworkMode,:RESEND_STATUS,:RESEND_CM_GROUPID,:RESEND_CU_GROUPID," +
                ":RESEND_CT_GROUPID, :IS_DISPALY_PRICE\r\n)",
                OracleHelper.Connection, new OracleParameter(":SPID", (object)o.SpID), new OracleParameter(":APID",
                (object)o.ApID), new OracleParameter(":COMBINATION_MODE", (object)o.CombinationMode),
                new OracleParameter(":CLIENTID", (object)o.ClientID), new OracleParameter(":STRATEGYID", (object)o.StrategyID),
                new OracleParameter(":PASSWORD", (object)o.Password), new OracleParameter(":CLIENTIP", (object)o.ClientIp),
                new OracleParameter(":CLIENTPORT", (object)o.ClientPort), new OracleParameter(":ACCESSCODE", (object)o.AccessCode),
                new OracleParameter(":BALANCE", (object)o.Balance), new OracleParameter(":PRIORITY", (object)o.Priority),
                new OracleParameter(":PRICE", (object)o.Price), new OracleParameter(":CHARGETYPE", (object)o.ChargeType),
                new OracleParameter(":IS_AUTO_RETURN", (object)o.IsAutoReturn), new OracleParameter(":THRESHOLD", (object)o.Threshold),
                new OracleParameter(":MAXCONNCOUNT", (object)o.MaxConnCount), new OracleParameter(":CREATETIME", (object)DateTime.Now),
                new OracleParameter(":REMARK", (object)o.Remark), new OracleParameter(":TIME_PERMITTING", (object)o.TimePermitting),
                new OracleParameter(":AUDITINGMODE", (object)o.AuditingMode), new OracleParameter(":DEDUCTPERCENT", (object)o.DeductPercent),
                new OracleParameter(":CM_OP_ID", (object)o.CMOPID), new OracleParameter(":CT_OP_ID", (object)o.CTOPID),
                new OracleParameter(":UN_OP_ID", (object)o.UNOPID), new OracleParameter(":DEFISHING_TIMEOUT", (object)o.DefishingTimeout),
                new OracleParameter(":DEFISHING_THRESHOLD", (object)o.DefishingThreshold), new OracleParameter(":REJECT_IF_FORBIDDEN", (object)o.RejectIfForbidden),
                new OracleParameter(":REJECT_IF_NO_SIGNATURE", (object)o.RejectIfNoSignature), new OracleParameter(":REFUND_IF_UNDELIVERED", (object)o.RefundIfUndelivered),
                new OracleParameter(":ROUTER_TYPE", (object)o.RouterType), new OracleParameter(":STATUS", (object)o.Status), new OracleParameter(":ACCESSCODE_MODE", (object)o.AccessCodeMode),
                new OracleParameter(":EXTNOEXTENSION_MODE", (object)o.ExtnoExtensionMode), new OracleParameter(":DEFISHING_OP_ID", (object)o.DefishingOPID), new OracleParameter(":MODIFY_TIME", (object)DateTime.Now),
                new OracleParameter(":FEE_SHORT_LENGTH", (object)o.FeeShortLength), new OracleParameter(":FEE_LONG_LENGTH", (object)o.FeeLongLength), new OracleParameter(":BLACK_MODE", (object)o.BlackMode),
                new OracleParameter(":DIVERTER_ID", (object)o.DiverterID), new OracleParameter(":MCPM", (object)o.MCPM),
                new OracleParameter(":MC_EXPRESSION", (object)o.McExpression), new OracleParameter(":CM_EXT_PARAMS", (object)o.CMextparms),
                new OracleParameter(":CT_EXT_PARAMS", (object)o.CTextparams), new OracleParameter(":CU_EXT_PARAMS", (object)o.CUextparams),
                new OracleParameter(":CM_GROUP_ID", (object)o.CMGroupID), new OracleParameter(":CU_GROUP_ID", (object)o.CUGroupID),
                new OracleParameter(":CT_GROUP_ID", (object)o.CTGroupID), new OracleParameter(":BALANCE_THRESHOLD", (object)o.BalanceThreshold),
                new OracleParameter(":ALARM_MOBILE", (object)o.AlarmMobile), new OracleParameter(":FORCE_SIGN_FLAG", (object)o.ForceSignFlag), new OracleParameter(":FORCE_SIGN", (object)o.ForceSign),
                new OracleParameter(":SIGNATURE_MODE", (object)o.SignatureMode), new OracleParameter(":SIGNATURES", (object)o.Signatures), new OracleParameter(":VerCodeMode", (object)o.VerCodeMode),
                new OracleParameter(":ProvincialNetworkMode", (object)o.ProvincialNetworkMode), new OracleParameter(":RESEND_STATUS", (object)o.RESEND_STATUS),
                new OracleParameter(":RESEND_CM_GROUPID", (object)o.RESEND_CM_GROUPID), new OracleParameter(":RESEND_CU_GROUPID", (object)o.RESEND_CU_GROUPID),
                new OracleParameter(":RESEND_CT_GROUPID", (object)o.RESEND_CT_GROUPID), new OracleParameter(":IS_DISPALY_PRICE", (object)o.IsDispalyPrice)) > 0;
        }
      }
      return (GwSp) null;
    }
    public bool GetClientSpID(string clientID, string spID)
    {
      if (string.IsNullOrEmpty(clientID) || string.Equals("0", clientID) || (string.IsNullOrEmpty(spID) || string.Equals("0", spID)))
        return true;
        public GwSp Get(string spid)
        {
            GwSp o = new GwSp();
            using (OracleDataReader reader = OracleHelper.ExecuteReader(string.Format("select gs.*, gc.company COMPANY, gp.name PRODUCT_NAME from gw_sp gs left join gw_client gc on gc.client_id = gs.client_id left join gw_product gp on gp.id = gs.product_id where gs.SP_ID=:SP_ID"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object)spid)))
            {
                if (((DbDataReader)reader).Read())
                {
                    this.ReadInfo(reader, o);
                    return o;
                }
            }
            return o;
        }
        public bool IsSpIDExists(string spid)
        {
            if (string.IsNullOrEmpty(spid) || string.Equals("0", spid))
                return true;
            using (OracleDataReader oracleDataReader = OracleHelper.ExecuteReader(string.Format("select * from GW_SP where SP_ID=:SP_ID"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object)spid)))
                return ((DbDataReader)oracleDataReader).Read();
        }
        public GwSp GetSPID(string clientID, string spID)
        {
            using (OracleDataReader reader = OracleHelper.ExecuteReader(string.Format("select * from GW_SP where CLIENT_ID=:CLIENT_ID AND SP_ID=:SP_ID"), OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object)clientID), new OracleParameter(":SP_ID", (object)spID)))
            {
                if (((DbDataReader)reader).Read())
                {
                    GwSp o = new GwSp();
                    this.ReadInfo(reader, o);
                    return o;
                }
            }
            return (GwSp)null;
        }
        public bool GetClientSpID(string clientID, string spID)
        {
            if (string.IsNullOrEmpty(clientID) || string.Equals("0", clientID) || (string.IsNullOrEmpty(spID) || string.Equals("0", spID)))
                return true;
            //add: yangzh by 2022-03-14 start
            //using (OracleDataReader oracleDataReader = OracleHelper.ExecuteReader("select * from GW_SP where CLIENT_ID=:CLIENT_ID AND SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object) clientID), new OracleParameter(":SP_ID", (object) spID)))
            using (OracleDataReader oracleDataReader = OracleHelper.ExecuteReader("select * from GW_SP where DEL_FLAG=2 AND CLIENT_ID=:CLIENT_ID AND SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object)clientID), new OracleParameter(":SP_ID", (object)spID)))
            //add: yangzh by 2022-03-14 end
            {
        if (((DbDataReader) oracleDataReader).Read())
          return true;
      }
      return false;
    }
                if (((DbDataReader)oracleDataReader).Read())
                    return true;
            }
            return false;
        }
    public bool Delete(string spid)
    {
      if (string.IsNullOrEmpty(spid) || string.Equals("0", spid))
        return false;
        public bool Delete(string spid)
        {
            if (string.IsNullOrEmpty(spid) || string.Equals("0", spid))
                return false;
            //add: yangzh by 2022-03-14 start
            //return OracleHelper.ExecuteSql(string.Format("delete from GW_SP where SP_ID=:SP_ID"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object) spid)) > 0;
            //逻辑删除
            return OracleHelper.ExecuteSql(string.Format("UPDATE GW_SP SET DEL_FLAG=2, STATUS=0 where SP_ID=:SP_ID"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object) spid)) > 0;
            return OracleHelper.ExecuteSql(string.Format("UPDATE GW_SP SET DEL_FLAG=2, STATUS=0 where SP_ID=:SP_ID"), OracleHelper.Connection, new OracleParameter(":SP_ID", (object)spid)) > 0;
            //add: yangzh by 2022-03-14 end
        }
@@ -568,6 +590,7 @@
            o.ApID = oracleReaderWrapper.GetInt("AP_ID", 0);
            o.CombinationMode = oracleReaderWrapper.GetInt("COMBINATION_MODE", 0);
            o.ClientID = oracleReaderWrapper.GetString("CLIENT_ID", "");
            o.Company = oracleReaderWrapper.GetString("COMPANY", "");
            o.StrategyID = oracleReaderWrapper.GetInt("STRATEGY_ID", 0);
            o.ChannelType = oracleReaderWrapper.GetString("CHANNEL_TYPE", "");
            o.Password = oracleReaderWrapper.GetString("PASSWORD", "");
@@ -628,12 +651,25 @@
            o.RESEND_CU_GROUPID = oracleReaderWrapper.GetInt("RESEND_CU_GROUPID", 0);
            o.RESEND_CT_GROUPID = oracleReaderWrapper.GetInt("RESEND_CT_GROUPID", 0);
            o.RESEND_STATUS = oracleReaderWrapper.GetInt("RESEND_STATUS", 0);
            o.TransferFlag = oracleReaderWrapper.GetInt("TransferFlag",0);
            o.TransferFlag = oracleReaderWrapper.GetInt("TransferFlag", 0);
            o.ProductId = oracleReaderWrapper.GetString("PRODUCT_ID", "");  //产品ID
            o.ProductName = oracleReaderWrapper.GetString("PRODUCT_NAME", "");  //产品ID
            o.BasicNum = oracleReaderWrapper.GetInt("BASIC_NUM", 0);  //基本条数(剩余数)
            o.GivingNum = oracleReaderWrapper.GetInt("GIVING_NUM", 0);  //赠送条数(剩余数)
            o.DelFlag = oracleReaderWrapper.GetInt("DelFlag", 0); //删除标志:0-正常;2-逻辑删除
            o.SubPackageNum = oracleReaderWrapper.GetInt("SUB_PACKAGE_NUM", 4000);  //分包条数: 表示后台数据分包数量,不能为0,否则没办法分包,默认4000个号码一个数据包,建议在2000至5000
            o.SingleSubmitMinRestrict = oracleReaderWrapper.GetInt("SINGLE_SUBMIT_MIN_RESTRICT", 0);  //短信单次提交最小限制:默认0表示不限制,启用限制后小于该提交条数的将被拒绝。
            o.IsDispalyPrice = oracleReaderWrapper.GetInt("IS_DISPALY_PRICE", 0);  //是否显示单价
            o.DeductionMode = oracleReaderWrapper.GetInt("DEDUCTION_MODE", 1); //扣费方式:1-提交量;2-成交量
            o.IsSendAudit = oracleReaderWrapper.GetInt("IS_SEND_AUDIT", 0);  //发送是否审核:0-停用;1-启用
            o.BelowNumAudit = oracleReaderWrapper.GetInt("BELOW_NUM_AUDIT", 0);  //低于这个条数需要审核
            o.AboveNumAudit = oracleReaderWrapper.GetInt("ABOVE_NUM_AUDIT", 0);  //高于这个条数需要审核
            o.IsCumulativeAudit = oracleReaderWrapper.GetInt("IS_CUMULATIVE_AUDIT", 0); //是否累计审核:0-停用;1-启用
            o.CumulativeAuditNum = oracleReaderWrapper.GetInt("CUMULATIVE_AUDIT_NUM", 0); //累计条数审核
            o.CumulativeAuditTime = oracleReaderWrapper.GetInt("CUMULATIVE_AUDIT_TIME", 0); //累计时间(小时)
            o.IsSyncChildSendAudit = oracleReaderWrapper.GetInt("IS_SYNC_CHILD_SEND_AUDIT", 0); //是否同步子账号(发送审核):0-否;2-是
            return true;
        }
@@ -653,239 +689,239 @@
        }
        public void Dispose()
    {
    }
        {
        }
    public string GetNextAccessCode()
    {
      using (OracleDataReader reader = OracleHelper.ExecuteReader(string.Format("select MAX(SUBSTR(ACCESS_CODE,0,3)) + 1 as ACCESS_CODE from GW_SP"), OracleHelper.Connection))
      {
        if (((DbDataReader) reader).Read())
          return new OracleReaderWrapper(reader).GetString("ACCESS_CODE", "");
      }
      return string.Empty;
    }
        public string GetNextAccessCode()
        {
            using (OracleDataReader reader = OracleHelper.ExecuteReader(string.Format("select MAX(SUBSTR(ACCESS_CODE,0,3)) + 1 as ACCESS_CODE from GW_SP"), OracleHelper.Connection))
            {
                if (((DbDataReader)reader).Read())
                    return new OracleReaderWrapper(reader).GetString("ACCESS_CODE", "");
            }
            return string.Empty;
        }
    public bool UpdateSignature(SpSignatureInfo ss)
    {
      return OracleHelper.ExecuteSql("UPDATE GW_SP SET SIGNATURE_MODE = :SIGNATURE_MODE,SIGNATURES = :SIGNATURES WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":SP_ID", (object) ss.SpID), new OracleParameter(":SIGNATURE_MODE", (object) ss.SignatureMode), new OracleParameter(":SIGNATURES", (object) ss.Signatures)) > 0;
    }
        public bool UpdateSignature(SpSignatureInfo ss)
        {
            return OracleHelper.ExecuteSql("UPDATE GW_SP SET SIGNATURE_MODE = :SIGNATURE_MODE,SIGNATURES = :SIGNATURES WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":SP_ID", (object)ss.SpID), new OracleParameter(":SIGNATURE_MODE", (object)ss.SignatureMode), new OracleParameter(":SIGNATURES", (object)ss.Signatures)) > 0;
        }
    public List<SpSignatureInfo> GetSignatureInfoList(string clientID, string spID, out int recordCount, int pageIndex, int pageSize)
    {
      List<SpSignatureInfo> list = new List<SpSignatureInfo>();
      string sql = "SELECT CLIENT_ID,SIGNATURES,SP_ID,SIGNATURE_MODE FROM GW_SP WHERE (SP_ID=:SP_ID OR :SP_ID IS NULL) AND (CLIENT_ID=:CLIENT_ID OR :CLIENT_ID IS NULL) ORDER BY SP_ID DESC";
      OracleParameter[] oracleParameterArray = new OracleParameter[2]
      {
        public List<SpSignatureInfo> GetSignatureInfoList(string clientID, string spID, out int recordCount, int pageIndex, int pageSize)
        {
            List<SpSignatureInfo> list = new List<SpSignatureInfo>();
            string sql = "SELECT CLIENT_ID,SIGNATURES,SP_ID,SIGNATURE_MODE FROM GW_SP WHERE (SP_ID=:SP_ID OR :SP_ID IS NULL) AND (CLIENT_ID=:CLIENT_ID OR :CLIENT_ID IS NULL) ORDER BY SP_ID DESC";
            OracleParameter[] oracleParameterArray = new OracleParameter[2]
            {
        new OracleParameter(":SP_ID", (object) spID),
        new OracleParameter(":CLIENT_ID", (object) clientID)
      };
      recordCount = Convert.ToInt32(OracleHelper.ExecuteScalar(OracleHelper.ToCountSql(sql), OracleHelper.Connection, oracleParameterArray));
      using (OracleDataReader reader = OracleHelper.ExecuteReader(OracleHelper.ToPagerSql(sql, pageIndex, pageSize, recordCount), OracleHelper.Connection, oracleParameterArray))
      {
        while (reader != null && ((DbDataReader) reader).Read())
        {
          OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
          SpSignatureInfo spSignatureInfo = new SpSignatureInfo()
          {
            SpID = oracleReaderWrapper.GetString("SP_ID", spID),
            ClientID = oracleReaderWrapper.GetString("CLIENT_ID", string.Empty),
            SignatureMode = oracleReaderWrapper.GetInt("SIGNATURE_MODE", 0),
            Signatures = oracleReaderWrapper.GetString("SIGNATURES", "")
          };
          list.Add(spSignatureInfo);
            };
            recordCount = Convert.ToInt32(OracleHelper.ExecuteScalar(OracleHelper.ToCountSql(sql), OracleHelper.Connection, oracleParameterArray));
            using (OracleDataReader reader = OracleHelper.ExecuteReader(OracleHelper.ToPagerSql(sql, pageIndex, pageSize, recordCount), OracleHelper.Connection, oracleParameterArray))
            {
                while (reader != null && ((DbDataReader)reader).Read())
                {
                    OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
                    SpSignatureInfo spSignatureInfo = new SpSignatureInfo()
                    {
                        SpID = oracleReaderWrapper.GetString("SP_ID", spID),
                        ClientID = oracleReaderWrapper.GetString("CLIENT_ID", string.Empty),
                        SignatureMode = oracleReaderWrapper.GetInt("SIGNATURE_MODE", 0),
                        Signatures = oracleReaderWrapper.GetString("SIGNATURES", "")
                    };
                    list.Add(spSignatureInfo);
                }
            }
            return list;
        }
      }
      return list;
    }
    public SpSignatureInfo GetSignature(string spID)
    {
      using (OracleDataReader reader = OracleHelper.ExecuteReader("select CLIENT_ID,SIGNATURES,SP_ID,SIGNATURE_MODE from GW_SP WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":SP_ID", (object) spID)))
      {
        if (reader != null && ((DbDataReader) reader).Read())
        public SpSignatureInfo GetSignature(string spID)
        {
          OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
          return new SpSignatureInfo()
          {
            SpID = oracleReaderWrapper.GetString("SP_ID", spID),
            ClientID = oracleReaderWrapper.GetString("CLIENT_ID", string.Empty),
            SignatureMode = oracleReaderWrapper.GetInt("SIGNATURE_MODE", 0),
            Signatures = oracleReaderWrapper.GetString("SIGNATURES", spID)
          };
            using (OracleDataReader reader = OracleHelper.ExecuteReader("select CLIENT_ID,SIGNATURES,SP_ID,SIGNATURE_MODE from GW_SP WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":SP_ID", (object)spID)))
            {
                if (reader != null && ((DbDataReader)reader).Read())
                {
                    OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
                    return new SpSignatureInfo()
                    {
                        SpID = oracleReaderWrapper.GetString("SP_ID", spID),
                        ClientID = oracleReaderWrapper.GetString("CLIENT_ID", string.Empty),
                        SignatureMode = oracleReaderWrapper.GetInt("SIGNATURE_MODE", 0),
                        Signatures = oracleReaderWrapper.GetString("SIGNATURES", spID)
                    };
                }
            }
            return new SpSignatureInfo()
            {
                SpID = spID
            };
        }
      }
      return new SpSignatureInfo()
      {
        SpID = spID
      };
    }
    public bool UpdateOP(string spid, int cmopID, int ctopID, int unopID, int cmGroupID, int cuGroupID, int ctGroupID)
    {
      return OracleHelper.ExecuteSql("UPDATE GW_SP SET CM_OP_ID=:CM_OP_ID,UN_OP_ID=:UN_OP_ID,CT_OP_ID=:CT_OP_ID,CM_GROUP_ID=:CM_GROUP_ID,CU_GROUP_ID=:CU_GROUP_ID,CT_GROUP_ID=:CT_GROUP_ID WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":CM_OP_ID", (object) cmopID), new OracleParameter(":UN_OP_ID", (object) unopID), new OracleParameter(":CT_OP_ID", (object) ctopID), new OracleParameter(":CM_GROUP_ID", (object) cmGroupID), new OracleParameter(":CU_GROUP_ID", (object) cuGroupID), new OracleParameter(":CT_GROUP_ID", (object) ctGroupID), new OracleParameter(":SP_ID", (object) spid)) > 0;
    }
    public bool UpdateSingleOP(string spid, int cmopID, int ctopID, int unopID, int cmGroupID, int cuGroupID, int ctGroupID)
    {
      List<KeyValuePair<string, OracleParameter[]>> list = new List<KeyValuePair<string, OracleParameter[]>>();
      if (cmopID > -1)
      {
        string key = "UPDATE GW_SP SET CM_OP_ID=:CM_OP_ID WHERE SP_ID=:SP_ID";
        OracleParameter[] oracleParameterArray = new OracleParameter[2]
        public bool UpdateOP(string spid, int cmopID, int ctopID, int unopID, int cmGroupID, int cuGroupID, int ctGroupID)
        {
            return OracleHelper.ExecuteSql("UPDATE GW_SP SET CM_OP_ID=:CM_OP_ID,UN_OP_ID=:UN_OP_ID,CT_OP_ID=:CT_OP_ID,CM_GROUP_ID=:CM_GROUP_ID,CU_GROUP_ID=:CU_GROUP_ID,CT_GROUP_ID=:CT_GROUP_ID WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":CM_OP_ID", (object)cmopID), new OracleParameter(":UN_OP_ID", (object)unopID), new OracleParameter(":CT_OP_ID", (object)ctopID), new OracleParameter(":CM_GROUP_ID", (object)cmGroupID), new OracleParameter(":CU_GROUP_ID", (object)cuGroupID), new OracleParameter(":CT_GROUP_ID", (object)ctGroupID), new OracleParameter(":SP_ID", (object)spid)) > 0;
        }
        public bool UpdateSingleOP(string spid, int cmopID, int ctopID, int unopID, int cmGroupID, int cuGroupID, int ctGroupID)
        {
            List<KeyValuePair<string, OracleParameter[]>> list = new List<KeyValuePair<string, OracleParameter[]>>();
            if (cmopID > -1)
            {
                string key = "UPDATE GW_SP SET CM_OP_ID=:CM_OP_ID WHERE SP_ID=:SP_ID";
                OracleParameter[] oracleParameterArray = new OracleParameter[2]
                {
          new OracleParameter(":CM_OP_ID", (object) cmopID),
          new OracleParameter(":SP_ID", (object) spid)
        };
        list.Add(new KeyValuePair<string, OracleParameter[]>(key, oracleParameterArray));
      }
      if (ctopID > -1)
      {
        string key = "UPDATE GW_SP SET CT_OP_ID=:CT_OP_ID WHERE SP_ID=:SP_ID";
        OracleParameter[] oracleParameterArray = new OracleParameter[2]
        {
                };
                list.Add(new KeyValuePair<string, OracleParameter[]>(key, oracleParameterArray));
            }
            if (ctopID > -1)
            {
                string key = "UPDATE GW_SP SET CT_OP_ID=:CT_OP_ID WHERE SP_ID=:SP_ID";
                OracleParameter[] oracleParameterArray = new OracleParameter[2]
                {
          new OracleParameter(":CT_OP_ID", (object) ctopID),
          new OracleParameter(":SP_ID", (object) spid)
        };
        list.Add(new KeyValuePair<string, OracleParameter[]>(key, oracleParameterArray));
      }
      if (unopID > -1)
      {
        string key = "UPDATE GW_SP SET UN_OP_ID=:UN_OP_ID WHERE SP_ID=:SP_ID";
        OracleParameter[] oracleParameterArray = new OracleParameter[2]
        {
                };
                list.Add(new KeyValuePair<string, OracleParameter[]>(key, oracleParameterArray));
            }
            if (unopID > -1)
            {
                string key = "UPDATE GW_SP SET UN_OP_ID=:UN_OP_ID WHERE SP_ID=:SP_ID";
                OracleParameter[] oracleParameterArray = new OracleParameter[2]
                {
          new OracleParameter(":UN_OP_ID", (object) unopID),
          new OracleParameter(":SP_ID", (object) spid)
        };
        list.Add(new KeyValuePair<string, OracleParameter[]>(key, oracleParameterArray));
      }
      if (cmGroupID > -1)
      {
        string key = "UPDATE GW_SP SET CM_GROUP_ID=:CM_GROUP_ID WHERE SP_ID=:SP_ID";
        OracleParameter[] oracleParameterArray = new OracleParameter[2]
        {
                };
                list.Add(new KeyValuePair<string, OracleParameter[]>(key, oracleParameterArray));
            }
            if (cmGroupID > -1)
            {
                string key = "UPDATE GW_SP SET CM_GROUP_ID=:CM_GROUP_ID WHERE SP_ID=:SP_ID";
                OracleParameter[] oracleParameterArray = new OracleParameter[2]
                {
          new OracleParameter(":CM_GROUP_ID", (object) cmGroupID),
          new OracleParameter(":SP_ID", (object) spid)
        };
        list.Add(new KeyValuePair<string, OracleParameter[]>(key, oracleParameterArray));
      }
      if (cuGroupID > -1)
      {
        string key = "UPDATE GW_SP SET CU_GROUP_ID=:CU_GROUP_ID WHERE SP_ID=:SP_ID";
        OracleParameter[] oracleParameterArray = new OracleParameter[2]
        {
                };
                list.Add(new KeyValuePair<string, OracleParameter[]>(key, oracleParameterArray));
            }
            if (cuGroupID > -1)
            {
                string key = "UPDATE GW_SP SET CU_GROUP_ID=:CU_GROUP_ID WHERE SP_ID=:SP_ID";
                OracleParameter[] oracleParameterArray = new OracleParameter[2]
                {
          new OracleParameter(":CU_GROUP_ID", (object) cuGroupID),
          new OracleParameter(":SP_ID", (object) spid)
        };
        list.Add(new KeyValuePair<string, OracleParameter[]>(key, oracleParameterArray));
      }
      if (ctGroupID > -1)
      {
        string key = "UPDATE GW_SP SET CT_GROUP_ID=:CT_GROUP_ID WHERE SP_ID=:SP_ID";
        OracleParameter[] oracleParameterArray = new OracleParameter[2]
        {
                };
                list.Add(new KeyValuePair<string, OracleParameter[]>(key, oracleParameterArray));
            }
            if (ctGroupID > -1)
            {
                string key = "UPDATE GW_SP SET CT_GROUP_ID=:CT_GROUP_ID WHERE SP_ID=:SP_ID";
                OracleParameter[] oracleParameterArray = new OracleParameter[2]
                {
          new OracleParameter(":CT_GROUP_ID", (object) ctGroupID),
          new OracleParameter(":SP_ID", (object) spid)
        };
        list.Add(new KeyValuePair<string, OracleParameter[]>(key, oracleParameterArray));
      }
      OracleHelper.ExecuteSqlTran(list, OracleHelper.Connection);
      return true;
    }
    public List<GwSp> LoadSpList()
    {
      List<GwSp> list = new List<GwSp>();
      using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM GW_SP ORDER BY SP_ID ASC", OracleHelper.Connection))
      {
        while (((DbDataReader) reader).Read())
        {
          GwSp o = new GwSp();
          if (this.ReadInfo(reader, o))
            list.Add(o);
                };
                list.Add(new KeyValuePair<string, OracleParameter[]>(key, oracleParameterArray));
            }
            OracleHelper.ExecuteSqlTran(list, OracleHelper.Connection);
            return true;
        }
      }
      return list;
    }
    public List<GwSp> LoadSpList(string clientID)
    {
      List<GwSp> list = new List<GwSp>();
      using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM GW_SP WHERE CLIENT_ID=:CLIENT_ID ORDER BY SP_ID ASC", OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object) clientID)))
      {
        while (((DbDataReader) reader).Read())
        public List<GwSp> LoadSpList()
        {
          GwSp o = new GwSp();
          if (this.ReadInfo(reader, o))
            list.Add(o);
            List<GwSp> list = new List<GwSp>();
            using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM GW_SP ORDER BY SP_ID ASC", OracleHelper.Connection))
            {
                while (((DbDataReader)reader).Read())
                {
                    GwSp o = new GwSp();
                    if (this.ReadInfo(reader, o))
                        list.Add(o);
                }
            }
            return list;
        }
      }
      return list;
    }
    public List<GwSp> LoadSpSMSList(string clientID)
    {
      List<GwSp> list = new List<GwSp>();
      using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM GW_SP WHERE CLIENT_ID=:CLIENT_ID AND AP_ID=230001 ORDER BY SP_ID ASC", OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object) clientID)))
      {
        while (((DbDataReader) reader).Read())
        public List<GwSp> LoadSpList(string clientID)
        {
          GwSp o = new GwSp();
          if (this.ReadInfo(reader, o))
            list.Add(o);
            List<GwSp> list = new List<GwSp>();
            using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM GW_SP WHERE CLIENT_ID=:CLIENT_ID ORDER BY SP_ID ASC", OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object)clientID)))
            {
                while (((DbDataReader)reader).Read())
                {
                    GwSp o = new GwSp();
                    if (this.ReadInfo(reader, o))
                        list.Add(o);
                }
            }
            return list;
        }
      }
      return list;
    }
    public List<GwSp> LoadSpIDList(string clientID, string spid)
    {
      List<GwSp> list1 = new List<GwSp>();
      StringBuilder stringBuilder = new StringBuilder();
      List<OracleParameter> list2 = new List<OracleParameter>();
      stringBuilder.Append("SELECT * FROM GW_SP WHERE CLIENT_ID=:CLIENT_ID");
      list2.Add(new OracleParameter(":CLIENT_ID", (object) clientID));
      if (!string.IsNullOrEmpty(spid))
      {
        list2.Add(new OracleParameter(":SP_ID", (object) spid));
        stringBuilder.Append(" and SP_ID=:SP_ID");
      }
      stringBuilder.Append(" ORDER BY SP_ID DESC");
      using (OracleDataReader reader = OracleHelper.ExecuteReader(stringBuilder.ToString(), OracleHelper.Connection, list2.ToArray()))
      {
        while (((DbDataReader) reader).Read())
        public List<GwSp> LoadSpSMSList(string clientID)
        {
          GwSp o = new GwSp();
          if (this.ReadInfo(reader, o))
            list1.Add(o);
            List<GwSp> list = new List<GwSp>();
            using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT * FROM GW_SP WHERE CLIENT_ID=:CLIENT_ID AND AP_ID=230001 ORDER BY SP_ID ASC", OracleHelper.Connection, new OracleParameter(":CLIENT_ID", (object)clientID)))
            {
                while (((DbDataReader)reader).Read())
                {
                    GwSp o = new GwSp();
                    if (this.ReadInfo(reader, o))
                        list.Add(o);
                }
            }
            return list;
        }
      }
      return list1;
        public List<GwSp> LoadSpIDList(string clientID, string spid)
        {
            List<GwSp> list1 = new List<GwSp>();
            StringBuilder stringBuilder = new StringBuilder();
            List<OracleParameter> list2 = new List<OracleParameter>();
            stringBuilder.Append("SELECT * FROM GW_SP WHERE CLIENT_ID=:CLIENT_ID");
            list2.Add(new OracleParameter(":CLIENT_ID", (object)clientID));
            if (!string.IsNullOrEmpty(spid))
            {
                list2.Add(new OracleParameter(":SP_ID", (object)spid));
                stringBuilder.Append(" and SP_ID=:SP_ID");
            }
            stringBuilder.Append(" ORDER BY SP_ID DESC");
            using (OracleDataReader reader = OracleHelper.ExecuteReader(stringBuilder.ToString(), OracleHelper.Connection, list2.ToArray()))
            {
                while (((DbDataReader)reader).Read())
                {
                    GwSp o = new GwSp();
                    if (this.ReadInfo(reader, o))
                        list1.Add(o);
                }
            }
            return list1;
        }
        public bool UpdateAlarmSetting(string spid, string alarmMobile, int balanceThreshold)
        {
            return OracleHelper.ExecuteSql("UPDATE GW_SP SET ALARM_MOBILE=:ALARM_MOBILE,BALANCE_THRESHOLD=:BALANCE_THRESHOLD WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":ALARM_MOBILE", (object)alarmMobile), new OracleParameter(":BALANCE_THRESHOLD", (object)balanceThreshold), new OracleParameter(":SP_ID", (object)spid)) > 0;
        }
        public void UpdatePrice(string spid, long price)
        {
            OracleHelper.ExecuteSql("UPDATE GW_SP SET PRICE=:PRICE WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":PRICE", (object)price), new OracleParameter("SP_ID", (object)spid));
        }
        //新加开启关闭账号状态
        public bool UpdateSpStatus(string spid, int status)
        {
            return OracleHelper.ExecuteSql("UPDATE GW_SP SET STATUS=:STATUS WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":STATUS", (object)status), new OracleParameter(":SP_ID", (object)spid)) > 0;
        }
        //
    }
    public bool UpdateAlarmSetting(string spid, string alarmMobile, int balanceThreshold)
    {
      return OracleHelper.ExecuteSql("UPDATE GW_SP SET ALARM_MOBILE=:ALARM_MOBILE,BALANCE_THRESHOLD=:BALANCE_THRESHOLD WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":ALARM_MOBILE", (object) alarmMobile), new OracleParameter(":BALANCE_THRESHOLD", (object) balanceThreshold), new OracleParameter(":SP_ID", (object) spid)) > 0;
    }
    public void UpdatePrice(string spid, long price)
    {
      OracleHelper.ExecuteSql("UPDATE GW_SP SET PRICE=:PRICE WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":PRICE", (object) price), new OracleParameter("SP_ID", (object) spid));
    }
//新加开启关闭账号状态
    public bool UpdateSpStatus(string spid, int status)
    {
        return OracleHelper.ExecuteSql("UPDATE GW_SP SET STATUS=:STATUS WHERE SP_ID=:SP_ID", OracleHelper.Connection, new OracleParameter(":STATUS", (object)status), new OracleParameter(":SP_ID", (object)spid)) > 0;
    }
//
  }
}