56 lines
2.3 KiB
C#
56 lines
2.3 KiB
C#
using System;
|
|
using System.Data;
|
|
using System.Data.OracleClient;
|
|
using System.Linq;
|
|
using WX.CRM.Common;
|
|
|
|
namespace WX.CRM.DAL.QH
|
|
{
|
|
public class AccountApply_DAL
|
|
{
|
|
|
|
|
|
public DataTable GetRecordByEID(decimal? v_recordid, decimal v_eid, string v_resid, ref Pager pager)
|
|
{
|
|
OracleConnection conn = new OracleConnection(OracleHelper.AYCRMConn);
|
|
if (conn.State == ConnectionState.Closed)
|
|
conn.Open();
|
|
OracleTransaction trans = conn.BeginTransaction();
|
|
try
|
|
{
|
|
|
|
OracleParameter[] p2 =
|
|
{
|
|
v_recordid.HasValue?
|
|
new OracleParameter(){ ParameterName = "v_recordid", OracleType = OracleType.Number,Value = v_recordid.Value }:
|
|
new OracleParameter(){ ParameterName = "v_recordid", OracleType = OracleType.Number,Value = DBNull.Value },
|
|
new OracleParameter(){ ParameterName = "v_eid", OracleType = OracleType.Number, Value = v_eid},
|
|
new OracleParameter(){ ParameterName = "v_resid", OracleType = OracleType.VarChar, Value = v_resid},
|
|
new OracleParameter(){ ParameterName = "v_pageIndex", OracleType = OracleType.Number, Value = pager.page},
|
|
new OracleParameter(){ ParameterName = "v_pageSize", OracleType = OracleType.Number, Value = pager.rows},
|
|
new OracleParameter(){ ParameterName="v_total",OracleType=OracleType.Number,Direction = ParameterDirection.Output},
|
|
new OracleParameter(){ ParameterName = "v_data", OracleType = OracleType.Cursor, Direction = ParameterDirection.Output }
|
|
};
|
|
var ds = OracleHelper.DataQueray(trans, CommandType.StoredProcedure, "PACK_QH_RECORD.GetRecordByEID", p2).Tables[0];
|
|
pager.totalRows = int.Parse(string.Format("{0}", p2.Single(m => m.ParameterName == "v_total").Value));
|
|
trans.Commit();
|
|
return ds;
|
|
|
|
}
|
|
catch (Exception)
|
|
{
|
|
trans.Rollback();
|
|
throw;
|
|
}
|
|
finally
|
|
{
|
|
if (conn.State == ConnectionState.Open)
|
|
{
|
|
conn.Close();
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|