コード例 #1
0
        private async Task ExecutedCatalogFilterAsync(IDialogContext context, IAwaitable <CatalogFilter> result)
        {
            _filter = await result;
            await ShowCatalog(context);

            context.Wait(MessageReceivedAsync);
        }
コード例 #2
0
        private async Task SetCatalogFilter(LuisResult result, CatalogDialog catalogdialog)
        {
            CatalogFilter filter = new CatalogFilter();
            var           brand  = result.Entities.SingleOrDefault(e => e.Type.Equals("brand"));

            if (brand != null)
            {
                var brands = await catalogService.GetBrands();

                var brandSelected = brands.FirstOrDefault(b => b.Text.Equals(brand.Entity.NormalizeEntity(), StringComparison.OrdinalIgnoreCase));
                if (brandSelected != null)
                {
                    filter.Brand = Convert.ToInt32(brandSelected.Id);
                }
            }

            var type = result.Entities.SingleOrDefault(e => e.Type.Equals("type"));

            if (type != null)
            {
                var types = await catalogService.GetTypes();

                var typeSelected = types.FirstOrDefault(b => b.Text.Equals(type.Entity.NormalizeEntity(), StringComparison.OrdinalIgnoreCase));
                if (typeSelected != null)
                {
                    filter.Type = Convert.ToInt32(typeSelected.Id);
                }
            }
            if (filter.Brand != null || filter.Type != null)
            {
                catalogdialog._filter = filter;
            }
        }
コード例 #3
0
        /// <summary>
        /// Loads the catalogs.
        /// </summary>
        /// <param name="iStartIndex">Start index of the i.</param>
        /// <param name="iNumItems">The i num items.</param>
        /// <param name="sFilter">The s filter.</param>
        private void LoadCatalogs(int iStartIndex, int iNumItems, string sFilter)
        {
            CatalogDto dto = CatalogContext.Current.GetCatalogDto();

            CatalogFilter.Items.Clear();
            CatalogFilter.DataSource = dto;
            CatalogFilter.DataBind();
        }
コード例 #4
0
ファイル: CatalogController.cs プロジェクト: raspbe2ry/Web3
        public JsonResult GetCatalogData(DataTableFilter dtFilter, CatalogFilter filter)
        {
            var data = DTOCatalog.MapToDTO(new CatalogRepository().GetData(dtFilter, filter));

            return(Json(new {
                recordsTotal = data.Count,
                recordsFiltered = data.Count,
                data = data.Data
            }, JsonRequestBehavior.AllowGet));
        }
コード例 #5
0
        public ActionResult ToFavorite(int ProductID, bool?InPopup)
        {
            ToFavoriteSimple(ProductID);
            var filter = new CatalogFilter();

            if (!InPopup.HasValue)
            {
                return(PartialView(filter.ProductViewShort,
                                   db.StoreProducts.FirstOrDefault(x => x.ID == ProductID)));
            }
            return(PartialView("PopupDescription", db.StoreProducts.FirstOrDefault(x => x.ID == ProductID)));
        }
コード例 #6
0
        //TODO: reimplement
        protected override Catalog LoadCatalog()
        {
            Catalog catalog = base.LoadCatalog();

            _session = FindAndStartSession(_sessionUid);
            if (_session == null)
            {
                throw new TempException();
            }
            _configurationSettings = _session.GetConfigurationSettings();
            catalog = CatalogFilter.Filter(catalog, _configurationSettings);
            return(catalog);
        }
コード例 #7
0
        public DataResult <Catalog> GetData(DataTableFilter dtFilter, CatalogFilter filter)
        {
            DataResult <Catalog> dataResult = new DataResult <Catalog>();

            IEnumerable <Catalog> data;

            if (dtFilter.Search.Value != null)
            {
                data = repo.Get(x => x.Code.Contains(dtFilter.Search.Value), null, "Vendor");
            }
            else
            {
                data = repo.Get(x => true, null, "Vendor");
            }

            if (filter != null)
            {
                if (filter.BeginingDateFrom != null)
                {
                    data = data.Where(x => x.BeginingDate >= filter.BeginingDateFrom);
                }
                if (filter.BeginingDateTo != null)
                {
                    data = data.Where(x => x.BeginingDate <= filter.BeginingDateTo);
                }
                if (filter.EndDateFrom != null)
                {
                    data = data.Where(x => x.EndDate >= filter.EndDateFrom);
                }
                if (filter.EndDateTo != null)
                {
                    data = data.Where(x => x.BeginingDate <= filter.EndDateTo);
                }
                if (filter.VendorId != null)
                {
                    data = data.Where(x => x.VendorId == filter.VendorId.Value);
                }
            }

            dataResult.Count = data.Count();
            if (dtFilter.Order != null && dtFilter.Order.Count != 0)
            {
                data = data.OrderBy(dtFilter.Columns[dtFilter.Order[0].Column].Data + " " + dtFilter.Order[0].Dir);
            }

            data = data.Skip(dtFilter.Start).Take(dtFilter.Length);

            dataResult.Data = data.ToList();

            return(dataResult);
        }
コード例 #8
0
 /// <summary>
 /// Overriden method in which we add our grid to the child controls of the control
 /// </summary>
 protected override void CreateChildControls()
 {
     try
     {
         base.CreateChildControls();
         GenericGrid.ClientSettings.ClientEvents.OnGridCreated = "GridCreated";
         this.Controls.Add(GenericGrid);
         if (GenericGrid.Columns.Count > 0 && SessionManager.GetSessionValueNoRedirect(this.Page, "Filter") != null)
         {
             CatalogFilter cfilter = (CatalogFilter)SessionManager.GetSessionValueNoRedirect(this.Page, "Filter");
             if (this.Page.Request.QueryString["Code"] != null && this.Page.Request.QueryString["Code"] == cfilter.Code)
             {
                 foreach (Telerik.WebControls.GridColumn col in cfilter.Columns)
                 {
                     SetColumn(col);
                 }
                 GenericGrid.MasterTableView.FilterExpression = cfilter.WhereClause;
                 GenericGrid.Rebind();
             }
             else
             {
                 SessionManager.RemoveValueFromSession(this.Page, "Filter");
             }
         }
     }
     catch (IndException ex)
     {
         _ParentGenericUserControl.ReportControlError(ex);
         return;
     }
     catch (Exception ex)
     {
         _ParentGenericUserControl.ReportControlError(new IndException(ex));
         return;
     }
 }
コード例 #9
0
        private void filterButton_Click(object sender, ImageClickEventArgs e)
        {
            try
            {
                //StringBuilder filterExpression = new StringBuilder();
                ((IndCatGrid)this.Owner.OwnerGrid).IndFilterItem = new IndFilterItem();

                foreach (GridColumn c in this.Owner.Columns)
                {
                    IndGridBoundColumn col = c as IndGridBoundColumn;
                    string             comparerStart;
                    string             comparerEnd;
                    GridKnownFunction  function;
                    if (col != null && col.Display)
                    {
                        SetFilterParameters(col, out comparerStart, out comparerEnd, out function);
                        //col.CurrentFilterValue =

                        if (col.Cell.Controls.Count > 2)
                        {
                            FilterSpecialColumn(col, ((IndCatGrid)this.Owner.OwnerGrid).IndFilterItem, comparerStart, comparerEnd, function);
                        }
                        else
                        {
                            TextBox t = (TextBox)col.Cell.Controls[0];
                            decimal value;
                            if (IsColumnNumeric(col) && decimal.TryParse(t.Text, out value) == false)
                            {
                                col.CurrentFilterValue = String.Empty;
                                continue;
                            }
                            FilterCommonColumn(col, t.Text.Replace("'", "''"), ((IndCatGrid)this.Owner.OwnerGrid).IndFilterItem, comparerStart, comparerEnd, function);
                        }
                    }
                }

                IndCatGrid parentGrid = (IndCatGrid)this.Owner.OwnerGrid;

                if (parentGrid.IndFilterItem.FilterExpression.Length > 0)
                {
                    parentGrid.IndFilterItem.FilterExpression.Append(")");
                }
                parentGrid.IndFilterExpression = parentGrid.IndFilterItem.FilterExpression.ToString();

                CatalogFilter cfilter = new CatalogFilter();
                if (this.Owner.Page.Request != null && this.Owner.Page.Request["Code"] != null)
                {
                    cfilter.Code        = this.Owner.Page.Request.QueryString["Code"];
                    cfilter.WhereClause = parentGrid.IndFilterExpression;
                    cfilter.CopyColumnsFrom(this.Owner.Columns);
                    SessionManager.SetSessionValue(this.Owner.Page, "Filter", cfilter);
                }

                this.Owner.OwnerGrid.Rebind();
            }
            catch (IndException ex)
            {
                ControlHierarchyManager.ReportError(ex);
                return;
            }
            catch (Exception ex)
            {
                ControlHierarchyManager.ReportError(new IndException(ex));
                return;
            }
        }
コード例 #10
0
        public List <DataFile> QueryDataFile(CatalogFilter filter)
        {
            List <DataFile>       dataFiles     = new List <DataFile>();
            IQueryable <DataFile> fileExtension =
                from c in context.DataFiles
                where c.AccountId.Equals(filter.AccountID)
                select c;

            if (!string.IsNullOrEmpty(filter.FileType))
            {
                fileExtension =
                    from c in fileExtension
                    where c.FileExtension == filter.FileType
                    select c;
            }
            if (!string.IsNullOrEmpty(filter.Classification))
            {
                fileExtension =
                    from c in fileExtension
                    where c.Classification == filter.Classification
                    select c;
            }
            if (!string.IsNullOrEmpty(filter.RMS))
            {
                fileExtension =
                    from c in fileExtension
                    where c.RMSNumber == filter.RMS
                    select c;
            }
            if (!string.IsNullOrEmpty(filter.CAD))
            {
                fileExtension =
                    from c in fileExtension
                    where c.CADNumber == filter.CAD
                    select c;
            }
            if (filter.Rating > 0)
            {
                fileExtension =
                    from c in fileExtension
                    where c.Rating == filter.Rating
                    select c;
            }
            if (filter.IsSecurityFilter)
            {
                fileExtension =
                    from c in fileExtension
                    where (int)c.Security == (int)filter.SecurityLevel
                    select c;
            }
            if (filter.IsEvidence)
            {
                fileExtension =
                    from c in fileExtension
                    where c.IsEvidence == filter.IsEvidence
                    select c;
            }
            if (!string.IsNullOrEmpty(filter.WordPhrase))
            {
                fileExtension =
                    from c in fileExtension
                    where c.ShortDesc.Contains(filter.WordPhrase)
                    select c;
            }
            fileExtension =
                from c in fileExtension
                where c.IsPurged == (bool?)false
                select c;

            fileExtension =
                from c in fileExtension
                where (c.FileTimestamp >= filter.StartDate) && (c.FileTimestamp <= filter.EndDate)
                orderby c.FileTimestamp descending
                select c;

            WriteLog(VMGlobal.LOG_ACTION.LIST, string.Format("{0} to {1}\nClassification: {2}", filter.StartDate, filter.EndDate, filter.Classification), filter.AccountID);
            return(fileExtension.ToList <DataFile>());
        }