|
using Common;
|
using Model;
|
using Oracle.DataAccess.Client;
|
using System;
|
using System.Collections.Generic;
|
using System.Data.Common;
|
using System.Text;
|
|
namespace Dao
|
{
|
public class GwDmDao : IDisposable
|
{
|
public List<GwDm> LoadInfoList(string ApID, string OpID, string spID, string DestnationId, string sDate, string permissionsSQL, out int recordcount, int pageSize, int PageIndex)
|
{
|
List<GwDm> list1 = new List<GwDm>();
|
recordcount = 0;
|
try
|
{
|
string str = sDate.Replace("-", "");
|
StringBuilder stringBuilder = new StringBuilder();
|
stringBuilder.Append(" from LG_DM_").Append(str).Append(" where 1=1");
|
List<OracleParameter> list2 = new List<OracleParameter>();
|
if (ApID != null && ApID != "")
|
{
|
OracleParameter oracleParameter = new OracleParameter(":AP_ID", (OracleDbType) 126);
|
((DbParameter) oracleParameter).Value = (object) ApID;
|
list2.Add(oracleParameter);
|
stringBuilder.Append(" and AP_ID=:AP_ID ");
|
}
|
if (OpID != null && OpID != "")
|
{
|
OracleParameter oracleParameter = new OracleParameter(":OP_ID", (OracleDbType) 126);
|
((DbParameter) oracleParameter).Value = (object) OpID;
|
list2.Add(oracleParameter);
|
stringBuilder.Append(" and OP_ID=:OP_ID ");
|
}
|
if (DestnationId != null && DestnationId != "")
|
{
|
OracleParameter oracleParameter = new OracleParameter(":MOBILE", (OracleDbType) 126);
|
((DbParameter) oracleParameter).Value = (object) DestnationId;
|
list2.Add(oracleParameter);
|
stringBuilder.Append(" and MOBILE=:MOBILE ");
|
}
|
if (!string.IsNullOrEmpty(spID))
|
{
|
OracleParameter oracleParameter = new OracleParameter(":SP_ID", (OracleDbType) 126);
|
((DbParameter) oracleParameter).Value = (object) spID;
|
list2.Add(oracleParameter);
|
stringBuilder.Append(" and SP_ID=:SP_ID ");
|
}
|
|
//客户权限SQL脚本
|
stringBuilder.Append(permissionsSQL);
|
|
using (OracleDataReader reader = OracleHelper.ExecuteReader(" select count(*) as count " + stringBuilder.ToString(), OracleHelper.Connection, list2.ToArray()))
|
{
|
while (((DbDataReader) reader).Read())
|
recordcount = this.ReadCount(reader);
|
}
|
using (OracleDataReader reader = OracleHelper.ExecuteReader(PubConstant.doOracleSql(PageIndex, pageSize, recordcount, string.Format(" select * {0} order by DELIVER_TIME DESC", (object) stringBuilder)).ToString(), OracleHelper.Connection, list2.ToArray()))
|
{
|
while (((DbDataReader) reader).Read())
|
{
|
GwDm o = new GwDm();
|
if (this.ReadInfo(reader, o))
|
list1.Add(o);
|
}
|
}
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Error(ex);
|
return list1;
|
}
|
return list1;
|
}
|
|
private bool ReadInfo(OracleDataReader reader, GwDm o)
|
{
|
OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
|
o.OPMID = oracleReaderWrapper.GetString("OP_MID", string.Empty);
|
o.ApID = oracleReaderWrapper.GetInt("AP_ID", 0);
|
o.OpID = oracleReaderWrapper.GetInt("OP_ID", 0);
|
o.ClientID = oracleReaderWrapper.GetString("CLIENT_ID", "");
|
o.SPID = oracleReaderWrapper.GetString("SP_ID", "");
|
o.Mobile = oracleReaderWrapper.GetString("MOBILE", "");
|
o.AccessCode = oracleReaderWrapper.GetString("ACCESS_CODE", "");
|
o.ExtNo = oracleReaderWrapper.GetString("EXT_NO", "");
|
o.RDFlag = oracleReaderWrapper.GetInt("RD_FLAG", 0);
|
o.MsgFormat = oracleReaderWrapper.GetInt("MSG_FORMAT", 0);
|
o.MsgLength = oracleReaderWrapper.GetInt("MSG_LENGTH", 0);
|
o.MsgContent = oracleReaderWrapper.GetString("MSG_CONTENT", "");
|
o.DeliverTime = oracleReaderWrapper.GetDateTime("DELIVER_TIME");
|
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()
|
{
|
}
|
|
public List<GwDm> LoadInfoList(string clientID, string spID, string destnationId, string sDate, string beginTime, string endTime, string permissionsSQL, out int recordcount, int pageSize, int pageIndex)
|
{
|
List<GwDm> list = new List<GwDm>();
|
recordcount = 0;
|
try
|
{
|
string str = sDate.Replace("-", "");
|
StringBuilder stringBuilder = new StringBuilder();
|
stringBuilder.Append("from LG_DM_").Append(str).Append(" where 1=1");
|
OracleParameter[] oracleParameterArray = new OracleParameter[3];
|
if (clientID != null && clientID != "")
|
{
|
oracleParameterArray[0] = new OracleParameter(":CLIENT_ID", (OracleDbType) 126);
|
((DbParameter) oracleParameterArray[0]).Value = (object) clientID;
|
stringBuilder.Append(" and CLIENT_ID=:CLIENT_ID");
|
}
|
if (spID != null && spID != "")
|
{
|
oracleParameterArray[0] = new OracleParameter(":SP_ID", (OracleDbType) 126);
|
((DbParameter) oracleParameterArray[0]).Value = (object) spID;
|
stringBuilder.Append(" and SP_ID=:SP_ID");
|
}
|
if (destnationId != null && destnationId != "")
|
{
|
oracleParameterArray[0] = new OracleParameter(":DestnationId", (OracleDbType) 126);
|
((DbParameter) oracleParameterArray[0]).Value = (object) destnationId;
|
stringBuilder.Append(" and MOBILE=:DestnationId");
|
}
|
|
//客户权限SQL脚本
|
stringBuilder.Append(permissionsSQL);
|
|
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, string.Format("select * {0} order by DELIVER_TIME DESC", (object) stringBuilder)).ToString(), OracleHelper.Connection, oracleParameterArray))
|
{
|
while (((DbDataReader) reader).Read())
|
{
|
GwDm o = new GwDm();
|
if (this.ReadInfo(reader, o))
|
list.Add(o);
|
}
|
}
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Error(ex);
|
return list;
|
}
|
return list;
|
}
|
}
|
}
|