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.
 
 
 

69 lines
3.1 KiB

using Common;
using Common.Model.BalanceTransfer;
using log4net;
namespace Repository.BalanceTransfer
{
public class BalanceTransferRepository: IBalanceTransferRepository
{
private readonly Dao _dao = new Dao();
private static readonly ILog Log = LogManager.GetLogger(typeof(BalanceTransferRepository));
public JsonRxResponse InitBalanceTransfer(InitBalanceTransfer initBalanceTransfer)
{
JsonRxResponse jsonRx = new JsonRxResponse();
var sql = "EXEC MOBILE_PROC_BALANCE_TRANSFER @flag='REQ' ";
sql += ", @USER_ID = " + _dao.FilterString(initBalanceTransfer.userId);
sql += ", @AMOUNT = " + _dao.FilterString(initBalanceTransfer.amount);
Log.DebugFormat("InitBalanceTransfer | SQL:{0}", sql);
var res = _dao.ParseDbResult(sql);
jsonRx.SetResponse(res.ResponseCode, res.Msg, res.Id);
return jsonRx;
}
public JsonRxResponse ConfirmBalanceTransfer(ConfirmBalanceTransfer confirmBalanceTransfer)
{
JsonRxResponse jsonRx = new JsonRxResponse();
var sql = "EXEC MOBILE_PROC_BALANCE_TRANSFER @flag='CONFIRM' ";
sql += ", @USER_ID = " + _dao.FilterString(confirmBalanceTransfer.userId);
sql += ", @AMOUNT = " + _dao.FilterString(confirmBalanceTransfer.requestAmount);
sql += ", @REQ_USER_ID = " + _dao.FilterString(confirmBalanceTransfer.requestUserId);
sql += ", @REQUEST_ID = " + _dao.FilterString(confirmBalanceTransfer.requestId);
Log.DebugFormat("ConfirmBalanceTransfer | SQL:{0}", sql);
var res = _dao.ExecuteDataRow(sql);
jsonRx.SetResponse(res["ErrorCode"].ToString(), res["Msg"].ToString(), res["Id"].ToString());
if (jsonRx.ErrorCode == "0")
{
jsonRx.Data = new {
reqAmount = res["ErrorCode"].ToString(),
reqUserName = res["reqUserName"].ToString(),
reqUserId = res["reqUserId"].ToString(),
referenceID = jsonRx.Id
};
}
return jsonRx;
}
public JsonRxResponse PerformBalanceTransfer(PerformBalanceTransfer performBalanceTransfer)
{
JsonRxResponse jsonRx = new JsonRxResponse();
var sql = "EXEC MOBILE_PROC_BALANCE_TRANSFER @flag='PERFORM' ";
sql += ", @USER_ID = " + _dao.FilterString(performBalanceTransfer.userId);
sql += ", @AMOUNT = " + _dao.FilterString(performBalanceTransfer.confirmedAmount);
sql += ", @REQ_USER_ID = " + _dao.FilterString(performBalanceTransfer.reqUserID);
sql += ", @REFERENCE_ID = " + _dao.FilterString(performBalanceTransfer.referenceID);
sql += ", @TXN_PIN = " + _dao.FilterString(performBalanceTransfer.txnPin);
Log.DebugFormat("PerformBalanceTransfer | SQL:{0}", sql);
var res = _dao.ExecuteDataRow(sql);
jsonRx.SetResponse(res["ErrorCode"].ToString(), res["Msg"].ToString(), res["Id"].ToString());
return jsonRx;
}
}
}