public async Task <GenericPaginationResponse <TransactionsInquiry> > GetTransactionInquiryCardNoResults(int terminalnbr, string cardno, int customerid, string startdate, string enddate, int?searchId, int cardtype, int skiprecords, int pagesize) { var response = new GenericPaginationResponse <TransactionsInquiry> { SkipRecords = skiprecords, PageSize = pagesize }; return(await this._connectionFactory.GetConnection(async c => { TransactionsInquiry dbinfo = new TransactionsInquiry(); var p = new DynamicParameters(); p.Add("LID", terminalnbr, DbType.Int32); p.Add("PAN", cardno.ToString(), DbType.Int32); p.Add("CustomerID", customerid, DbType.Int32); p.Add("BeginDate", startdate, DbType.DateTime); p.Add("EndDate", enddate, DbType.DateTime); p.Add("SearchId", searchId, DbType.Int32); p.Add("CardType", cardtype, DbType.Int32); p.Add("SkipRecords", skiprecords, DbType.Int32); p.Add("PageSize", pagesize, DbType.Int32); p.Add("TotalRecords", DbType.Int32, direction: ParameterDirection.Output); response.ReturnedRecords = await c.QueryAsync <Wp.CIS.LynkSystems.Model.TransactionsInquiry>(sql: "CISNOW_HistoryViewerTransactionsByPan", param: p, commandType: CommandType.StoredProcedure); response.TotalNumberOfRecords = p.Get <int>("TotalRecords"); return response; })); }
public async Task <IActionResult> Get(TransactionsInquiryGeneralInfo terminalgeneralinfo, int TerminalNbr, int?SearchId, string startDate, string endDate, int?BatchNo, string CardNo, int SkipRecords, int PageSize) { bool _IsTopTier = terminalgeneralinfo.istoptier; var response = new GenericPaginationResponse <TransactionsInquiry> { SkipRecords = 0, PageSize = 0 }; //_IsTopTier = true; if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { string cachekey = TerminalNbr + "|" + SearchId + "|" + startDate + "|" + endDate + "|" + BatchNo + "|" + CardNo + "|" + _IsTopTier; var data = new Operation(_cache).RetrieveCache(cachekey.ToString(), new TransactionsInquiry()); if (data == null) { if (!(_IsTopTier)) { response = await _transinqApi.GetTransactionInquiryResults(terminalgeneralinfo, TerminalNbr, SearchId, startDate, endDate, BatchNo, CardNo, SkipRecords, PageSize); } else { response = await _transinqTierApi.GetTransactionInquiryResults(terminalgeneralinfo, TerminalNbr, SearchId, startDate, endDate, BatchNo, CardNo, SkipRecords, PageSize); } if (response != null) { //Now add data to cache.. await new Operation(_cache).AddCacheAsync(cachekey.ToString(), response); } } return(Ok(response)); //if (!(_IsTopTier)) //{ // return Ok(await _transinqApi.GetTransactionInquiryResults(terminalgeneralinfo, TerminalNbr, SearchId, startDate, endDate, BatchNo, CardNo, SkipRecords, PageSize)); //} //else //{ // return Ok(await _transinqTierApi.GetTransactionInquiryResults(terminalgeneralinfo, TerminalNbr, SearchId, startDate, endDate, BatchNo, CardNo, SkipRecords, PageSize)); //} } catch (Exception) { var msg = this._localizer?["TransactionSearchErrorMsg"]?.Value; return(this.StatusCode((int)System.Net.HttpStatusCode.InternalServerError, msg)); } }
/// <summary> /// Model - Merchant /// </summary> /// <param name="custId"></param> /// <returns></returns> public async Task <GenericPaginationResponse <Wp.CIS.LynkSystems.Model.Demographics> > GetContactListAsync(LidTypeEnum LIDType, string LID, PaginationDemographics page) { try { await _loggingFacade.LogAsync(new LogEntry(LogLevels.Info, "Starting Contact List Repository GetContactListAsync for " + LIDType.ToString() + " Value - " + LID, "ContactListRepository.cs", "GetContactListAsync"), CancellationToken.None); var response = new GenericPaginationResponse <Demographics> { SkipRecords = page.SkipRecordNumber, PageSize = page.PageSize }; return(await this._connectionFactory.GetConnection(async c => { await _loggingFacade.LogAsync(new LogEntry(LogLevels.Info, "Open Dapper Connection of SQL server for Contact List Repository for " + LIDType.ToString() + " Value - " + LID, "ContactListRepository.cs", "GetContactListAsync"), CancellationToken.None); var p = new DynamicParameters(); p.Add("iLIDType", LIDType, DbType.Int32); p.Add("iLID", LID, DbType.String); if (page.SortField != null) { p.Add("SortField", page.SortField, DbType.String); p.Add("@SortByAsc", page.SortFieldByAsc, DbType.Boolean); } if (page.FilterContact != null) { p.Add("FilterByValueForContact", page.FilterContact, DbType.String); } if (page.FilterLast4 != null) { p.Add("FilterByValueForSSN", page.FilterLast4, DbType.String); } if (page.FilterRole != null) { p.Add("FilterByValueForTitle", page.FilterRole, DbType.String); } if (page.PageSize != 0) { p.Add("PageSize", page.PageSize, DbType.Int16); } if (page.SkipRecordNumber != 0) { p.Add("SkipRecordNumber", page.SkipRecordNumber, DbType.Int16); } p.Add("MaximumRecsLimit", maxRecordCount, DbType.Int16); p.Add("TotalRecordsCount", DbType.Int32, direction: ParameterDirection.Output); await _loggingFacade.LogAsync(new LogEntry(LogLevels.Info, "Dapper Connection parameterized Query for Contact List Repository for " + LIDType.ToString() + " Value - " + LID, "ContactListRepository.cs", "GetContactListAsync"), CancellationToken.None); response.ReturnedRecords = await c.QueryAsync <Wp.CIS.LynkSystems.Model.Demographics>(sql: "[CISPlus].[uspCISPlusGetDemographicsByLIdType]", param: p, commandType: CommandType.StoredProcedure); response.TotalNumberOfRecords = p.Get <int>("TotalRecordsCount"); await _loggingFacade.LogAsync(new LogEntry(LogLevels.Info, "Successful DB call for Contact List Repository Query result for " + LIDType.ToString() + " Value - " + LID, "ContactListRepository.cs", "GetContactListAsync"), CancellationToken.None); return response; })); } catch (Exception ex) { var msg = String.Format("{0}.GetContactListAsync() experienced an exception (not a timeout)", GetType().FullName); await _loggingFacade.LogAsync(new LogEntry(LogLevels.Error, "Error Occurred for " + LIDType.ToString() + " Value - " + LID + " " + msg + ex.ToString() + ex.Message, "ContactListRepository.cs", "GetContactListAsync"), CancellationToken.None); throw; } }
/// <summary> /// Model - Merchant /// </summary> /// <param name="custId"></param> /// <returns></returns> public async Task <GenericPaginationResponse <Merchant> > GetMerchantListAsync(int custId, PaginationMerchant page) { try { var response = new GenericPaginationResponse <Merchant> { SkipRecords = page.SkipRecordNumber, PageSize = page.PageSize }; return(await this._connectionFactory.GetConnection(async c => { // await _loggingFacade.LogAsync(new LogEntry(LogLevels.Info, "Open Dapper Connection of SQL server for Merchant List Repository for CustomerID - " + custId, // "MerchantListRepository.cs", "GetMerchantListAsync()"), CancellationToken.None); var p = new DynamicParameters(); p.Add("CustomerID", custId, DbType.String); if (page.SortField != null) { p.Add("SortField", page.SortField, DbType.String); p.Add("@SortByAsc", page.SortFieldByAsc, DbType.Boolean); } if (page.FilterMID != null) { p.Add("FilterByMID", page.FilterMID, DbType.String); } if (page.FilterName != null) { p.Add("FilterByName", page.FilterName, DbType.String); } if (page.FilterState != null) { p.Add("FilterByState", page.FilterState, DbType.String); } if (page.FilterStatusIndicator != null) { p.Add("FilterByStatusIndicator", page.FilterStatusIndicator, DbType.String); } if (page.FilterZipCode != null) { p.Add("FilterByZipCode", page.FilterZipCode, DbType.String); } if (page.PageSize != 0) { p.Add("PageSize", page.PageSize, DbType.Int16); } if (page.SkipRecordNumber != 0) { p.Add("SkipRecordNumber", page.SkipRecordNumber, DbType.Int16); } p.Add("TotalRecordsCount", DbType.Int32, direction: ParameterDirection.Output); p.Add("MaximumRecsLimit", maxRecordCount, DbType.Int16); await _loggingFacade.LogAsync(new LogEntry(LogLevels.Info, "Dapper Connection parameterized Query for Merchant List Repository for CustomerID - " + custId, "MerchantListRepository.cs", "GetMerchantListAsync()"), CancellationToken.None); response.ReturnedRecords = await c.QueryAsync <Merchant>(sql: "[CISPlus].[uspCISPlusGetMerchantListByCustomer]", param: p, commandType: CommandType.StoredProcedure); response.TotalNumberOfRecords = p.Get <int>("TotalRecordsCount"); await _loggingFacade.LogAsync(new LogEntry(LogLevels.Info, "Successful DB call for Merchant List Repository Query result for CustomerID - " + custId, "MerchantListRepository.cs", "GetMerchantListAsync()"), CancellationToken.None); return response; })); } catch (Exception ex) { var msg = String.Format("{0}.GetMerchantListAsync() experienced an exception (not a timeout) for CustomerId " + custId, GetType().FullName); await _loggingFacade.LogAsync(new LogEntry(LogLevels.Error, msg + ex.ToString() + ex.Message, "MerchantListRepository.cs", "GetMerchantListAsync()"), CancellationToken.None); throw; } }
public async Task <GenericPaginationResponse <Wp.CIS.LynkSystems.Model.CaseHistory> > GetCaseHistoryInfo(LidTypeEnum lidtype, string lid, string extraId, PaginationCaseHistory page) { try { var response = new GenericPaginationResponse <Wp.CIS.LynkSystems.Model.CaseHistory>(); return(await this._connectionFactory.GetConnection(async c => { var p = new DynamicParameters(); p.Add("LIDType", lidtype, DbType.Int32); p.Add("LID", lid, DbType.String); p.Add("MaximumRecsLimit", maxrecordslimit, DbType.String); if (extraId != null) { p.Add("ExtraID", extraId, DbType.String); } p.Add("PageSize", page.PageSize, DbType.Int32); p.Add("SkipRecords", page.SkipRecordNumber, DbType.Int32); if (page.SortField != null) { p.Add("SortField", page.SortField, DbType.String); } p.Add("SortOrder", page.SortFieldByAsc, DbType.Boolean); if (page.FilterCaseId != null) { p.Add("FilterCaseId", page.FilterCaseId, DbType.String); } if (page.FilterCaseDesc != null) { p.Add("FilterCaseDesc", page.FilterCaseDesc, DbType.String); } if (page.FilterOrgDeptName != null) { p.Add("FilterOrgDeptName", page.FilterOrgDeptName, DbType.String); } if (page.FilterCaseLevel != null) { p.Add("FilterCaseLevel", page.FilterCaseLevel, DbType.String); } if (true == page.FilterCreateDate.HasValue) { var beginCreateDate = new DateTime(page.FilterCreateDate.Value.Year, page.FilterCreateDate.Value.Month, page.FilterCreateDate.Value.Day); var endCreateDate = new DateTime(page.FilterCreateDate.Value.Year, page.FilterCreateDate.Value.Month, page.FilterCreateDate.Value.Day, 23, 59, 59); p.Add("FilterBeginCreateDate", beginCreateDate, DbType.Date); p.Add("FilterEndCreateDate", endCreateDate, DbType.Date); } p.Add("TotalRecords", DbType.Int32, direction: ParameterDirection.Output); response.ReturnedRecords = await c.QueryAsync <Wp.CIS.LynkSystems.Model.CaseHistory>(sql: "CISPlus.uspCISPlusGetCaseHistoryRecords", param: p, commandType: CommandType.StoredProcedure); response.TotalNumberOfRecords = p.Get <int>("TotalRecords"); return response; })); } catch (System.Exception) { throw; } }
/// <summary> /// Model - Terminal /// </summary> /// <param name="merchantId"></param> /// <returns></returns> public async Task <GenericPaginationResponse <Wp.CIS.LynkSystems.Model.TransactionHistory> > GetTransactionHistoryAsync(string terminalId, PaginationTransactionHistory page) { try { await _loggingFacade.LogAsync(new LogEntry(LogLevels.Info, "Starting Transaction History GetTransactionHistoryAsync for TerminalID " + terminalId, "TransactionHistoryRepository.cs", "GetTransactionHistoryAsync()"), CancellationToken.None); var response = new GenericPaginationResponse <Wp.CIS.LynkSystems.Model.TransactionHistory> { SkipRecords = page.SkipRecordNumber }; return(await this._connectionFactory.GetConnection(async c => { await _loggingFacade.LogAsync(new LogEntry(LogLevels.Info, "Open Dapper Connection of SQL server for Transaction History Repository for TerminalID " + terminalId, "TransactionHistoryRepository.cs", "GetTransactionHistoryAsync()"), CancellationToken.None); var p = new DynamicParameters(); p.Add("TerminalID", terminalId, DbType.String); if (!string.IsNullOrEmpty(page.SortField)) { p.Add("SortField", page.SortField, DbType.String); p.Add("SortOrder", page.SortFieldByAsc, DbType.Boolean); } if (!string.IsNullOrEmpty(page.FilterByDate)) { p.Add("FilterByDate", page.FilterByDate, DbType.String); } if (!string.IsNullOrEmpty(page.FilterByAmount)) { p.Add("FilterByAmount", page.FilterByAmount, DbType.String); } if (!string.IsNullOrEmpty(page.FilterByLast4)) { p.Add("FilterByLast4", page.FilterByLast4, DbType.String); } if (!string.IsNullOrEmpty(page.FilterByTranType)) { p.Add("FilterByTranType", page.FilterByTranType, DbType.String); } if (!string.IsNullOrEmpty(page.FilterByDesc)) { p.Add("FilterByDesc", page.FilterByDesc, DbType.String); } if (!string.IsNullOrEmpty(page.FilterByNetworkCD)) { p.Add("FilterByNetworkCD", page.FilterByNetworkCD, DbType.String); } if (page.PageSize > 0) { p.Add("PageSize", page.PageSize, DbType.Int16); } if (page.SkipRecordNumber > 0) { p.Add("SkipRecords", page.SkipRecordNumber, DbType.Int16); } p.Add("MaximumRecsLimit", maxRecordCount, DbType.Int16); p.Add("TotalRecordsCount", DbType.Int32, direction: ParameterDirection.Output); await _loggingFacade.LogAsync(new LogEntry(LogLevels.Info, "Dapper Connection parameterized Query for Transaction History Repository for TerminalID " + terminalId, "TransactionHistoryRepository.cs", "GetTransactionHistoryAsync()"), CancellationToken.None); if (page.TransactionType == TransactionTypeEnum.Settled) { response.ReturnedRecords = await c.QueryAsync <Wp.CIS.LynkSystems.Model.TransactionHistory>(sql: "[CISPlus].[uspCISPlusGetTerminalTransactionsSettled]", param: p, commandType: CommandType.StoredProcedure); response.TotalNumberOfRecords = p.Get <int>("TotalRecordsCount"); } else if (page.TransactionType == TransactionTypeEnum.Acquired) { response.ReturnedRecords = await c.QueryAsync <Wp.CIS.LynkSystems.Model.TransactionHistory>(sql: "[CISPlus].[uspCISPlusGetTerminalTransactionsAcquired]", param: p, commandType: CommandType.StoredProcedure); response.TotalNumberOfRecords = p.Get <int>("TotalRecordsCount"); } await _loggingFacade.LogAsync(new LogEntry(LogLevels.Info, "Successful DB call for Transaction History Repository Query result for TerminalID " + terminalId, "TransactionHistoryRepository.cs", "GetTransactionHistoryAsync()"), CancellationToken.None); return response; })); } catch (Exception ex) { var msg = String.Format("{0}.GetTransactionHistoryAsync() experienced an exception (not a timeout) for TerminalID " + terminalId, GetType().FullName); await _loggingFacade.LogAsync(new LogEntry(LogLevels.Error, msg + ex.ToString() + ex.Message, "GetTransactionHistoryAsync.cs", "GetTransactionHistoryAsync()"), CancellationToken.None); throw; } }