public async Task <List <ExchangeLogsDTO> > GetAllCurrentExchangeLogs(ExchangeLogType type, string filter = null, int?fromLast = null)
        {
            string queryString = $"?type={type}";

            if (filter != null)
            {
                queryString += $"&filter={filter}";
            }

            if (fromLast.HasValue)
            {
                queryString += $"&fromLast={fromLast.Value}";
            }

            var response = await http.GetAsync($"api/v1/{Path}/GetAllStrategyLogs{queryString}");

            this.log.LogResponse(response);

            if (response.IsSuccessStatusCode)
            {
                string data = await response.Content.ReadAsStringAsync();

                var returnDto = JsonConvert.DeserializeObject <List <ExchangeLogsDTO> >(data);
                return(returnDto);
            }
            return(new List <ExchangeLogsDTO>());
        }
        public async Task <IActionResult> GetAllExchangetLogs(ExchangeLogType type, [FromQuery(Name = "filter")] string filter = null, [FromQuery(Name = "fromLast")] int?fromLast = null)
        {
            try
            {
                string userId    = this.User.Claims.FirstOrDefault(x => x.Type == ClaimTypes.NameIdentifier).Value;
                bool   isRunning = this.jobsFactory.IsPlatformJobRunning(userId);

                List <ExchangeLogsDTO> logs = new List <ExchangeLogsDTO>();

                if (isRunning)
                {
                    var job = await jobRepo.GetLast(userId);

                    logs = await this.exchangeLogsRepo.GetByExchangeID(job.ID, userId, type, filter, fromLast);
                }

                return(Ok(logs));
            }
            catch (Exception ex)
            {
                log.Log(ex);
                return(BadRequest());
            }
        }
        public async Task <List <ExchangeLogsDTO> > GetByExchangeID(int platformJobID, string userId, ExchangeLogType type, string filter, int?fromLast)
        {
            var result = this.Query(x =>
                                    x.PlatformJob_ID == platformJobID &&
                                    x.PlatformJob.User_ID == userId &&
                                    (type == ExchangeLogType.All ||
                                     (type == ExchangeLogType.ByStrategy && x.Symbol == filter) ||
                                     (type == ExchangeLogType.ByExchange && x.Exchange_ID == Convert.ToInt32(filter))) &&
                                    (fromLast == null || x.ID > fromLast)
                                    ).ToList();

            return(mapper.Map <List <ExchangeLogs>, List <ExchangeLogsDTO> >(result));
        }