You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

73 lines
2.7 KiB

using Common.Helper;
using Common.Model;
using Common.Model.Inbound;
using log4net;
using System.Collections.Generic;
namespace Repository.Inbound
{
public interface IInboundRepository
{
IList<TranHistory> GetTransactionHistory(DateFilterParams filterParams, string userId);
TranHistory GetTransactionDetail(string tranId, string userId);
IList<InboundBanks> GetBankAccounts(string userId);
DbResult DeleteInboundAccount(string account, string userId);
}
public class InboundRepository : IInboundRepository
{
private readonly Dao _dao = null;
private static readonly ILog Log = LogManager.GetLogger(typeof(InboundRepository));
public InboundRepository()
{
_dao = new Dao();
}
public IList<TranHistory> GetTransactionHistory(DateFilterParams filterParams, string userId)
{
var sql = "EXEC INBOUND_PROC_MOBILE @flag='tranHistory'";
sql += ", @fromDate = " + _dao.FilterString(filterParams.FromDate);
sql += ", @toDate = " + _dao.FilterString(filterParams.ToDate);
sql += ", @userId = " + _dao.FilterString(userId);
Log.DebugFormat("GetTransactionHistory SQL:{0}", sql);
var ds = _dao.ExecuteDataTable(sql);
var th = Mapper.DataTableToClass<TranHistory>(ds);
return th;
}
public TranHistory GetTransactionDetail(string tranId, string userId)
{
var sql = "EXEC INBOUND_PROC_MOBILE @flag='tranDetail'";
sql += ", @tranId = " + _dao.FilterString(tranId);
sql += ", @userId = " + _dao.FilterString(userId);
Log.DebugFormat("GetTransactionDetail SQL:{0}", sql);
var ds = _dao.ExecuteDataRow(sql);
var th = Mapper.DataRowToClass<TranHistory>(ds);
return th;
}
public IList<InboundBanks> GetBankAccounts(string userId)
{
var sql = "EXEC INBOUND_PROC_MOBILE @flag='bankAccounts'";
sql += ",@customerId = " + _dao.FilterString(userId);
Log.DebugFormat("GetBankAccounts SQL:{0}", sql);
var ds = _dao.ExecuteDataTable(sql);
var th = Mapper.DataTableToClass<InboundBanks>(ds);
return th;
}
public DbResult DeleteInboundAccount(string account, string userId)
{
var sql = "EXEC INBOUND_PROC_MOBILE @flag='deleteAccount'";
sql += ",@customerId = " + _dao.FilterString(userId);
sql += ",@accountId = " + _dao.FilterString(account);
Log.DebugFormat("DeleteInboundAccount SQL:{0}", sql);
var ds = _dao.ParseDbResult(sql);
return ds;
}
}
}