Ejemplo n.º 1
0
        public List <Order> GetByDistinctYear(SortDateEnum sortDate, int year)
        {
            var service      = new OrderService();
            var orders       = (List <Order>)service.GetAll();
            var ordersOfYear = new List <Order>();

            foreach (var ord in orders)
            {
                switch ((int)sortDate)
                {
                case 0:
                    if (ord.orderDate.Value.Year == year)
                    {
                        ordersOfYear.Add(ord);
                    }
                    break;

                case 1:
                    if (ord.requiredDate.Value.Year == year)
                    {
                        ordersOfYear.Add(ord);
                    }
                    break;

                case 2:
                    if (ord.shippedDate.Value.Year == year)
                    {
                        ordersOfYear.Add(ord);
                    }
                    break;
                }
            }
            return(orders);
        }
Ejemplo n.º 2
0
        //Switch method
        private List <DateTime> GetDateTimes(SortDateEnum sortDateEnum, List <Order> orders)
        {
            List <DateTime> datetime = new List <DateTime>();

            foreach (var order in orders)
            {
                switch (sortDateEnum)
                {
                case SortDateEnum.orderDate: datetime.Add(Convert.ToDateTime(order.orderDate));
                    break;

                case SortDateEnum.requiredDate: datetime.Add(Convert.ToDateTime(order.requiredDate));
                    break;

                case SortDateEnum.shippedDate: datetime.Add(Convert.ToDateTime(order.shippedDate));
                    break;
                }
            }
            return(datetime);
        }
Ejemplo n.º 3
0
        public List <Order> GetFilteredOrderStatistics(List <Order> orders, SortDateEnum SortDateCompareLeft, char DateCompareMode, SortDateEnum SortDateCompareRight)
        {
            var filteredOrders = new List <Order>();
            var datesLeft      = GetDateTimes(SortDateCompareLeft, orders);
            var datesRight     = GetDateTimes(SortDateCompareRight, orders);

            //Checken welke operator er wordt gebruikt (=, > of <)
            for (int i = 0; i < orders.Count; i++)
            {
                switch (DateCompareMode)
                {
                case '=':
                    if (datesLeft[i] == datesRight[i])
                    {
                        filteredOrders.Add(orders[i]);
                    }
                    break;

                case '<':
                    if (datesLeft[i] < datesRight[i])
                    {
                        filteredOrders.Add(orders[i]);
                    }
                    break;

                case '>':
                    if (datesLeft[i] > datesRight[i])
                    {
                        filteredOrders.Add(orders[i]);
                    }
                    break;
                }
            }

            return(filteredOrders);
        }