示例#1
0
        Criteria CreateCriteriaByQuey(AccountQuery query)
        {
            Criteria c = new Criteria(CriteriaType.None);

            if (query.State != 100)
            {
                c.Add(CriteriaType.Equals, "State", query.State);
            }
            if (query.EmailValidate != 100)
            {
                c.Add(CriteriaType.Equals, "EmailValidate", query.EmailValidate);
            }
            if (query.ModelState != 100)
            {
                c.Add(CriteriaType.Equals, "ModelState", query.ModelState);
            }

            if (!string.IsNullOrEmpty(query.KeyWord))
            {
                Criteria keyCriteria = new Criteria(CriteriaType.None);
                keyCriteria.Mode = CriteriaMode.Or;
                keyCriteria.AddOr(CriteriaType.Like, "LastName", "%" + query.KeyWord + "%");
                keyCriteria.AddOr(CriteriaType.Like, "LoginName", "%" + query.KeyWord + "%");
                keyCriteria.AddOr(CriteriaType.Like, "Email", "%" + query.KeyWord + "%");
                c.Criterias.Add(keyCriteria);
            }

            if (!string.IsNullOrEmpty(query.SiteID))
            {
                c.Add(CriteriaType.Equals, "FromSiteID", query.SiteID);
            }

            if (!string.IsNullOrEmpty(query.ModelName))
            {
                c.Add(CriteriaType.Equals, "ModelName", query.ModelName);
            }
            if (!string.IsNullOrEmpty(query.DepartmentID))
            {
                c.Add(CriteriaType.Equals, "DepartmentID", query.DepartmentID);
            }

            if (query.UserType != 100)
            {
                c.Add(CriteriaType.Equals, "UserType", query.UserType);
            }
            if (c.Criterias.Count == 0)
            {
                return(null);
            }
            else
            {
                return(c);
            }
        }
示例#2
0
        /// <summary>
        /// 按照查询类提供的条件查询用户
        /// </summary>
        /// <param name="query"></param>
        /// <param name="from"></param>
        /// <param name="count"></param>
        /// <param name="fields"></param>
        /// <returns></returns>
        public List <Account> QueryAccountsByQuery(AccountQuery query, int from, int count, string[] fields)
        {
            try
            {
                Criteria     c      = CreateCriteriaByQuey(query);
                List <Order> orders = CreateOrdersByAll(query.OrderKeys);
                Order[]      o      = new Order[] { new Order("Created", OrderMode.Desc) };
                if (orders != null)
                {
                    o = orders.ToArray();
                }

                return(Assistant.List <Account>(c, o, from, count, fields));
            }
            catch (Exception ex)
            {
                return(new List <Account>());
            }
        }
示例#3
0
 public List <Account> QueryAccountsByQuery(AccountQuery query, int from, int count, string[] fields)
 {
     byte[] arr = RemoteHelper.QueryAccountsByQuery(query, from, count, fields);
     return((List <Account>)We7Helper.BytesToObject(arr));
 }
示例#4
0
 public int QueryAccountCountByQuery(AccountQuery query)
 {
     return(RemoteHelper.QueryAccountCountByQuery(query));
 }
示例#5
0
        public byte[] QueryAccountsByQuery(AccountQuery query, int from, int count, string[] fields)
        {
            List <Account> list = AccountLocalHelper.QueryAccountsByQuery(query, from, count, fields);

            return(We7Helper.ObjectToBytes(list));
        }
示例#6
0
 public int QueryAccountCountByQuery(AccountQuery query)
 {
     return(AccountLocalHelper.QueryAccountCountByQuery(query));
 }
示例#7
0
        /// <summary>
        /// 根据查询类获得用户数量
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public int QueryAccountCountByQuery(AccountQuery query)
        {
            Criteria c = CreateCriteriaByQuey(query);

            return(Assistant.Count <Account>(c));
        }