LeanEngine.Engine.BuildOrders C# (CSharp) Method

BuildOrders() private method

private BuildOrders ( List itemFlows, bool isEmergency ) : List
itemFlows List
isEmergency bool
return List
        private List<Orders> BuildOrders(List<ItemFlow> itemFlows, bool isEmergency)
        {
            if (itemFlows == null || itemFlows.Count == 0)
                return null;

            var query =
                from i in itemFlows
                where i.IsEmergency == isEmergency || (!isEmergency && i.Flow.IsUpdateWindowTime)
                group i by i.Flow into g
                select new Orders
                {
                    Flow = g.Key,
                    IsEmergency = isEmergency,
                    ItemFlows = g.Where(i => i.OrderQty > 0 && i.IsEmergency == isEmergency).ToList(),
                    WindowTime = this.GetWindowTime(g.Key, isEmergency),
                    StartTime = this.GetStartTime(g.Key, isEmergency)
                };

            return query.ToList();
        }