示例#1
0
        public List <int> GetPath(List <int> listNumber, DateTime initialDate, DateTime finalDate, DrawType type)
        {
            var filterbyDate = new DrawingResultFilterByDate(_repository, initialDate, finalDate);

            DrawingState state         = (DrawingState)Enum.Parse(typeof(DrawingState), type.ToString());
            var          filterByeType = new DrawingResultFilterByType(filterbyDate, state);

            var drawingList = filterByeType.Filter().OrderBy(d => d.Date).ToList();

            List <int> list = new List <int>();

            int      days    = 0;
            DateTime iniDate = initialDate;

            foreach (var drawing in drawingList)
            {
                if (IsMemberDrawing(drawing, listNumber))
                {
                    days = (int)drawing.Date.Subtract(iniDate).TotalDays;
                    list.Add(days);
                    days    = 0;
                    iniDate = drawing.Date;
                }
            }
            days = -1 * (int)drawingList.Last().Date.Subtract(iniDate).TotalDays;
            list.Add(days);

            return(list);
        }
示例#2
0
        public ActionResult Index(DrawingResultFilter drawing)
        {
            IDrawingResultFilter filter = new DrawingResultFilterByDate(
                _repository,
                drawing.InitialDate, drawing.FinalDate);
            var filterParameter = new DrawingResultFilterByParameter(filter, drawing.Parameter, drawing.ParameterType);

            var filterType = new DrawingResultFilterByType(filterParameter, drawing.DrawingState);

            drawing.DrawingResults = filterType.Filter();

            return(View(drawing));
        }
示例#3
0
        public ActionResult WeekResult()
        {
            WeekResultFilter weekFilter = new WeekResultFilter();

            DrawingState         state        = (DrawingState)Enum.Parse(typeof(DrawingState), weekFilter.DrawType.ToString());
            IDrawingResultFilter filterByDate = new DrawingResultFilterByDate(_repository, weekFilter.InitialDate, weekFilter.FinalDate);
            IDrawingResultFilter filter       = new DrawingResultFilterByType(filterByDate, state);
            var list = filter.Filter();


            WeekResultManager manager = new WeekResultManager();

            weekFilter.WeekResultList = manager.CreateWeekResult(list);
            return(View(weekFilter));
        }
示例#4
0
        public List <Delay> GetDelays(DateTime initialDate, DateTime finalDate, DrawType type)
        {
            var delayList = new List <Delay>();

            var filterbyDate = new DrawingResultFilterByDate(_repository, initialDate, finalDate);

            DrawingState state         = (DrawingState)Enum.Parse(typeof(DrawingState), type.ToString());
            var          filterByeType = new DrawingResultFilterByType(filterbyDate, state);

            var drawingList = filterByeType.Filter();

            DateTime iniLast3year            = initialDate.AddYears(-3);
            var      drawingList3YearEarlier = _repository.GetList <DrawingResult>(
                d => d.Type == type &&
                d.Date >= iniLast3year &&
                d.Date < initialDate)
                                               .ToList();

            var drawingListComplette = drawingList3YearEarlier
                                       .Concat(drawingList)
                                       .OrderByDescending(d => d.Date)
                                       .ToList();

            foreach (var drawing in drawingList)
            {
                delayList.Add(
                    new Delay()
                {
                    Days          = AmountDaysOfLastDrawing(drawing, drawingListComplette),
                    DrawingResult = drawing
                }
                    );
            }

            return(delayList);
        }
        public void OnNavigatedTo(INavigationParameters parameters)
        {
            if (parameters.Count == 0)
            {
                return;
            }



            var initialDate   = (DateTime)parameters["initialDate"];
            var finalDate     = (DateTime)parameters["finalDate"];
            var drawingState  = (DrawingState)parameters["drawingState"];
            var parameterType = (ParameterType)parameters["parameterType"];
            var number        = (int?)parameters["number"];

            var filterByDate = new DrawingResultLocalFilterByDate(_dataAccessService, initialDate, finalDate);
            var filterByType = new DrawingResultFilterByType(filterByDate, drawingState);

            var filterByParameter = new DrawingResultFilterByParameter(filterByType, number, parameterType);

            var list = filterByParameter.Filter();

            DrawingResultList = new ObservableCollection <DrawingResult>(list);
        }