コード例 #1
0
        public DbQueryResult GetMembersAddress(MemberQuery query)
        {
            StringBuilder stringBuilder = new StringBuilder();

            stringBuilder.Append(" 1=1 ");

            //IsDefault= 1 为默认地址
            if (query.IsDefault == 1)
            {
                stringBuilder.AppendFormat(" AND IsDefault = {0}", query.IsDefault);
            }

            if (!string.IsNullOrEmpty(query.Username))
            {
                stringBuilder.AppendFormat(" AND UserName LIKE '%{0}%'", DataHelper.CleanSearchString(query.Username));
            }
            if (!string.IsNullOrEmpty(query.Realname))
            {
                stringBuilder.AppendFormat(" AND Realname LIKE '%{0}%'", DataHelper.CleanSearchString(query.Realname));
            }
            if (!string.IsNullOrEmpty(query.CellPhone))
            {
                stringBuilder.AppendFormat(" AND CellPhone LIKE '%{0}%'", DataHelper.CleanSearchString(query.CellPhone));
            }

            string selectFields = "RegionId,ShippingId,UserId,ShipTo,[Address],Zipcode,TelPhone,CellPhone,IdentityCard,Realname,UserName,IsDefault,Email";

            return(DataHelper.PagingByRownumber(query.PageIndex, query.PageSize, query.SortBy, query.SortOrder, query.IsCount, "vw_Ecshop_MembersAddress", "UserId", stringBuilder.ToString(), selectFields));
        }
コード例 #2
0
        // GET: Member/Delete/5
        public ActionResult Delete(int id)
        {
            Member      member = MemberManager.Find(x => x.Id == id);
            MemberQuery model  = Mapper.Map <MemberQuery>(member);

            return(View(model));
        }
コード例 #3
0
        public void ExportToExcel(HttpContext context)
        {
            MemberQuery dataQuery  = this.GetDataQuery(context);
            string      safeIDList = Globals.GetSafeIDList(base.GetParameter(context, "Ids", false), ',', true);
            IList <PointMemberModel> pointMembersNoPage = MemberHelper.GetPointMembersNoPage(dataQuery, safeIDList);
            StringBuilder            stringBuilder      = new StringBuilder();

            stringBuilder.Append("<table border='1'>");
            stringBuilder.Append("<thead><tr>");
            stringBuilder.Append("<th>会员名</th>");
            stringBuilder.Append("<th>用户积分</th>");
            stringBuilder.Append("<th>历史积分</th>");
            stringBuilder.Append("<th>会员等级</th>");
            stringBuilder.Append("</tr></thead>");
            StringBuilder stringBuilder2 = new StringBuilder();

            foreach (PointMemberModel item in pointMembersNoPage)
            {
                stringBuilder2.Append("<tr>");
                stringBuilder2.Append(ExcelHelper.GetXLSFieldsTD(item.UserName, true));
                stringBuilder2.Append(ExcelHelper.GetXLSFieldsTD(item.Points, false));
                stringBuilder2.Append(ExcelHelper.GetXLSFieldsTD(item.HistoryPoint, false));
                stringBuilder2.Append(ExcelHelper.GetXLSFieldsTD(item.GradeName, true));
                stringBuilder2.Append("</tr>");
            }
            stringBuilder.AppendFormat("<tbody>{0}</tbody></table>", stringBuilder2.ToString());
            StringWriter stringWriter = new StringWriter();

            stringWriter.Write(stringBuilder);
            DownloadHelper.DownloadFile(context.Response, stringWriter.GetStringBuilder(), "MemberPointList" + DateTime.Now.ToString("yyyyMMddhhmmss") + ".xls");
            stringWriter.Close();
            context.Response.End();
        }
コード例 #4
0
        public BindingOperation Make(Tree <Cell> nameCell)
        {
            var name = nameCell.Value.Text.Trim();

            if (NoOperationIsImpliedBy(name))
            {
                return(new NoBinding());
            }

            if (CheckIsImpliedBy(name))
            {
                return(new CheckBinding(processor, targetProvider, nameCell));
            }

            var memberName = processor.ParseTree <Cell, MemberName>(nameCell);
            var member     = MemberQuery.FindInstance(processor.FindMember, targetProvider,
                                                      new MemberSpecification(memberName, 1));

            if (member == null && newIdentifier.IsStartOf(name))
            {
                string newMemberName = name.Substring(4);
                return(new CreateBinding(processor, adapter, newMemberName));
            }

            return(new InputBinding(processor, targetProvider, nameCell));
        }
コード例 #5
0
 protected MemberQuery SetClient(MemberQuery query)
 {
     if (!string.IsNullOrEmpty(base.Request.QueryString["type"]))
     {
         System.Collections.Generic.Dictionary <int, MemberClientSet> memberClientSet = MemberHelper.GetMemberClientSet();
         int[] array = new int[memberClientSet.Count];
         memberClientSet.Keys.CopyTo(array, 0);
         if (memberClientSet.Count > 0)
         {
             MemberClientSet memberClientSet2 = new MemberClientSet();
             string          text             = base.Request.QueryString["type"];
             query.ClientType = text;
             string a;
             if ((a = text) != null)
             {
                 if (!(a == "new"))
                 {
                     if (a == "activy")
                     {
                         memberClientSet2  = memberClientSet[array[1]];
                         this.litType.Text = "活跃客户";
                         if (!(memberClientSet2.ClientValue > 0m))
                         {
                             return(query);
                         }
                         query.StartTime  = new System.DateTime?(System.DateTime.Now.AddDays((double)(-(double)memberClientSet2.LastDay)));
                         query.EndTime    = new System.DateTime?(System.DateTime.Now);
                         query.CharSymbol = memberClientSet2.ClientChar;
                         if (memberClientSet2.ClientTypeId == 6)
                         {
                             query.OrderNumber = new int?((int)memberClientSet2.ClientValue);
                             return(query);
                         }
                         query.OrderMoney = new decimal?(memberClientSet2.ClientValue);
                         return(query);
                     }
                 }
                 else
                 {
                     memberClientSet2  = memberClientSet[array[0]];
                     this.litType.Text = "新客户";
                     query.StartTime   = memberClientSet2.StartTime;
                     query.EndTime     = memberClientSet2.EndTime;
                     if (memberClientSet2.LastDay > 0)
                     {
                         query.StartTime = new System.DateTime?(System.DateTime.Now.AddDays((double)(-(double)memberClientSet2.LastDay)));
                         query.EndTime   = new System.DateTime?(System.DateTime.Now);
                         return(query);
                     }
                     return(query);
                 }
             }
             memberClientSet2  = memberClientSet[array[2]];
             this.litType.Text = "睡眠客户";
             query.StartTime   = new System.DateTime?(System.DateTime.Now.AddDays((double)(-(double)memberClientSet2.LastDay)));
             query.EndTime     = new System.DateTime?(System.DateTime.Now);
         }
     }
     return(query);
 }
コード例 #6
0
        public JsonResult List(int page, int rows, string CompanyName, bool?status = null)
        {
            MemberQuery memberQuery = new MemberQuery()
            {
                UserType = 3,
                keyWords = CompanyName,
                PageNo   = page,
                PageSize = rows
            };

            PageModel <UserMemberInfo>   members = ServiceHelper.Create <IMemberService>().GetMembers(memberQuery);
            IEnumerable <UserMemberInfo> models  =
                from item in members.Models.ToArray()
                select new UserMemberInfo()
            {
                Id          = item.Id,
                UserName    = item.UserName,
                CreateDate  = item.CreateDate,
                Email       = item.Email,
                CompanyName = ServiceHelper.Create <IMemberDetailService>().GetMemberDetailByUid(item.Id) == null ? "" : ServiceHelper.Create <IMemberDetailService>().GetMemberDetailByUid(item.Id).CompanyName
            };
            DataGridModel <UserMemberInfo> dataGridModel = new DataGridModel <UserMemberInfo>()
            {
                rows  = models,
                total = members.Total
            };

            return(Json(dataGridModel));
        }
コード例 #7
0
ファイル: ManageMembers.cs プロジェクト: 123456-cq/xkq34_src
        protected void BindData()
        {
            MemberQuery query = new MemberQuery {
                Username     = this.searchKey,
                UserBindName = this.realName,
                GradeId      = this.rankId,
                PageIndex    = this.pager.PageIndex,
                IsApproved   = this.approved,
                SortBy       = this.grdMemberList.SortOrderBy,
                PageSize     = this.pager.PageSize,
                Stutas       = new UserStatus?((UserStatus)System.Enum.Parse(typeof(UserStatus), this.mstatus)),
                EndTime      = new DateTime?(DateTime.Now),
                StartTime    = new DateTime?(DateTime.Now.AddDays((double)-this.GetSiteSetting().ActiveDay)),
                CellPhone    = (base.Request.QueryString["phone"] != null) ? base.Request.QueryString["phone"] : "",
                ClientType   = (base.Request.QueryString["clientType"] != null) ? base.Request.QueryString["clientType"] : "",
                StoreName    = this.storeName
            };

            if (this.grdMemberList.SortOrder.ToLower() == "desc")
            {
                query.SortOrder = SortAction.Desc;
            }
            if (this.vipCard.HasValue && (this.vipCard.Value != 0))
            {
                query.HasVipCard = new bool?(this.vipCard.Value == 1);
            }
            DbQueryResult members = MemberHelper.GetMembers(query, false);

            this.grdMemberList.DataSource = members.Data;
            this.grdMemberList.DataBind();
            this.pager1.TotalRecords = this.pager.TotalRecords = members.TotalRecords;
        }
コード例 #8
0
        /// <summary>
        /// 根据查询条件分页获取会员信息
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        public static QueryPageModel <DTO.Members> GetMemberList(MemberQuery query)
        {
            if (query.GradeId.HasValue)
            {
                var expenditureRange = MemberApplication.GetMemberGradeRange(query.GradeId.Value);
                query.MinIntegral = expenditureRange.MinIntegral;
                query.MaxIntegral = expenditureRange.MaxIntegral;
            }
            var list    = _iMemberService.GetMembers(query);
            var members = Mapper.Map <QueryPageModel <DTO.Members> >(list);
            var grades  = MemberGradeApplication.GetMemberGradeList();

            foreach (var m in members.Models)
            {
                var memberIntegral = MemberIntegralApplication.GetMemberIntegral(m.Id);
                //获取等级
                m.GradeName = MemberGradeApplication.GetMemberGradeByIntegral(grades, memberIntegral.HistoryIntegrals).GradeName;
                if (memberIntegral != null)
                {
                    m.AvailableIntegral = memberIntegral.AvailableIntegrals;
                    m.HistoryIntegral   = memberIntegral.HistoryIntegrals;
                }
            }
            return(members);
        }
コード例 #9
0
        private MemberQuery GetMemberQuery()
        {
            MemberQuery memberQuery = new MemberQuery();

            if (!string.IsNullOrEmpty(this.Page.Request.QueryString["GradeId"]))
            {
                int value = 0;
                if (int.TryParse(this.Page.Request.QueryString["GradeId"], out value))
                {
                    memberQuery.GradeId = new int?(value);
                }
            }
            if (!string.IsNullOrEmpty(this.Page.Request.QueryString["Username"]))
            {
                memberQuery.Username = base.Server.UrlDecode(this.Page.Request.QueryString["Username"]);
            }
            if (!string.IsNullOrEmpty(this.Page.Request.QueryString["Realname"]))
            {
                memberQuery.Realname = base.Server.UrlDecode(this.Page.Request.QueryString["Realname"]);
            }
            if (!string.IsNullOrEmpty(this.Page.Request.QueryString["Approved"]))
            {
                memberQuery.IsApproved = new bool?(System.Convert.ToBoolean(this.Page.Request.QueryString["Approved"]));
            }
            memberQuery.PageSize  = this.pager.PageSize;
            memberQuery.PageIndex = this.pager.PageIndex;
            return(memberQuery);
        }
コード例 #10
0
        public TypedValue FindMember(TypedValue instance, MemberQuery query)
        {
            var member = query.FindMatchingMember(instance.Type, new PatternMemberMatcher(Processor, instance.Value, query.Specification))
                         .OrMaybe(() => query.FindMember(instance.Value));

            return(member.TypedValue);
        }
コード例 #11
0
ファイル: MemberData.cs プロジェクト: yuelinsoft/himedi
        public override DataTable GetMembersNopage(MemberQuery query, IList <string> fields)
        {
            if (fields.Count == 0)
            {
                return(null);
            }
            DataTable table = null;
            string    str   = string.Empty;

            foreach (string str2 in fields)
            {
                str = str + str2 + ",";
            }
            str = str.Substring(0, str.Length - 1);
            StringBuilder builder = new StringBuilder();

            builder.AppendFormat("SELECT {0} FROM vw_aspnet_Members WHERE 1=1 ", str);
            if (!string.IsNullOrEmpty(query.Username))
            {
                builder.AppendFormat(" AND UserName LIKE '%{0}%'", query.Username);
            }
            if (query.GradeId.HasValue)
            {
                builder.AppendFormat(" AND GradeId={0}", query.GradeId);
            }
            DbCommand sqlStringCommand = database.GetSqlStringCommand(builder.ToString());

            using (IDataReader reader = database.ExecuteReader(sqlStringCommand))
            {
                table = DataHelper.ConverDataReaderToDataTable(reader);
                reader.Close();
            }
            return(table);
        }
コード例 #12
0
ファイル: UsersSelect.cs プロジェクト: yunchenglk/wechat
        private void BindData(string title)
        {
            MemberQuery query = new MemberQuery {
                Username   = title,
                PageIndex  = this.pager.PageIndex,
                PageSize   = this.pager.PageSize,
                Stutas     = (UserStatus)1,
                EndTime    = new DateTime?(DateTime.Now),
                StartTime  = new DateTime?(DateTime.Now.AddDays((double)-SettingsManager.GetMasterSettings(false).ActiveDay)),
                CellPhone  = (base.Request.QueryString["phone"] != null) ? base.Request.QueryString["phone"] : "",
                ClientType = (base.Request.QueryString["clientType"] != null) ? base.Request.QueryString["clientType"] : ""
            };
            DbQueryResult members      = MemberHelper.GetMembers(query, false);
            int           totalRecords = members.TotalRecords;

            if (totalRecords > 0)
            {
                this.rptList.DataSource = members.Data;
                this.rptList.DataBind();
                this.pager.TotalRecords = this.pager.TotalRecords = totalRecords;
                if (this.pager.TotalRecords <= this.pager.PageSize)
                {
                    this.pager.Visible = false;
                }
            }
            else
            {
                this.divEmpty.Visible = true;
            }
        }
コード例 #13
0
        private MemberQuery getQuery(HttpContext context)
        {
            int num  = 1;
            int num2 = 10;

            num = base.GetIntParam(context, "page", false).Value;
            if (num < 1)
            {
                num = 1;
            }
            num2 = base.GetIntParam(context, "rows", false).Value;
            if (num2 < 1)
            {
                num2 = 10;
            }
            MemberQuery memberQuery = new MemberQuery();

            memberQuery.UserName         = context.Request["StoreName"];
            memberQuery.UserName         = memberQuery.UserName.Trim();
            memberQuery.StoreId          = base.GetIntParam(context, "storeId", false).Value;
            memberQuery.ShoppingGuiderId = base.GetIntParam(context, "ManagerId", false).Value;
            memberQuery.StartTime        = base.GetDateTimeParam(context, "startDate");
            memberQuery.EndTime          = base.GetDateTimeParam(context, "endDate");
            memberQuery.SortOrder        = SortAction.Desc;
            memberQuery.PageIndex        = num;
            memberQuery.PageSize         = num2;
            return(memberQuery);
        }
コード例 #14
0
ファイル: MemberData.cs プロジェクト: yuelinsoft/himedi
        public override DbQueryResult GetMembers(MemberQuery query)
        {
            StringBuilder builder = new StringBuilder();

            if (query.GradeId.HasValue)
            {
                builder.AppendFormat("GradeId = {0}", query.GradeId.Value);
            }
            if (query.IsApproved.HasValue)
            {
                if (builder.Length > 0)
                {
                    builder.Append(" AND ");
                }
                builder.AppendFormat("IsApproved = '{0}'", query.IsApproved.Value);
            }
            if (!string.IsNullOrEmpty(query.Username))
            {
                if (builder.Length > 0)
                {
                    builder.Append(" AND ");
                }
                builder.AppendFormat("UserName LIKE '%{0}%'", DataHelper.CleanSearchString(query.Username));
            }
            if (!string.IsNullOrEmpty(query.Realname))
            {
                if (builder.Length > 0)
                {
                    builder.AppendFormat("AND", new object[0]);
                }
                builder.AppendFormat("RealName LIKE '%{0}%'", DataHelper.CleanSearchString(query.Realname));
            }
            return(DataHelper.PagingByRownumber(query.PageIndex, query.PageSize, query.SortBy, query.SortOrder, query.IsCount, "vw_aspnet_Members", "UserId", (builder.Length > 0) ? builder.ToString() : null, "*"));
        }
コード例 #15
0
        private MemberQuery GetMemberQuery()
        {
            MemberQuery query = new MemberQuery();

            if (!string.IsNullOrEmpty(Page.Request.QueryString["GradeId"]))
            {
                int result = 0;
                if (int.TryParse(Page.Request.QueryString["GradeId"], out result))
                {
                    query.GradeId = new int?(result);
                }
            }
            if (!string.IsNullOrEmpty(Page.Request.QueryString["Username"]))
            {
                query.Username = base.Server.UrlDecode(Page.Request.QueryString["Username"]);
            }
            if (!string.IsNullOrEmpty(Page.Request.QueryString["Realname"]))
            {
                query.Realname = base.Server.UrlDecode(Page.Request.QueryString["Realname"]);
            }
            if (!string.IsNullOrEmpty(Page.Request.QueryString["Approved"]))
            {
                query.IsApproved = new bool?(Convert.ToBoolean(Page.Request.QueryString["Approved"]));
            }
            query.PageSize  = pager.PageSize;
            query.PageIndex = pager.PageIndex;
            return(query);
        }
コード例 #16
0
        /*账户查询*/
        public JsonResult AccountList(int page, int rows, int disabled, string username)
        {
            MemberQuery memberQuery = new MemberQuery()
            {
                Disabled = disabled,
                UserType = 0,
                keyWords = username,
                PageNo   = page,
                PageSize = rows
            };

            PageModel <UserMemberInfo>   members = ServiceHelper.Create <IMemberService>().GetMembers(memberQuery);
            IEnumerable <UserMemberInfo> models  =
                from item in members.Models.ToArray()
                select new UserMemberInfo()
            {
                Id         = item.Id,
                UserName   = item.UserName,
                CreateDate = item.CreateDate,
                Email      = item.Email,
                Disabled   = item.Disabled
            };
            DataGridModel <UserMemberInfo> dataGridModel = new DataGridModel <UserMemberInfo>()
            {
                rows  = models,
                total = members.Total
            };

            return(Json(dataGridModel));
        }
コード例 #17
0
        /// <summary>
        /// 导出会员数据
        /// </summary>
        /// <param name="keywords">会员名</param>
        /// <param name="weChatNick">微信昵称</param>
        /// <param name="mobile">手机号码</param>
        /// <param name="gradeId">会员等级</param>
        /// <param name="status">会员状态</param>
        /// <param name="platform">会员来源</param>
        /// <param name="labels">会员标签</param>
        /// <param name="registTimeStart">注册时间开始时间</param>
        /// <param name="registTimeEnd">注册时间结束时间</param>
        /// <param name="isFocusWeiXin">是否关注微信</param>
        /// <param name="isSeller">是否为入驻商家</param>
        /// <param name="logintimeStart">登录时间开始</param>
        /// <param name="logintimeEnd">登录时间结束</param>
        /// <returns></returns>
        public ActionResult ExportToExcel(string keywords        = "", string weChatNick      = null, string mobile = null,
                                          long?gradeId           = null, bool?status          = null, int?platform  = null, long?labels = null,
                                          string registTimeStart = null, string registTimeEnd = null, bool?isFocusWeiXin = null, bool?isSeller = null,
                                          string logintimeStart  = null, string logintimeEnd  = null)
        {
            #region 获取查询结果
            DateTime?rtstart = null;
            DateTime?rtend   = null;
            DateTime?ltstart = null;
            DateTime?ltend   = null;
            if (!string.IsNullOrWhiteSpace(registTimeStart))
            {
                rtstart = DateTime.Parse(registTimeStart);
            }
            if (!string.IsNullOrWhiteSpace(registTimeEnd))
            {
                rtend = DateTime.Parse(registTimeEnd);
            }
            if (!string.IsNullOrWhiteSpace(logintimeStart))
            {
                ltstart = DateTime.Parse(logintimeStart);
            }
            if (!string.IsNullOrWhiteSpace(logintimeEnd))
            {
                ltend = DateTime.Parse(logintimeEnd);
            }
            var query = new MemberQuery()
            {
                PageNo          = 1,
                PageSize        = int.MaxValue,
                keyWords        = keywords,
                weChatNick      = weChatNick,
                Mobile          = mobile,
                GradeId         = gradeId,
                Status          = status,
                Platform        = platform,
                Labels          = labels.HasValue ? new long[] { labels.Value } : null,
                RegistTimeStart = rtstart,
                RegistTimeEnd   = rtend,
                IsFocusWeiXin   = isFocusWeiXin,
                IsSeller        = isSeller,
                LoginTimeStart  = ltstart,
                LoginTimeEnd    = ltend,
            };
            if (gradeId.HasValue)
            {
                var expenditureRange = MemberApplication.GetMemberGradeRange(gradeId.Value);
                query.MinIntegral = expenditureRange.MinIntegral;
                query.MaxIntegral = expenditureRange.MaxIntegral;
            }
            var result = MemberApplication.GetMemberList(query);
            #endregion
            return(ExcelView("ExportMemberinfo", "会员信息", result.Models.ToList()));

            #region 构建Excel文档
            //  ViewData.Model = result.Models;
            // string viewHtml = RenderPartialViewToString(this, "ExportMemberinfo");
            // return File(System.Text.Encoding.UTF8.GetBytes(viewHtml), "application/ms-excel", string.Format("会员信息_{0}.xls", DateTime.Now.ToString("yyyy-MM-dd")));
            #endregion
        }
コード例 #18
0
ファイル: MemberController.cs プロジェクト: Shikyoh/HSWB2B2C
        public JsonResult List(int page, string keywords, int rows, bool?status = null)
        {
            IMemberService memberService = ServiceHelper.Create <IMemberService>();
            MemberQuery    memberQuery   = new MemberQuery()
            {
                keyWords = keywords,
                Status   = status,
                PageNo   = page,
                PageSize = rows
            };
            PageModel <UserMemberInfo> members = memberService.GetMembers(memberQuery);
            IQueryable <MemberModel>   models  =
                from item in members.Models
                select new MemberModel()
            {
                Id            = item.Id,
                UserName      = item.UserName,
                LastLoginDate = item.LastLoginDate,
                CreateDate    = item.CreateDate,
                QQ            = item.QQ,
                Points        = item.Points,
                RealName      = item.RealName,
                Email         = item.Email,
                CellPhone     = item.CellPhone,
                Disabled      = item.Disabled
            };
            DataGridModel <MemberModel> dataGridModel = new DataGridModel <MemberModel>()
            {
                rows  = models,
                total = members.Total
            };

            return(Json(dataGridModel));
        }
コード例 #19
0
        private static void GoToDefinition(PackageDatabase db, MemberQuery[] searches, int iterations = 1)
        {
            PartialArray <Symbol> lastSuccessfulResults = new PartialArray <Symbol>();
            PartialArray <Symbol> results = new PartialArray <Symbol>(10);

            using (new TraceWatch("Go To Definition {0:n0} times across {1:n0} values...", iterations, searches.Length))
            {
                for (int iteration = 0; iteration < iterations; ++iteration)
                {
                    MemberQuery query = searches[iteration % searches.Length];
                    query.TryFindMembers(db, ref results);
                    if (results.Count > 0)
                    {
                        results.CopyTo(ref lastSuccessfulResults);
                    }
                }
            }

            if (lastSuccessfulResults.Count > 0)
            {
                lastSuccessfulResults[0].WriteLocation(Console.Out);
                Console.WriteLine();
            }
            else
            {
                Console.WriteLine("NOT FOUND.");
            }

            Console.WriteLine();
        }
コード例 #20
0
        protected void BindData()
        {
            MemberQuery query = new MemberQuery
            {
                Username   = this.searchKey,
                Realname   = this.realName,
                GradeId    = this.rankId,
                PageIndex  = this.pager.PageIndex,
                IsApproved = this.approved,
                SortBy     = this.grdMemberList.SortOrderBy,
                PageSize   = this.pager.PageSize
            };

            if (this.grdMemberList.SortOrder.ToLower() == "desc")
            {
                query.SortOrder = SortAction.Desc;
            }
            if (this.vipCard.HasValue && this.vipCard.Value != 0)
            {
                query.HasVipCard = new bool?(this.vipCard.Value == 1);
            }
            DbQueryResult members = MemberHelper.GetMembers(query);

            this.grdMemberList.DataSource = members.Data;
            this.grdMemberList.DataBind();
            this.pager1.TotalRecords = (this.pager.TotalRecords = members.TotalRecords);
        }
コード例 #21
0
        public async Task MemberClient_GetPoints_ToUserThatExists_ReturnsSamePoints()
        {
            // arrange
            var amount = Rng.Next();

            var          channel = GetChannel();
            var          client  = new Member.MemberClient(channel);
            const string guildId = "1";
            const string userId  = "1";

            var getQuery = new MemberQuery
            {
                GuildId = guildId,
                UserId  = userId
            };

            var addQuery = new MemberQueryWithPoints
            {
                GuildId = guildId,
                UserId  = userId,
                Amount  = amount
            };

            // act
            var addResult = await client.AddPointsAsync(addQuery);

            var getResult = await client.GetPointsAsync(getQuery);

            // assert
            Assert.AreEqual(Status.Success, addResult.Status, "AddPointsAsync() failed.");
            Assert.AreEqual(amount, addResult.Experience);
            Assert.AreEqual(Status.Success, getResult.Status, "GetPointsAsync() failed.");
            Assert.AreEqual(amount, getResult.Experience);
        }
コード例 #22
0
        public async Task MemberClient_ResetPoints_ToUserThatDoesNotExist_ReturnsZero()
        {
            // arrange
            var          channel = GetChannel();
            var          client  = new Member.MemberClient(channel);
            const string guildId = "1";
            const string userId  = "1";

            var getQuery = new MemberQuery
            {
                GuildId = guildId,
                UserId  = userId
            };
            var resetQuery = new MemberQuery
            {
                GuildId = guildId,
                UserId  = userId
            };

            // act
            var resetResult = await client.ResetPointsAsync(resetQuery);

            var getResult = await client.GetPointsAsync(getQuery);

            // assert
            Assert.AreEqual(Status.Success, resetResult.Status, "ResetPointsAsync() failed.");
            Assert.AreEqual(Status.Success, getResult.Status, "GetPointsAsync() failed.");
            Assert.AreEqual(0, getResult.Experience);
        }
コード例 #23
0
        private void BindData()
        {
            MemberQuery query = new MemberQuery
            {
                PageIndex = this.pager.PageIndex,
                SortBy    = this.grdMemberList.SortOrderBy,
                PageSize  = this.pager.PageSize,
                Stutas    = (UserStatus)1,
                EndTime   = new DateTime?(DateTime.Now),
                Username  = this.txtUserName.Text.Trim(),
                CellPhone = this.txtPhone.Text.Trim()
            };

            if (this.grdMemberList.SortOrder.ToLower() == "desc")
            {
                query.SortOrder = SortAction.Desc;
            }
            DbQueryResult members = MemberHelper.GetMembers(query, true);

            this.grdMemberList.DataSource = members.Data;
            this.grdMemberList.DataBind();
            if (members.TotalRecords == 0)
            {
                base.Response.Redirect("WXConfigBindOK.aspx");
                base.Response.End();
            }
            this.pager1.TotalRecords          = this.pager.TotalRecords = members.TotalRecords;
            this.BindOpenIDAndNoUserNameCount = this.pager1.TotalRecords;
            this.ViewState["BindOpenIDAndNoUserNameCount"] = this.BindOpenIDAndNoUserNameCount;
        }
コード例 #24
0
        static RuntimeMember GetMethodFromProcessor(object targetInstance, string memberName, int parameterCount)
        {
            var processor = Builder.CellProcessor();

            return(MemberQuery.FindInstance(processor.FindMember, targetInstance,
                                            new MemberSpecification(new MemberName(memberName), parameterCount)));
        }
コード例 #25
0
        public JsonResult SetResultMembersLabel(MemberQuery query, string labels)
        {
            var lids = labels.Split(',').Select(s => long.Parse(s));

            //   MemberApplication.SetResultMembersLabel(query, lids);
            return(Json(new { Success = true }));
        }
コード例 #26
0
        protected void BindData()
        {
            MemberQuery memberQuery = new MemberQuery();

            memberQuery.Username   = this.searchKey;
            memberQuery.Realname   = this.realName;
            memberQuery.GradeId    = this.rankId;
            memberQuery.PageIndex  = this.pager.PageIndex;
            memberQuery.IsApproved = this.approved;
            memberQuery.SortBy     = this.grdMemberList.SortOrderBy;
            memberQuery.PageSize   = this.pager.PageSize;
            memberQuery.Stutas     = new UserStatus?(UserStatus.Normal);
            memberQuery.EndTime    = new System.DateTime?(System.DateTime.Now);
            memberQuery.StartTime  = new System.DateTime?(System.DateTime.Now.AddDays((double)(-(double)this.GetSiteSetting().ActiveDay)));
            memberQuery.CellPhone  = ((base.Request.QueryString["phone"] != null) ? base.Request.QueryString["phone"] : "");
            memberQuery.ClientType = ((base.Request.QueryString["clientType"] != null) ? base.Request.QueryString["clientType"] : "");
            if (this.grdMemberList.SortOrder.ToLower() == "desc")
            {
                memberQuery.SortOrder = SortAction.Desc;
            }
            if (this.vipCard.HasValue && this.vipCard.Value != 0)
            {
                memberQuery.HasVipCard = new bool?(this.vipCard.Value == 1);
            }
            DbQueryResult members = MemberHelper.GetMembers(memberQuery, false);

            this.grdMemberList.DataSource = members.Data;
            this.grdMemberList.DataBind();
            this.pager1.TotalRecords = (this.pager.TotalRecords = members.TotalRecords);
        }
コード例 #27
0
        public PageModel <UserMemberInfo> GetMembers(MemberQuery query)
        {
            int num = 0;
            IQueryable <UserMemberInfo> disabled = context.UserMemberInfo.AsQueryable <UserMemberInfo>();

            if (!string.IsNullOrWhiteSpace(query.keyWords))
            {
                disabled =
                    from d in disabled
                    where d.UserName.Equals(query.keyWords)
                    select d;
            }
            if (query.Status.HasValue)
            {
                disabled =
                    from d in disabled
                    where d.Disabled
                    select d;
            }
            disabled = disabled.GetPage(out num, query.PageNo, query.PageSize, (IQueryable <UserMemberInfo> d) =>
                                        from o in d
                                        orderby o.LastLoginDate descending, o.CreateDate descending
                                        select o);
            return(new PageModel <UserMemberInfo>()
            {
                Models = disabled,
                Total = num
            });
        }
コード例 #28
0
ファイル: MemberService.cs プロジェクト: alexthemaster/skyra
        public override async Task <Result> ResetPoints(MemberQuery request, ServerCallContext context)
        {
            var result = await _database.ResetMemberPointsAsync(request.GuildId, request.UserId);

            return(new Result {
                Status = result.Success ? Status.Success : Status.Failed
            });
        }
コード例 #29
0
        internal static string SearchToString(IMemberDatabase db, string memberName)
        {
            MemberQuery           query   = new MemberQuery(memberName, false, false);
            PartialArray <Symbol> results = new PartialArray <Symbol>(10);

            query.TryFindMembers(db, ref results);
            return(ResultToString(results));
        }
コード例 #30
0
        public TypedValue Invoke(TypedValue instance, MemberName memberName, Tree <Cell> parameters)
        {
            var member = MemberQuery.FindDirectInstance(instance.Value, new MemberSpecification(memberName));

            return(member.ForValue(
                       v => v.Invoke(new object[] {}),
                       () => TypedValue.MakeInvalid(new MemberMissingException(instance.Type, memberName.Name, 0))));
        }
コード例 #31
0
ファイル: SymbolSearchService.cs プロジェクト: rgani/roslyn
        public IEnumerable<ReferenceAssemblyWithTypeResult> FindReferenceAssembliesWithType(
            string name, int arity, CancellationToken cancellationToken)
        {
            // Our reference assembly data is stored in the nuget.org DB.
            IAddReferenceDatabaseWrapper databaseWrapper;
            if (!_sourceToDatabase.TryGetValue(NugetOrgSource, out databaseWrapper))
            {
                // Don't have a database to search.  
                yield break;
            }

            var database = databaseWrapper.Database;
            if (name == "var")
            {
                // never find anything named 'var'.
                yield break;
            }

            var query = new MemberQuery(name, isFullSuffix: true, isFullNamespace: false);
            var symbols = new PartialArray<Symbol>(100);

            if (query.TryFindMembers(database, ref symbols))
            {
                var types = FilterToViableTypes(symbols);

                foreach (var type in types)
                {
                    // Only look at reference assembly results.
                    if (type.PackageName.ToString() == MicrosoftAssemblyReferencesName)
                    {
                        var nameParts = new List<string>();
                        GetFullName(nameParts, type.FullName.Parent);
                        yield return new ReferenceAssemblyWithTypeResult(
                            type.AssemblyName.ToString(), type.Name.ToString(), containingNamespaceNames: nameParts);
                    }
                }
            }
        }
コード例 #32
0
ファイル: PackageSearchService.cs プロジェクト: Eyas/roslyn
        public IEnumerable<PackageWithTypeResult> FindPackagesWithType(
            string source, string name, int arity, CancellationToken cancellationToken)
        {
            //if (!StringComparer.OrdinalIgnoreCase.Equals(source, NugetOrgSource))
            //{
            //    // We only support searching nuget.org
            //    yield break;
            //}

            AddReferenceDatabase database;
            if (!_sourceToDatabase.TryGetValue(source, out database))
            {
                // Don't have a database to search.  
                yield break;
            }

            if (name == "var")
            {
                // never find anything named 'var'.
                yield break;
            }

            var query = new MemberQuery(name, isFullSuffix: true, isFullNamespace: false);
            var symbols = new PartialArray<Symbol>(100);

            if (query.TryFindMembers(database, ref symbols))
            {
                // Don't return nested types.  Currently their value does not seem worth
                // it given all the extra stuff we'd have to plumb through.  Namely 
                // going down the "using static" code path and whatnot.
                var types = new List<Symbol>(
                    from symbol in symbols
                    where this.IsType(symbol) && !this.IsType(symbol.Parent())
                    select symbol);

                var typesFromPackagesUsedInOtherProjects = new List<Symbol>();
                var typesFromPackagesNotUsedInOtherProjects = new List<Symbol>();

                foreach (var type in types)
                {
                    var packageName = type.PackageName.ToString();
                    if (_installerService.GetInstalledVersions(packageName).Any())
                    {
                        typesFromPackagesUsedInOtherProjects.Add(type);
                    }
                    else
                    {
                        typesFromPackagesNotUsedInOtherProjects.Add(type);
                    }
                }

                var result = new List<Symbol>();

                // We always returm types from packages that we've use elsewhere in the project.
                int? bestRank = null;
                foreach (var type in typesFromPackagesUsedInOtherProjects)
                {
                    if (type.PackageName.ToString() != MicrosoftAssemblyReferencesName)
                    {
                        var rank = GetRank(type);
                        bestRank = bestRank == null ? rank : Math.Max(bestRank.Value, rank);
                    }

                    yield return CreateResult(database, type);
                }

                // For all other hits include as long as the popularity is high enough.  
                // Popularity ranks are in powers of two.  So if two packages differ by 
                // one rank, then one is at least twice as popular as the next.  Two 
                // ranks would be four times as popular.  Three ranks = 8 times,  etc. 
                // etc.  We keep packages that within 1 rank of the best package we find.
                //
                // Note: we only do rankings for nuget packages.  Results from reference 
                // assemblies are always returned.
                foreach (var type in typesFromPackagesNotUsedInOtherProjects)
                {
                    if (type.PackageName.ToString() != MicrosoftAssemblyReferencesName)
                    {
                        var rank = GetRank(type);
                        bestRank = bestRank == null ? rank : Math.Max(bestRank.Value, rank);

                        if (Math.Abs(bestRank.Value - rank) > 1)
                        {
                            yield break;
                        }
                    }

                    yield return CreateResult(database, type);
                }
            }
        }
コード例 #33
0
        public Task<ImmutableArray<PackageWithTypeResult>> FindPackagesWithTypeAsync(
            string source, string name, int arity)
        {
            if (!_sourceToDatabase.TryGetValue(source, out var databaseWrapper))
            {
                // Don't have a database to search.  
                return SpecializedTasks.EmptyImmutableArray<PackageWithTypeResult>();
            }

            var database = databaseWrapper.Database;
            if (name == "var")
            {
                // never find anything named 'var'.
                return SpecializedTasks.EmptyImmutableArray<PackageWithTypeResult>();
            }

            var query = new MemberQuery(name, isFullSuffix: true, isFullNamespace: false);
            var symbols = new PartialArray<Symbol>(100);

            var result = ArrayBuilder<PackageWithTypeResult>.GetInstance();
            if (query.TryFindMembers(database, ref symbols))
            {
                var types = FilterToViableTypes(symbols);

                foreach (var type in types)
                {
                    // Ignore any reference assembly results.
                    if (type.PackageName.ToString() != MicrosoftAssemblyReferencesName)
                    {
                        result.Add(CreateResult(database, type));
                    }
                }
            }

            return Task.FromResult(result.ToImmutableAndFree());
        }
コード例 #34
0
ファイル: SymbolSearchService.cs プロジェクト: rgani/roslyn
        public IEnumerable<PackageWithTypeResult> FindPackagesWithType(
            string source, string name, int arity, CancellationToken cancellationToken)
        {
            IAddReferenceDatabaseWrapper databaseWrapper;
            if (!_sourceToDatabase.TryGetValue(source, out databaseWrapper))
            {
                // Don't have a database to search.  
                yield break;
            }

            var database = databaseWrapper.Database;
            if (name == "var")
            {
                // never find anything named 'var'.
                yield break;
            }

            var query = new MemberQuery(name, isFullSuffix: true, isFullNamespace: false);
            var symbols = new PartialArray<Symbol>(100);

            if (query.TryFindMembers(database, ref symbols))
            {
                var types = FilterToViableTypes(symbols);

                var typesFromPackagesUsedInOtherProjects = new List<Symbol>();
                var typesFromPackagesNotUsedInOtherProjects = new List<Symbol>();

                foreach (var type in types)
                {
                    // Ignore any reference assembly results.
                    if (type.PackageName.ToString() != MicrosoftAssemblyReferencesName)
                    {
                        var packageName = type.PackageName.ToString();
                        if (_installerService.GetInstalledVersions(packageName).Any())
                        {
                            typesFromPackagesUsedInOtherProjects.Add(type);
                        }
                        else
                        {
                            typesFromPackagesNotUsedInOtherProjects.Add(type);
                        }
                    }
                }

                var result = new List<Symbol>();

                // We always returm types from packages that we've use elsewhere in the project.
                int? bestRank = null;
                foreach (var type in typesFromPackagesUsedInOtherProjects)
                {
                    yield return CreateResult(database, type);
                }

                // For all other hits include as long as the popularity is high enough.  
                // Popularity ranks are in powers of two.  So if two packages differ by 
                // one rank, then one is at least twice as popular as the next.  Two 
                // ranks would be four times as popular.  Three ranks = 8 times,  etc. 
                // etc.  We keep packages that within 1 rank of the best package we find.
                foreach (var type in typesFromPackagesNotUsedInOtherProjects)
                {
                    var rank = GetRank(type);
                    bestRank = bestRank == null ? rank : Math.Max(bestRank.Value, rank);

                    if (Math.Abs(bestRank.Value - rank) > 1)
                    {
                        yield break;
                    }

                    yield return CreateResult(database, type);
                }
            }
        }
コード例 #35
0
        public Task<ImmutableArray<ReferenceAssemblyWithTypeResult>> FindReferenceAssembliesWithTypeAsync(
            string name, int arity)
        {
            // Our reference assembly data is stored in the nuget.org DB.
            if (!_sourceToDatabase.TryGetValue(NugetOrgSource, out var databaseWrapper))
            {
                // Don't have a database to search.  
                return SpecializedTasks.EmptyImmutableArray<ReferenceAssemblyWithTypeResult>();
            }

            var database = databaseWrapper.Database;
            if (name == "var")
            {
                // never find anything named 'var'.
                return SpecializedTasks.EmptyImmutableArray<ReferenceAssemblyWithTypeResult>();
            }

            var query = new MemberQuery(name, isFullSuffix: true, isFullNamespace: false);
            var symbols = new PartialArray<Symbol>(100);

            var results = ArrayBuilder<ReferenceAssemblyWithTypeResult>.GetInstance();
            if (query.TryFindMembers(database, ref symbols))
            {
                var types = FilterToViableTypes(symbols);

                foreach (var type in types)
                {
                    // Only look at reference assembly results.
                    if (type.PackageName.ToString() == MicrosoftAssemblyReferencesName)
                    {
                        var nameParts = new List<string>();
                        GetFullName(nameParts, type.FullName.Parent);
                        var result = new ReferenceAssemblyWithTypeResult(
                            type.AssemblyName.ToString(), type.Name.ToString(), containingNamespaceNames: nameParts);
                        results.Add(result);
                    }
                }
            }

            return Task.FromResult(results.ToImmutableAndFree());
        }