|
using Common;
|
using Model;
|
using Oracle.DataAccess.Client;
|
using System;
|
using System.Collections.Generic;
|
using System.Data;
|
using System.Data.Common;
|
using System.Text;
|
|
namespace Dao
|
{
|
public class GwStrategyDao : IDisposable
|
{
|
public List<GwStrategy> LoadInfoList(string StrategyId, string StrategyName, out int recordcount, int pageSize, int PageIndex)
|
{
|
List<GwStrategy> list = new List<GwStrategy>();
|
recordcount = 0;
|
try
|
{
|
StringBuilder stringBuilder = new StringBuilder();
|
stringBuilder.Append("from GW_STRATEGY where 1=1");
|
OracleParameter[] oracleParameterArray = new OracleParameter[2];
|
if (StrategyId != null && StrategyId != "")
|
{
|
oracleParameterArray[0] = new OracleParameter(":StrategyId", (OracleDbType)112);
|
((DbParameter)oracleParameterArray[0]).Value = (object)StrategyId;
|
stringBuilder.Append(" and STRATEGY_ID=:StrategyId");
|
}
|
if (StrategyName != null && StrategyName != "")
|
{
|
oracleParameterArray[1] = new OracleParameter(":StrategyName", (OracleDbType)126);
|
((DbParameter)oracleParameterArray[1]).Value = (object)StrategyName;
|
stringBuilder.Append(" and STRATEGY_NAME like '%'||:StrategyName||'%'");
|
}
|
using (OracleDataReader reader = OracleHelper.ExecuteReader("select count(*) as count " + stringBuilder.ToString(), OracleHelper.Connection, oracleParameterArray))
|
{
|
while (((DbDataReader)reader).Read())
|
recordcount = this.ReadCount(reader);
|
}
|
using (OracleDataReader reader = OracleHelper.ExecuteReader(PubConstant.doOracleSql(PageIndex, pageSize, recordcount, "select * " + stringBuilder.ToString()).ToString(), OracleHelper.Connection, oracleParameterArray))
|
{
|
while (((DbDataReader)reader).Read())
|
{
|
GwStrategy o = new GwStrategy();
|
if (this.ReadInfo(reader, o))
|
list.Add(o);
|
}
|
}
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Error(ex);
|
return list;
|
}
|
return list;
|
}
|
|
public List<GwStrategy> LoadInfoList(string StrategyId, string StrategyName)
|
{
|
List<GwStrategy> list = new List<GwStrategy>();
|
try
|
{
|
StringBuilder stringBuilder = new StringBuilder();
|
stringBuilder.Append("from GW_STRATEGY where 1=1");
|
OracleParameter[] oracleParameterArray = new OracleParameter[2];
|
if (StrategyId != null && StrategyId != "")
|
{
|
oracleParameterArray[0] = new OracleParameter(":StrategyId", (OracleDbType)112);
|
((DbParameter)oracleParameterArray[0]).Value = (object)StrategyId;
|
stringBuilder.Append(" and STRATEGY_ID=:StrategyId");
|
}
|
if (StrategyName != null && StrategyName != "")
|
{
|
oracleParameterArray[1] = new OracleParameter(":StrategyName", (OracleDbType)126);
|
((DbParameter)oracleParameterArray[1]).Value = (object)StrategyName;
|
stringBuilder.Append(" and STRATEGY_NAME like '%'||:StrategyName||'%'");
|
}
|
using (OracleDataReader reader = OracleHelper.ExecuteReader("select * " + stringBuilder.ToString(), OracleHelper.Connection, oracleParameterArray))
|
{
|
while (((DbDataReader)reader).Read())
|
{
|
GwStrategy o = new GwStrategy();
|
if (this.ReadInfo(reader, o))
|
list.Add(o);
|
}
|
}
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Error(ex);
|
return list;
|
}
|
return list;
|
}
|
|
public bool UpdateInfo(GwStrategy o)
|
{
|
return OracleHelper.ExecuteSql("update GW_STRATEGY set STRATEGY_NAME=:StrategyName,WORD_LIST=:WordList,PATTERN_LIST=:PatternList where STRATEGY_ID=:StrategyId", OracleHelper.Connection, new OracleParameter(":StrategyName", (object)o.StrategyName), new OracleParameter(":WordList", (OracleDbType)105, (object)o.WordList, ParameterDirection.Input), new OracleParameter(":PatternList", (object)o.PatternList), new OracleParameter(":StrategyId", (object)o.StrategyId)) > 0;
|
}
|
|
public bool InsertInfo(GwStrategy o)
|
{
|
return OracleHelper.ExecuteSql("insert into GW_STRATEGY(STRATEGY_ID,STRATEGY_NAME,WORD_LIST,PATTERN_LIST) values(GW_STRATEGY_SEQ.nextval,:StrategyName,:WordList,:PatternList)", OracleHelper.Connection, new OracleParameter(":StrategyName", (object)o.StrategyName), new OracleParameter(":WordList", (OracleDbType)105, (object)o.WordList, ParameterDirection.Input), new OracleParameter(":PatternList", (object)o.PatternList)) > 0;
|
}
|
|
public GwStrategy getObjById(string StrategyId)
|
{
|
GwStrategy o = new GwStrategy();
|
if (string.IsNullOrEmpty(StrategyId))
|
return o;
|
using (OracleDataReader reader = OracleHelper.ExecuteReader("select * from GW_STRATEGY where STRATEGY_ID=:STRATEGY_ID", OracleHelper.Connection, new OracleParameter(":STRATEGY_ID", (object)StrategyId)))
|
{
|
if (((DbDataReader)reader).Read())
|
{
|
if (!this.ReadInfo(reader, o))
|
throw new Exception("读取策略出错!");
|
return o;
|
}
|
}
|
return o;
|
}
|
|
public bool hasId(string StrategyId)
|
{
|
if (string.IsNullOrEmpty(StrategyId) || string.Equals("0", StrategyId))
|
return true;
|
try
|
{
|
using (OracleDataReader oracleDataReader = OracleHelper.ExecuteReader(string.Format("select * from GW_STRATEGY where STRATEGY_ID='{0}'", (object)StrategyId), OracleHelper.Connection))
|
{
|
if (((DbDataReader)oracleDataReader).Read())
|
return true;
|
}
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Error(ex);
|
return false;
|
}
|
return false;
|
}
|
|
public bool hasName(string StrategyName, string StrategyId)
|
{
|
if (string.IsNullOrEmpty(StrategyName) || string.Equals("0", StrategyName) || string.IsNullOrEmpty(StrategyId))
|
return true;
|
try
|
{
|
using (OracleDataReader oracleDataReader = OracleHelper.ExecuteReader(string.Format("select * from GW_STRATEGY where STRATEGY_NAME='{0}' and STRATEGY_ID<>'{1}'", (object)StrategyName, (object)StrategyId), OracleHelper.Connection))
|
{
|
if (((DbDataReader)oracleDataReader).Read())
|
return true;
|
}
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Error(ex);
|
return false;
|
}
|
return false;
|
}
|
|
public bool hasName(string StrategyName)
|
{
|
if (string.IsNullOrEmpty(StrategyName) || string.Equals("0", StrategyName))
|
return true;
|
try
|
{
|
using (OracleDataReader oracleDataReader = OracleHelper.ExecuteReader(string.Format("select * from GW_STRATEGY where STRATEGY_NAME='{0}'", (object)StrategyName), OracleHelper.Connection))
|
{
|
if (((DbDataReader)oracleDataReader).Read())
|
return true;
|
}
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Error(ex);
|
return false;
|
}
|
return false;
|
}
|
|
public bool delById(string StrategyId)
|
{
|
if (string.IsNullOrEmpty(StrategyId) || string.Equals("0", StrategyId))
|
return false;
|
try
|
{
|
return OracleHelper.ExecuteSql(string.Format("delete from GW_STRATEGY where STRATEGY_ID='{0}'", (object)StrategyId), OracleHelper.Connection) > 0;
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Error(ex);
|
return false;
|
}
|
}
|
|
private bool ReadInfo(OracleDataReader reader, GwStrategy o)
|
{
|
OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
|
o.StrategyId = oracleReaderWrapper.GetInt("STRATEGY_ID", 0);
|
o.StrategyName = oracleReaderWrapper.GetString("STRATEGY_NAME", "");
|
o.WordList = oracleReaderWrapper.GetString("WORD_LIST", "");
|
o.PatternList = oracleReaderWrapper.GetString("PATTERN_LIST", "");
|
return true;
|
}
|
|
private int ReadCount(OracleDataReader reader)
|
{
|
int @int;
|
try
|
{
|
@int = new OracleReaderWrapper(reader).GetInt("count", 0);
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Error(ex);
|
return 0;
|
}
|
return @int;
|
}
|
|
public void Dispose()
|
{
|
}
|
}
|
}
|