|
using Common;
|
using Model;
|
using Oracle.ManagedDataAccess.Client;
|
using System;
|
using System.Collections.Generic;
|
using System.Data;
|
using System.Data.Common;
|
using System.Text;
|
|
namespace Dao
|
{
|
public class GwClientPayLogDao : IDisposable
|
{
|
public List<GwClientPayLog> GetClientIDPayLog(string clientSpid, int state, string clientID, out int recordCount, int pageSize, int pageIndex)
|
{
|
List<GwClientPayLog> list1 = new List<GwClientPayLog>();
|
recordCount = 0;
|
StringBuilder stringBuilder = new StringBuilder();
|
List<OracleParameter> list2 = new List<OracleParameter>();
|
stringBuilder.Append(" FROM GW_CLIENT_PAYLOG WHERE CLIENT_ID=:CLIENT_ID ");
|
list2.Add(new OracleParameter(":CLIENT_ID", (object) clientID));
|
if (!string.IsNullOrEmpty(clientSpid))
|
{
|
list2.Add(new OracleParameter(":SpID", (object) clientSpid));
|
stringBuilder.Append(" and SP_ID=:SpID");
|
}
|
if (state >= 0)
|
{
|
list2.Add(new OracleParameter(":STATE", (object) state));
|
stringBuilder.Append(" and STATE=:STATE");
|
}
|
stringBuilder.Append(" ORDER BY PAYLOG_ID DESC");
|
using (OracleDataReader reader = OracleHelper.ExecuteReader("SELECT count(*) as count" + (object) stringBuilder, OracleHelper.Connection, list2.ToArray()))
|
{
|
while (((DbDataReader) reader).Read())
|
recordCount = this.ReadCount(reader);
|
}
|
using (OracleDataReader reader = OracleHelper.ExecuteReader(PubConstant.doOracleSql(pageIndex, pageSize, recordCount, "SELECT * " + stringBuilder.ToString()).ToString(), OracleHelper.Connection, list2.ToArray()))
|
{
|
while (reader != null && ((DbDataReader) reader).Read())
|
{
|
GwClientPayLog o = new GwClientPayLog();
|
if (this.ReadInfo(reader, o))
|
list1.Add(o);
|
}
|
}
|
return list1;
|
}
|
|
public bool UpdatePayState(GwClientPayLog o)
|
{
|
return OracleHelper.ExecuteSql("update GW_CLIENT_PAYLOG set STATE=:STATE,COMPPLETE_TIME=sysdate WHERE \r\nPAYLOG_ID=:PAYLOG_ID ", OracleHelper.Connection, new OracleParameter(":STATE", (object) o.State), new OracleParameter("PAYLOG_ID", (object) o.PayLogID)) > 0;
|
}
|
|
public GwClientPayLog GetPay(string payLogID)
|
{
|
GwClientPayLog o = new GwClientPayLog();
|
if (string.IsNullOrEmpty(payLogID) || string.Equals("0", payLogID))
|
return o;
|
using (OracleDataReader reader = OracleHelper.ExecuteReader(string.Format("select * from GW_CLIENT_PAYLOG where PAYLOG_ID=:PAYLOG_ID"), OracleHelper.Connection, new OracleParameter(":PAYLOG_ID", (object) payLogID)))
|
{
|
if (((DbDataReader) reader).Read())
|
{
|
this.ReadInfo(reader, o);
|
return o;
|
}
|
}
|
return o;
|
}
|
|
public bool AddPayRecharge(GwClientPayLog o)
|
{
|
return OracleHelper.ExecuteSql("insert into GW_CLIENT_PAYLOG(PAYLOG_ID,SP_ID,CRATE_TIME,CLIENT_ID,RECEIVER_NAME,AMOUNT,BALANCE,PRICE,PAYMENT_ID,PAYMENT_NAME,STATE,REMARK) \r\nvalues(:PayLogID,:SPID,sysdate,:CLIENT_ID,:RECEIVER_NAME,:AMOUNT,:BALANCE,:PRICE,:PAYMENT_ID,:PAYMENT_NAME,0,:REMARK)", OracleHelper.Connection, new OracleParameter(":PayLogID", (object) o.PayLogID), new OracleParameter(":SPID", (object) o.SPID), new OracleParameter(":CLIENT_ID", (object) o.ClientID), new OracleParameter(":RECEIVER_NAME", (object) o.ReceiverName), new OracleParameter(":AMOUNT", (object) o.Amount), new OracleParameter(":BALANCE", (object) o.Balance), new OracleParameter(":PRICE", (object) o.Price), new OracleParameter(":PAYMENT_ID", (object) o.PayMentID), new OracleParameter(":PAYMENT_NAME", (object) o.PayMentName), new OracleParameter(":REMARK", (object) o.Remark)) > 0;
|
}
|
|
public int GetPayReChargeID()
|
{
|
int num = 0;
|
DataTable dataTable = OracleHelper.Execute(" SELECT GW_CLIENT_PAYLOG_seq.nextval AS PAYLOGID FROM dual", OracleHelper.Connection);
|
if (dataTable.Rows.Count > 0)
|
num = TypeConvert.ToInt32((object) dataTable.Rows[0]["PAYLOGID"].ToString());
|
return num;
|
}
|
|
private bool ReadInfo(OracleDataReader reader, GwClientPayLog o)
|
{
|
OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
|
o.PayLogID = oracleReaderWrapper.GetInt("PAYLOG_ID", 0);
|
o.SPID = oracleReaderWrapper.GetString("SP_ID", "");
|
o.CrateTime = oracleReaderWrapper.GetDateTime("CRATE_TIME");
|
o.ComppLeteTime = oracleReaderWrapper.GetDateTime("COMPPLETE_TIME");
|
o.ClientID = oracleReaderWrapper.GetString("CLIENT_ID", "");
|
o.ReceiverName = oracleReaderWrapper.GetString("RECEIVER_NAME", "");
|
o.Amount = oracleReaderWrapper.GetInt("AMOUNT", 0);
|
o.Balance = oracleReaderWrapper.GetInt64("BALANCE", 0L);
|
o.Price = oracleReaderWrapper.GetInt64("PRICE", 0L);
|
o.PayMentID = oracleReaderWrapper.GetInt("PAYMENT_ID", 0);
|
o.PayMentName = oracleReaderWrapper.GetString("PAYMENT_NAME", "");
|
o.State = oracleReaderWrapper.GetInt("STATE", 0);
|
o.Remark = oracleReaderWrapper.GetString("REMARK", "");
|
return true;
|
}
|
|
private int ReadCount(OracleDataReader reader)
|
{
|
return new OracleReaderWrapper(reader).GetInt("count", 0);
|
}
|
|
public void Dispose()
|
{
|
}
|
}
|
}
|