Пример #1
0
 public IfcModelFilteringPackage(IModel source, IModel target,
                                 int[] labelFilter, ExpressType[] typeFilter, FilteringRules rules = 0) : base(source, target)
 {
     entityLabels  = labelFilter ?? new int[] { };
     expressTypes  = typeFilter ?? new ExpressType[] { };
     filteringFlag = rules;
 }
        public ActionResult MessagesPerCountryQuery(FilteringRules filterRule)
        {
            // Prepare for Query Builder, using Filter!
            var query = AppDbContext.LogRecords
                        .BuildQuery(filterRule.Rules)         // can provide times here, or country
                        .GroupBy(x => new { x.Country, x.MessageClass })
                        .Select(x => new { x.Key.Country, x.Key.MessageClass, Total = x.Count() });

            var page     = filterRule.Page.GetValueOrDefault(1);
            var pageSize = filterRule.Limit.GetValueOrDefault(10);

            var model = query
                        .OrderBy(x => x.Total)
                        .ToPagedList(page, pageSize);

            var objData = new
            {
                data         = model,
                CurrentPage  = page,
                PreviousPage = page - 1,
                NextPage     = page + 1,
                LastPage     = model.PageCount
            };

            return(SerializeToJsonString(objData));
        }
Пример #3
0
        private void buttonResetFilter_Click(object sender, EventArgs e)
        {
            var rules = FilteringRules.GetFilteringRules();

            rules.ResetFilter();

            comboBoxSenders.SelectedItem = rules.Sender;
            textBoxMessages.Text         = rules.Message;
            dateTimeFrom.Value           = dateTimeFrom.MinDate;
            dateTimeTo.Value             = dateTimeTo.MaxDate;
        }
Пример #4
0
        public void FilterByUserTest()
        {
            var filter = new MessageFilter();
            var rules  = FilteringRules.GetFilteringRules();

            rules.Sender         = "User1";
            rules.IsConditionAnd = true;

            var messages = filter.ApplyFilter(Messages);

            rules.ResetFilter();
            Assert.AreEqual(0, messages.Where(m => m.User != "User1").ToList().Count);
        }
Пример #5
0
        public void FilterByUserAndMessage()
        {
            var filter = new MessageFilter();
            var rules  = FilteringRules.GetFilteringRules();

            rules.IsConditionAnd = true;
            rules.FromDate       = DateTime.MinValue;
            rules.ToDate         = DateTime.MaxValue;
            rules.Sender         = "User1";
            rules.Message        = "ge2";

            var messages = filter.ApplyFilter(Messages);

            rules.ResetFilter();
            Assert.AreEqual(1, messages.Count());
        }
        public ActionResult TestQuery(FilteringRules filterRule)
        {
            IPagedList <LogRecord> model = null;

            // Prepare for Query Builder, using Filter!
            var query    = AppDbContext.LogRecords.BuildQuery(filterRule.Rules);
            var page     = filterRule.Page.GetValueOrDefault(1);
            var pageSize = filterRule.Limit.GetValueOrDefault(10);

            model = query
                    .OrderByDescending(x => x.TimestampUTC)
                    .ToPagedList(page, pageSize);

            var objData = new {
                data         = model,
                CurrentPage  = page,
                PreviousPage = page - 1,
                NextPage     = page + 1,
                LastPage     = model.PageCount
            };

            return(SerializeToJsonString(objData));
        }
Пример #7
0
 public FetchParameters <TModel> AddFilter(Expression <Func <TModel, bool> > predicate)
 {
     FilteringRules.Add(predicate);
     return(this);
 }
Пример #8
0
 private void textBoxMessages_TextChanged(object sender, EventArgs e)
 {
     FilteringRules.GetFilteringRules().Message = textBoxMessages.Text;
 }
Пример #9
0
 private void comboBoxSenders_SelectedIndexChanged(object sender, EventArgs e)
 {
     FilteringRules.GetFilteringRules().Sender = comboBoxSenders.SelectedItem.ToString();
 }
Пример #10
0
 private void radioButtonOr_CheckedChanged(object sender, EventArgs e)
 {
     FilteringRules.GetFilteringRules().IsConditionAnd = false;
 }
Пример #11
0
 private void dateTimeTo_ValueChanged(object sender, EventArgs e)
 {
     FilteringRules.GetFilteringRules().ToDate = dateTimeTo.Value;
 }
Пример #12
0
 private void dateTimeFrom_ValueChanged(object sender, EventArgs e)
 {
     FilteringRules.GetFilteringRules().FromDate = dateTimeFrom.Value;
 }