コード例 #1
0
        public ProjectRazorModel(IProjectService CurrentService,
                                 BackendDBContext context,
                                 IMapper Mapper)
        {
            this.CurrentService = CurrentService;
            this.context        = context;
            mapper = Mapper;
            ProjectSort.Initialization(SortConditions);

            Toolbaritems.Add(new ItemModel()
            {
                Id          = ButtonIdHelper.ButtonIdAdd,
                Text        = "新增",
                TooltipText = "新增",
                Type        = ItemType.Button,
                PrefixIcon  = "mdi mdi-plus-thick",
                Align       = ItemAlign.Left,
            });
            Toolbaritems.Add(new ItemModel()
            {
                Id          = ButtonIdHelper.ButtonIdRefresh,
                Text        = "重新整理",
                TooltipText = "重新整理",
                PrefixIcon  = "mdi mdi-refresh",
                Align       = ItemAlign.Left,
            });
            Toolbaritems.Add("Search");
        }
コード例 #2
0
        public FilterResult <Project> Query(FilterState filterState)
        {
            var result = new FilterResult <Project>();
            IQueryable <Project> query = Context.Projects;

            if (filterState != null)
            {
                // Filtering
                if (filterState.Filter?.Filters != null)
                {
                    var filter = new ProjectFilter();
                    if (filterState.Filter.Logic.ToLower() == "and")
                    {
                        filter.CompositeFilter(filterState.Filter, ref query);
                    }
                    else
                    {
                        throw new NotImplementedException("Logic not handled");
                    }
                }

                // Sorting
                if (filterState.Sort != null)
                {
                    foreach (var sort in filterState.Sort)
                    {
                        var purchaseOrderSort = new ProjectSort();
                        purchaseOrderSort.Sort(sort, ref query);
                    }
                }

                if (filterState.Take > 0)
                {
                    // Pagination
                    result.Data = query
                                  .Skip(filterState.Skip)
                                  .Take(filterState.Take)
                                  .ToList();
                }
                else
                {
                    result.Data = query.ToList();
                }
            }
            else
            {
                result.Data = query.ToList();
            }

            // Get total records count
            result.Total = query.Count();

            return(result);
        }
コード例 #3
0
 private void Filter_Click(object sender, EventArgs e)
 {
     if (!String.IsNullOrWhiteSpace(City.Text))
     {
         DataTable dL = controllerObj.SelectProjectsByCity(Convert.ToString(City.Text));
         ProjectSort.DataSource    = dL;
         ProjectSort.DisplayMember = "ID";
         ProjectSort.ValueMember   = "ID";
         ProjectSort.Refresh();
     }
     else
     {
         DataTable dL = controllerObj.GetAllProjectIDs();
         ProjectSort.DataSource    = dL;
         ProjectSort.DisplayMember = "ID";
         ProjectSort.ValueMember   = "ID";
         ProjectSort.Refresh();
     }
 }