using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using Common;
|
using Model;
|
using Oracle.ManagedDataAccess.Client;
|
using System.Data;
|
using System.Data.Common;
|
|
namespace Dao
|
{
|
/// <summary>
|
/// 携号转网
|
/// </summary>
|
public class GwTransferDao:IDisposable
|
{
|
#region IDisposable 成员
|
|
public void Dispose()
|
{
|
}
|
|
#endregion
|
|
/// <summary>
|
/// 加载
|
/// </summary>
|
/// <param name="phone"></param>
|
/// <param name="recordcount"></param>
|
/// <param name="PageIndex"></param>
|
/// <param name="pageSize"></param>
|
/// <returns></returns>
|
public List<GwTransfer> LoadInfoList(string phone, out int recordcount, int PageIndex, int pageSize)
|
{
|
List<GwTransfer> list = new List<GwTransfer>();
|
recordcount = 0;
|
try
|
{
|
StringBuilder stringBuilder = new StringBuilder();
|
stringBuilder.Append("from Gw_Transfer b where 1=1");
|
OracleParameter[] oracleParameterArray = new OracleParameter[1];
|
if (phone != null && phone != "")
|
{
|
oracleParameterArray[0] = new OracleParameter(":PHONE", (OracleDbType)126);
|
((DbParameter)oracleParameterArray[0]).Value = (object)phone;
|
stringBuilder.Append(" and mobile like '%'||:PHONE||'%'");
|
}
|
stringBuilder.Append(" order by Id DESC");
|
using (OracleDataReader reader = OracleHelper.ExecuteReader("select count(*) as count " + stringBuilder.ToString(), OracleHelper.Connection, oracleParameterArray))
|
{
|
while (((DbDataReader)reader).Read())
|
{
|
OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
|
recordcount = oracleReaderWrapper.GetInt("count", 0);
|
}
|
}
|
using (OracleDataReader reader = OracleHelper.ExecuteReader(PubConstant.doOracleSql(PageIndex, pageSize, recordcount, "select * " + stringBuilder.ToString()).ToString(), OracleHelper.Connection, oracleParameterArray))
|
{
|
while (((DbDataReader)reader).Read())
|
{
|
GwTransfer o = new GwTransfer();
|
if (this.ReadInfo(reader, o))
|
list.Add(o);
|
}
|
}
|
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Error(ex);
|
return list;
|
}
|
return list;
|
}
|
|
|
public bool Delete(int pid)
|
{
|
if (pid == 0)
|
return false;
|
|
DateTime dateTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
|
StringBuilder stringBuilder = new StringBuilder();
|
stringBuilder.Append("begin ");
|
stringBuilder.Append("delete from Gw_Transfer where Id=:ID; ");
|
stringBuilder.Append("INSERT INTO GW_EVENT_LOG(EVENT_ID,ASSIGNED_TO,EVENT_TYPE,CONTENT,EVENT_TIME,HANDLE_FLAG)VALUES(GW_EVENT_LOG_SEQ.NEXTVAL,'SMEXC','TRANSFER','',:DateTime,0); ");
|
stringBuilder.Append("end; ");
|
OracleParameter[] oracleParameterArray = new OracleParameter[2]
|
{
|
new OracleParameter(":ID", (object) pid),
|
new OracleParameter(":DateTime",(object)dateTime)
|
};
|
return OracleHelper.ExecuteSql(stringBuilder.ToString(), OracleHelper.Connection, oracleParameterArray) > 0;
|
|
//return OracleHelper.ExecuteSql("delete from Gw_Transfer where Id=:ID", OracleHelper.Connection, new OracleParameter(":ID", (object)pid)) > 0;
|
}
|
|
public bool Add(GwTransfer o)
|
{
|
DateTime dateTime = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
|
StringBuilder stringBuilder = new StringBuilder();
|
stringBuilder.Append("begin ");
|
stringBuilder.Append("insert into Gw_Transfer(ID,MOBILE,Operator) values(GW_TRANSFER_ID_SEQ.NEXTVAL,:MOBILE,:Operator); ");
|
stringBuilder.Append("INSERT INTO GW_EVENT_LOG(EVENT_ID,ASSIGNED_TO,EVENT_TYPE,CONTENT,EVENT_TIME,HANDLE_FLAG)VALUES(GW_EVENT_LOG_SEQ.NEXTVAL,'SMEXC','TRANSFER','',:DateTime,0); ");
|
stringBuilder.Append("end; ");
|
OracleParameter[] oracleParameterArray = new OracleParameter[3]
|
{
|
new OracleParameter(":MOBILE", (object) o.Mobile),
|
new OracleParameter(":Operator", (object) o.Operator),
|
new OracleParameter(":DateTime",(object)dateTime)
|
};
|
return OracleHelper.ExecuteSql(stringBuilder.ToString(), OracleHelper.Connection, oracleParameterArray) > 0;
|
|
//return OracleHelper.ExecuteSql("insert into Gw_Transfer(ID,MOBILE,Operator) values(GW_TRANSFER_ID_SEQ.NEXTVAL,:MOBILE,:Operator)", OracleHelper.Connection, new OracleParameter(":MOBILE", (object)o.Mobile), new OracleParameter(":Operator", (object)o.Operator)) > 0;
|
}
|
|
|
private bool ReadInfo(OracleDataReader reader, GwTransfer o)
|
{
|
OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
|
o.Id = oracleReaderWrapper.GetInt("ID", 0);
|
o.Mobile = oracleReaderWrapper.GetString("MOBILE", "");
|
o.Operator = oracleReaderWrapper.GetString("OPERATOR", "");
|
return true;
|
}
|
|
|
/// <summary>
|
/// 判断号码是否存在
|
/// </summary>
|
/// <param name="pMobile"></param>
|
/// <returns></returns>
|
public bool IsExitsMobile(string pMobile)
|
{
|
using (OracleDataReader oracleDataReader = OracleHelper.ExecuteReader(string.Format("select * from Gw_Transfer where mobile=:MOBILE"), OracleHelper.Connection, new OracleParameter(":MOBILE", (object)pMobile)))
|
{
|
if (((DbDataReader)oracleDataReader).Read())
|
return true;
|
}
|
return false;
|
}
|
|
}
|
}
|