public PagedList <AccountTransactionDto> GetAll(PagingParams pagingParams, SearchTransaction search, FilterObject filterObject) { var query = _context.AccountTransaction.AsNoTracking().Where(x => (x.CustomerId == search.CustomerId) && ((search.FromDate == null && search.ToDate == null) || (x.TransactionDate >= search.FromDate && x.TransactionDate <= search.ToDate)) && (search.TransactionType == 0 || x.TransferType == search.TransactionType) ).Select(s => new AccountTransactionDto { Id = s.Id, DrAmount = s.DrAmount, CrAmount = s.CrAmount, TransferText = ((Enums.TransactionType)s.TransferType).ToDescription(), TransactionDate = s.TransactionDate, Amount = (s.DrAmount - s.CrAmount) < 0 ? (s.DrAmount - s.CrAmount) * -1 : (s.DrAmount - s.CrAmount) }); query = filterObject.FilterQuery <AccountTransactionDto>(query); var queryResult = query.Skip(pagingParams.PageSize * (pagingParams.PageNumber - 1)).Take(pagingParams.PageSize); var count = query.Count(); var sum = query.Sum(s => s.DrAmount - s.CrAmount); return(new PagedList <AccountTransactionDto>(queryResult, count, sum, pagingParams.PageNumber, pagingParams.PageSize)); }
public G2SearchResultRegrouping(SearchTransaction searchTransaction, int waitResultTermined, bool peerFileCountFilterEnable) : base(searchTransaction, waitResultTermined, peerFileCountFilterEnable) { searchTransaction_ = searchTransaction; result_ = new SearchResult(null, searchTransaction); waitResultTermined_ = waitResultTermined; peerFileCountFilterEnable_ = peerFileCountFilterEnable; }
public G2SearchResultRegrouping(SearchTransaction searchTransaction, int waitResultTermined, bool peerFileCountFilterEnable) : base(searchTransaction,waitResultTermined,peerFileCountFilterEnable) { searchTransaction_ = searchTransaction; result_ = new SearchResult(null, searchTransaction); waitResultTermined_ = waitResultTermined; peerFileCountFilterEnable_ = peerFileCountFilterEnable; }
public string getTermsByGUID(GUID g) { SearchTransaction transaction = null; if (SearchDB.TryGetValue(g, out transaction)) { return(transaction.Keywords[0].KeywordName); } return(""); }
/** * Launch a new search on multiple hubs (starting) * SearchTransaction contains only one keyword * */ public void NewSearch(SearchTransaction transaction) { // register query GUID searchGUID = GUID.generateGuid(); SearchDB [searchGUID] = transaction; // creating a new search results object for this transaction, register the event that tell it has fins events and stores it G2SearchResults results = new G2SearchResults(transaction, searchGUID); SearchResults[searchGUID] = results; G2PacketQ2 q2 = CreateRequestPacket(searchGUID, transaction.Keywords[0].KeywordName); DispatchRequest(q2); results.StartSearchResult(); // start the threads only after all queries have been sent // because find new hub can take some time and the search may not last long after }
public void SearchKeyword(SearchTransaction searchTransaction) { queueKeywords = new System.Collections.Queue(); try { //pour chaque keyword on lance le search dans un thread séparé foreach (Keyword k in searchTransaction.Keywords) { KeywordCollection keyword = null; SearchTransaction searchTrans = null; keyword = new KeywordCollection(); keyword.Add(k); searchTrans = new SearchTransaction(searchTransaction.IdTransaction, keyword, searchTransaction.MinFileFromPeerFilter, searchTransaction.IpAcceptRangeCollection); queueKeywords.Enqueue(searchTrans); } // regrouping of results for this transaction // will raise the CompletResultHandler event when we received one results for each keyword G2SearchResultRegrouping searchRegrouping = new G2SearchResultRegrouping(searchTransaction, searchTransaction.Keywords.Count, false); searchRegrouping.CompletResult += new CompletResultHandler(searchRegrouping_CompletResult); searchResultRegroupingKeyword_.Add(searchRegrouping); while (queueKeywords.Count > 0) { SearchTransaction srchTrans = (SearchTransaction)queueKeywords.Dequeue(); G2Log.Write("Starting Transaction - Keyword :" + srchTrans.Keywords[0].KeywordName.ToString()); searchManager.NewSearch(srchTrans); // on attends 30sec ????????????????????????? //System.Threading.Thread.Sleep(30000); } } catch { G2Log.Write("Erreur niveau manager....."); } }
public G2SearchResults(SearchTransaction transaction, GUID guid) { SearchManager = G2SearchManager.Instance; ACKPacket = new List<G2PacketQA>(); Transaction = transaction; SearchGUID = guid; TotalFiles = 0; SharedTotalFiles = 0; PeersBrowsed = new HashSet<Peer>(); SearchedWord = transaction.Keywords[0].KeywordName; Buffer = new PacketBuffer(); SearchRegrouping = new G2SearchResultRegrouping(transaction, 0, false); ContinueRegrouping = true; StartSearchTime = DateTime.Now; StopSearchTimer = new System.Timers.Timer((double)Settings.SEARCH_TIME_OUT_MS); StopSearchTimer.AutoReset = false; StopSearchTimer.Elapsed += new ElapsedEventHandler(SearchTimeOut); RegroupingThread = new Thread(new ThreadStart(SearchResultThread)); }
public G2SearchResults(SearchTransaction transaction, GUID guid) { SearchManager = G2SearchManager.Instance; ACKPacket = new List <G2PacketQA>(); Transaction = transaction; SearchGUID = guid; TotalFiles = 0; SharedTotalFiles = 0; PeersBrowsed = new HashSet <Peer>(); SearchedWord = transaction.Keywords[0].KeywordName; Buffer = new PacketBuffer(); SearchRegrouping = new G2SearchResultRegrouping(transaction, 0, false); ContinueRegrouping = true; StartSearchTime = DateTime.Now; StopSearchTimer = new System.Timers.Timer((double)Settings.SEARCH_TIME_OUT_MS); StopSearchTimer.AutoReset = false; StopSearchTimer.Elapsed += new ElapsedEventHandler(SearchTimeOut); RegroupingThread = new Thread(new ThreadStart(SearchResultThread)); }
public IActionResult GetWithPagination([FromQuery] PagingParams pagingParams, [FromQuery] SearchTransaction search, [FromQuery] FilterObject filterObject) { search.CustomerId = Guid.Parse(AppClaim.CustomerId); var transaction = transactionService.GetAll(pagingParams, search, filterObject); if (transaction != null) { Response.Headers.Add("X-Pagination", transaction.GetHeader().ToJson()); var request = _httpContextAccessor.HttpContext.Request; var response = new PaginationResponseModel <AccountTransactionDto> { Paging = transaction.GetHeader(), Links = PaginationResponseModel <AccountTransactionDto> .GetLinks(transaction, request), Lists = transaction.List, TotalSum = transaction.TotaSum }; return(Ok(response)); } else { return(NotFound()); } }
public int SearchKeyword(SearchTransaction searchTransaction) { manager_.SearchKeyword(searchTransaction); return 1; }
/** * Launch a new search on multiple hubs (starting) * SearchTransaction contains only one keyword * */ public void NewSearch(SearchTransaction transaction) { // register query GUID searchGUID = GUID.generateGuid (); SearchDB [searchGUID] = transaction; // creating a new search results object for this transaction, register the event that tell it has fins events and stores it G2SearchResults results = new G2SearchResults(transaction, searchGUID); SearchResults[searchGUID] = results; G2PacketQ2 q2 = CreateRequestPacket (searchGUID, transaction.Keywords[0].KeywordName); DispatchRequest (q2); results.StartSearchResult(); // start the threads only after all queries have been sent // because find new hub can take some time and the search may not last long after }
public int SearchKeyword(SearchTransaction searchTransaction) { manager_.SearchKeyword(searchTransaction); return(1); }