예제 #1
0
    private string GetPagedContent()
    {
        var siteId    = Request["siteid"];
        var page      = Convert.ToInt32(Request.Params["page"]);
        var rp        = Convert.ToInt32(Request.Params["rp"]);
        var qtype     = Request.Params["qtype"];
        var query     = Request.Params["query"];
        var sortname  = Request.Params["sortname"];
        var sortorder = Request.Params["sortorder"];

        var sid = 0;

        if (int.TryParse(siteId, out sid))
        {
            using (var ctx = new Entities())
            {
                var q = from u in ctx.SITECONTACTs
                        where u.SITEID == sid
                        select u;

                if (!string.IsNullOrEmpty(qtype) && !string.IsNullOrEmpty(query))
                {
                    q = q.Where(u => u.NAME.ToLower().Contains(query.ToLower()));
                }

                if (!string.IsNullOrEmpty(sortname) && !string.IsNullOrEmpty(sortorder))
                {
                    q = q.OrderBy(sortname, (sortorder == "asc"));
                }

                var count = q.ToList().Count;

                q = q.Skip((page - 1) * rp).Take(rp);

                var results = q.ToList();

                var flexigrid = new FlexigridViewData {
                    page = page, total = count
                };

                foreach (var result in results)
                {
                    var fgRow = new FlexigridRow {
                        id = result.ID, cell = new List <string> {
                            result.NAME
                        }
                    };
                    flexigrid.rows.Add(fgRow);
                }

                var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
                return(serializer.Serialize(flexigrid));
            }
        }

        return(string.Empty);
    }
예제 #2
0
    private string GetPagedContent()
    {
        var page      = Convert.ToInt32(Request.Params["page"]);
        var rp        = Convert.ToInt32(Request.Params["rp"]);
        var qtype     = Request.Params["qtype"];
        var query     = Request.Params["query"];
        var sortname  = Request.Params["sortname"];
        var sortorder = Request.Params["sortorder"];

        using (var ctx = new Entities())
        {
            var q = from u in ctx.SYSTEMUSERs
                    where u.DELETED == 0 select u;

            if (!string.IsNullOrEmpty(qtype) && !string.IsNullOrEmpty(query))
            {
                q = q.Where(u => u.NAME.ToLower().Contains(query.ToLower()) || u.ORGANISATION.ToLower().Contains(query.ToLower()));
            }

            if (!string.IsNullOrEmpty(sortname) && !string.IsNullOrEmpty(sortorder))
            {
                q = q.OrderBy(sortname, (sortorder == "asc"));
            }

            var count = q.ToList().Count;

            q = q.Skip((page - 1) * rp).Take(rp);

            var results = q.ToList();

            var flexigrid = new FlexigridViewData {
                page = page, total = count
            };
            foreach (var result in results)
            {
                var fgRow = new FlexigridRow {
                    id = result.ID, cell = new List <string>
                    {
                        result.NAME,
                        result.EMAIL,
                        result.ORGANISATION,
                        result.LASTLOGGEDON.ToString("dd MMM yy HH:mm")
                    }
                };
                flexigrid.rows.Add(fgRow);
            }

            var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
            return(serializer.Serialize(flexigrid));
        }
    }
예제 #3
0
    private string GetPagedContent()
    {
        var page      = Convert.ToInt32(Request.Params["page"]);
        var rp        = Convert.ToInt32(Request.Params["rp"]);
        var qtype     = Request.Params["qtype"];
        var query     = Request.Params["query"];
        var sortname  = Request.Params["sortname"];
        var sortorder = Request.Params["sortorder"];

        using (var ctx = new Entities())
        {
            var q = from u in ctx.PROJECTs
                    where u.DELETED == 0 select u;

            if (!string.IsNullOrEmpty(qtype) && !string.IsNullOrEmpty(query))
            {
                // TODO
            }

            if (!string.IsNullOrEmpty(sortname) && !string.IsNullOrEmpty(sortorder))
            {
                q = q.OrderBy(sortname, (sortorder == "asc"));
            }

            var count = q.ToList().Count;

            q = q.Skip((page - 1) * rp).Take(rp);

            var results = q.ToList();

            var flexigrid = new FlexigridViewData {
                page = page, total = count
            };
            foreach (var result in results)
            {
                var fgRow = new FlexigridRow {
                    id = result.ID, cell = new List <string> {
                        result.NAME
                    }
                };
                flexigrid.rows.Add(fgRow);
            }

            var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
            return(serializer.Serialize(flexigrid));
        }
    }
예제 #4
0
        /// <summary>
        /// 在查询中输入字符串,自动提示的功能
        /// </summary>
        /// <param name="id">需要查询的数据库字段的名称</param>
        /// <param name="term">输入的字符串</param>
        /// <returns></returns>
        public string SearchAutoComplete(string id, string term)
        {
            FlexigridParam param = new FlexigridParam();

            param.Query    = id + "&" + term + "^";
            param.SortName = id;

            List <string> listString = new List <string>();

            using (SysEntities db = new SysEntities())
            {
                var queryData = repository.DaoChuData(db, param);
                if (queryData != null)
                {
                    queryData = queryData.Take(5).Distinct();
                    foreach (var item in queryData)
                    {
                        listString.Add(FlexigridRow.GetPropertyList(item, new string[] { id }).FirstOrDefault());
                    }
                }
            }
            StringBuilder stringBuilder = new StringBuilder();

            stringBuilder.Append("[");
            int i = 0;

            foreach (var item in listString)
            {
                if (string.IsNullOrEmpty(item))
                {
                    continue;
                }
                if (i == 0)
                {
                    i++;
                    stringBuilder.Append(@"{@label@:@" + item + "@}");
                }
                else
                {
                    stringBuilder.Append(",");
                    stringBuilder.Append(@"{@label@:@" + item + "@}");
                }
            }
            stringBuilder.Append("]");
            return(stringBuilder.ToString().Replace('@', '"'));
        }
예제 #5
0
    private string GetPagedContent(int id)
    {
        var page      = Convert.ToInt32(Request.Params["page"]);
        var rp        = Convert.ToInt32(Request.Params["rp"]);
        var qtype     = Request.Params["qtype"];
        var query     = Request.Params["query"];
        var sortname  = Request.Params["sortname"];
        var sortorder = Request.Params["sortorder"];

        var datastore = new DataStore(ConfigurationSettings.AppSettings["datastore_path"]);
        var total     = 0;
        var data      = datastore.Retrieve(id, rp, page, out total);

        var flexigrid = new FlexigridViewData {
            page = page, total = total
        };

        int i = 0;

        foreach (var row in data)
        {
            i++;
            var fgRow = new FlexigridRow {
                id = i, cell = new List <string>()
            };
            fgRow.cell.Add(row.RowDateTime.ToString("dd MMM yyyy HH:mm"));
            fgRow.cell.Add(row.SiteID.ToString());
            fgRow.cell.AddRange(row.Values);

            flexigrid.rows.Add(fgRow);
        }

        var serializer = new System.Web.Script.Serialization.JavaScriptSerializer();

        return(serializer.Serialize(flexigrid));
    }