public async Task <IActionResult> GetOrders() { var result = await _orderProvider.GetOrders(); if (result != null) { return(Ok(result)); } return(NotFound()); }
/// <summary> /// Save a list of trades to disk for a given path /// </summary> /// <param name="transactions">Transactions list via an OrderProvider</param> /// <param name="csvFileName">File path to create</param> private static void SaveListOfTrades(IOrderProvider transactions, string csvFileName) { var orders = transactions.GetOrders(x => x.Status.IsFill()); var path = Path.GetDirectoryName(csvFileName); if (path != null && !Directory.Exists(path)) { Directory.CreateDirectory(path); } using (var writer = new StreamWriter(csvFileName)) { foreach (var order in orders) { var line = string.Format("{0},{1},{2},{3},{4}", order.Time.ToString("yyyy-MM-dd HH:mm:ss"), order.Symbol.Value, order.Direction, order.Quantity, order.Price); writer.WriteLine(line); } } }
public async Task <IEnumerable <ILocationPlaces> > GetReservedLocationPlaces(Guid orgGuid, DateTime today, Guid?locationGuid) { return((await m_order_provider.GetOrders(orgGuid, today, locationGuid)) .SelectMany(x => x.Details) .GroupBy(x => x.Location.Guid) .Select(x => new LocationPlaces(x.First().Location, x.Select(y => y.PlaceCode))) .OrderBy(x => x.Location.ReorderLevel) .ToArray()); }
/// <summary> /// Start timer-based order emitting process /// </summary> public void StartEmittingOrders() { ReinitializeComponent(); var orders = orderProvider.GetOrders(); orderStack = new Stack <Order>(orders); timer.Elapsed += new ElapsedEventHandler((sender, args) => { try { lock (_lock) { if (orderStack.Count == 0) { if (!isOutOfOrdersTriggered) { isOutOfOrdersTriggered = true; timer.Dispose(); OnOutOfOrders?.Invoke(this, null); } timer.Dispose(); return; } else { var order = orderStack.Pop(); publisher.Publish(order); } } } catch (Exception ex) { Console.Error.WriteLine(ex.Message); } }); timer.Start(); }
/// <summary> /// Get orders from json file /// </summary> public List <Order> GetOrders() { return(jsonOrderProvider.GetOrders()); }
private static void SaveListOfTrades(IOrderProvider transactions, string csvFileName) { var orders = transactions.GetOrders(x => x.Status.IsFill()); var path = Path.GetDirectoryName(csvFileName); if (path != null && !Directory.Exists(path)) Directory.CreateDirectory(path); using (var writer = new StreamWriter(csvFileName)) { foreach (var order in orders) { var line = string.Format("{0},{1},{2},{3},{4}", order.Time.ToString("yyyy-MM-dd HH:mm:ss"), order.Symbol.Value, order.Direction, order.Quantity, order.Price); writer.WriteLine(line); } } }